发明内容
有鉴于此,本发明提供了一种控制传输优先级的方法、系统、装置和用户网络边缘设备,以便于减小配置和维护工作的复杂度、降低配置和维护成本。
一种控制传输优先级的方法,应用于包含MPLS核心网和用户网络的架构,预先在MPLS核心网中的一个或多个设备上配置路由信息与QoS信息的对应关系,该方法包括:
MPLS核心网中配置了所述对应关系的设备在确定某路由信息满足QoS信息下发条件时,从所述对应关系中获取所述路由信息的QoS信息,并将所述路由信息和路由信息的QoS信息携带在包含所述路由信息的BGP报文中后,逐跳进行转发直至用户网络中的用户网络边缘CE设备;
所述CE设备接收所述BGP报文,从所述BGP报文中获取所述路由信息和路由信息的QoS信息,并在使用所述路由信息转发业务流时,在所述业务流的IP报文头中携带所述QoS信息所对应的IP优先级信息。
一种控制传输优先级的装置,该装置为MPLS核心网中配置了路由信息与QoS信息的对应关系的设备,该装置包括:对应关系存储单元、条件触发单元和QoS信息处理单元;
所述对应关系存储单元,用于存储预先配置的路由信息与服务质量QoS信息的对应关系;
所述条件触发单元,用于确定路由信息是否满足QoS信息下发条件;
所述QoS信息处理单元,用于在所述条件触发单元确定某路由信息满足QoS信息下发条件时,从所对应关系存储单元存储的所述对应关系中获取所述路由信息的QoS信息,并将所述路由信息的QoS信息携带在包含所述路由信息的BGP报文中后,转发给下一跳设备。
一种CE设备,该CE设备包括:信息接收单元、信息存储单元、优先级携带单元和业务流发送单元;
所述信息接收单元,用于接收从MPLS核心网发送来的BGP报文,从所述BGP报文中获取路由信息和该路由信息的QoS信息,并将该路由信息和路由信息的QoS信息提供给所述信息存储单元;
所述信息存储单元,用于存储所述路由信息和路由信息的QoS信息;
所述优先级携带单元,用于在使用所述路由信息转发业务流时,从所述信息存储单元中获取所述路由信息的QoS信息,将所述路由信息的QoS信息所对应的IP优先级信息携带在所述业务流的IP报文头中,并将该业务流提供给业务流发送单元;
所述业务流发送单元,用于利用所述路由信息转发所述优先级携带单元提供的业务流。
一种控制传输优先级的系统,应用于包含MPLS核心网和用户网络的架构,该系统包括一个或多个上述控制传输优先级的装置和CE设备。
由以上技术方案可以看出,本发明预先在MPLS核心网中的一个或多个设备上配置路由信息与服务质量QoS信息的对应关系,该配置了所述对应关系的设备在确定某路由信息满足QoS信息下发条件时,将该路由信息和路由信息的QoS信息通过逐跳转发的方式发送给CE设备,CE设备接收该路由信息和路由信息的QoS信息,并在使用该路由信息转发业务流时,在业务流的IP报文头中携带该QoS信息所对应的IP优先级信息,从而实现转发优先级的控制。本发明只需要在MPLS核心网中的某个或某些设备上进行路由信息和QoS信息的配置,并在必要的时候下发路由信息的QoS信息给CE设备,而无需在所有CE设备上进行各用户QoS策略的配置;并且,由于用户无法对配置在MPLS核心网设备上的对应关系进行更改,因此,也无需在与各CE设备直连的PE路由器入口处进行QoS策略的配置;在用户的QoS信息发生变化时,只需要在MPLS核心网中配置了所述对应关系的设备进行变更,而无需像现有技术一样需要手工在各CE设备和PE路由器的入口处进行变更,从而使得配置和维护工作更加简单,降低配置和维护工作的成本。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明提供的方法主要为:预先在MPLS核心网中的一个或多个设备上配置路由信息与QoS信息的对应关系;MPLS核心网中配置了该对应关系的设备在确定某路由信息满足QoS信息下发条件时,从配置的对应关系中获取该路由信息的QoS信息,并将该路由信息和路由信息的QoS信息逐跳进行转发直至用户网络中的用户网络边缘CE设备;CE设备接收该路由信息和路由信息的QoS信息,并在使用该路由信息转发业务流时,在该业务流的IP报文头中携带所述QoS信息所对应的IP优先级信息。
在该方法中仅需要在MPLS核心网中的一个或多个设备上配置各路由信息对应的QoS信息,该配置对应关系的设备可以是与某个CE直连的PE路由器,可以是不与CE直连的PE路由器,可以是P路由器,也可以是MPLS核心网中的某个服务器等。
为了更加方便地理解上述方法,下面结合具体实施例对上述方法进行详细描述。本实施例以图2所示组网为例,说明如何实现对CE设备3发往CE设备1的业务流进行的转发优先级控制,在该实施例中假设在PE路由器1上预先配置了路由信息与QoS信息的对应关系,图3为本发明实施例提供的方法流程图,如图3所示,该方法可以包括以下步骤:
步骤301:PE路由器1接收到CE设备1的路由信息后,根据预先配置的对应关系确定该路由信息对应的QoS信息。
CE设备1在自身的路由形成后会发送自身的路由信息到与其直连的PE路由器1。本实施例是以路由信息与QoS信息的对应关系配置在PE路由器1为例进行的描述,也可以将对应关系预先配置在MPLS核心网中的其它设备上,由于路由信息会在MPLS核心网络中进行逐跳转发,因此,配置了对应关系的设备总会接收到CE设备1的路由信息。例如,如果对应关系配置在P路由器3上,CE设备1发送自身路由信息到PE路由器1上后,PE路由器1会将该路由信息包含在BPG报文中在MPLS核心网中转发,即PE路由器1发送给P路由器2、P路由器2再转发给P路由器3和P路由器1,由于这样的逐跳转发,P路由器3便会接收到CE设备1的路由信息从而能够根据预先配置的路由信息与QoS信息的对应关系确定该路由信息对应的QoS信息。
在本步骤中,PE路由器1是在接收到路由信息,且该路由信息包含在预先配置的对应关系内,从而满足了QoS信息下发条件的;另外,如果PE路由器获知对应关系内某个路由信息的QoS信息发生变化,则也满足QoS信息下发条件。
上述对应关系中的QoS信息可以是针对用户设置的QoS信息,也可以是针对不同种类的业务流设置的QoS信息,或者是以上两种的结合。接收到路由信息后,PE路由器1可以查找该路由信息对应用户的QoS信息,也可以查找该路由信息对应的用户所订制的不同种类业务流的QoS信息,或者是两种的结合。上述的QoS信息可以体现为用户的等级、业务种类的转发等级等,也可以直接为传输优先级。
步骤302:PE路由器1采用BGP协议处理该路由信息,并将该路由信息的QoS信息携带在包含该路由信息的BGP报文中,将该BGP报文转发给下一跳设备,并在MPLS核心网中进行逐跳转发,直至CE设备。
在本步骤中,PE路由器1接收到CE设备1发送的路由信息后,会采用BGP协议中的BGP报文来携带该路由信息,并将该路由信息的QoS信息携带在该BGP报文的BGP路由属性中。
RFC4270中定义的BGP路由属性的格式如图4所示,本发明可以使用该BGP路由属性来携带QoS信息,该BGP路由属性的格式主要包括三部分:属性类型(Attribute Type)字段、属性长度(Attribute Length)字段和属性值(Attribute Value)字段。
其中,Attribute Type字段用来携带该BGP路由属性的类型,该字段为2字节长度,其可以具体包括8比特的标记(flag)字段和8比特的代码(code)字段,如图5所示,其中,flag字段中的O比特标识该属性是可选属性还是公认属性;T比特标识该属性是过渡属性还是非过渡属性;P比特标识该属性为可选属性时局部有效还是全局有效;E比特标识该属性长度是两个字节还是一个字节;低四位为保留字段,可以全部置零。该flag部分的定义本发明可以设置为可选过渡属性,即在O比特中标识可选属性,在T比特中标识过渡属性,从而表明在MPLS核心网的转发过程中,MPLS核心网中的设备能够接收该携带QoS信息的BGP报文,并继续转发下去。Code字段可以用来标识该属性的具体类型,只要采用一个未被其它已知的属性类型使用的类型标识即可,例如,可以采用十进制48来标识该属性携带路由信息的QoS信息,即Attribute Value字段中携带该路由信息的QoS信息。
Attribute Length字段用来标识Attribute Value字段的长度。
Attribute Value字段用于携带路由信息的QoS信息,一个BGP路由属性中可以仅包含一个Attribute Value字段,也可以包含多个Attribute Value字段来携带该路由信息的多个QoS信息。每一个Attribute Value字段的格式可以如图6所示,前8比特是协议类型(P)字段,用于携带IP协议号即标识业务流的类型;后3比特是转发等级(EXP)字段,用于携带P字段所标识种类的业务流所对应的转发等级;中间5比特是用户级别(CE)字段,用于携带该路由信息对应的用户级别。
在此举一个例子,例如,如果CE设备1对应的用户购买等级为最高级别,且购买了高质量的TCP业务服务,因此,运营商在PE路由器1中预先针对该用户配置了相应的对应关系,当PE路由器1接收到该CE设备1的路由信息后,通过BGP报文来携带该路由信息,并将该路由信息的QoS信息添加到BGP报文的BGP路由属性中。该BGP报文包含的路由信息所对应用户的用户级别为最高级别,在此用0标识,利用该路由信息转发的TCP业务流的转发等级为6,那么利用Attribute Value字段标识该QoS信息时可以表示为二进制的0001000100000110,如图7所示。
另外,也可以仅在Attribute Value字段中携带用户级别信息,或仅携带业务流的转发等级信息,或者同时携带。并且可以通过在一个BGP路由属性中包含多个Attribute Value字段来分别携带该路由信息所对应用户的多种不同种类业务流的转发等级信息。通过上述BGP路由属性的方式可以实现对QoS信息的精细设置,即不仅可以针对该路由所对应用户的QoS进行设置,还可以针对不同种类的业务流进行QoS设置。
PE路由器1将携带QoS信息和路由信息的BGP报文发送给下一跳的设备,MPLS核心网中的其它设备的功能不变,接收到BGP报文后进行逐跳转发,直至发送至CE。在图2所示组网中,BGP报文从PE路由器1经由四个P路由器后转发至PE路由器3和PE路由器2,并分别转发至CE设备3和CE设备4,且从PE路由器1直接转发至CE设备2。
步骤303:接收到BGP报文的CE设备3获取其中的路由信息和该路由信息的QoS信息并存储在全局路由表中。
各CE设备中存储有全局路由表,全局路由表中包含各路由信息和各路由信息的QoS信息。CE设备3获取BGP报文中携带的路由信息和该路由信息的QoS信息,首先查找全局路由表中是否已经包含该路由信息,如果没有包含,则将该路由信息和该路由信息的QoS信息存储在该全局路由表中;如果已经包含,则确定该全局路由表中该路由信息的QoS信息是否和获取的相同,如果相同,则不做处理,如果不同,则利用获取的该路由信息的QoS信息对全局路由表中该路由信息的QoS信息进行更新。
CE设备2和CE设备4接收到携带路由信息的QoS信息的BGP报文后,也执行同样操作,不再赘述。
步骤304:CE设备3需要利用该路由信息发送业务流到CE设备1时,从全局路由表中获取该路由信息的QoS信息,并将该QoS信息对应的IP优先级信息携带在该业务流的IP报文头中后,利用该路由信息发送该业务流。
在本步骤中,可以预先在各CE设备中建立QoS信息与IP优先级信息之间的对应关系,CE设备3根据该对应关系确定QoS对应的IP优先级,并将确定的IP优先级携带在该业务流的IP报文头中。IP优先级通常携带在IP报文头中服务类型(TOS)字段的前3比特。例如,如果CE设备3发送的业务流为TCP协议的业务流,则可以查找该路由信息对应的QoS信息中TCP协议业务的转发等级,并利用上述对应关系,将该转发等级对应的IP优先级携带在该业务流的IP报文头中。如果没有具体业务种类进行精细划分,也就是说,该路由信息的QoS信息仅包含该路由信息对应用户的等级,则可以将该用户的等级所对应的IP优先级携带在该业务流的IP报文头中。如果既包含了具体业务种类的转发等级又包含了用户的等级,则可以综合权衡确定一个IP优先级,或默认以其中一个来确定IP优先级。
步骤305:PE路由器3接收到CE设备3的业务流后,将该业务流的IP报文头中携带的IP优先级信息映射到MPLS标签中后在MPLS核心网中进行转发,MPLS核心网中的各设备根据业务流的MPLS标签中携带的优先级信息控制该业务流的转发。
在MPLS核心网中是通过MPLS标签来指导流量转发的,因此,需要将IP报文头中的IP优先级信息映射到MPLS标签中。为了方便理解,对MPLS标签的结构进行简单描述,图8为MPLS标签的格式示意图,其中,占用3比特的EXP字段即用来标识转发优先级,PE路由器3将IP报文头中的IP优先级映射到MPLS标签的EXP字段中。MPLS核心网中的各设备根据业务流的MPLS标签的EXP字段中携带的优先级信息对业务流进行限速、队列管理等转发控制。
上述实施例是以在PE路由器1上配置路由信息和QoS信息的对应关系为例进行的描述,同时,也可以在MPLS核心网中的其它PE路由器或P路由器上进行该对应关系的配置,例如,将该对应关系配置在PE路由器3上,PE路由器3会接收到从PE路由器1经由MPLS核心网中其它路由器转发来的仅包含CE设备路由信息的BGP报文后,根据配置在自身的对应关系将该路由信息的QoS信息携带在该BGP报文中后转发给CE设备3。或者,同时在多个PE路由器或P路由器上进行路由信息和QoS信息的对应关系的配置,例如,可以在各与CE设备直连的PE路由器上配置与其直连的CE设备的路由信息和QoS信息的对应关系,其工作原理相同,不再一一赘述。
由于本发明在MPLS核心网中的设备上配置路由信息和QoS信息的对应关系,用户很难对该对应关系进行更改,因此,在与CE设备直连的PE设备入口处不需要配置QoS策略对接收到的业务流携带的IP优先级进行进一步检验。但是,如果想更加严密地控制业务流的优先级,则在与CE设备直连的PE设备入口处也可以配置QoS策略,并据此判断接收到的业务流携带的IP优先级是否需要更改,以完成对业务流优先级的进一步检验。
以上是对本发明的方法进行的描述,下面对本发明所提供的系统和装置进行详细描述。本发明所提供的系统可以主要包括:MPLS核心网中配置了路由信息与QoS信息的对应关系的一个或多个装置,以及用户网络中的CE设备。
MPLS核心网中配置了该对应关系的装置在确定某路由信息满足QoS信息下发条件时,从该对应关系中获取该路由信息的QoS信息,并将该路由信息和路由信息的QoS信息逐跳进行转发直至用户网络中的CE设备。
CE设备接收该路由信息和路由信息的QoS信息,并在使用该路由信息转发业务流时,在该业务流的IP报文头中携带该QoS信息所对应的IP优先级信息。
其中,上述配置了对应关系的装置可以为MPLS核心网中的PE路由器、P路由器或构建在MPLS核心网中的服务器。
图9为本发明实施例提供的配置了路由信息和QoS信息对应关系的装置的结构图,如图9所示,该装置可以包括:对应关系存储单元900、条件触发单元910和QoS信息处理单元920。
对应关系存储单元900,用于存储预先配置的路由信息与QoS信息的对应关系。
条件触发单元910,用于确定路由信息是否满足QoS信息下发条件。
QoS信息处理单元920,用于在条件触发单元910确定某路由信息满足QoS信息下发条件时,从对应关系存储单元900存储的对应关系中获取该路由信息的QoS信息,并将该路由信息和该路由信息的QoS信息转发给下一跳设备。
上述条件触发单元910接收到某路由信息并确定该路由信息的QoS信息包含在上述对应关系中,则可以确定该路由信息满足QoS信息下发条件;或者,获知该对应关系中包含的某路由信息的QoS信息被更新,则可以确定该路由信息满足QoS信息下发条件。
上述对应关系中的QoS信息可以是针对用户设置的QoS信息,也可以是针对不同种类的业务流设置的QoS信息,或者是以上两种的结合。接收到路由信息后,PE路由器1可以查找该路由信息对应用户的QoS信息,也可以查找该路由信息对应的用户所订制的不同种类业务流的QoS信息,或者是两种的结合。上述的QoS信息可以体现为用户的等级、业务种类的转发等级等,也可以直接为传输优先级。
其中,QoS信息处理单元920具体包括:信息获取子单元921、信息携带子单元922和信息发送子单元923。
信息获取子单元921,用于在条件触发单元910确定某路由信息满足QoS信息下发条件时,从对应关系存储单元900存储的对应关系中获取该路由信息的QoS信息。
信息携带子单元922,用于将该路由信息的QoS信息携带在包含该路由信息的BGP报文中BGP路由属性的Attribute Value字段中后,将BGP报文提供给信息发送子单元923。
信息发送子单元923,用于将信息携带子单元922提供的BGP报文发送给下一跳设备。
由于该装置还可能是与CE设备直连的PE路由器,此时,其还负责接收与其直连的CE设备发送的业务流,并进行优先级的映射,此时,该装置还可以包括:优先级映射单元930,用于接收到与该装置直连的CE设备发送的业务流后,将该业务流的IP报文头中携带的IP优先级信息映射到该业务流的MPLS标签中。
优先级映射单元930可以将业务流的IP报文头中TOS字段的前3比特携带的IP优先级信息映射到MPLS标签的EXP字段中。
图10为本发明实施例提供的CE设备结构图,如图10所示,该CE设备可以包括:信息接收单元1010、信息存储单元1020、优先级携带单元1030和业务流发送单元1040。
信息接收单元1010,用于接收从MPLS核心网发送来的路由信息和该路由信息的QoS信息,并将该路由信息和路由信息的QoS信息提供给信息存储单元1020。
信息存储单元1020,用于存储上述路由信息和路由信息的QoS信息。
优先级携带单元1030,用于在使用该路由信息转发业务流时,从信息存储单元1020中获取该路由信息的QoS信息,将该路由信息的QoS信息所对应的IP优先级信息携带在业务流的IP报文头中,并将该业务流提供给业务流发送单元1040。
业务流发送单元1040,用于利用该路由信息转发优先级携带单元1030提供的业务流。
其中,信息接收单元1010可以包括:报文接收子单元1011和信息获取子单元1012。
报文接收子单元1011,用于接收BGP报文。
信息获取子单元1012,用于获取BGP报文中包含的路由信息,并从BGP报文中BGP路由属性的Attribute Value字段中获取路由信息的QoS信息,并提供给信息存储单元1020。
上述的信息存储单元1020可以具体包括:第一判断子单元1021、第二判断子单元1022和路由表存储子单元1023。
第一判断子单元1021,用于接收到路由信息和路由信息的QoS信息后,判断路由表存储子单元1023中存储的全局路由表中是否已经存在包含路由信息的表项,如果尚没有存在,将路由信息和路由信息的QoS信息提供给路由表存储子单元1023;如果已经存在,则将路由信息和路由信息的QoS信息提供给第二判断子单元1022。
第二判断子单元1022,用于判断全局路由表中存储的路由信息的QoS信息是否与接收到的路由信息的QoS信息相同,如果相同,则不做处理,如果不同,将路由信息和路由信息的QoS信息提供给路由表存储子单元1023。
路由表存储子单元1023,用于将第一判断子单元1021提供的路由信息和路由信息的QoS信息存储在全局路由表中;利用第二判断子单元1022提供的路由信息的QoS信息对全局路由表中存储的该路由信息的QoS信息进行更新。
由以上描述可以看出,本发明提供的方法、系统、装置和CE设备具备以下优点:
1)本发明预先在MPLS核心网中的一个或多个设备上配置路由信息与QoS信息的对应关系,配置了该对应关系的设备在确定某路由信息满足QoS信息下发条件时,将该路由信息和路由信息的QoS信息通过逐跳转发的方式发送给CE设备,CE设备接收该路由信息和路由信息的QoS信息,并在使用该路由信息转发业务流时,在业务流的IP报文头中携带该QoS信息所对应的IP优先级信息,从而实现转发优先级的控制。本发明只需要在MPLS核心网中的某个或某些设备上进行路由信息和QoS信息的对应关系的配置,并在必要的时候下发路由信息的QoS信息给CE设备,而无需在所有CE设备上进行各用户QoS策略的配置;并且,由于用户无法对配置在MPLS核心网设备上的QoS策略进行更改,因此,也无需在与各CE设备直连的PE路由器入口处进行QoS策略的配置;在用户某个路由信息的QoS信息发生变化时,只需要在MPLS核心网中配置了QoS策略的设备进行变更,而无需像现有技术一样需要手工在各CE设备和PE路由器的入口处进行变更,从而使得配置和维护工作更加简单,降低配置和维护工作的成本。
2)本发明可以通过在MPLS核心网中任意一个或多个设备上配置路由信息和QoS信息的对应关系来实现传输优先级的控制,从而使得全网部署更加灵活。并且,这种在MPLS核心网中的一个或个别设备上配置该对应关系来实现对全网用户传输优先级的控制方法,更加方便运营商对全网用户优先级的集中管理。
3)本发明更进一步为配置了路由信息和QoS信息的对应关系的设备提供了下发路由信息的QoS信息的方法,即通过扩展已有的包含路由信息的BGP报文来携带,通过BGP报文中BGP路由属性的Attribute Value字段来携带,无需对MPLS核心网中的其它设备进行变动,接收到BGP报文后仍按照原来的转发方式进行逐跳转发,直至CE。也就是说,本发明能够与现有网络架构兼容,对已有协议变动很小。
4)更优地,本发明提供的利用BGP报文中BGP路由属性携带的QoS信息可以是用户等级信息,还可以是具体业务种类的转发等级信息,还可以是两者的结合,并给出了具体的格式实例,更加细致地区分用户需求,更加方便地为用户提供有差异的服务质量,提高了用户体验。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。