发明内容
本发明要解决的技术问题是提供一种实现跨线卡MSP的方法、主控芯片和PTN设备,以提高MSP保护切换性能。
为了解决上述技术问题,本发明提供了一种实现跨线卡多复用段保护(MSP)的方法,包括:
主控芯片将第一级联口和第二级联口分别与第一同步数字体系的传输模式(STM)线卡和第二STM线卡建立连接关系;
所述主控芯片配置第一STM线卡的指定端口和第二STM线卡的指定端口形成MSP组,建立所述第一级联口和所述第二级联口与该MSP组的对应关系;
所述主控芯片接收到上行方向上的业务后,若识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口,根据所述MSP组的状态选收所述指定端口中的一个端口的业务进行转发;
所述主控芯片接收到下行方向上的与所述指定端口对应业务后,根据所述MSP组的状态选择通过第一级联口和/或所述第二级联口转发所述业务。
进一步地,上述方法还具有下面特点:所述主控芯片识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口是通过以下方式实现的:
所述主控芯片通过访问控制列表匹配级联口和内控伪线上行多协议标签交换(MPLS)标签的指定N位的比特位,来识别业务对应的STM线卡的端口。
进一步地,上述方法还具有下面特点:所述主控芯片配置第一STM线卡的指定端口和第二STM线卡的指定端口形成MSP组的过程中,包括:
所述主控芯片向所述第一STM线卡的指定端口和第二STM线卡的指定端口下发相同的业务配置。
进一步地,上述方法还具有下面特点:所述根据所述MSP组的状态选择通过第一级联口和/或所述第二级联口转发所述业务包括:
所述主控芯片将所述指定端口对应业务对应的转发表中的出端口修改为指定端口值;
通过访问控制列表匹配所述指定端口值,所述指定端口值对应所述第一级联口和所述第二级联口;
根据所述多复用段保护组的状态和所述指定端口值选择所述第一级联口和/或所述第二级联口转发所述业务。
进一步地,上述方法还具有下面特点:
如所述MSP组为MSP1+1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口和所述第二级联口转发所述业务;
如所述MSP组为MSP1∶1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口或所述第二级联口转发所述业务。
为了解决上述问题,本发明还提供了一种主控芯片,包括:
第一模块,用于将第一级联口和第二级联口分别与第一同步数字体系的传输模式(STM)线卡和第二STM线卡建立连接关系;
第二模块,用于配置第一STM线卡的指定端口和第二STM线卡的指定端口形成多复用段保护(MSP)组,建立所述第一级联口和所述第二级联口与该MSP组的对应关系;
第三模块,用于接收到上行方向上的业务后,若识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口,根据所述MSP组的状态选收所述指定端口中的一个端口的业务进行转发;
第四模块,用于接收到下行方向上的与所述指定端口对应业务后,根据所述MSP组的状态选择通过第一级联口和/或所述第二级联口转发所述业务。
进一步地,上述主控芯片还具有下面特点:
所述第二模块,在配置第一STM线卡的指定端口和第二STM线卡的指定端口形成多复用段保护(MSP)组的过程中还用于,向所述第一STM线卡的指定端口和第二STM线卡的指定端口下发相同的业务配置。
进一步地,上述主控芯片还具有下面特点:
所述第三模块,识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口是通过以下方式实现的:通过访问控制列表匹配级联口和内控伪线上行多协议标签交换(MPLS)标签的指定N位的比特位,来识别业务对应的STM线卡的端口。
进一步地,上述主控芯片还具有下面特点:所述第四模块包括:
第一单元,用于接收到下行方向上的与所述指定端口对应业务后,将所述指定端口对应业务对应的转发表中的出端口修改为指定端口值;
第二单元,用于通过访问控制列表匹配所述指定端口值,所述指定端口值对应所述第一级联口和所述第二级联口;
第三单元,用于根据所述MSP组的状态和所述指定端口值选择所述第一级联口和/或所述第二级联口转发所述业务。
进一步地,上述主控芯片还具有下面特点:
第三单元,具体用于如所述MSP组为MSPl+1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口和所述第二级联口转发所述业务;如所述MSP组为MSPl∶1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口或所述第二级联口转发所述业务。
为了解决上述问题,本发明还提供了一种分组传送网设备,包括至少两个同步数字体系的传输模式(STM)线卡和上述的主控芯片。
综上,本发明提供一种实现跨线卡MSP保护的方法及主控芯片、PTN设备,涉及到主控芯片(一般是ASIC(Application Specific Integrated Circuit,专用集成电路)交换芯片)一系列的设置,主要提供PTN设备跨线卡MSP保护高性能的装置和系统,高性能主要体现在切换时间和业务数量无关,同时可以节省硬件的ACL等资源。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
利用本发明的实施例实现基本业务(不包括MSP保护)需要以下步骤:
针对STM线卡上面每个业务(对应网络侧一个伪线),系统会在线卡和主控芯片间分配一对内控伪线MPLS(Multi-Protocol Label Switching,多协议标签交换)标签(包括上行内控伪线MPLS标签和下行内控伪线MPLS标签)进行通信。
上行:
步骤11、STM线卡把TDM(Time Division Multiplex and Multiplexer,时分复用)或者ATM(Asynchronous Transfer Mode,异步传输模式)业务根据PWE3(Pseudo-WireEmulation Edge to Edge,伪线的端到端仿真)协议用内控的上行伪线MPLS标签进行封装后发送给主控芯片。
步骤12、主控芯片根据上行的内控伪线MPLS标签进行MPLS标签交换为网络侧的伪线上行MPLS标签,同时封装隧道MPLS标签,目的MAC(Media Access Control,媒体接入控制),源MAC,VLAN(Virtual Local Area Network,虚拟局域网)信息等,从网络侧端口发送出去。
下行:
步骤21、主控剥离隧道下行MPLS标签后根据伪线下行MPLS标签进行MPLS标签交换为用户侧的内控的伪线下行MPLS标签。
步骤22、STM线卡收到报文后,根据内控的伪线下行MPLS标签识别业务进行用户侧业务的转发。
为了实现跨线卡高性能的MSP保护,针对主控芯片本发明实施例提供的跨线卡MSP的方法,如图1所示,包括以下步骤:
S100、主控芯片将第一级联口和第二级联口分别与第一STM线卡和第二STM线卡建立连接关系;
S200、主控芯片配置第一STM线卡的指定端口和第二STM线卡的指定端口形成MSP组,建立所述第一级联口和所述第二级联口与该MSP组的对应关系;
S300、主控芯片接收到上行方向上的业务后,若识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口,根据所述MSP组的状态选收所述指定端口中的一个端口的业务进行转发;
S400、主控芯片接收到下行方向上的与所述指定端口对应业务后,根据所述MSP组的状态选择通过第一级联口和/或所述第二级联口转发所述业务。
对于下行来说,主控芯片把跨线卡的STM端口之间的MSP保护转换成主控芯片的级联口之间的保护,这样跨线卡的多个MSP保护组可以转换为主控芯片上同一对级联口之间的保护,不但和业务数量无关,而且多个MSP保护组可能对应到同一对级联口,可以大大节省ACL等硬件资源,同时提高切换性能。
由于不是级联口上的业务都需要保护(对于STM-4线卡来说,主控芯片一个级联口对应线卡的4个STM端口,不是所有STM端口都配置了跨线卡MSP保护),所以对于需要进行级联口保护的业务需要区分,在伪线对应的标签转发表里面把需要级联口保护的业务的出端口修改为特殊的无效端口(每个特殊的无效端口对应到一对级联口保护)。
交换芯片的端口一般是(moduleId(模块标识),portId(端口标识)),比如moduleId有8bit,如果系统只有一个交换芯片,那么moduleId 1-255就可以作为特殊标志,比如:业务本来出端口是moduleId 0,级联口port 1,如果业务需要在级联口port 1、port2之间进行保护,那么主控芯片可以把级联口port 1、port 2之间的保护的业务在转发表用module 1,port 1来标志,然后通过ACL(直接匹配特殊的moduleId就可以)进行双发(如果是MSPl+1),或者切换。
由于是多个伪线转发表都对应到1个ACL规则,所以在节省ACL资源的同时,对于MSP 1∶1来说切换性能也大大提高,和业务数量无关,一对级联口之间只需要切换一次。(跨线卡MSPl+1保护下行不需要切换,永远双发。)
对于上行来说,线卡上面不再通过ACL匹配级联口+内控的上行伪线标签(对应一个业务)进行选收,而是直接通过ACL匹配级联口(设备线卡)+内控的上行伪线标签的最后几个bit(当然,也可以指定其它位的比特位,如中间几个bit)(如果是STM-1线卡不需要匹配;如果是STM-4线卡需要最后2个bit,00代码STM的端口1,01代表端口2,10代表端口3,11代表端口4;如果是STM-16线卡那么需要匹配最后4个bit,以此类推)进行选收,也就是直接通过ACL在主控芯片上面一次识别STM线卡上面某个端口的所有业务,ACL的规则数目和业务数量无关,大大地节省了ACL等硬件资源,同时选收的时候也和业务无关了,可以大大提高选收的切换性能。
具体地利用本发明实现MSP保护还可以包括以下步骤:
1:如果存在跨线卡的MSP保护,不管是MSP 1+1保护还是MSP 1∶1保护,两块线卡上面的工作STM端口和保护STM端口上面的业务配置要求一样。
2:线卡和主控芯片间通过内控标签识别业务,但是主控芯片同时可以通过内控伪线标签的指定N位比特位(bit)(例如最低几位)来识别STM的端口号,所以系统在分配内控伪线的上行标签的时候,需要注意给不同的STM端口分配不同的标签类型,比如对于STM-4线卡来说,对于STM线卡的端口1上面的业务只能分配最低2bit为0的MPLS标签,对于STM线卡的端口2上面的业务只能分配最低2bit为1的MPLS标签,对于STM线卡的端口3上面的业务只能分配最低2bit为2的MPLS标签,对于STM线卡的端口4上面的业务只能分配最低2bit为3的MPLS标签。内控伪线标签的下行MPLS标签没有限制。
3:如果是跨线卡MSP 1+1保护,下行方向主控芯片向两块线卡同时发送同样的流量(把网络侧下行方向的MPLS标签对应的转发表的端口修改为特殊值,然后通过ACL匹配特殊值端口,把报文重定向到端口位图,包括主备两个级联口,实现两块线卡的双发)。上行方向两个线卡同时向主控芯片发送流量,主控芯片根据MSP保护组状态进行选收其中一份流量(通过ACL匹配级联口+内控伪线上行MPLS标签的低几位(STM-4为最低2,位STM-16为最低4位)丢弃其中一份报文)。
4:如果是跨线卡MSP 1∶1保护,下行方向主控芯片只向其中一块线卡发送流量(把网络侧下行方向的MPLS标签对应的转发表的端口修改为特殊值,然后通过ACL匹配特殊值端口,根据保护组状态,把报文重定向到两个级联口中的一个)。上行方向有用信息只会在一块线卡上面往主控芯片发送,但是如果另外一块线卡没有流量也会往主控发送空闲帧,所以上行方向和MSP 1+1保护一样,主控根据MSP保护组状态进行选收其中一份流量(通过ACL匹配级联口+内控伪线上行MPLS标签的低几位(例如,STM-4最低2位,STM-16最低4位)丢弃其中一份报文)。
与现有技术相比较,本发明实施例提出了PTN设备跨线卡MSP保护高性能的装置和系统,切换时间和业务数量无关,大大地提升了切换性能,同时可以节省大量的ACL等硬件资源。
以下以具体实施例对本发明的实现跨线卡MSP的方法进行详细的说明。
如图2所示,假设PTN设备存在两块STM-4线卡,分别是线卡1和2,STM-4线卡1和主控芯片的级联口1相连,STM-4线卡2和主控芯片的级联口2相连,线卡1的端口1和线卡2的端口4形成MSP 1+1保护。
STM-4线卡1端口1上面承载了64条E1业务。(所有业务被线卡2的端口4保护)列出2条业务进行描述。
E1业务1通过伪线1(网络侧)承载走隧道100从网络侧出去。隧道100的上行MPLS标签是1000,下行MPLS标签是2000,伪线1的上行MPLS标签是100,下行MPLS标签是200。
E1业务2通过伪线2(网络侧)承载走隧道100从网络侧出去。隧道100的上行MPLS标签是1000,下行MPLS标签是2000,伪线2的上行MPLS标签是101,下行MPLS标签是201。
STM-4线卡1端口3上面承载了64条E1业务。(所有业务没有配置MSP保护)列出1条业务进行描述。
E1业务3通过伪线3(网络侧)承载走隧道100从网络侧出去。隧道100的上行MPLS标签是1000,下行MPLS标签是2000,伪线3的上行MPLS标签是102,下行MPLS标签是202。
那么线卡和主控芯片的操作步骤如下:
步骤101:线卡2端口4上面下发和线卡1端口1一样的配置。
步骤102:主控芯片给E1业务1分配内控的上行伪线MPLS标签16和内控的下行伪线MPLS标签3016。
给E1业务2分配内控的上行伪线MPLS标签20和内控的下行伪线MPLS标签3020,
给E1业务3分配内控的上行伪线MPLS标签18和内控的下行伪线MPLS标签3018,
这样主控芯片根据线卡过来的内控的上行伪线MPLS标签就可以识别线卡的端口,16、20标签的最低2bit是0,所以是STM端口1;18标签的最低2bit是2,所以是STM端口3。主控芯片通过标签可以识别STM端口,通过级联口就可以知道STM线卡号,从而可以在主控芯片上面完全识别特定STM线卡特定STM端口的报文进行ACL丢弃实现选收。
步骤103:主控芯片下发上行的转发表,MPLS标签16交换到MPLS标签100,同时封装隧道MPLS标签1000,转发表的出端口是网络侧的目的端口。MPLS标签20交换到MPLS标签101,同时封装隧道MPLS标签1000,转发表的出端口是网络侧的目的端口。MPLS标签18交换到MPLS标签102,同时封装隧道MPLS标签1000,转发表的出端口是网络侧的目的端口。
步骤104:主控芯片下发下行的转发表,隧道MPLS标签2000剥离(多个业务可能复用),业务1根据伪线MPLS标签200交换到MPLS标签3016,转发表的出端口是级联口1。业务2根据伪线MPLS标签201交换到MPLS标签3020,转发表的出端口是级联口1。业务3根据伪线MPLS标签202交换到MPLS标签3018,转发表的出端口是级联口1。由于下行有3个业务,其中,业务1、2是STM-4线卡1的端口1和STM-4线卡2的端口4形成跨线卡MSP保护,那么主控芯片需要转换为级联口1、2之间的保护,主控芯片的级联口之间的保护用特殊的端口来识别(修改moduleId为1),业务3业务是STM-4线卡1端口3的业务,没有形成跨线卡MSP保护,所以对于200、201对应的标签转发表需要把端口号里面的moduleId修改为1,业务3的标签202对应的转发表端口号不需要变化还是0。
步骤105:由于是MSP1+1保护,那么主控芯片的上行需要设置ACL进行选收,如果MSP保护组工作在主,那么设置ACL匹配级联口2(保护线卡)+内控伪线的上行标签的低2bit为11(保护端口为4的业务),执行动作丢弃,丢弃备用线卡STM端口4上的流量;如果MSP保护组工作在备,那么设置ACL匹配级联口1(工作线卡)+内控伪线的上行标签的低2bit为0(工作端口为1的业务),执行动作丢弃,丢弃主用线卡STM端口1上的流量。
步骤106:由于是MSP1+1保护,那么主控芯片的下行需要设置ACL进行双发,ACL匹配出端口module为1的报文,执行动作重定向报文到级联口1和级联口2。
上述实施例主要描述了跨线卡MSP1+1保护的实现情况,跨线卡MSP1∶1保护略有差异,对于主控芯片来说就是下行的时候不需要ACL进行双发,只需要根据保护组的状态更新ACL规则的出端口信息就可以了,即将出端口信息改为级联口1或级联口2。
图3为本发明实施例的主控芯片的示意图,如图3所示,本实施例的主控芯片包括:
第一模块,用于将第一级联口和第二级联口分别与第一同步数字体系的传输模式(STM)线卡和第二STM线卡建立连接关系;
第二模块,用于配置第一STM线卡的指定端口和第二STM线卡的指定端口形成多复用段保护(MSP)组,建立所述第一级联口和所述第二级联口与该MSP组的对应关系;
第三模块,用于接收到上行方向上的业务后,若识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口,根据所述MSP组的状态选收所述指定端口中的一个端口的业务进行转发;
第四模块,用于接收到下行方向上的与所述指定端口对应业务后,根据所述MSP组的状态选择通过第一级联口和/或所述第二级联口转发所述业务。
其中,所述第二模块,在配置第一STM线卡的指定端口和第二STM线卡的指定端口形成多复用段保护(MSP)组的过程中还用于,向所述第一STM线卡的指定端口和第二STM线卡的指定端口下发相同的业务配置。
其中,所述第三模块,识别所述业务来自所述第一STM线卡的指定端口和所述第二STM线卡的指定端口是通过以下方式实现的:通过访问控制列表匹配级联口和内控伪线上行多协议标签交换(MPLS)标签的指定N位的比特位,来识别业务对应的STM线卡的端口。
其中,所述第四模块可以包括:
第一单元,用于接收到下行方向上的与所述指定端口对应业务后,将所述指定端口对应业务对应的转发表中的出端口修改为指定端口值;
第二单元,用于通过访问控制列表匹配所述指定端口值,所述指定端口值对应所述第一级联口和所述第二级联口;
第三单元,用于根据所述MSP组的状态和所述指定端口值选择所述第一级联口和/或所述第二级联口转发所述业务。
其中,第三单元,具体用于如所述MSP组为MSP1+1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口和所述第二级联口转发所述业务;如所述MSP组为MSP1∶1保护,则根据所述MSP组的状态和所述指定端口值选择所述第一级联口或所述第二级联口转发所述业务。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。