拥塞通告方法、装置、系统及网络设备的制作方法

文档序号:7720239阅读:167来源:国知局
专利名称:拥塞通告方法、装置、系统及网络设备的制作方法
技术领域
本发明涉及网络通信技术,尤其涉及一种拥塞通告方法、装置、系统及网络设备。
背景技术
在以太网的网络传输过程中,当网络流量达到最大带宽后,就会造成网络拥塞。传统的解决网络拥塞的方法是网络设备丢掉部分报文,即不是将所有报文都传输。而发送端会因为超时而重传被网络设备丢掉的报文,这种长时间的报文重传会降低网络中有效传输的数据流量,从而缓解发生拥塞的网络设备(或称拥塞点)的压力,直到网络传输恢复畅通状态。该方式可以使网络传输恢复到畅通状态,解决网络拥塞问题,但是该方式速度较慢,效率不高。针对该问题,IEEE 802.1 Qau标准提出了一种拥塞通告(Congestion Notification ;简称为CN)机制,用以解决网络拥塞。当以太网中的网络设备(例如数据中心中的交换机)检测到拥塞时,从产生拥塞的报文中采样部分报文,并将采样到的部分报文封装在拥塞通告消息(Congestion Notification Message ;简称为CNM)中,发送给数据源。其中,数据源是指向网络设备发送报文的设备,例如数据中心中的服务器。当数据源收到CNM时,会根据CNM中的信息降低报文的发送速率,使网络拥塞从根源上解决。同时,数据源还会周期性的尝试增加报文的发送速率,如果此时拥塞已经消除,增加报文的发送速率不会引起拥塞,也就不会收到CNM,报文的发送速率最终恢复到拥塞之前。但是,上述CN机制仅适用于二层网络,CNM属于以太网报文,是基于介质访问控制 (Medium Access Control ;简称为MAC)地址发送的。如果网络中存在三层设备(例如三层路由器、三层交换机等),报文经过一台三层网络设备后,三层网络设备会将报文的生存时间(Time To Live ;简称为TTL)减1,并重新进行网际协议(Internet Protocol ;简称为IP)校验,然后把报文的源MAC地址填写成三层网络设备自己的MAC地址,把报文的目的MAC地址填写成下一跳设备的MAC地址,这样报文到达发生拥塞的网络设备时,报文的源 MAC地址和目的MAC地址都发生了变化。此时,发生拥塞的网络设备按照接收到的报文中的源MAC地址,仅能将CNM发送到与之相距最近的一台三层网络设备上,而不能发送到数据源,从而达不到拥塞控制的目的。

发明内容
本发明提供一种拥塞通告方法、装置、系统及网络设备,用以实现跨三层网络设备的拥塞通告消息的发送,解决拥塞问题。本发明提供一种拥塞通告方法,包括第一三层网络设备对拥塞点发送的第一拥塞通告消息CNM进行解析,获取拥塞源的网际协议IP地址,所述第一三层网络设备是与所述拥塞点在同一网段的三层网络设备;所述第一三层网络设备根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去;所述IP报文的目的IP地址为所述拥塞源的IP地址;第二三层网络设备接收所述IP报文,并根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给所述拥塞源;所述第二 CNM的目的介质访问控制MAC地址为所述拥塞源的MAC地址,所述第二三层网络设备是与所述拥塞源在同一网段的三层网络设备。本发明提供一种拥塞通告装置,包括解析获取模块,用于对拥塞点发送的第一拥塞通告消息CNM进行解析,获取拥塞源的网际协议IP地址;封装发送模块,用于根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理, 生成IP报文,并将所述IP报文发送出去以供与所述拥塞源在同一网段的三层网络设备接收并将所述IP报文还原为第二 CNM后发送给所述拥塞源;所述IP报文的目的IP地址为所述拥塞源的IP地址。本发明另提供一种拥塞通告装置,包括接收模块,用于接收网际协议IP报文,所述IP报文是由与拥塞点在同一网段的三层网络设备对所述拥塞点发送的第一拥塞通告消息CNM进行重封装生成并发送的;还原发送模块,用于根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给拥塞源;所述第二 CNM的目的介质访问控制 MAC地址为所述拥塞源的MAC地址。本发明提供一种网络设备,包括本发明提供的任一拥塞通告装置。本发明提供一种拥塞通告系统,包括拥塞点、拥塞源、与所述拥塞点在同一网段的第一拥塞通告装置和与所述拥塞源在同一网段的第二拥塞通告装置;所述第一拥塞通告装置,用于对所述拥塞点发送的第一拥塞通告消息CNM进行解析,获取所述拥塞源的网际协议IP地址,并根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去;所述IP报文的目的IP地址为所述拥塞源的IP地址;所述第二拥塞通告装置,用于接收所述IP报文,并根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给所述拥塞源; 所述第二 CNM的目的介质访问控制MAC地址为所述拥塞源的MAC地址。本发明的拥塞通告方法、装置、系统及网络设备,与拥塞点在同一网段的三层路由设备接收到CNM之后,对CNM进行解析从CNM中获取拥塞源的IP地址,然后对CNM进行重封装生成目的IP地址为拥塞源的IP地址的IP报文并发送出去,与拥塞源在同一网段的三层网络设备接收到IP报文后,根据IP报文的协议类型标识对IP报文进行还原处理,重新生成CNM消息,并将CNM消息发送给拥塞源,实现了 CNM跨三层网络设备的发送,解决了三层网络中存在的拥塞问题。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图IA为本发明一实施例提供的拥塞通告方法的流程图;图IB为本发明一实施例中CNM的结构示意图;图2A为本发明一实施例提供的步骤102的一种实施方法的流程图;图2B为本发明一实施例中IP报文的结构示意图;图3A为本发明一实施例提供的步骤103的一种实施方法的流程图;图;3B为本发明另一实施例提供的拥塞通告方法的流程图;图4为本发明一实施例提供的拥塞通告装置的结构示意图;图5为本发明另一实施例提供的拥塞通告装置的结构示意图;图6为本发明又一实施例提供的拥塞通告装置的结构示意图;图7为本发明一实施例提供的拥塞通告系统的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图IA为本发明一实施例提供的拥塞通告方法的流程图。如图IA所示,本实施例的方法包括步骤101、第一三层网络设备对拥塞点发送的第一 CNM进行解析,获取拥塞源的IP 地址。其中,拥塞点是指发生拥塞的设备,例如数据中心网络中的交换机等。例如一台设备向另一台设备发数据报文,途中经过第三台设备,当第三台设备检测到拥塞时,第三台设备即为拥塞点。第一三层网络设备是与拥塞点在同一网段的三层网络设备,也就是与拥塞点相距最近的三层网络设备,或者说是最后一台将产生拥塞的数据报文转发到拥塞点的三层网络设备。三层网络设备主要是指具有路由功能的设备,例如三层交换机、三层路由器寸。由于802. IQau标准规定拥塞通告只适用于二层网络,是基于MAC地址进行发送的,而数据报文经过三层网络设备路由之后其源MAC地址和目的MAC地址均会发生变化,故拥塞点根据接收到的产生拥塞的数据报文仅能将生成的CNM发送给直接将产生拥塞的数据报文发送到拥塞点的设备。也就是说,当产生拥塞的数据报文由第一三层网络设备发送给拥塞点时,拥塞点仅能将生成的CNM发送给第一三层网络设备。在本实施例中,CNM的结构如图IB所示,其中各字段的含义如表1所示。表 权利要求
1.一种拥塞通告方法,其特征在于,包括第一三层网络设备对拥塞点发送的第一拥塞通告消息CNM进行解析,获取拥塞源的网际协议IP地址,所述第一三层网络设备是与所述拥塞点在同一网段的三层网络设备;所述第一三层网络设备根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理, 生成IP报文,并将所述IP报文发送出去;所述IP报文的目的IP地址为所述拥塞源的IP 地址;第二三层网络设备接收所述IP报文,并根据所述IP报文中的协议类型标识,对所述IP 报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给所述拥塞源;所述第二 CNM的目的介质访问控制MAC地址为所述拥塞源的MAC地址,所述第二三层网络设备是与所述拥塞源在同一网段的三层网络设备。
2.根据权利要求1所述的拥塞通告方法,其特征在于,所述第一三层网络设备对拥塞点发送的第一拥塞通告消息CNM进行解析,获取拥塞源的网际协议IP地址包括所述第一三层网络设备按照以太网报文格式对所述第一 CNM进行解析,获取封装在所述第一 CNM中的拥塞源报文;所述第一三层网络设备按照IP报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文中的源IP地址。
3.根据权利要求1所述的拥塞通告方法,其特征在于,所述第一三层网络设备根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去包括所述第一三层网络设备获取所述第一 CNM的协议数据单元,将所述协议数据单元封装在所述IP报文的数据字段中;所述第一三层网络设备将所述拥塞源的IP地址封装在所述IP报文的目的IP地址字段中,并将预设协议类型标识的值封装在所述IP报文的协议类型字段中,以生成所述IP报文;所述第一三层网络设备根据所述IP报文的目的IP地址字段查询本地路由表,将所述 IP报文封装在以太网报文中发送出去。
4.根据权利要求3所述的拥塞通告方法,其特征在于,还包括所述第一三层网络设备按照IP报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文中的目的IP地址;所述第一三层网络设备根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理, 生成IP报文还包括所述第一三层网络设备将所述拥塞源报文中的目的IP地址封装在所述IP报文的源IP 地址字段中。
5.根据权利要求1或2或3或4所述的拥塞通告方法,其特征在于,所述第二三层网络设备接收所述IP报文,并根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM包括所述第二三层网络设备接收所述IP报文,并按照IP报文格式对所述IP报文进行解析,获取所述IP报文的协议类型标识;所述第二三层网络设备根据所述协议类型标识,识别所述IP报文是由CNM重封装而成;所述第二三层网络设备根据预先约定的重封装策略,获取所述IP报文的数据字段中封装的内容,将所述获取的内容作为所述第二 CNM的协议数据单元,并将所述第二三层网络设备的MAC地址和所述拥塞源的MAC地址分别作为所述第二 CNM的源MAC地址和目的 MAC地址,以生成所述第二 CNM。
6.根据权利要求2所述的拥塞通告方法,其特征在于,所述第一三层网络设备按照IP 报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文中的源IP地址之前包括所述第一三层网络设备对所述拥塞源报文中的以太网帧头进行解析,获取所述拥塞源报文的以太网类型字段的值,根据所述拥塞源报文的以太网类型字段的值确定所述拥塞源报文为使用IP协议的报文。
7.根据权利要求1或2或3或4所述的拥塞通告方法,其特征在于,所述第一三层网络设备根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述 IP报文发送出去之前包括所述第一三层网络设备根据所述拥塞源的IP地址判断所述拥塞源是否与所述第一三层网络设备处于同一网段;如果判断结果为否,所述第一三层网络设备执行根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去的操作;如果判断结果为是,所述第一三层网络设备直接将所述第一 CNM转发给所述拥塞源。
8.一种拥塞通告装置,其特征在于,包括解析获取模块,用于对拥塞点发送的第一拥塞通告消息CNM进行解析,获取拥塞源的网际协议IP地址;封装发送模块,用于根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成 IP报文,并将所述IP报文发送出去以供与所述拥塞源在同一网段的三层网络设备接收并将所述IP报文还原为第二 CNM后发送给所述拥塞源;所述IP报文的目的IP地址为所述拥塞源的IP地址。
9.根据权利要求8所述的拥塞通告装置,其特征在于,所述解析获取模块包括第一解析获取单元,用于按照以太网报文格式对所述第一 CNM进行解析,获取封装在所述第一 CNM中的拥塞源报文;第二解析获取单元,用于按照IP报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文中的源IP地址。
10.根据权利要求8所述的拥塞通告装置,其特征在于,所述封装发送模块包括第一封装单元,用于获取所述第一 CNM的协议数据单元,将所述协议数据单元封装在所述IP报文的数据字段中;第二封装单元,用于将所述拥塞源的IP地址封装在所述IP报文的目的IP地址字段中,并将预设协议类型标识的值封装在所述IP报文的协议类型字段中,以生成所述IP报文;第一发送单元,用于根据所述IP报文的源地址字段查询本地路由表,将所述IP报文封装在以太网报文中发送出去。
11.根据权利要求10所述的拥塞通告装置,其特征在于,所述解析获取模块还包括第三解析获取单元,用于按照IP报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文中的目的IP地址;所述第二封装单元还用于将所述拥塞源报文中的目的IP地址封装在所述IP报文的源 IP地址字段中。
12.根据权利要求9所述的拥塞通告装置,其特征在于,所述解析获取模块还包括 确定单元,用于在所述第二解析获取单元按照IP报文格式对所述拥塞源报文进行解析,获取所述拥塞源报文的源IP地址之前,对所述拥塞源报文中的以太网帧头进行解析, 获取所述拥塞源报文的以太网类型字段的值,根据所述拥塞源报文的以太网类型字段的值确定所述拥塞源报文为使用IP协议的报文。
13.根据权利要求8或9或10或11或12所述的拥塞通告装置,其特征在于,还包括 判断模块,用于根据所述拥塞源的IP地址判断所述拥塞源是否与所述拥塞通告装置处于同一网段;触发模块,用于在所述判断模块的判断结果为否时,触发所述封装发送模块执行根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去的操作;转发模块,用于在所述判断模块的判断结果为是时,直接将所述第一 CNM转发给所述拥塞源。
14.一种拥塞通告装置,其特征在于,包括接收模块,用于接收网际协议IP报文,所述IP报文是由与拥塞点在同一网段的三层网络设备对所述拥塞点发送的第一拥塞通告消息CNM进行重封装生成并发送的;还原发送模块,用于根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给拥塞源;所述第二 CNM的目的介质访问控制MAC 地址为所述拥塞源的MAC地址。
15.根据权利要求14所述的拥塞通告装置,其特征在于,所述还原发送模块包括第四解析获取单元,用于按照IP报文格式对所述IP报文进行解析,获取所述IP报文的协议类型标识;识别单元,用于根据所述协议类型标识,识别所述IP报文是由CNM重封装而成; 还原单元,用于根据预先约定的重封装策略,获取所述IP报文的数据字段中封装的内容,将所述获取的内容作为所述第二 CNM的协议数据单元,并将所述拥塞通告装置的MAC地址和所述拥塞源的MAC地址分别作为所述第二 CNM的源MAC地址和目的MAC地址,以生成所述第二 CNM ;第二发送单元,用于将所述第二 CNM发送出去。
16.一种拥塞通告系统,其特征在于,包括拥塞点、拥塞源、与所述拥塞点在同一网段的第一拥塞通告装置和与所述拥塞源在同一网段的第二拥塞通告装置;所述第一拥塞通告装置,用于对所述拥塞点发送的第一拥塞通告消息CNM进行解析, 获取所述拥塞源的网际协议IP地址,并根据所述拥塞源的IP地址,对所述第一 CNM进行重封装处理,生成IP报文,并将所述IP报文发送出去;所述IP报文的目的IP地址为所述拥塞源的IP地址;所述第二拥塞通告装置,用于接收所述IP报文,并根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM,并将所述第二 CNM发送给所述拥塞源;所述第二 CNM的目的介质访问控制MAC地址为所述拥塞源的MAC地址。
17.根据权利要求16所述的拥塞通告系统,其特征在于,所述第一拥塞通告装置用于根据所述拥塞源的IP地址,对所述第一 CNM进行重新封装处理,生成IP报文具体为所述第一拥塞通告装置用于获取所述第一 CNM的协议数据单元,将所述协议数据单元封装在所述IP报文的数据字段中,并将所述拥塞源的IP地址封装在所述IP报文的目的IP 地址字段中,将预设协议类型标识的值封装在所述IP报文的协议类型字段中,以生成所述 IP报文;所述第二拥塞通告装置用于根据所述IP报文中的协议类型标识,对所述IP报文进行还原处理,生成第二 CNM具体为所述第二拥塞通告装置用于按照IP报文格式对所述IP报文进行解析,获取所述IP报文的协议类型标识,根据所述协议类型标识,识别所述IP报文是由CNM重封装而成,然后根据预先约定的重封装策略,获取所述IP报文的数据字段中封装的内容,将所述获取的内容作为所述第二 CNM的协议数据单元,并将所述第二拥塞通告装置的介质访问控制MAC地址和所述拥塞源的MAC地址分别作为所述第二 CNM的源MAC地址和目的MAC地址,以生成所述第二 CNM。
18.—种网络设备,其特征在于,包括权利要求8-15任一项所述的拥塞通告装置。
全文摘要
本发明提供一种拥塞通告方法、装置、系统及网络设备。其中方法包括第一三层网络设备对拥塞点发送的第一CNM进行解析,获取拥塞源的IP地址,第一三层网络设备是与拥塞点在同一网段的三层网络设备;第一三层网络设备根据拥塞源的IP地址,对第一CNM进行重封装处理,生成IP报文,并将IP报文发送出去;第二三层网络设备接收IP报文,并根据IP报文中的协议类型标识,对IP报文进行还原处理,生成第二CNM,并将第二CNM发送给拥塞源;第二三层网络设备是与所述拥塞源在同一网段的三层网络设备。本发明技术方案实现了CNM跨三层网络设备的发送,解决了三层网络中存在的拥塞问题。
文档编号H04L12/56GK102255808SQ20111019193
公开日2011年11月23日 申请日期2011年7月8日 优先权日2011年7月8日
发明者卓志强 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1