虚拟接入原理描述
虚拟接入控制平面
虚拟接入的核心思想就是控制平面的集中。在采用虚拟接入方案之前,网络中各节点的控制平面都是独立的、分散的,各节点都需要自己完成拓扑发现、路由计算和转发表项的生成。为了保证控制平面的一致性,各节点之间要运行很多动态协议(如IGP、BPG、LDP等),这是导致接入网络过于复杂的根本原因。采用了虚拟接入方案之后,Master统一收集整网的资源(各个节点的标签空间、接口信息等),计算内部转发隧道的路径,并向各个AP下发转发表项,AP只负责转发。这样,整个接入网络的控制平面就集中到了Master上,AP和Master之间的动态协议就不再需要了,从而降低了网络的复杂度。
主备Master的选举
在虚拟接入系统中,用户可以根据规划为每个AP的Master指定不同的管理优先级,同时需要为AP和Master配置管理IP地址。AP与Master之间、Master与Master之间相互通告各自的管理IP地址,同时两个Master之间还会相互通告针对该AP的管理优先级,然后两个Master根据如下规则确定主备:
首先比较Master的管理优先级,优先级高的成为主Master,优先级低的成为备Master。
如果两个Master管理优先级相同,则管理IP地址小的成为主Master,管理IP地址大的成为备Master。
控制通道和Diameter通道的建立
如图2-6所示,通过控制通道,Master可以收集AP的资源信息、向AP下发转发表项,而隧道路径的计算和转发表项的生成只在Master上进行,实现了控制平面的集中。在AP双归到两台Master的场景中,主备Master通过Diameter通道同步算路结果、协商vaPW的主备状态等。
关于控制通道和Diameter通道的描述如表2-1所示:
通道名称 |
位置 |
建立方式 |
用途 |
---|---|---|---|
控制通道 |
Master与AP之间 |
AP分别向主备Master发起建立控制通道。 |
AP与Master之间交互控制信息,包括:
关于vaLSP和vaPW的详细介绍,请参见内部转发隧道的建立。 |
Diameter通道 |
主备Master之间 |
主Master向备Master发起建立基于TCP连接的Diameter通道。 说明:
如果主备Master之间没有直连链路,则Diameter通道将绕行AP。 |
|
内部转发隧道的建立
在建立起控制通道和Diameter通道之后,虚拟接入系统按表2-2所示的流程建立内部转发隧道即vaLSP+vaPW,实现对接入业务的承载。
流程 |
描述 |
---|---|
动态资源池的构建 |
AP向主备Master注册,上报自身的资源,包括标签空间、接口信息等,主备Master会将这些信息存储到对应AP的动态资源池中,即:为每个AP建立一个动态资源池。 图2-7 动态资源池的构建
|
隧道路径的计算 |
在使能虚拟接入能力并配置为Master或AP的角色之后,Master和AP上自动创建IS-IS进程,同时Master和AP上的内联接口下自动使能IS-IS。
图2-8 隧道路径的计算
|
转发表项的生成及下发 |
图2-9 转发表项的生成及下发
|
vaLSP和vaPW的建立 |
AP将从主备Master接收到的转发表项下发到本地的转发表中,在AP与主Master之间建立vaLSP和主vaPW,在AP与备Master之间建立vaLSP和备vaPW,如图2-10所示。 |
虚拟接入数据平面
在数据转发层面,AP上的外联接口负责接收业务数据。vaPW连接了AP外联接口和Master本地的虚拟接入接口,而vaPW需要承载在vaLSP上(关于vaPW和vaLSP的建立,请参见内部转发隧道的建立)。因此,无论何种业务,虚拟接入系统都是通过vaPW+vaLSP来承载的,如图2-11所示。
AP将从外联接口上收到的报文通过vaPW发送到Master上,同时AP通过vaPW接收到Master发来的报文,然后通过外联口发送出去。这样AP只负责转发。
从标签操作层面来看,当AP从外联接口接收到数据报文之后,AP根据vaPW的转发表项压入vaPW的标签,再根据vaLSP的转发表项在外层压入vaLSP的标签;当报文到达Master时,Master根据vaLSP的转发表项弹出外层的vaLSP标签,再根据vaPW的表项弹出内层的vaPW标签并将数据报文发送到虚拟接入接口。同理,数据报文从Master发送到AP的过程完全类似。
AP即插即用
AP的即插即用是指:当AP上线、下线、迁移以及AP或Master重启时,Master自动感知并完成相应的管理动作,无需用户干预。支持AP的即插即用,是虚拟接入解决方案简化网络运维和管理的重要特性。AP的即插即用包含以下几种流程:
下面分别介绍一下上述AP即插即用流程。
AP初次上线
AP初次上线后的即插即用流程如图2-12所示。
关于该流程中各步骤的详细描述如表2-3所示
步骤序号 |
描述 |
---|---|
1 |
网络管理员在网管上配置AP即插即用必需的基础配置,包括:
|
2 |
AP采用缺省配置启动,自动使能DCN(Data Communication Network)功能,并在虚拟接入系统内通过OSPF扩散自己的ESN号以及即插即用初始状态。 |
3 |
Master1和Master2通过DCN发现AP,并识别AP的即插即用状态为初始状态。Master1和Master2将发现AP的信息(如ESN号等)上报给网管。 |
4 |
网管将AP即插即用必需的基础配置(见步骤1)发送给Master1和Master2。 |
5 |
Master1和Master2检查本地是否配置了被发现AP的ESN号,如果是,则启动即插即用;如果不是则终止即插即用流程。 说明:
Master要管理哪些AP由用户在Master上配置相应AP的ESN号来控制。 |
6 |
Master1和Master2使用初始用户名和密码与AP建立STelnet连接,并向AP下发即插即用启动命令。 |
7 |
AP启动即插即用同时启动定时器等待即插即用过程完成。 |
8 |
Master1和Master2将如下基础配置下发到AP上(包括Master1和Master2自动生成的配置和网管下发的基础配置):
如果上述基础配置完整,则同时下发即插即用结束命令;如果不完整,则终止即插即用流程。 |
9 |
AP自动执行Master1和Master2发来的基础配置。 如果AP收到了即插即用结束命令,则认为配置完成,终止定时器;如果在定时器超时前未收到即插即用结束命令,则认为基础配置不全,AP将自动重启再次尝试即插即用。 |
10 |
AP在虚拟接入系统内通过OSPF扩散即插即用结束状态。 |
11 |
Master1和Master2感知到AP的即插即用结束状态,并向网管上报。即插即用流程结束,AP上线成功。 |
以上描述的是有网管参与的AP即插即用流程。如果网络中无网管,则需要用户预先在Master上完成AP即插即用必需的基础配置(见上表的第1步),其余过程与有网管参与时相同,这里不再赘述。下文介绍的其他流程情况类似。
在AP即插即用流程结束后,Master1和Master2通过选举来确定主备,具体过程请参见主备Master的选举。
AP重启上线
AP重启上线后的即插即用流程如图2-13所示。
关于该流程中各步骤的详细描述如表2-4所示
步骤序号 |
描述 |
---|---|
1 |
AP重启后读取本地保存的即插即用状态,并在虚拟接入系统内通过OSPF扩散自己的即插即用状态。 |
2 |
主备Master通过DCN发现AP,并检测AP的即插即用状态:
说明:
如果AP进行恢复配置的重启,则AP的即插即用状态为已完成状态;如果AP进行清除配置的重启,则AP的即插即用状态为初始状态。 |
3 |
主备Master向网管上报AP已完成即插即用。 |
4 |
AP与主备Master之间建立NETCONF和控制通道。 |
5 |
主Master通过NETCONF通道与AP进行配置对账,使业务恢复正常。 说明:
这里的配置对账是指主Master与AP之间进行配置比对,检查主Master上针对AP的配置是否都已在AP上。如果没有,则通过NETCONF通道将缺少的配置下发给AP。 |
主Master重启
主Master重启后的AP即插即用流程如图2-14所示。
关于该流程中各步骤的详细描述如表2-5所示
步骤序号 |
描述 |
---|---|
1 |
在主Master重启过程中:
重启完成后,主Master进行配置恢复。此时AP上的配置已存在。 |
2 |
主Master通过DCN发现AP,并检测AP扩散的即插即用状态:
说明:
正常情况下AP的即插即用状态为已完成状态。当AP被清除配置时(如清除配置重启等),它的即插即用状态变为初始状态。 |
3 |
AP与主Master之间建立NETCONF和控制通道。 |
4 |
|
备Master重启
备Master重启后的AP即插即用流程如图2-15所示。
关于该流程中各步骤的详细描述如表2-6所示
步骤序号 |
描述 |
---|---|
1 |
重启完成后,备Master进行配置恢复。此时AP上的配置已存在。 |
2 |
备Master通过DCN发行AP,并检测AP扩散的即插即用状态:
说明:
正常情况下AP的即插即用状态为已完成状态。当AP被清除配置时(如清除配置重启等),它的即插即用状态变为初始状态。 |
3 |
AP与备Master之间建立NETCONF和控制通道。 |
4 |
如果在重启过程中备Master在虚拟接入系统的拓扑中发生了超时删除,则此时两个Master重新进行主备选举。如果在重启过程中备Master在虚拟接入系统的拓扑中没有被删除,则重启之后的备Master仍然为备Master。 |
虚拟接入网络管理
存在网管的场景
在存在网管的场景中,虚拟接入系统中的管理通道包括NETCONF通道和SNMP通道,如图2-18所示:
NETCONF通道
Master与AP之间的NETCONF通道:主备Master分别向AP发起建立NETCONF通道。通过NETCONF通道,Master可以向AP下发配置,也可以下发查询(如查询AP的外联接口状态等)和维护(如升级软件包、重启AP等)命令。正常情况下,由主Master向AP下发配置。当主Master与AP之间的NETCONF通道失效时,由备Master向AP下发配置。
网管与Master之间的NETCONF通道:用于网管向Master下发配置或查询任务。与Master和AP之间的NETCONF通道连通之后,网管也可以直接向AP下发配置或查询任务。
SNMP通道
Master和AP分别与网管建立SNMP通道,用于Master和AP向网管上报告警。
SNMP通道分为带内管理和带外管理两种方案:带内管理方案指的是网络管理系统利用被管设备提供的转发路径对网络中的设备实现管理的组网方式。为了实现网管信息的可靠传输,在承载网络内通常通过L3VPN承载。
其原理为:Master上通过接口板上的业务口和网管通信,AP到网管的报文是从Master上的接口板进去,再从Master上的接口板转发出去。
带外管理方案指的是网络管理系统通过专门的物理网络传送网管信息的组网方式。带外组网方式比带内组网方式提供更可靠的设备管理通道,但其组网复杂、部署成本高。带外网管一般由运营商自己规划。
其原理为:Master上通过主控板上的管理口和网管通信,AP到网管的报文是从Master上的接口板进去,再从Master上的主控板转发出去。
若需要支持带外管理方案,需要使能Master的软转发功能,即去使能管理口和业务口的隔离功能。
网管在虚拟接入系统运维和管理工作中的主要作用包括:
参与AP即插即用的过程,详情请参见AP即插即用。
对Master和AP进行日常的配置、维护和信息查询。
接收Master和AP上报的告警信息,帮助网络管理员进行故障处理。
不存在网管的场景
当网络中不存在网管时,管理通道只有Master与AP之间的NETCONF通道。用户可以直接在Master上对AP进行管理,方式有以下两种:
直接在Master上执行对AP的配置、查询和维护操作,Master通过NETCONF通道下发给AP。
先在Master上通过STelnet登录到AP上,然后进行查询和维护操作。
在Master上通过STelnet登录到AP上只能进行查询(如查询AP的外联接口状态等)和维护(如升级软件包、重启AP等)操作。对AP的业务配置,只能在Master上直接执行。
组播AP复制
产生原因
在虚拟接入场景中部署组播业务,缺省情况下组播流量由Master通过vaPW下发到AP上,组播流量的复制是在Master上完成的,如图2-19所示。从图2-19可以看出,这种方式需要Master针对每个接收者复制多份组播流量,导致重复占用带宽,增加了Master和AP之间链路的负担。
为了解决这一问题,实现了组播AP复制特性。如图2-20所示,部署了组播AP复制特性后,Master和AP之间将建立虚拟接入P2MP(vaP2MP)隧道,组播流量在Master上导入到vaP2MP隧道,在AP上导出vaP2MP隧道。组播流量在vaP2MP隧道内只按照隧道路径进行复制,到达AP后再针对接收者进行本地复制。这样,Master无需针对每个接收者复制多份组播流量,避免重复占用带宽,减轻了Master和AP之间链路的负担。
使用价值
在虚拟接入场景中部署组播AP复制特性,有以下好处:
减少组播流量重复占用带宽,优化网络带宽资源利用。
配合虚拟接入IGMP组播双机热备特性,可以达到1+1保护的效果,实现组播业务的快速保护。
相关概念
结合图2-21,介绍一下vaP2MP隧道涉及的主要概念。
名称 |
说明 |
对应的节点 |
---|---|---|
根节点 |
vaP2MP隧道的入口节点。该节点是vaP2MP隧道建立及路径计算的发起者,组播报文将在此处被压入MPLS标签,即封装成MPLS报文。 |
图2-21中的Master |
分支节点 |
属于vaP2MP隧道的中间节点,MPLS报文在此处将先进行复制,然后进行标签的交换操作。 |
图2-21中的AP1 |
叶子节点 |
vaP2MP隧道的目的节点。MPLS报文在该节点弹出MPLS标签,恢复为组播报文。 |
图2-21中的AP3、AP4 |
Bud节点 |
属于vaP2MP隧道的中间节点,它既是分支节点又是叶子节点。MPLS报文在此处将先进行复制,一份报文进行标签交换继续转发,另一份报文弹出MPLS标签,恢复为组播报文。 |
图2-21中的AP2 |
实现过程
在根节点(Master)上使能组播AP复制功能后,将触发建立vaP2MP隧道。vaP2MP隧道建立成功之后,组播流量在根节点(Master)上导入到vaP2MP隧道,在隧道内只按需复制;达到各叶子节点(AP)后,组播流量从vaP2MP隧道中导出,叶子节点再针对接收者进行组播流量复制。
vaP2MP隧道的建立过程
vaP2MP隧道的建立过程如下:
根节点遍历公网实例或VPN实例下使能了PIM的虚拟接入接口/子接口、虚拟接入Eth-Trunk接口/子接口,并获取虚拟接入接口对应的AP节点、虚拟接入Eth-Trunk成员接口对应的AP节点,将这些AP节点依次加入到vaP2MP隧道的叶子节点列表。
根节点根据叶子节点列表,计算出vaP2MP隧道的路径,具体过程请见下文。
根节点根据隧道路径计算结果,分配隧道标签,生成隧道的转发表项,并通过控制通道将转发表项下发到路径沿途的节点上(包括叶子节点、分支节点),从而建立vaP2MP隧道。
vaP2MP隧道路径的计算
以典型拓扑为例,介绍vaP2MP隧道的路径计算方法:
根节点按照vaP2MP隧道的叶子节点列表,依次将其中的AP加入到隧道路径中,加入之后AP才能正式成为叶子节点。
在增加新的叶子节点时,优先选择经过叶子节点最多的路径。如图2-22所示,先增加AP3时计算出的路径是M1-AP3;再增加AP2时,由于AP1还不是叶子节点,所以会优先选择M1-AP3-AP2,而不是M1-AP1-AP2。
新增加叶子节点不影响已有叶子节点的隧道路径。如图2-22所示,先增加AP2时计算出的路径是M1-AP1-AP2;再增加AP3时计算出的路径是M1-AP3。此时,从M1到AP2经过叶子节点最多的路径应该是M1-AP3-AP2,但这里不会更改AP2的端到端路径,仍然是M1-AP1-AP2。
删除叶子节点不影响其它叶子节点的隧道路径。如图2-22所示,先增加AP3时计算出的路径是M1-AP3;再增加AP2时计算出的路径是M1-AP3-AP2;然后隧道路径删除AP3,此时AP2的端到端路径M1-AP3-AP2不会变。
MBB(Make-Before-Break)支持手动重优化。如图2-22所示,先增加AP2时计算出的路径是M1-AP1-AP2;再增加AP3时计算出的路径是M1-AP3。此时,从M1到AP2经过叶子节点最多的路径应该是M1-AP3-AP2,手动重优化后,AP2的端到端路径将变为M1-AP3-AP2。
- Master之间的链路不参与算路。如图2-23所示,M1-M2之间的链路不参与vaP2MP隧道路径的计算。
其他功能
BFD for vaP2MP
在vaP2MP隧道建立之后,根节点和叶子节点之间将自动创建BFD会话,用来快速检测vaP2MP隧道路径的故障。如图2-24所示,分别以主、备Master为根节点建立了主、备两条vaP2MP隧道。BFD for vaP2MP会话建立之后,主备Master沿vaP2MP隧道路径向叶子节点发送BFD检测报文;如果叶子节点在一段时间内没有收到主Master发来的检测报文,则判定主vaP2MP隧道发生了故障,并触发业务流量快速切换到备vaP2MP隧道上,从而实现组播业务的快速保护。
虚拟接入IGMP组播双机热备和1+1保护
虚拟接入IGMP组播双机热备实现了主备Master上IGMP报文的同步备份,使组播流量同时引入到主备Master上,并通过主备vaP2MP隧道双发给AP,AP根据主备状态进行组播流量的选收,从而实现组播业务的1+1保护。
如图2-24所示,在虚拟接入双归组网场景中,部署了组播AP复制,同时部署IGMP组播双机热备。当主Master收到IGMP加入报文后,生成主机加入信息,进行组播引流,并生成组播转发表项;同时,主Master将IGMP加入报文向备Master进行备份。备Master根据备份的IGMP加入报文生成主机加入信息,进行组播引流,并生成组播转发表项。这样,主备Master在收到组播流量后,都通过vaP2MP隧道向AP发送,AP选收主Master发来的组播流量。当BFD for vaP2MP会话检测到主vaP2MP隧道发生故障时,AP立即选收备vaP2MP隧道发来的组播流量,从而实现组播业务的快速保护。
组播源在AP侧时,组播AP复制不支持1+1双发选收。