CN101651626B - 一种流量转发的方法及设备 - Google Patents

一种流量转发的方法及设备 Download PDF

Info

Publication number
CN101651626B
CN101651626B CN2009101742205A CN200910174220A CN101651626B CN 101651626 B CN101651626 B CN 101651626B CN 2009101742205 A CN2009101742205 A CN 2009101742205A CN 200910174220 A CN200910174220 A CN 200910174220A CN 101651626 B CN101651626 B CN 101651626B
Authority
CN
China
Prior art keywords
mac address
multicast
switch
flow
mac
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.)
Active
Application number
CN2009101742205A
Other languages
English (en)
Other versions
CN101651626A (zh
Inventor
程作品
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009101742205A priority Critical patent/CN101651626B/zh
Publication of CN101651626A publication Critical patent/CN101651626A/zh
Application granted granted Critical
Publication of CN101651626B publication Critical patent/CN101651626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种流量转发的方法,包括:交换机根据接收到的流量的目的介质访问控制MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;当所述MAC地址对应多个端口时,所述交换机复制所述流量,分别通过所述多个端口发送所述流量。本发明中,交换机预先建立MAC表项,并当流量的MAC地址对应多个端口时,交换机复制该流量并分别通过多个端口发送,从而可以在多台设备虚拟化为同一台设备时,有效进行流量转发。

Description

一种流量转发的方法及设备
技术领域
本发明涉及通信领域,尤其涉及一种新流量转发的方法及设备。
背景技术
以太网中,数据报文中包含DMAC(Destination Media Access Control,目的介质访问控制)地址、SMAC(Source Media Access Control,源介质访问控制)地址,交换机接收到数据报文时,根据数据报文中的SMAC信息进行MAC地址学习,建立MAC表项储存SMAC地址与入端口的对应关系。后续交换机在进行数据转发时,交换机查找MAC表项,通过MAC表项中与数据报文DMAC地址对应的端口发送数据报文。
例如,图1所示Host(主机)A与Host B和Host C在同一局域网内的以太网转发过程如下:
1、学习MAC地址:
Host B向Host A发送数据报文,其中报文格式为:
 MAC A   MAC B DATA......
其中,MAC A为Host A的MAC地址,即数据报文的DMAC地址,MAC B为Host B的MAC地址,即数据报文的SMAC地址。
Host C向HostA发送数据报文,其中报文格式为:
 MAC A   MAC C DATA......
Switcher(交换机)B通过P1端口接收到Host B发送给Host A的报文,通过P2端口接收到Host C发送给Host A的报文,触发学习MAC地址,并生成以下表项:
  MAC B   P1
  MAC C   P2
表明:MAC B是从P1端口学到的,MAC C是从P2端口学习到的。该MAC表项中,MAC B与P1端口具有对应关系,MAC C与P2端口具有对应关系。
2、维护MAC表项:
Switcher B上生成相应MAC表项后还要进行后期的维护:端口信息更新、MAC老化、删除、同步等。例如,后续Switcher B通过P2端口接收到Host B发送给Host A的报文时,更新MAC表项,将MAC B与P1的对应关系更新为与P2的对应关系。当Host B与Switcher B的链路DOWN时,Switcher B在预设时间内没有收到Host B通过P1发送的数据报文,则删除MAC B与P1的对应关系。
3、根据MAC表项进行报文转发:
Switcher B收到从Host A转发给Host C的报文,其报文格式为:
 MAC C   MAC A   DATA......
Switcher B提取报文中的DMAC,即MAC C,以MAC C为条件查询MAC表项,Switcher B查询到表项
 MAC C   P2
Switcher B根据该表项把Host A转发给Host C的报文从P2端口转发出去。
但是,现有技术中的报文转发过程具有局限性,对于图2所示的组网方式,无法有效地进行报文转发。
图2所示的组网方式中,Host B与Host C互为备份(或负荷分担),MAC地址和IP地址都一样,即Host B与Host C虚拟化为同一台设备,但是两者与外界都有数据交互。
这样,对于Switcher B,由于通过端口P1和P2分别接收相同MAC地址的报文,并不断进行MAC地址学习,导致该MAC地址的转发表项在端口P1和P2之间频繁更新,对于发送给Host B、Host C的报文,由于在Switcher B上与HostB、Host C的MAC地址对应的端口信息频繁切换,因而Switcher B无法正确把报文转发给Host B、Host C,导致Host B、Host C无法正常接收报文,影响HostB、Host C的正常工作。
所以,现有技术的缺点在于:
对于多台设备虚拟化为同一台设备的情况,无法通过MAC地址学习进行有效的报文转发。
发明内容
本发明提供了一种流量转发的方法和设备,以实现在多台设备虚拟化为同一台设备时,有效进行流量转发。
本发明提供一种流量转发的方法,应用于多个流量发送方可以具有相同MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;该方法包括:
所述交换机根据接收到的流量的目的介质访问控制MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;
当所述MAC地址对应多个端口时,所述交换机复制所述流量,分别通过所述多个端口发送所述流量。
所述MAC表项的建立包括:
所述交换机获取接收到的报文的源MAC地址,所述源MAC地址与所述MAC地址相同;
所述交换机根据所述MAC地址查找相应的MAC表项;
当所述MAC表项中的端口与所述报文的入端口不一致时,所述交换机在所述MAC表项中增加所述报文的入端口,建立所述MAC地址与多端口的对应关系。
所述MAC表项具有老化机制,具体的,
当所述交换机在预设时间内一直没有通过所述MAC表项中的端口接收到相应的MAC地址发送的流量时,所述交换机更新所述MAC表项,删除所述端口与所述MAC地址的对应关系或者清除所述MAC表项。
当所述MAC表项中的MAC地址上的设备与所述交换机之间的链路DOWN时,所述交换机更新所述MAC表项,删除所述设备与所述交换机连接的端口与MAC地址的对应关系,或者清除所述MAC表项。
所述通过所述多个端口发送所述流量之后,还包括:
所述流量的多个接收方根据预先配置分别对不同的流量进行响应。
还包括:
当所述流量为组播报文时,所述交换机获取组播报文携带的目的组播IP地址,根据预先配置的IP地址与MAC地址的对应关系,获取所述组播IP地址对应的组播MAC地址;
所述交换机通过所述组播MAC地址对应的端口发送所述组播报文。
本发明提供一种流量转发的设备,作为交换机应用于多个流量发送方可以具有相同MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;该设备包括:
端口获取单元,用于根据接收到的流量的目的介质访问控制MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;
复制发送单元,用于当所述端口获取单元获取到所述MAC地址对应多个端口时,复制所述流量,分别通过所述多个端口发送所述流量。
还包括:
表项建立单元,用于建立所述MAC表项;
具体的,所述表项建立单元用于获取接收到的报文的源MAC地址,所述源MAC地址与所述MAC地址相同;根据所述MAC地址查找相应的MAC表项;当所述MAC表项中的端口与所述报文的入端口不一致时,在所述MAC表项中增加所述报文的入端口,建立所述MAC地址与多端口的对应关系。
还包括:
表项更新单元,用于更新所述MAC表项;
具体的,所述表项更新单元用于:当所述交换机在预设时间内一直没有通过所述MAC表项中的端口接收到相应的MAC地址发送的流量时,更新所述MAC表项,删除所述端口与所述MAC地址的对应关系或者清除所述MAC表项。
所述表项更新单元还用于:
当所述MAC表项中的MAC地址上的设备与所述交换机之间的链路DOWN时,更新所述MAC表项,删除所述设备与所述交换机连接的端口与MAC地址的对应关系,或者清除所述MAC表项。
响应接收单元,用于通过所述多个端口接收所述流量的多个接收方根据预先配置分别对不同的流量做出的响应。
所述端口获取单元还用于:当所述流量为组播报文时,所述交换机获取组播报文携带的目的组播IP地址,根据预先配置的IP地址与MAC地址的对应关系,获取所述组播IP地址对应的组播MAC地址,进一步获取所述组播MAC地址对应的端口;
所述复制发送单元还用于:通过所述端口获取单元获取的端口发送所述组播报文。
与现有技术相比,本发明至少具备以下优点:
本发明中,交换机预先建立MAC表项,并当流量的MAC地址对应多个端口时,交换机复制该流量并分别通过多个端口发送,从而可以在多台设备虚拟化为同一台设备时,有效进行流量转发。
附图说明
图1是现有技术中Host A与Host B和Host C在同一局域网内的以太网转发过程示意图;
图2是现有技术中多设备具有相同MAC地址的组网示意图;
图3是本发明提供的报文转发的方法的流程示意图;
图4是本发明应用场景提供的多设备具有相同MAC地址的组网示意图;
图5是本发明应用场景提供的报文转发的方法的流程示意图;
图6是本发明应用场景提供的多设备具有相同MAC地址的组网示意图;
图7是本发明应用场景提供的报文转发的方法的流程示意图;
图8是本发明提供的报文转发的设备的结构示意图。
具体实施方式
本发明的核心思想在于:交换机学习报文的MAC地址的过程中,当发现MAC表项中已经存储有该MAC地址与端口的对应关系,而且MAC表项中的端口信息与报文的入端口不一致时,在该MAC表项中增加新的对应关系,即该MAC地址与当前报文的入端口的对应关系,即建立同一MAC地址与多个端口的对应关系;后续交换机接收到报文后,根据报文的目的MAC地址查找MAC表项,当MAC表项中与目的MAC地址对应的端口为多个时,交换机复制报文并通过MAC表项中的每一端口发送报文,保证报文的有效转发。
具体的,本发明提供一种流量转发的方法,应用于多个流量发送方可以具有相同MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;如图3所示,该方法包括以下步骤:
步骤301,所述交换机根据接收到的流量的目的介质访问控制MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;
步骤302,当所述MAC地址对应多个端口时,所述交换机复制所述流量,分别通过所述多个端口发送所述流量。
下面结合具体应用场景详细介绍本发明提供的报文转发的方法,如图4所示的组网方式,其中,Host B与Host C具有相同的MAC地址与IP地址。Host C与Host B属于同一组主机,共同承担相同的流量处理的功能,或者分别负载同一功能下的不同处理部分。此时,对于具有相同MAC地址的Host C与Host B,对流量的处理过程并不相同,且通过不同的端口连接到交换机上。
该方法的具体实现过程如图5所示,包括以下步骤:
步骤501,Host B的数据报文到达Switcher B,Switcher B通过P1接收Host B的数据报文,并学习该数据报文的源MAC地址。
具体的,本应用场景中,Host B与Host C具有相同的MAC地址,该MAC地址以2-2-2为例。Host B与Host C分别与Switcher B的P1和P2建立链路连接,且由Host B首先向Switcher B发送数据报文。
Switcher B接收到Host B发送的数据报文后,获知该报文的源MAC地址为Host B的MAC地址,查找MAC表中是否存在相应的MAC表项。此时,由于Switcher B初次接收到源MAC地址为2-2-2的数据报文,Switcher B中尚未存储相应的MAC表项,查找结果为否。Switcher B建立新的MAC表项,存储MAC地址2-2-2与P1的对应关系,如下表所示:
  MAC地址   端口
  2-2-2   P1
步骤502,Switcher B通过P2接收Host C发送的数据报文,并学习该数据报文的源MAC地址,更新相应的MAC表项。
具体的,Switcher B通过P2接收到Host C的数据报文后,获取该报文的源MAC地址为Host C的MAC地址2-2-2。然后,Switcher B查找MAC表中是否存储相应的MAC表项。
此时,由于Host C的MAC地址与Host B的MAC地址相同,因此,SwitcherB查找得到步骤501中建立的MAC表项,即MAC地址2-2-2与P1的对应关系。然后,Switcher B更新该MAC表项,建立MAC地址2-2-2与P1、P2的对应关系。如下表所示,更新后的MAC表项为:
Figure G2009101742205D00071
步骤503,Switcher B接收到目的MAC地址为上述源MAC地址的流量时,查找MAC表项获得对应的多个端口,将报文复制并通过多个端口发送。
具体的,当Switcher B接收到流量的目的MAC地址为上述源MAC地址2-2-2时,Switcher B查找MAC表中相应的MAC表项,发现与MAC地址2-2-2对应的端口为P1和P2。Switcher B将流量复制为两份,分别通过P1和P2发送。
步骤504,Host C与Host B接收到Switcher B发送的流量,根据预先配置的流量处理机制对流量进行相应的处理。
具体的,对于接收流量的Host C与Host B,根据各自具有的流量处理功能或者其他流量处理设置选择性的进行流量处理。假设Host C与Host B分别需要处理流量的1/2,则Host C或者Host B对于其余1/2根据预先配置没有负责处理的流量不做处理。
Host C与Host B作为一个整体还可以根据预先设置的流量处理机制主动计算获知哪些流量需要由Host B处理、哪些流量需要由Host C处理。进一步的,还可以分别由Host B和Host C向Host A发送流量处理的响应。
步骤505,当Switcher B在预设时间内没有接收到Host C或者Host B发送的流量时,Switcher B判断到达Host C或者Host B的路由失效,更新或者清除相应的MAC表项。
例如,如果Host C与Switcher B之间的链路连接中断,即链路DOWN掉,Switcher B在预设时间内无法接收Host C通过P2发送的流量,则Switcher B判断到达Host C的路由失效,删除MAC表项中MAC地址2-2-2与P2的对应关系;如果预设时间内Switcher B接收到了Host B通过P1发送的流量,则Switcher B继续保持MAC地址2-2-2与端口P1之间的对应关系;如果预设时间内Switcher B也没有接收到Host B通过P1发送的流量,则Switcher B判断到达Host C和Host B的路由失效,清除该MAC表项。
下面介绍本发明提供的报文转发的方法在组播应用场景中的应用,首先介绍现有技术中的组播实现。结合图6所示,Host B、Host C以及Host D向Switcher B发送组播加入请求,成为组播组成员。其中的加入请求中携带组播组的标识信息,Host A为该组播组的组播源。Switcher B收到来自Host A的组播报文后,查找到组播报文的组播组标识信息以及对应有组播组成员的端口,通过端口发送组播报文。为了保证Switcher B中对组播报文转发的有效性,Switcher B需要不断与Host B、Host C和Host D交互IGMP协议报文,判断组播成员的状态,调整自身存储的组播组与组播成员的对应关系,这种交互方式占用Switcher B的带宽,同时组播关系的维护复杂。
利用本发明提供的报文转发方法,可以实现简单有效的组播管理。在Switcher B上配置MAC地址与IP地址的对应关系,结合图6所示,SwitcherB上预先配置所有组播MAC地址映射到225.*.*.*,若收到类似源MAC地址为此类型的组播MAC地址数据报文时,交换机提取MAC地址后23bit,再根据预先配置,合并成为一个组播IP地址,例如:MAC地址为01:00:5E:01:01:01,则合并成的组播IP地址为:225.1.1.1,即Switcher B建立IP地址225.1.1.1与MAC地址01:00:5E:01:01:01的对应关系。
Switcher B根据MAC地址与IP地址的对应关系、以及组播组的IP地址,建立组播组的MAC地址标识信息,即确定组播MAC地址与组播标识信息的对应关系。当接收到主机发送的报文后,根据该报文的源MAC地址确定该主机是否为组播成员,如果该报文的源MAC地址为配置的组播MAC地址,则确定该主机为组播成员,Switcher B根据MAC地址与组播标识信息的对应关系向该主机发送组播报文。对于组播成员向组播源等发送的报文,需要使用IP地址时,Switcher B根据MAC地址与IP地址的对应关系将报文中的MAC地址更新为IP地址后发送。
本发明应用场景中,需要加入组播的成员只需要向Switcher B发送的报文中源MAC地址标识为组播MAC地址,Switcher B接收到源MAC地址为组播MAC地址的报文后,即将该报文发送方作为组播成员,并发送组播报文;若预设时间内交换机没有接收到组播成员发送的报文,则交换机判断路由失效,将该组播成员从原组播成员中清除。
具体的,如图7所示,包括以下步骤:
步骤701,Switcher B根据Host B、Host C发送的流量学习相应的MAC地址,建立MAC地址与多端口的对应关系,并且当该MAC地址为组播MAC地址时,Switcher B将Host B、Host C确定为组播成员。
步骤702,Switcher B接收到组播源发送的报文时,根据MAC地址与多端口的对应关系,通过多端口发送组播报文。
其中,Switcher B根据MAC地址与端口的对应关系维护组播组与组播成员的对应关系,Switcher B根据MAC老化消息进行端口和MAC地址老化,即管理组播成员的加入或者离开。
步骤703,根据MAC信息Switcher B向上游Switcher A发起加入,在Switcher A上建立Switcher B与组播组的对应关系,让Switcher B起到IGMP-Snooping的作用。此时,对于组播源向Switcher A发送的流量,在Switcher B上进行复制并向多个终端设备发送,实现流量的组播发送。
在上述步骤中,Switcher B在向上游Switcher A发起加入时,需要根据组播组MAC地址与组播组IP地址的对应关系,向上游Switcher A发送携带组播组IP地址的加入报文。当接收到SwitcherA发送的以组播组IP地址为目的IP地址的组播流时,再根据组播组MAC地址与组播组IP地址的对应关系,转化为MAC地址,再根据MAC地址与终端设备的关系,通过多个端口向多个终端设备发送。
通过采用本发明提供的方法,交换机预先建立MAC表项,并当流量的MAC地址对应多个端口时,交换机复制该流量并分别通过多个端口发送,从而可以在多台设备虚拟化为同一台设备时,有效进行流量转发。采用本发明应用场景提供的方法应用于组播管理时,不需要Switcher B与组播成员之间遵守IGMP协议,在Switcher B上预先配置组播MAC地址,若接收到报文的源MAC地址为组播MAC地址,则Switcher B判断报文发送方为组播成员,并向该报文发送方发送组播报文,组播管理简单、方便。
本发明提供一种流量转发的设备,作为交换机应用于多个流量发送方可以具有相同MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;如图8所示,该设备包括:
端口获取单元11,用于根据接收到的流量的目的介质访问控制MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;MAC地址对应多个端口的情况,表明通过不同端口连接该流量转发设备的设备具有相同的MAC地址或者为虚拟的同一台设备。例如,提供同一种服务的负载分担的多台设备,具有相同的MAC地址,分别通过不同的端口连接流量转发设备,对不同的报文进行处理。
复制发送单元12,用于当所述端口获取单元11获取到所述MAC地址对应多个端口时,复制所述流量,分别通过所述多个端口发送所述流量。该单元并不区分哪些端口对应哪些流量,而是将流量复制后,通过每一端口发送,以保证通过每一端口与流量转发设备连接的设备都能够接收到需要的流量。
本发明提供的流量转发的设备中,还包括:
表项建立单元13,用于建立所述MAC表项。具体的,所述表项建立单元13获取接收到的报文的源MAC地址,根据所述源MAC地址查找相应的MAC表项;当所述MAC表项中所述源MAC地址对应的端口与所述报文的入端口不一致时,在所述MAC表项中增加所述报文的入端口,建立所述源MAC地址与多端口的对应关系。
本发明提供的流量转发的设备中,还包括:
表项更新单元14,用于更新所述MAC表项。具体的,当所述交换机在预设时间内一直没有通过所述MAC表项中的端口接收到相应的MAC地址发送的流量时,所述表项更新单元14更新所述MAC表项,删除所述端口与所述MAC地址的对应关系;若所述MAC表项中没有其余端口,则清除所述MAC表项。
所述表项更新单元14还用于:
当所述MAC表项中的MAC地址上的设备与所述交换机之间的链路DOWN时,更新所述MAC表项,删除所述设备与所述交换机连接的端口与MAC地址的对应关系;若所述MAC表项中没有其余端口,则清除所述MAC表项。
本发明提供的流量转发的设备中,还包括:
响应接收单元15,用于通过所述多个端口接收所述流量的多个接收方根据预先配置分别对不同的流量做出的响应。所述多个端口接收所述流量的多个接收方都接收全部的流量,但是可能并不需要全部的流量,每一流量接收方根据各自需要选择相应的流量进行处理,对于不需要处理的流量丢弃或者不做处理。
本发明提供的流量转发的设备中,所述端口获取单元11还用于:当所述流量为组播报文时,所述交换机获取组播报文携带的目的组播IP地址,根据预先配置的IP地址与MAC地址的对应关系,获取所述组播IP地址对应的组播MAC地址,进一步获取所述组播MAC地址对应的端口。相应的,所述复制发送单元12还用于:通过所述端口获取单元获取的端口发送所述组播报文。
通过采用本发明提供的设备,交换机预先建立MAC表项,并当流量的MAC地址对应多个端口时,交换机复制该流量并分别通过多个端口发送,从而可以在多台设备虚拟化为同一台设备时,有效进行流量转发。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (10)

1.一种流量转发的方法,其特征在于,应用于多个流量发送方具有相同介质访问控制MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,所述交换机和所述多个流量发送方未启用Internet组管理协议IGMP,其特征在于,该方法包括:
当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;其中,所述报文为流量发送方发送的以组播MAC地址作为源MAC地址的报文时,所述交换机所存储的源MAC地址与多个端口的对应关系为所述组播MAC地址与多个端口的对应关系;
当所述交换机接收到非组播流量时,根据接收到的流量的目的MAC地址,查找预先建立的MAC表项,获取所述MAC地址对应的端口;并当所述MAC地址对应多个端口时,所述交换机复制所述流量,分别通过所述多个端口发送所述流量;
当所述交换机接收到组播流量时,获取组播流量携带的目的组播IP地址,根据预先配置的组播IP地址与组播MAC地址的对应关系,获取所述组播IP地址对应的组播MAC地址,根据所述组播MAC地址,查找预先建立的MAC表项,获取所述组播MAC地址对应的端口;当所述组播MAC地址对应多个端口时,所述交换机复制所述组播流量,分别通过所述多个端口发送所述组播流量。
2.如权利要求1所述的方法,其特征在于,所述MAC表项的建立包括:
所述交换机获取接收到的报文的源MAC地址,并根据所述源MAC地址查找相应的MAC表项;
若未查找到相应的MAC表项,则所述交换机根据该源MAC地址建立MAC表项;
若查找到相应的MAC表项,但所述MAC表项中的端口与所述报文的入端口不一致,则所述交换机在所述MAC表项中增加所述报文的入端口,建立所述源MAC地址与多端口的对应关系。
3.如权利要求1或2所述的方法,其特征在于,所述MAC表项具有老化机制,具体的,
当所述交换机在预设时间内一直没有通过所述MAC表项中的端口接收到相应的MAC地址发送的流量时,所述交换机更新所述MAC表项,删除所述端口与所述MAC地址的对应关系或者清除所述MAC表项。
4.如权利要求1或2所述的方法,其特征在于,当所述MAC表项中的MAC地址上的设备与所述交换机之间的链路DOWN时,所述交换机更新所述MAC表项,删除所述设备与所述交换机连接的端口与MAC地址的对应关系,或者清除所述MAC表项。
5.如权利要求1或2所述的方法,其特征在于,所述通过所述多个端口发送所述流量之后,还包括:
所述流量的多个接收方根据预先配置分别对不同的流量进行响应。
6.一种流量转发的设备,其特征在于,作为交换机应用于多个流量发送方具有相同MAC地址的流量转发系统,该系统包括交换机以及多个流量发送方,所述交换机和所述多个流量发送方未启用Internet组管理协议IGMP,当所述交换机通过不同端口接收到不同流量发送方发送的携带相同源MAC地址的报文时,所述交换机建立MAC表项,存储所述源MAC地址与多个端口的对应关系;其中,所述报文为流量发送方发送的以组播MAC地址作为源MAC地址的报文时,所述交换机所存储的源MAC地址与多个端口的对应关系为所述组播MAC地址与多个端口的对应关系;该设备包括:
端口获取单元,用于根据接收到的非组播流量的MAC地址,查找预先建立的MAC表项,获取所述非组播流量的MAC地址对应的端口;以及,当接收到组播流量时,获取组播流量携带的目的组播IP地址,根据预先配置的组播IP地址与组播MAC地址的对应关系,获取所述组播IP地址对应的组播MAC地址,进一步获取所述组播MAC地址对应的端口;
复制发送单元,用于当所述端口获取单元获取到所述MAC地址对应多个端口时,复制所述流量,分别通过所述多个端口发送接收到的流量;其中,所述MAC地址为非组播流量的MAC地址或组播MAC地址。
7.如权利要求6所述的设备,其特征在于,还包括:
表项建立单元,用于建立所述MAC表项;
具体的,所述表项建立单元用于获取接收到的报文的源MAC地址,并根据所述源MAC地址查找相应的MAC表项;若未查找到相应的MAC表项,则根据该源MAC地址建立MAC表项;若查找到相应的MAC表项,但所述MAC表项中的端口与所述报文的入端口不一致,则在所述MAC表项中增加所述报文的入端口,建立所述源MAC地址与多端口的对应关系。
8.如权利要求6或7所述的设备,其特征在于,还包括:
表项更新单元,用于更新所述MAC表项;
具体的,所述表项更新单元用于:当所述交换机在预设时间内一直没有通过所述MAC表项中的端口接收到相应的MAC地址发送的流量时,更新所述MAC表项,删除所述端口与所述MAC地址的对应关系或者清除所述MAC表项。
9.如权利要求8所述的设备,其特征在于,所述表项更新单元还用于:
当所述MAC表项中的MAC地址上的设备与所述交换机之间的链路DOWN时,更新所述MAC表项,删除所述设备与所述交换机连接的端口与MAC地址的对应关系,或者清除所述MAC表项。
10.如权利要求6或7所述的设备,其特征在于,还包括:
响应接收单元,用于通过所述多个端口接收所述流量的多个接收方根据预先配置分别对不同的流量做出的响应。
CN2009101742205A 2009-09-23 2009-09-23 一种流量转发的方法及设备 Active CN101651626B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101742205A CN101651626B (zh) 2009-09-23 2009-09-23 一种流量转发的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101742205A CN101651626B (zh) 2009-09-23 2009-09-23 一种流量转发的方法及设备

Publications (2)

Publication Number Publication Date
CN101651626A CN101651626A (zh) 2010-02-17
CN101651626B true CN101651626B (zh) 2012-04-18

Family

ID=41673746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101742205A Active CN101651626B (zh) 2009-09-23 2009-09-23 一种流量转发的方法及设备

Country Status (1)

Country Link
CN (1) CN101651626B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404179B (zh) * 2010-09-19 2014-10-29 杭州华三通信技术有限公司 一种报文处理的方法和装置
CN102025520A (zh) * 2010-11-26 2011-04-20 中兴通讯股份有限公司 限制终端组播预览的方法及接入设备
CN102594664B (zh) * 2012-02-02 2015-06-17 杭州华三通信技术有限公司 流量转发方法和装置
CN103491004B (zh) * 2013-09-02 2016-07-20 奥维通信股份有限公司 一种基于mias系统的以太网交换方法
CN104660526B (zh) * 2013-11-22 2018-03-16 华为技术有限公司 Mac表项学习方法和装置
CN106375219B (zh) * 2016-08-22 2020-01-03 杭州迪普科技股份有限公司 一种转发报文的方法和装置
CN109688214B (zh) * 2018-12-24 2021-11-23 杭州数梦工场科技有限公司 数据传输方法、装置及存储介质
CN110798409A (zh) * 2019-10-31 2020-02-14 深信服科技股份有限公司 流量处理方法、装置和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1929638A (zh) * 2006-10-20 2007-03-14 中兴通讯股份有限公司 一种无线局域网ip组播帧传输的组播成员管理方法
CN101257447A (zh) * 2008-03-14 2008-09-03 华为技术有限公司 一种负载分担的方法、系统及路由装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1929638A (zh) * 2006-10-20 2007-03-14 中兴通讯股份有限公司 一种无线局域网ip组播帧传输的组播成员管理方法
CN101257447A (zh) * 2008-03-14 2008-09-03 华为技术有限公司 一种负载分担的方法、系统及路由装置

Also Published As

Publication number Publication date
CN101651626A (zh) 2010-02-17

Similar Documents

Publication Publication Date Title
CN101651626B (zh) 一种流量转发的方法及设备
CN101601232B (zh) 三层任播寻址
US9876706B2 (en) Relay system and switching device for a layer 3 network
CN100433730C (zh) 组播点播方法及系统
WO2019228433A1 (zh) 组播数据报文转发方法及设备
CN101729425B (zh) Vrrp组网中流量发送的方法及设备
CN103747083B (zh) 一种基于ccn的内容推送方法
CN105262667A (zh) Overlay网络中控制组播传输的方法、装置
CN104509073A (zh) 在软件定义的网络中发现ip多播组成员
CN103944828A (zh) 一种协议报文的传输方法和设备
CN105991445A (zh) 链路聚合组的设置方法和装置
CN101252529A (zh) 一种组播报文的转发方法和设备
CN104506513A (zh) 防火墙流表备份方法、防火墙及防火墙系统
CN105162704A (zh) Overlay网络中组播复制的方法及装置
CN102820977A (zh) 组播方法、装置及网络设备
CN100444586C (zh) 报文转发方法及设备
KR101491397B1 (ko) 분산 시스템 아키텍처에서의 효율적인 멀티캐스팅 방법
CN102546308A (zh) 基于重复地址检测实现邻居发现代理的方法和系统
US20190222537A1 (en) Modifications of headend forwarding rules to join wide area network branch hosts to multicast groups
EP3224996A1 (en) Methods, routing device and further routing device for managing data frames in switched networks
CN102625162B (zh) 一种数据传输方法和系统
EP3155772B1 (en) A new instant messaging(im) routing method and router
WO2021184862A1 (zh) 一种报文发送方法、第一网络设备及网络系统
CN103546302A (zh) 使用单播协议的多播传输
CN102412976A (zh) 一种运营商骨干网桥接网络中处理组播报文的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.

CP03 Change of name, title or address