NFaas指Network Function as a Service (NFaaS),将网络功能作为服务。
VM:特指具有网络功能的虚拟机,或者跑网络功能的软件系统。这里并不用于指代终端虚拟机,虽然在Openstack里通常是这样称呼VM。
服务:对VNF的抽象称为服务。这里也是特指。VNF,虚拟网络功能,是指跑在一个或多个VM上的一个网络功能单元。
服务可伸缩性:指服务扩展或缩减,指添加或者移除VM虚拟机
服务组合:通过在两个服务或多个服务之间添加连接来创建一个新的服务
通过定义上面的名词,我们可知,NFaaS,就是把网络功能作为服务,它是VNF的抽象,它具有服务可伸缩性,还应该具有服务组合能力。构成这些能力的基础之一是VM(准确的说是NFVI)。
系统架构 在参考1给出的结构里,
1 物理网络:网元是Openflow交换机
2 物理网络:每一网元都连接着一群VM (部分中间网元没有,这种网元+1群VM结构应该是预先构建好的)
3 物理网络:网元并非full mesh
4 SDN框架
流配置指对流执行策略管理(SDN控制器的控制命令)(对应上面的服务组合)
流管理指对Openflow交换机的生命周期管理,流表操作
VM配置指对NFVI(NFV实例)的策略配置(如执行vIMS, vCPE功能的业务配置)
VM管理指对NFVI生命周期管理,增,删(对应上面的服务可伸缩性)
5 SDN环境使用XOS+OVX+ONOS构建
XOS:相当于Openstack,云操作系统,负责VM(这里除非特殊说明VM都是特指NFVI)的生命周期管理
OVX:用户网络构建,注意不是Openstack租户,是网络租户,所以我暂时用用户代替租户这个词,租户更适合指Openstack中重叠网络,这里指Openflow流切片(Slice)为不同租户
ONOS: SDN控制器,负责流量转发、流量方向控制
中心化办公室 在参考2中给出的结构里,
6 一个CO(中心化办公室)应该支持来自如下的接入(也即CO头端),包括
CPE-----CMTS
CPE-----OLT
CPE----DSLAM---AGG
这里CPE---CMTS意思是从CPE到CMTS的路径可以作为中心化办公室的头端,而这些头端就是现实环境中正在使用的。(SDN化后也可以简化更新这些头端,本文主要讲CO的SDN化)
7 CO的NFV规划
如果要接入以上头端,从前是需要不同的网络设备,现在改用VM实现,其对应的实现组合是
企业用户:VPN+WanEx+DSA+IDS
个人用户: BNG+CDN+CGNAT+Firewall
移动用户:PGW+XCODE+NLA+CDN
这些VM组合即服务组合
8 CO的底层接入使用openflow交换机
openflow交换机由于使用流表,并不改变原有报文(通常情况下),因而对包处理是无伤害的,所以可以顺利接入。
9 CO通过XOS完成服务组合和服务可伸缩性(FIXME)
具体实现
参考3 FIXME
Ref:
1 https://wiki.onosproject.org/pages/viewpage.action?pageId=2130965
2 https://wiki.onosproject.org/display/ONOS/NFaaS+central+office+application
3 https://wiki.onosproject.org/display/ONOS/Demo+scenario