CN102014045A - 一种交换机流量控制方法和交换机 - Google Patents
一种交换机流量控制方法和交换机 Download PDFInfo
- Publication number
- CN102014045A CN102014045A CN2009101701915A CN200910170191A CN102014045A CN 102014045 A CN102014045 A CN 102014045A CN 2009101701915 A CN2009101701915 A CN 2009101701915A CN 200910170191 A CN200910170191 A CN 200910170191A CN 102014045 A CN102014045 A CN 102014045A
- Authority
- CN
- China
- Prior art keywords
- message
- address
- mac
- media access
- access control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种交换机流量控制方法,检测到出端口拥塞时,交换机获取该出端口对应的MAC地址;通过入端口向导致端口拥塞的流量的发送方发送携带该MAC地址的扩展PAUSE帧,从而降低导致端口拥塞的流量的发送方对目的MAC地址为该MAC地址的流量的发送速率,降低发生拥塞的端口的流量转发速率,交换机的其他端口流量转发速率不受影响。
Description
技术领域
本发明涉及通信领域,尤其涉及一种交换机流量控制方法和交换机。
背景技术
IEEE 802.3(Institute of Electrical and Electronics Engineers 802.3,美国电气和电子工程师协会局域网协议)描述物理层和数据链路层的MAC子层的实现方法,在多种物理媒体上以多种速率采用CSMA/CD(Carrier Sense MultipleAccess/Collision Detect,载波监听多路访问/冲突检测)访问方式进行数据传输。IEEE 802.3中规定了一种MAC(Media Access Control,介质访问控制)Control(控制)帧,MAC Control帧是一类特殊的帧,用来在设备之间交互MAC Control信息,其结构和普通的以太网帧一样,其格式如表1所示:
表1
MAC Control帧中,除去MAC头,即DESTINATION ADDRESS(目的地址)、SOURCE ADDRESS(源地址)以及LENGTH/TYPE(长度/类型),以及MAC头之后表示MAC Control帧类型的MAC CONTROL OPCODE字节外,剩余44个字节用来携带参数,即MAC CONTROL PARAMETERS(MAC控制参数)字段。如果参数不足44个字节,参数后面的字节全部用0来填充。
其中,LENGTH/TYPE字段占用的值为固定的0x8808,MAC CONTROLOPCODE为0001时,表示该MAC Control帧的类型为PAUSE(暂停)帧,MACCONTROL OPCODE值0000以及0002到FFFF为保留值。
PAUSE帧是一种特殊的MAC CONTROL帧,可以用于解决二层交换机转发网络中的流量拥塞问题:
在二层交换机转发网络中,经常会出现图1所示的情况:对于交换机1,流量从两个端口进,从一个端口出。此时,如果两个入端口的带宽和大于一个出端口的带宽,则很容易导致出端口发生流量拥塞。当交换机1的出端口发生流量拥塞时,交换机2和3无法感知,如果交换机2、3继续高速发送报文,则会导致交换机1大量丢包。
根据IEEE 802.3的规定,PAUSE帧的MAC CONTROL PARAMETERS字段中携带时间长度n_quanta(时间量子),接收到该PAUSE帧的报文发送设备需要暂停报文的发送,暂停时间为n_quanta。n_quanta的有效值从0到65535,单位是pause quanta即暂停时间量子,一个暂停时间量子是512个time bit。
通过PAUSE帧解决上述流量拥塞时产生的丢包问题的基本原理是:接收报文的一方不断地发出PAUSE帧,告诉报文发送方降低相应报文的发送速度。报文发送方收到PAUSE指示,会在发送报文的数据帧和数据帧之间间隔一小段时间,这样就达到了降低报文发送速度的目的。例如,当本端交换机和对端交换机都开启了流量控制功能后,如果本端交换机发生拥塞,本端交换机将向对端交换机发送PAUSE帧,通知对端交换机暂时停止发送报文或降低报文的发送速度;对端交换机在接收到该消息后,将暂停向本端交换机发送报文或降低报文的发送速度,从而减小了本端交换机的报文转发流量,避免了本端交换机报文丢失现象的发生,保证了网络业务的正常运行。
但是,这种PAUSE帧控制方法会导致交换机整机转发性能的下降:如图2所示,灰色箭头表示的是从交换机A的出端口1转发的流量,黑色箭头表示的是从交换机A的出端口2转发的流量,箭头的粗细表示流量的大小。当黑色流量导致交换机A的出端口2发生拥塞的时候,交换机A通过黑色流量的入端口3、4、5向黑色流量的发送方交换机B、C、D发送PAUSE帧,交换机B、C、D收到PAUSE帧后,会降低各自向交换机A的报文发送速率,包括黑色流量的报文发送速率与灰色流量的报文发送速率,这样会导致灰色流量与黑色流量转发速率的同时降低,但实际上这时候的灰色流量是可以继续保持原转发速率的。因此,黑色流量因为自己的拥塞而影响了灰色流量的高速转发,进而导致整个交换机A的转发性能下降。
所以,现有技术的缺点在于:
当交换机的个别端口流量拥塞时,交换机向该端口的流量发送方发送PAUSE帧,降低该端口的流量发送方向该交换机发送的所有流量的发送速率,导致该交换机的整体流量转发速率降低,整机转发性能下降。
发明内容
本发明提供了一种交换机流量控制方法和交换机,以达到流量控制的目的,同时又可以高速正常转发流量。
本发明提供一种交换机流量控制方法,交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE802.3定义的流量控制帧,包括:
所述交换机通过入端口接收报文,获取所述报文的源MAC地址,在所述入端口对应的MAC表项中存储所述入端口与所述源MAC地址的对应关系,并当所述交换机接收到目的MAC地址为所述源MAC地址的报文时,所述交换机将所述入端口作为出端口发送所述报文;
当所述交换机检测到所述出端口发生拥塞时,所述交换机查找与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;
所述交换机在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧;
所述交换机通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,所述报文的转发速率降低。
所述扩展的PAUSE帧在MAC控制参数MAC CONTROL PARAMETERS字段携带暂停时间以及需要暂停发送的报文的目的MAC地址,所述报文的目的MAC地址为导致所述出端口拥塞的报文的目的MAC地址。
每一个扩展的PAUSE帧具有携带报文的目的MAC地址的最大数量,当所述需要暂停发送的报文的目的MAC地址的个数大于单独一个PAUSE帧携带报文的目的MAC地址的最大数量时,所述交换机通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址。
所述交换机通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址具体为:
所述交换机在当前PAUSE帧中添加所述需要暂停发送的报文的目的MAC地址;
当达到当前PAUSE帧能够添加MAC地址的最大数量时,所述交换机在下一个PAUSE帧中继续添加MAC地址。
所述交换机在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧,之后,还包括:
接收到所述PAUSE帧的流量发送方获取所述PAUSE帧携带的导致所述交换机的出端口拥塞的报文的目的MAC地址,降低以所述MAC地址为目的MAC地址的报文的发送速率。
本发明提供一种交换机,所述交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE 802.3定义的流量控制帧,所述交换机包括:
收发单元,用于通过入端口接收报文,获取所述报文的源MAC地址;并在接收到目的MAC地址为所述源MAC地址的报文时,将所述入端口作为出端口发送所述目的MAC地址为所述源MAC地址的报文;
存储单元,与所述收发单元连接,用于在所述入端口对应的MAC表项中存储所述收发单元接收报文的入端口与所述报文的源MAC地址的对应关系;
检测单元,用于检测是否发生出端口拥塞;
拥塞处理单元,用于当所述检测单元的检测结果为是时,查找所述存储单元存储的与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述收发单元从导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧。
所述拥塞处理单元具体用于:
在所述扩展的PAUSE帧的MAC控制参数MAC CONTROLPARAMETERS字段添加暂停时间以及需要暂停发送的报文的目的MAC地址,所述报文的目的MAC地址为导致所述出端口拥塞的报文的目的MAC地址。
每一个扩展的PAUSE帧具有携带报文的目的MAC地址的最大数量,
所述拥塞处理单元还用于:当所述需要暂停发送的报文的目的MAC地址的个数大于单独一个PAUSE帧携带报文的目的MAC地址的最大数量时,通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址。
所述拥塞处理单元还用于:
在当前PAUSE帧中添加所述需要暂停发送的报文的目的MAC地址;
当达到当前PAUSE帧能够添加MAC地址的最大数量时,在下一个PAUSE帧中继续添加MAC地址。
所述收发单元还用于:
在所述拥塞处理单元发送扩展的PAUSE帧后,通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,所述报文的转发速率降低。
与现有技术相比,本发明至少具备以下优点:
检测到出端口拥塞时,交换机获取该出端口对应的MAC地址;通过入端口向导致端口拥塞的流量的发送方发送携带该MAC地址的扩展PAUSE帧,从而降低导致端口拥塞的流量的发送方对目的MAC地址为该MAC地址的流量的发送速率,降低发生拥塞的端口的流量转发速率,交换机的其他端口流量转发速率不受影响。
附图说明
图1是现有技术中二层交换机转发网络示意图;
图2是现有技术中PAUSE帧控制方法的示意图;
图3是本发明提供的交换机流量控制方法的流程示意图;
图4是本发明应用场景提供的流量转发组网示意图;
图5是本发明应用场景提供的交换机流量控制方法的流程示意图;
图6是本发明提供的交换机的结构示意图。
具体实施方式
针对现有技术中交换机的个别出端口发生流量拥塞时,交换机向流量发送方发送IEEE802.3定义的PAUSE帧,使接收到PAUSE帧的流量发送方降低所有向该交换机发送的报文的发送速率,进而导致该交换机整机转发性能下降的问题,本发明提供一种交换机流量控制方法,其核心思想是:提供一种扩展的PAUSE帧,该PAUSE帧在保留的字节字段中含有导致交换机出端口拥塞的流量信息,即导致交换机出端口拥塞的报文的目的MAC地址。当交换机出端口发生拥塞时,交换机通过入端口向导致该出端口拥塞的流量发送方发送PAUSE帧,在该PAUSE帧中携带导致该出端口拥塞的报文的目的MAC地址。接收到该PAUSE帧的流量发送方,在向该交换机发送报文时,将目的MAC地址与该PAUSE帧中携带的报文的目的MAC地址相同的报文,先放在内存中缓存一段时间,等缓存完成后再进行发送,对于不是以这些MAC地址为目的MAC的报文直接发送,不需要进行缓存,从而既达到交换机流量控制的目的,又可以保持交换机的高速流量转发速率。
具体的,本发明提供一种交换机流量控制方法,交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE 802.3定义的流量控制帧,如图3所示,包括以下步骤:
步骤301,所述交换机通过入端口接收报文,获取所述报文的源MAC地址,在所述入端口对应的MAC表项中存储所述入端口与所述源MAC地址的对应关系,并当所述交换机接收到目的MAC地址为所述源MAC地址的报文时,所述交换机将所述入端口作为出端口发送所述报文;
步骤302,当所述交换机检测到所述出端口发生拥塞时,所述交换机查找与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;
步骤303,所述交换机在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧;
步骤304,所述交换机通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,所述报文的转发速率降低。
下面结合具体应用场景详细介绍本发明提供的交换机流量控制方法,其中,本应用场景中提供的Pause帧为IEEE802.3定义的PAUSE帧的扩展,该扩展的PAUSE帧中携带导致交换机出端口拥塞的报文的目的MAC地址。另外,交换机具有MAC地址学习功能,即交换机通过端口接收报文后,学习该报文的源MAC地址,并存储该源MAC地址与该端口的对应关系;当交换机在后续报文转发过程中接收到目的MAC地址为该源MAC地址的报文时,根据存储的该源MAC地址与该端口的对应关系,获取该端口并通过该端口发送报文。
结合图4所示的流量转发组网示意图,该方法的具体实现过程如图5所示,包括以下步骤:
步骤501,交换机A通过端口1和端口2学习报文的源MAC地址。
具体的,交换机A通过端口1接收报文,获取报文的源MAC地址。然后,交换机A查找是否存储有该源MAC地址对应的MAC表项。如果查找结果为存储了对应的MAC表项,且MAC表项中与该源MAC地址对应的端口不是端口1,则交换机A更新该MAC表项,将与该源MAC地址对应的端口更新为端口1。例如,当MAC表项中该源MAC地址原来对应的端口为端口2时,交换机A更新该MAC表项,将其中的端口2更新为端口1。如果查找结果为没有存储对应的MAC表项,则交换机A为该源MAC地址建立相应的MAC表项,存储端口1与该源MAC地址的对应关系。
交换机通过端口2学习MAC地址的过程同端口1相似,在此不再重复。
本应用场景中,交换机通过端口1学习的报文的源MAC地址为
00-00-00-00-00-01和00-00-00-00-00-02;
交换机通过端口2学习的报文的源MAC地址为
00-00-00-00-00-03和00-00-00-00-00-04。
步骤502,交换机A接收报文,根据报文的目的MAC地址查找存储的MAC表项,选择相应的端口发送该报文。
本应用场景中,根据步骤501中交换机A通过端口1和端口2学习的源MAC地址,交换机将目的MAC地址为00-00-00-00-00-01和00-00-00-00-00-02的报文从端口1上转发,将目的MAC地址为00-00-00-00-00-03和00-00-00-00-00-04的报文从端口2上转发。
步骤503,交换机A在端口2上发生拥塞,交换机A向交换机B、C、D发送PAUSE帧,该PAUSE帧携带导致端口2拥塞的报文的目的MAC地址。
具体的,交换机中存储的与端口2对应的MAC表项中,与端口2对应的报文的源MAC地址为00-00-00-00-00-03和00-00-00-00-00-04,根据步骤502可知,通过端口发送的报文的目的MAC地址与端口2对应的源MAC地址相同,为00-00-00-00-00-03和00-00-00-00-00-04,所以导致端口2发生拥塞的报文的目的MAC地址为00-00-00-00-00-03和00-00-00-00-00-04,其他报文不经过该端口转发,因此不会导致端口2发生拥塞。交换机A向交换机B、C、D发送的PAUSE帧中携带导致端口2发生拥塞的报文的目的MAC地址,即00-00-00-00-00-03和00-00-00-00-00-04。
交换机A向交换机B、C、D发送的PAUSE帧的结构如下:
其中,6字节的目的MAC地址,协议规定为01-80-c2-00-00-01;
6字节的源MAC地址,为交换机A的MAC地址,即00-00-00-00-01-01;
2字节的LENGTH/TYPE字段的值为固定的0x8808;
2字节的OPCODE为0001,表示PAUSE帧;
2个字节的MAC CONTROL PARAMETERS,表示间隔发送的时间;
6个字节的MAC数,表示PAUSE帧中携带的MAC数目,取值范围为0~6,即一个PAUSE帧中最多可以携带6个MAC地址;
后面的36个字节,用于携带MAC地址,最多可携带6个,不足6个用0填充。
按照上面的扩展规则,最后交换机A发送的PAUSE帧结构如下:
字段含义 | 字节长度(byte) | 报文结构 |
目的MAC | 6 | 01 80 c2 00 00 01 |
源MAC | 6 | 00 00 00 00 01 01 |
长度/类型 | 2 | 88 08 |
OPCODE | 2 | 00 01 |
MAC CONTROL | 2 | 系统设定值 |
PARAMETERS | ||
携带MAC数 | 6 | 00 00 00 00 00 02 |
第一个MAC | 6 | 00 00 00 00 00 03 |
第二个MAC | 6 | 00 00 00 00 00 04 |
剩余字段 | 24 | 全0 |
步骤504,交换机B、C、D在收到交换机A发送的PAUSE帧后,获取该PAUSE帧携带的报文的目的MAC地址,降低目的MAC地址为该报文的目的MAC地址的报文的发送速率。
具体的,交换机B、C、D获取PAUSE帧中携带的报文的目的MAC地址为00-00-00-00-00-03和00-00-00-00-00-04,当接收到目的MAC地址为00-00-00-00-00-03和00-00-00-00-00-04的报文时,交换机B、C、D将该报文先放入系统缓存中,等待PAUSE帧中MAC CONTROL PARAMETERS字段填充的时间后,再开始将该报文放入端口发送队列进行转发;对于目的MAC为非00-00-00-00-00-03和00-00-00-00-00-04的报文,不用缓存,直接放入端口发送队列中进行转发。由此,即可以降低交换机A的端口2报文转发的流量,避免因为拥塞而导致的报文丢失,同时也不会影响交换机A的端口1的报文转发速率。
本发明应用场景中,以交换机中端口2与两个MAC地址具有对应关系为例说明本发明应用场景中通过扩展的PAUSE帧进行交换机流量控制的方法,本领域的普通技术人员应当理解,在其他的应用场景中,端口2也可以与更多MAC地址具有对应关系。此时,同上述应用场景中相似,在PAUSE帧的保留字段,即携带参数信息的字段后添加相应的MAC地址。由于PAUSE帧中可以添加MAC地址的字节为36个,最多可以携带6个MAC地址,因此,当与端口2具有对应关系的MAC地址的个数大于6时,交换机A无法通过一个PAUSE帧携带所有导致端口2发生拥塞的报文的目的MAC地址,此时,交换机A通过多个PAUSE帧携带导致端口2发生拥塞的报文的目的MAC地址。具体的,交换机A可以在第一个PAUSE帧中添加6个MAC地址,然后在第二个PAUSE帧中添加剩余的MAC地址,如果仍然有其余没有被PAUSE帧携带的MAC地址,则继续在第三个PAUSE帧中携带其余的MAC地址。交换机A也可以在多个PAUSE帧中平均添加端口2对应的多个MAC地址,交换机A还可以采用其他与实际需要相适应的MAC地址添加方式,本发明对此不做限制。
本发明应用场景中,流量发送方根据PAUSE帧有选择的降低向发生拥塞的交换机发送报文的速率后,该交换机通过发生拥塞的出端口发送报文的流量变小,该出端口的拥塞问题得到解决。该交换机检测到发生拥塞的出端口的流量发送通畅后,例如流量发送速率降低到预设的标准值以下时,该交换机向流量发送方发送消息,通知流量发送方停止缓存相应的报文,正常进行报文转发。
本发明应用场景中,交换机向流量发送方发送的用于控制流量的消息可以但不限于PAUSE帧,例如其他类型可以携带MAC地址、以及暂停报文发送时间的消息。
通过采用本发明提供的方法,检测到出端口拥塞时,交换机获取该出端口对应的MAC地址;通过入端口向导致端口拥塞的流量的发送方发送携带该MAC地址的扩展PAUSE帧,从而降低导致端口拥塞的流量的发送方对目的MAC地址为该MAC地址的流量的发送速率,降低发生拥塞的端口的流量转发速率,交换机的其他端口流量转发速率不受影响。
本发明提供一种交换机,所述交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE 802.3定义的流量控制帧,如图6所示,所述交换机包括:
收发单元11,用于通过入端口接收报文,获取所述报文的源MAC地址;并在接收到目的MAC地址为所述源MAC地址的报文时,将所述入端口作为出端口发送所述目的MAC地址为所述源MAC地址的报文。
存储单元12,与所述收发单元11连接,用于在所述入端口对应的MAC表项中存储所述收发单元11接收报文的入端口与所述报文的源MAC地址的对应关系。具体的,收发单元11通过入端口获取到报文的源MAC地址后,存储单元12根据该源MAC地址查找存储的MAC表项,如果已经存储了与该源MAC地址相应的MAC表项,则存储单元12进一步判断已经存储的MAC表项中与该源MAC地址相应的端口是否为上述入端口,如果是,则存储单元12不做处理,继续学习新的报文的MAC地址;如果否,则存储单元12更新该MAC表项,将与该源MAC地址对应的端口更新为上述入端口。
检测单元13,用于检测是否发生出端口拥塞。
拥塞处理单元14,与所述检测单元13、存储单元12以及所述收发单元11连接,用于当所述检测单元13的检测结果为是时,即发生端口拥塞时,查找所述存储单元12存储的与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述收发单元11从导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧。
具体的,所述拥塞处理单元14在所述扩展的PAUSE帧的MAC控制参数MAC CONTROL PARAMETERS字段添加暂停时间以及需要暂停发送的报文的目的MAC地址,所述报文的目的MAC地址为导致所述出端口拥塞的报文的目的MAC地址。每一个扩展的PAUSE帧具有携带报文的目的MAC地址的最大数量,当所述需要暂停发送的报文的目的MAC地址的个数大于单独一个PAUSE帧携带报文的目的MAC地址的最大数量时,所述拥塞处理单元14通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址。例如,拥塞处理单元14在当前PAUSE帧中添加所述需要暂停发送的报文的目的MAC地址;当达到当前PAUSE帧能够添加MAC地址的最大数量时,拥塞处理单元14在下一个PAUSE帧中继续添加MAC地址。在所述拥塞处理单元14发送扩展的PAUSE帧后,所述收发单元11通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,由于接收到收发单元11发送的扩展PAUSE帧的流量发送方会根据协议规定获取PAUSE帧中的暂停发送时间以及需要暂停发送的MAC地址,因此,流量发送方将降低导致交换机出端口拥塞的报文的发送速率,从而使收发单元11降低相应报文的转发速率,降低发生拥塞的出端口的报文转发速率。
通过采用本发明提供的交换机,检测到出端口拥塞时,交换机获取该出端口对应的MAC地址;通过入端口向导致端口拥塞的流量的发送方发送携带该MAC地址的扩展PAUSE帧,从而降低导致端口拥塞的流量的发送方对目的MAC地址为该MAC地址的流量的发送速率,降低发生拥塞的端口的流量转发速率,交换机的其他端口流量转发速率不受影响。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种交换机流量控制方法,其特征在于,交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE 802.3定义的流量控制帧,包括:
所述交换机通过入端口接收报文,获取所述报文的源MAC地址,在所述入端口对应的MAC表项中存储所述入端口与所述源MAC地址的对应关系,并当所述交换机接收到目的MAC地址为所述源MAC地址的报文时,所述交换机将所述入端口作为出端口发送所述报文;
当所述交换机检测到所述出端口发生拥塞时,所述交换机查找与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;
所述交换机在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧;
所述交换机通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,所述报文的转发速率降低。
2.如权利要求1所述的方法,其特征在于,所述扩展的PAUSE帧在MAC控制参数MAC CONTROL PARAMETERS字段携带暂停时间以及需要暂停发送的报文的目的MAC地址,所述报文的目的MAC地址为导致所述出端口拥塞的报文的目的MAC地址。
3.如权利要求2所述的方法,其特征在于,每一个扩展的PAUSE帧具有携带报文的目的MAC地址的最大数量,当所述需要暂停发送的报文的目的MAC地址的个数大于单独一个PAUSE帧携带报文的目的MAC地址的最大数量时,所述交换机通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址。
4.如权利要求3所述的方法,其特征在于,所述交换机通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址具体为:
所述交换机在当前PAUSE帧中添加所述需要暂停发送的报文的目的MAC地址;
当达到当前PAUSE帧能够添加MAC地址的最大数量时,所述交换机在下一个PAUSE帧中继续添加MAC地址。
5.如权利要求1所述的方法,其特征在于,所述交换机在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧,之后,还包括:
接收到所述PAUSE帧的流量发送方获取所述PAUSE帧携带的导致所述交换机的出端口拥塞的报文的目的MAC地址,降低以所述MAC地址为目的MAC地址的报文的发送速率。
6.一种交换机,其特征在于,所述交换机通过扩展的暂停PAUSE帧进行流量控制,所述PAUSE帧为美国电气和电子工程师协会局域网协议IEEE802.3定义的流量控制帧,所述交换机包括:
收发单元,用于通过入端口接收报文,获取所述报文的源MAC地址;并在接收到目的MAC地址为所述源MAC地址的报文时,将所述入端口作为出端口发送所述目的MAC地址为所述源MAC地址的报文;
存储单元,与所述收发单元连接,用于在所述入端口对应的MAC表项中存储所述收发单元接收报文的入端口与所述报文的源MAC地址的对应关系;
检测单元,用于检测是否发生出端口拥塞;
拥塞处理单元,与所述收发单元、存储单元以及检测单元连接,用于当所述检测单元的检测结果为是时,查找所述存储单元存储的与所述出端口对应的MAC表项,获取所述MAC表项中与所述出端口对应的导致所述出端口拥塞的报文的目的MAC地址;在所述扩展的PAUSE帧中添加导致所述出端口拥塞的报文的目的MAC地址,并通过所述收发单元从导致所述出端口拥塞的报文的入端口发送所述扩展的PAUSE帧。
7.如权利要求6所述的交换机,其特征在于,所述拥塞处理单元具体用于:
在所述扩展的PAUSE帧的MAC控制参数MAC CONTROLPARAMETERS字段添加暂停时间以及需要暂停发送的报文的目的MAC地址,所述报文的目的MAC地址为导致所述出端口拥塞的报文的目的MAC地址。
8.如权利要求7所述的交换机,其特征在于,
每一个扩展的PAUSE帧具有携带报文的目的MAC地址的最大数量,
所述拥塞处理单元还用于:当所述需要暂停发送的报文的目的MAC地址的个数大于单独一个PAUSE帧携带报文的目的MAC地址的最大数量时,通过多个PAUSE帧携带需要暂停发送的报文的目的MAC地址。
9.如权利要求8所述的交换机,其特征在于,所述拥塞处理单元还用于:
在当前PAUSE帧中添加所述需要暂停发送的报文的目的MAC地址;
当达到当前PAUSE帧能够添加MAC地址的最大数量时,在下一个PAUSE帧中继续添加MAC地址。
10.如权利要求6所述的交换机,其特征在于,所述收发单元还用于:
在所述拥塞处理单元发送扩展的PAUSE帧后,通过导致所述出端口拥塞的报文的入端口接收目的MAC地址与所述导致所述出端口拥塞的报文的目的MAC地址相同的报文并转发,所述报文的转发速率降低。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101701915A CN102014045A (zh) | 2009-09-07 | 2009-09-07 | 一种交换机流量控制方法和交换机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101701915A CN102014045A (zh) | 2009-09-07 | 2009-09-07 | 一种交换机流量控制方法和交换机 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102014045A true CN102014045A (zh) | 2011-04-13 |
Family
ID=43844068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101701915A Pending CN102014045A (zh) | 2009-09-07 | 2009-09-07 | 一种交换机流量控制方法和交换机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102014045A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523161A (zh) * | 2011-12-16 | 2012-06-27 | 盛科网络(苏州)有限公司 | 跨以太网交换网云的流控方法及系统 |
CN102611620A (zh) * | 2012-02-23 | 2012-07-25 | 福建星网锐捷网络有限公司 | 拥塞控制方法和报文处理设备 |
CN102932267A (zh) * | 2012-11-22 | 2013-02-13 | 合肥华云通信技术有限公司 | 以太网交换机分布式流量控制方法 |
CN104780077A (zh) * | 2015-03-24 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种流量控制的方法和设备 |
CN104852865A (zh) * | 2015-06-16 | 2015-08-19 | 上海斐讯数据通信技术有限公司 | 一种基于sdn架构的流量控制方法及系统 |
CN105704097A (zh) * | 2014-11-26 | 2016-06-22 | 华为数字技术(苏州)有限公司 | 一种防御攻击的方法及装置 |
CN109347761A (zh) * | 2018-11-29 | 2019-02-15 | 新华三技术有限公司 | 一种流量转发控制方法及装置 |
CN110495142A (zh) * | 2017-03-31 | 2019-11-22 | 住友电气工业株式会社 | 交换机装置、通信控制方法和通信控制程序 |
CN112751765A (zh) * | 2019-10-30 | 2021-05-04 | 华为技术有限公司 | 一种用于调整传输速率的方法和装置 |
CN115883466A (zh) * | 2023-03-03 | 2023-03-31 | 苏州浪潮智能科技有限公司 | 交换机的控制方法及装置、存储介质及电子装置 |
CN116489113A (zh) * | 2023-04-23 | 2023-07-25 | 南京金阵微电子技术有限公司 | 交换机芯片的端口拓展方法和系统、交换机 |
-
2009
- 2009-09-07 CN CN2009101701915A patent/CN102014045A/zh active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523161A (zh) * | 2011-12-16 | 2012-06-27 | 盛科网络(苏州)有限公司 | 跨以太网交换网云的流控方法及系统 |
CN102611620A (zh) * | 2012-02-23 | 2012-07-25 | 福建星网锐捷网络有限公司 | 拥塞控制方法和报文处理设备 |
CN102932267A (zh) * | 2012-11-22 | 2013-02-13 | 合肥华云通信技术有限公司 | 以太网交换机分布式流量控制方法 |
CN105704097A (zh) * | 2014-11-26 | 2016-06-22 | 华为数字技术(苏州)有限公司 | 一种防御攻击的方法及装置 |
CN104780077B (zh) * | 2015-03-24 | 2019-12-06 | 新华三技术有限公司 | 一种流量控制的方法和设备 |
CN104780077A (zh) * | 2015-03-24 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种流量控制的方法和设备 |
CN104852865A (zh) * | 2015-06-16 | 2015-08-19 | 上海斐讯数据通信技术有限公司 | 一种基于sdn架构的流量控制方法及系统 |
CN104852865B (zh) * | 2015-06-16 | 2018-07-13 | 上海斐讯数据通信技术有限公司 | 一种基于sdn 架构的流量控制方法及系统 |
CN110495142A (zh) * | 2017-03-31 | 2019-11-22 | 住友电气工业株式会社 | 交换机装置、通信控制方法和通信控制程序 |
CN109347761A (zh) * | 2018-11-29 | 2019-02-15 | 新华三技术有限公司 | 一种流量转发控制方法及装置 |
CN112751765A (zh) * | 2019-10-30 | 2021-05-04 | 华为技术有限公司 | 一种用于调整传输速率的方法和装置 |
CN115883466A (zh) * | 2023-03-03 | 2023-03-31 | 苏州浪潮智能科技有限公司 | 交换机的控制方法及装置、存储介质及电子装置 |
CN115883466B (zh) * | 2023-03-03 | 2023-06-16 | 苏州浪潮智能科技有限公司 | 交换机的控制方法及装置、存储介质及电子装置 |
CN116489113A (zh) * | 2023-04-23 | 2023-07-25 | 南京金阵微电子技术有限公司 | 交换机芯片的端口拓展方法和系统、交换机 |
CN116489113B (zh) * | 2023-04-23 | 2024-03-12 | 南京金阵微电子技术有限公司 | 交换机芯片的端口拓展方法和系统、交换机 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102014045A (zh) | 一种交换机流量控制方法和交换机 | |
CN101795498B (zh) | 无线传感器网络基于数据优先级的信道竞争接入方法 | |
CN101729424B (zh) | 一种流量转发的方法、设备和系统 | |
JP4031803B2 (ja) | 同期式イーサネット(登録商標)システムにおける時間臨界の情報伝送方法 | |
CN101848168B (zh) | 基于目的mac地址的流量控制方法、系统及设备 | |
CN110061929B (zh) | 针对非对称网络的数据中心负载均衡方法 | |
CN103338161A (zh) | 一种实现跨设备聚合的方法和设备 | |
CN103748845B (zh) | 报文发送方法、接收方法、装置及系统 | |
CN101350773A (zh) | 一种移动分组网络架构及其多个防火墙负载均衡接入方法 | |
CN101217528A (zh) | 一种链路聚合方法和装置 | |
GB2578415A (en) | Methods and systems for transmitting information packets through tunnel groups at a network node | |
CN102594676A (zh) | 桥端口扩展网络及其拥塞控制方法、端口扩展器和控制桥 | |
CN104168212A (zh) | 发送报文的方法和装置 | |
CN103281257A (zh) | 一种协议报文处理方法和设备 | |
CN103685028A (zh) | 多类型端口相互通信的方法及装置 | |
CN102158422B (zh) | 一种用于二层环网中的报文转发的方法和设备 | |
CN106533833A (zh) | 一种降低载波侦听多路访问资源冲突的方法 | |
CN105337895A (zh) | 一种网络设备主机单元、网络设备子卡以及网络设备 | |
CN101729420A (zh) | 一种数据处理方法及装置 | |
CN101494595A (zh) | 数据报文转发方法、系统以及同轴线路终端、光网络单元 | |
CN101635685A (zh) | 一种学习获得pmtu的方法及装置 | |
CN106372013B (zh) | 远程内存访问方法、装置和系统 | |
Singh et al. | Comparative analysis of packet loss in extended wired LAN environment | |
CN100459580C (zh) | 一种三层弹性分组环转发业务的方法 | |
JP2007318497A (ja) | 無線アクセス制御装置及び方法、無線装置、および、ネットワーク |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110413 |