内嵌式部署方式,SDN域中每个ASG可以均部署SDN Controller,每个SDN Controller只控制下挂的CSG。对于CSG同时下挂在两个(或者多个)SDN Controller的情况下,其中一个SDN Controller作为主用SDN Controller,其它SDN Controller作为备用;SDN Controller也可做负载分担,即每个CSG的主备SDN Controller可以不同。
独立式Controller即将控制器和转发设备完全分离,在网络中部署单独的服务器承担控制器角色。在独立SDN Controller情况下,CSG、ASG都集成Control Agent模块,用于向Controller上报状态,接受Controller控制等。同时CSG、ASG保持基本的路由功能,用于建立管理通道和控制通道,使得SDN Controller能够通过控制协议控制CSG、ASG。独立式的Controller,一个网络中也可以部署多个Controller,控制器做主备方式或者负载分担方式。
利用内嵌式SDN Controller模式,可以利用现有的网络设备,进行软件的升级,即可在接入层应用SDN技术,对网络架构和网络管理模式改动小,利于快速部署SDN。但是,SDN Controller软件内置在现有的网络设备中,受限于现有网络设备的处理性能,以及SDN Controller附着的设备并没有转发与控制分离,因此SDN Controller控制的范围局限在现有设备汇聚的网络大小。
独立SDN Controller可以利用服务器等IT硬件,处理能力强,能够控制更大范围和更多节点,而且独立SDN Controller运行的网络设备不再参与网络数据流量的转发,可部署到远端数据中心,不受限于网络物理位置,SDN技术成熟阶段适于选择这种方式。
SDN控制器的功能
SDN控制器与转发设备接口用于管理、控制转发设备,可以和网管以及第三方接口用于网络管理以及开发第三方应用。SDN控制器的主要功能模块如图5所示。

通常SDN控制器需要冗余部署,以提供控制器的可靠性,SDN控制器通常部署为主备或者负载分担方式。所谓的负载分担是指不同的转发设备可以选择不同的SDN控制器作为自己的主控制器,但是对同一个转发设备而言,只能选择一个控制器为自己的主控制器。
SDN网络设备的功能
转发设备由数据平面模块、控制代理模块、管理代理模块和DCN处理模块组成。SDN转发节点的功能如图6所示。

数据平面由接口业务适配、分组转发、QoS、OAM、保护、同步模块组成,通过接口业务适配模块实现UNI侧各类业务的接入处理,以及实现NNI侧业务入出或穿通MPLS隧道。数据平面还可为控制代理和管理代理提供控制信息和网络管理信息的传送功能。