一种在SPTN系统Overlay场景下建立SCN通道的方法
技术领域
本发明涉及网络通信技术领域,具体涉及一种在SPTN系统Overlay场景下建立SCN通道的方法。
背景技术
SPTN系统Overlay场景是指SPTN系统叠加在已有城域PTN基础网络上。SPTN系统中,一个域控制器需要对它所辖控制域内的各个转发网元设备进行管理和控制,在采用了标准SBI接口的控制域中,域控制器对转发网元的管控是通过在域控制器与各转发网元之间交互OpenFlow协议消息及扩展消息、Netconf协议消息、Of-Config协议消息及扩展消息来实现的,这些消息为控制报文(或称SBI消息),相邻转发网元间会交互OSPF协议报文,由SCN通道来承载这些控制报文和协议报文的传送。工程上部署SPTN系统时,一般会在传送平面提供传输这些报文的内部通信通道,称为带内SCN通道,传送平面网元设备自动运行OSPF路由协议并生成SCN路由转发信息,实现控制信息的传送。
通常情况下,一个新网元设备首次接入网络时,一般会采用直连链路与已部署的相邻网元间连接起来,此时该网元可以自动与相邻网元间建立SCN缺省通道,建立SCN缺省通道前并不需要APP或者域控制器下发任何管控信息,建立起SCN缺省通道后便可以实现该网元设备的控制信息可达。但是在Overlay应用场景下情况却大为不同,采用上述方法自动建立起来的SCN缺省通道是不能在横跨服务层网络的两个网元间实现控制信息的传递的,因为这个SCN缺省通道发送的控制信息格式没有携带与下层服务网络通道相匹配的特征信息,不能被服务层网络传送到对端。
因此,亟需一种能实现在SPTN系统Overlay场景下建立SCN通道的方案。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种在SPTN系统Overlay场景下建立SCN通道的方法,实现Overlay网络中SCN通道的建立。
为达到以上目的,本发明采取的技术方案是:一种在SPTN系统Overlay场景下建立SCN通道的方法,所述SPTN系统叠加在已有城域PTN基础网络之上,所述SPTN系统包括一个域控制器、与所述域控制器相连的至少一个近端网元,还包括与所述近端网元连接的多个远端网元,每个远端网元通过城域PTN基础网络提供的VLAN通道与一个所述近端网元相连接:
在所述近端网元和所述远端网元均增设多个tag接口,为每个tag接口分配一个vid信息,为所述近端网元或远端网元的全部tag接口对应的vid信息创建接口信息表,所述接口信息表包括4096个表项,每个表项对应一个缺省接口或tag接口,每个表项包括接口号和vid属性字段;
基于所述VLAN通道增设tag通道,每个所述tag通道对应一个VLAN通道、近端网元的一个tag接口和远端网元的一个tag接口,它们之间通过vid信息建立对应关系;获取全部所述tag通道的vid信息;
设置近端网元为Overlay模式,所述域控制器将需要建立SCN通道的tag通道的vid信息通过控制报文下发给所述近端网元;
所述近端网元接收控制报文中的vid信息,将其与控制报文中的vid信息对应的tag接口均设置为收发使能状态,并配置好tag接口底层发包路径,通过发送使能状态的tag接口向对应的tag通道发送广播报文,所述广播报文是封装了控制报文中的vid信息的广播报文;
设置所述远端网元的全部tag接口为发送不使能、接收使能状态,设置所述远端网元接收到包含vid信息的广播报文时,将广播报文发送至CPU处理;
与控制报文中的vid信息对应的tag通道连接的远端网元接收包含vid信息的广播报文时,将广播报文发送至CPU处理,通过CPU获取广播报文中的vid信息,将其与所述vid信息对应的tag接口配置为有效接口并设置为收发使能状态,并配置好tag接口底层发包路径,完成SCN通道的建立。
在上述技术方案的基础上,所述近端网元包括OSFP协议栈和SCN通道适配模块,所述OSFP协议栈用于接收tag接口的注册,将欲向外发送的广播报文向其注册的全部tag接口号下发给SCN通道适配模块,所述SCN通道适配模块用于查找接口号对应的tag接口并分别判断各tag接口是否为发送使能状态,将控制报文中的vid信息封装至广播报文,通过发送使能状态的tag接口发送封装了vid信息的广播报文。
在上述技术方案的基础上,所述SCN通道还包括缺省通道类型,所述缺省通道用于发送不包含vid信息的报文。
在上述技术方案的基础上,所述近端网元和所述远端网元均包括一个缺省接口,所述缺省接口为不包含vid信息的报文的收发接口。
在上述技术方案的基础上,所述接口信息表的每个表项还包括接口是否有效,接收使能标志,发送使能标志以及接口有效时间的属性字段。
在上述技术方案的基础上,所述近端网元通过更改接口信息表将其与控制报文中的vid信息对应的tag接口设置为收发使能状态。
在上述技术方案的基础上,所述远端网元通过更改接口信息表将其与广播报文中的vid信息对应的tag接口设置为有效接口并设置为收发使能状态。
在上述技术方案的基础上,设置所述远端网元接收到包含vid信息的广播报文时,将广播报文发送至CPU处理包括:远端网元上电初始化时,将流表资源中的流表项配置为匹配vid信息及控制报文特征字段信息,将表项动作配置为转发到CPU端口。
在上述技术方案的基础上,所述远端网元配置好tag接口底层发包路径,完成SCN通道的建立后,向远端网元自身的OSFP协议栈注册所述tag接口对应的接口号,并将收到的控制报文或协议报文通过该接口号上送给OSFP协议栈处理。
在上述技术方案的基础上,完成SCN通道的建立后,所述远端网元的tag接口经过预设的周期没有接收到采用vid信息封装了的控制报文或协议报文时,将该接口设置为无效状态。
与现有技术相比,本发明的优点在于:
本发明通过域控制器将vid信息下发给近端网元,再通过近端网元发送的广播报文将vid信息发送给远端网元,设置远端网元接收到包含vid信息的报文后,自动发送至CPU处理,将报文中的vid信息对应的tag接口的配置为有效并配置为收发使能状态,并配置好tag接口底层发包路径,从而完成Overlay网络中SCN通道的建立,使得Overlay网络中域控制器与远端网元间可以顺利通信。
附图说明
图1为本发明实施例中在SPTN系统Overlay场景下建立SCN通道的方法的SPTN系统的结构示意图;
图2为本发明实施例中在SPTN系统Overlay场景下建立SCN通道的方法的流程示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供一种在SPTN系统Overlay场景下建立SCN通道的方法,SPTN系统包括一个域控制器、与域控制器相连的至少一个近端网元,还包括与近端网元连接的多个远端网元,每个远端网元通过城域PTN提供的VLAN通道与一个近端网元相连接,其特征在于:
S1,在近端网元和远端网元均增设多个tag接口,为每个tag接口分配一个vid信息,为近端网元或远端网元的全部tag接口对应的vid信息创建接口信息表,接口信息表包括4096个表项,每个表项对应一个缺省接口或tag接口,每个表项包括接口号和vid信息等属性字段;
S2,基于VLAN通道增设tag通道,每个tag通道对应一个VLAN通道、近端网元的一个tag接口和远端网元的一个tag接口,通过vid信息建立对应关系;获取全部tag通道的vid信息;
S3,设置近端网元为Overlay模式,域控制器将需要建立SCN通道的tag通道的vid信息通过控制报文下发给近端网元;
S4,近端网元接收控制报文中的vid信息,将其与控制报文中的vid信息对应的tag接口均设置为收发使能状态,并配置好tag接口底层发包路径,通过发送使能状态的tag接口向对应的tag通道发送广播报文,广播报文是封装了控制报文中的vid信息的广播报文;
S5,设置远端网元的全部tag接口为发送不使能、接收使能状态,设置远端网元接收到包含vid信息的广播报文时,将广播报文发送至CPU处理;
S6,与控制报文中的vid信息对应的tag通道连接的远端网元接收包含vid信息的广播报文时,将广播报文发送至CPU处理,通过CPU获取广播报文中的vid信息,将其与vid信息对应的tag接口配置为有效接口并设置为收发使能状态,并配置好tag接口底层发包路径,完成SCN通道的建立。
近端网元包括OSFP协议栈和SCN通道适配模块,OSFP协议栈用于接收tag接口的注册,将欲向外发送的广播报文向其注册的全部tag接口号下发给SCN通道适配模块,SCN通道适配模块用于查找接口号对应的tag接口并分别判断各tag接口是否为发送使能状态,将控制报文中的vid信息封装至广播报文,通过发送使能状态的tag接口发送封装了vid信息的广播报文。
本发明通过域控制器将vid信息下发给近端网元,再通过近端网元发送的广播报文将vid信息发送给远端网元,设置远端网元接收到包含vid信息的报文后,自动发送至CPU处理,将报文中的vid信息对应的tag接口的配置为有效并配置为收发使能状态,并配置好tag接口底层发包路径,从而完成Overlay网络中SCN通道的建立,使得Overlay网络中域控制器与远端网元间可以顺利通信。
远端网元的tag端口经过预设的周期没有接收到采用vid信息封装了的控制报文或协议报文时,将该接口设置为无效状态,通过Vlan老化处理流程实现,具体包括以下步骤:
1)设置变量初值:vid=1;
2)从接口信息表中读取vid对应的表项信息;
3)判断接口号是否为NULL,如果为NULL,则跳转到7);
4)如果接口号非空,则判断该表项是否超时,即比较持续时间是否大于预设的老化超时时间间隔;
5)如果持续时间不大于老化超时时间间隔,则没有超时,进行时间累计处理:持续时间增加1个轮询周期;然后跳转到7)
6)如果持续时间大于老化超时时间间隔,则已经超时需要老化该表项,老化处理包括:向OSFP协议栈注销该接口号,然后拆除tag接口底层发包路径,比如在交换芯片的流组表资源中删除该接口的发包路径,接下来复位重置接口信息表的对应表项:设置发送使能标准为0、维持接收使能标准为1、清持续时间为0、设置接口号为NULL;
7)循环变量加一:vid=vid+1;
8)判断vid是否大于4095(即是否完成一轮循环),如果大于4095则退出此轮循环,即调到10);
9)如果vid小于等于4095,则调到2)继续循环处理;
10)休眠等待延时1个周期;
11)跳转到1),重新开启一轮循环。
SCN通道还包括缺省通道类型,缺省通道用于发送不包含vid信息的报文。近端网元和远端网元均包括一个缺省接口,缺省接口为不包含vid信息的报文的收发接口。
接口信息表的每个表项还包括接口是否有效,接收使能标志,发送使能标志以及接口有效时间等属性字段。近端网元通过更改接口信息表将其与控制报文中的vid信息对应的tag接口设置为收发使能状态。远端网元通过更改接口信息表将其与广播报文中的vid信息对应的tag接口设置为有效接口并设置为收发使能状态。
设置远端网元接收到包含vid信息的广播报文时,将广播报文发送至CPU处理包括:远端网元上电初始化时,将流表资源中的流表项配置为匹配vid及控制报文特征字段信息,将表项动作配置为转发到CPU端口。
近端网元和远端网元均包括OSFP协议栈和SCN通道适配模块,OSFP协议栈会周期性地将欲向外广播的Hello报文下发给SCN通道适配模块,SCN通道适配模块用于判断tag接口是否为发送使能状态并仅允许发送使能状态的tag接口发送报文。
远端网元接收用vid信息封装了的控制报文或协议报文(广播或单播报文)时:
1)提取该报文携带的vid信息(如果不带vlan,则认为vid=0);
2)用提取的vid在接口信息表中查找对应的接口表项,并读取表项信息;
3)判断接口号是否为NULL,如果为NULL,则表示该接口以前无效,此种情况下收到的报文是广播报文,现在开启VLAN学习功能:从收到的广播报文中可以学习到新的vlan通道,依据学到的vlan准备好tag接口底层发包路径,比如在交换芯片的流组表资源中配置该接口的发包路径,进而使得对应的tag通道建立起来,并重新配置接口信息表的对应表项:设置发送使能标准为1,维持接收使能标准为1,清持续时间为0,设置一个新的有效接口号;接下来向OSFP协议栈注册该接口号,并将收到的广播报文通过该接口号上送给OSFP协议栈处理;此后该接口有效期内收到的所有用相同vid信息封装的控制报文或协议报文也会通过该接口号上送给OSFP协议栈处理;
4)如果接口号为有效值,则表示vlan通道早已学到、tag接口已经有效,只需进行tag接口刷新处理:将tag接口对应的持续时间清为0,维持接收使能标准和发送使能标志为1,并将收到的报文通过该接口号上送给OSFP协议栈处理。
完成SCN通道的建立后,远端网元的tag接口经过预设的周期没有接收到采用vid信息封装了的控制报文或协议报文时,将该接口设置为无效状态。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。