CN104065582B - 一种报文传输方法和网关设备 - Google Patents
一种报文传输方法和网关设备 Download PDFInfo
- Publication number
- CN104065582B CN104065582B CN201310095558.8A CN201310095558A CN104065582B CN 104065582 B CN104065582 B CN 104065582B CN 201310095558 A CN201310095558 A CN 201310095558A CN 104065582 B CN104065582 B CN 104065582B
- Authority
- CN
- China
- Prior art keywords
- exchange chip
- address
- mac
- port
- trill
- 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
Links
Landscapes
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种报文传输方法和网关设备,该方法包括:第一交换芯片接收单播报文;如果所述单播报文为TRILL报文,则第一交换芯片解封装所述TRILL报文的TRILL头和外层以太头,得到TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;如果所述单播报文为以太报文,则所述第一交换芯片通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发。本发明实施例中,可以节约环回口资源。
Description
技术领域
本发明涉及通信技术领域,尤其是涉及一种基于TRILL(TransparentInterconnection of Lots of Links,多链路透明互联)网络的报文传输方法和设备。
背景技术
TRILL是大规模二层网络的技术标准,用于解决STP(Spanning Tree Protocol,生成树协议)网络的以下问题:部分链路被阻塞,链路利用不充分;数据流的转发路径可能不是最优路径;拓扑变化收敛时间慢等;此外,TRILL技术的优点包括:所有链路都处于工作状态,充分利用链路带宽;使用最短路径转发;支持多路径负载分担;拓扑变化收敛时间快等。
如图1所示,为运行TRILL协议的TRILL网络示意图,交换机划分为核心层、汇聚层和接入层,接入层交换机和汇聚层交换机为RB(Routing Bridge,路由桥,即运行TRILL协议的交换机),且接入层和汇聚层的RB构成了TRILL网络;此外,主机(包括服务器,图中未画出)连接在接入层RB下,其网关设备为汇聚层RB,且汇聚层的多个网关设备之间可以运行VRRPE(Virtual Router Redundancy Protocol Enhancement,增强的虚拟路由器冗余协议)或者GLBP(Gateway Load Balancing Protocol,网关负载均衡协议),从而对主机形成一个虚拟网关,并可以实现网关设备的备份与负载分担。
TRILL网络中,网关设备基于三层转发的单播报文(主机发送给TRILL网络外部的报文,TRILL网络外部发送给主机的报文,TRILL网络内部不同VLAN(Virtual Local AreaNetwork,虚拟局域网)之间的报文)的转发过程需要环回口实现;例如,主机发送给TRILL网络外部的报文的相应处理包括:
步骤1、网关设备(即汇聚层RB)在收到TRILL报文(即主机发送给TRILL网络外部的单播报文)后,根据TRILL报文中的目的Nickname(别名)查找Nickname转发表,如果发现目的Nickname为本网关设备的Nickname,则剥掉该TRILL报文的TRILL头,得到TRILL报文内部的以太报文。
步骤2、网关设备将以太报文发向环回口,且当以太报文从环回口环回后,根据以太报文的目的MAC(Media Access Control,介质访问控制)地址查找MAC转发表,如果发现目的MAC地址为本网关设备的MAC地址,则根据以太报文的目的IP地址查找IP转发表,并根据查找结果发送该以太报文。
其中,由于上述TRILL报文为主机发送给TRILL网络外部的报文,因此查找结果为网关设备与核心层交换机之间的上行端口,即网关设备需要通过网关设备与核心层交换机之间的上行端口发送该以太报文。
由于当前网关设备上对单播报文的转发都需要使用环回口,因此会浪费环回口的资源,且单播报文的转发性能受限于环回口数量。
发明内容
本发明实施例提供一种报文传输方法和网关设备,以避免使用环回口传输单播报文,节约了环回口资源。
为了达到上述目的,本发明实施例提供一种报文传输方法,应用于多链路透明互联TRILL网络中的网关设备,其所述网关设备包括两个以上交换芯片,且每个交换芯片均配置有一对应的代理交换芯片;该方法包括:
所述两个以上交换芯片中的第一交换芯片接收单播报文;
如果所述单播报文为TRILL报文,则所述第一交换芯片解封装所述TRILL报文的TRILL头和外层以太头,得到所述TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;
如果所述单播报文为以太报文,则所述第一交换芯片通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:
若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;
若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;
在得到所述TRILL报文内部的以太报文后,进一步根据所述以太报文的内层以太头中携带的目的MAC地址和VLAN查询所述MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将所述以太报文发送给所述第二交换芯片。
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;
所述第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将经IP转发处理后的所述以太报文发送给所述第二交换芯片。
所述第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,具体包括:
所述第一交换芯片通过以太报文的IP头中携带的目的IP地址查询所述第一交换芯片对应的IP转发表:
当查询结果为出端口为所述网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述三层端口发送替换后的以太报文;
当查询结果为出端口为第一交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述端口将替换后的以太报文发送给第二交换芯片。
所述根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发,具体包括:
所述第一交换芯片通过所述以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口RB的Nickname时,通过所述出口RB的Nickname查询Nickname转发表,得到所述以太报文对应的下一跳信息,且所述以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;
所述第一交换芯片在所述以太报文中封装TRILL头,并利用查询到的所述源MAC地址、目的MAC地址、目的VLAN在所述以太报文中封装外层以太头,得到包含有所述以太报文的TRILL报文,并通过所述出端口将所述TRILL报文发送。
本发明实施例提供一种多链路透明互联TRILL网络中的网关设备,包括两个以上交换芯片,还包括用于预先为每个交换芯片配置一对应代理交换芯片的配置单元;其中,所述两个以上交换芯片中的第一交换芯片包括:
接收单元,用于接收单播报文;
第一处理单元,用于在所述单播报文为TRILL报文时,解封装所述TRILL报文的TRILL头和外层以太头,得到所述TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;
第二处理单元,用于在所述单播报文为以太报文时,通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:
若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;
若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
所述配置单元,具体用于在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;
所述第一处理单元,用于在得到所述TRILL报文内部的以太报文后,进一步根据所述以太报文的内层以太头中携带的目的MAC地址和VLAN查询所述MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将所述以太报文发送给所述第二交换芯片。
所述配置单元,具体用于在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;
所述第二处理单元,用于在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将经IP转发处理后的所述以太报文发送给所述第二交换芯片。
所述第二处理单元包括:
第一查询子单元,用于通过以太报文的IP头中携带的目的IP地址查询所述第一交换芯片对应的IP转发表:
第一转发子单元,用于当查询结果为出端口为所述网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述三层端口发送替换后的以太报文;
第二转发子单元,用于当查询结果为出端口为第一交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述端口将替换后的以太报文发送给第二交换芯片。
所述第二处理单元包括:
第二查询子单元,用于通过所述以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口RB的Nickname时,通过所述出口RB的Nickname查询Nickname转发表,得到所述以太报文对应的下一跳信息,且所述以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;
第三转发子单元,用于在所述以太报文中封装TRILL头,并利用查询到的所述源MAC地址、目的MAC地址、目的VLAN在所述以太报文中封装外层以太头,得到包含有所述以太报文的TRILL报文,并通过所述出端口将所述TRILL报文发送。
与现有技术相比,本发明实施例至少具有以下优点:本发明实施例中,通过第一交换芯片和第二交换芯片之间的交互,实现单播报文传输过程,从而可以避免使用环回口传输单播报文,并可以节约环回口资源,且单播报文的转发性能不需要受限于环回口的数量。
附图说明
图1是现有技术中运行TRILL协议的TRILL网络示意图;
图2是本发明实施例提出的应用场景示意图;
图3-图5是基于图2所示的应用场景,本发明实施例提出的基于TRILL网络的单播报文传输方法流程示意图;
图6是本发明实施例提供的一种网关设备结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中所述的二层、三层分别是指OSI(open system interconnection,开放式系统互联)网络通信模型中的数据链路层和网络层;所述三层端口是指与TRILL网络外部相连的端口,所述TRILL端口是指使能了TRILL协议的二层端口,且TRILL端口是指与TRILL网络内部主机相连的端口。
本发明实施例提出了一种基于TRILL网络的报文传输方法,该方法可以应用于至少包括两个以上交换芯片的网关设备(即汇聚层RB设备,该汇聚层RB设备被配置为主机的网关)中;其中,该报文为基于三层转发的单播报文,且该单播报文至少包括但不限于:TRILL网络内部主机发送给TRILL网络外部的报文,TRILL网络外部发送给TRILL网络内部主机的报文,TRILL网络内不同VLAN之间的报文。
本发明实施例中,两个以上交换芯片至少包括第一交换芯片(其为从三层端口或者TRILL端口收到单播报文的交换芯片)和第二交换芯片,且第二交换芯片预先被配置为第一交换芯片的代理交换芯片;当网关设备为框式设备(如框式交换机),且网关设备具有多块线卡(接口板)时,第一交换芯片和第二交换芯片可以为不同线卡上的交换芯片;当网关设备为盒式设备(如盒式交换机,其具有一块线卡,且使用两个以上交换芯片)时,第一交换芯片和第二交换芯片可以为相同线卡上的交换芯片。
例如,当网关设备具有两块线卡时,可以预先配置线卡1和线卡2上的交换芯片互为对方的代理交换芯片,即,在线卡1收到单播报文时,线卡1上的交换芯片为第一交换芯片,线卡2上的交换芯片为第二交换芯片;在线卡2收到单播报文时,线卡2上的交换芯片为第一交换芯片,线卡1上的交换芯片为第二交换芯片。又例如,当网关设备具有三块线卡时,在线卡1收到单播报文时,线卡1上的交换芯片为第一交换芯片,线卡2上的交换芯片为第二交换芯片;在线卡2收到单播报文时,线卡2上的交换芯片为第一交换芯片,线卡3上的交换芯片为第二交换芯片;在线卡3收到单播报文时,线卡3上的交换芯片为第一交换芯片,线卡1上的交换芯片为第二交换芯片。
第一交换芯片在接收到单播报文之后,如果单播报文为TRILL报文(即第一交换芯片从TRILL端口收到的单播报文),则第一交换芯片解封装TRILL报文中的TRILL头和外层以太头,得到TRILL报文内部的以太报文,并将以太报文发送给第二交换芯片;由第二交换芯片通过以太报文的目的IP地址查询IP转发表,并根据查询结果发送以太报文。如果单播报文为以太报文(即第一交换芯片从三层端口收到的单播报文),则第一交换芯片通过以太报文的目的IP地址查询IP转发表,并根据查询结果将以太报文发送给第二交换芯片;由第二交换芯片在以太报文中封装TRILL头和外层以太头,得到包含以太报文的TRILL报文,并发送TRILL报文。
以下结合图2所示的网络示意图对本发明实施例的方法进行详细说明。
假设TRILL网络内部有服务器1和服务器2(后续以这两个服务器为例),TRILL网络外部有主机A;且服务器1的MAC地址为MAC1,VLAN属于VLAN1,IP地址为IP1;服务器2的MAC地址为MAC2,VLAN属于VLAN2,IP地址为IP2;主机A的MAC地址为MAC A,VLAN属于VLAN A,IP地址为IP A;网关设备1的TRILL端口(端口A)的MAC地址为MAC3,网关设备1的三层端口(端口B)的MAC地址为MAC4。
在上述应用场景下,本发明实施例中涉及表项内容可以如下所示,各表项中的内容为配置或学习到相应表项中的,且如下介绍的相应表项的学习或配置过程只是一种具体实现方式,本发明实施例并不局限于如下实施方式。
一、本设备虚端口MAC表(即MY_STATION_TCAM表)。
表1
MAC地址 | VLAN标识 | TRILL处理标识 | 三层处理标识 |
MAC3 | VLAN100 | 1 | 0 |
MAC4 | VLAN1 | 0 | 1 |
MAC4 | VLAN A | 0 | 1 |
上述本设备虚端口MAC表用于记录本设备的TRILL端口的MAC地址和三层端口的MAC地址,且上述本设备虚端口MAC表中记录的内容为预先配置的;在表1中,VLAN100是TRILL网络的VLAN(由TRILL网络内部各设备协商确定),TRILL处理标识为1表示MAC3为本设备TRILL端口的MAC地址,三层处理标识为0表示MAC3不是本设备三层端口的MAC地址;三层处理标识为1表示MAC4为本设备三层端口的MAC地址,TRILL处理标识为0表示MAC4不是本设备TRILL端口的MAC地址。
二、Nickname转发表。
表2
Nickname | 所属设备 | 源MAC | 目的MAC | 目的VLAN | 出端口 |
网关1 | 1 | ||||
路由桥1 | 0 | MAC3 | MAC 11 | VLAN100 | 端口A |
路由桥2 | 0 | MAC3 | MAC 12 | VLAN100 | 端口A |
上述Nickname转发表中记录的内容为预先配置的;在表2中,网关1是网关设备1的Nickname,路由桥1是RB1的Nickname,路由桥2是RB2的Nickname,所属设备为1表示当前Nickname为本设备Nickname,其后续字段为空,所属设备为0表示当前Nickname不是本设备Nickname,其后续字段不为空,MAC 11为RB1的MAC地址,MAC 12为RB2的MAC地址。
三、MAC转发表。
表3
目的MAC地址 | VLAN标识 | 芯片标识 | 出端口 |
MAC4 | VLAN1 | 芯片B | 端口E |
表4
目的MAC地址 | VLAN标识 | 出口RB的Nickname |
MAC1 | VLAN1 | 路由桥1 |
MAC2 | VLAN2 | 路由桥2 |
对于网关设备本身MAC地址对应的MAC转发表,将维护表3所示的MAC转发表,且上述表3所示的MAC转发表中记录的内容为预先配置的;对于非网关设备本身MAC地址对应的MAC转发表,将维护表4所示的MAC转发表,且上述表4所示的MAC转发表中记录的内容为网关设备学习到的,例如:RB1会针对服务器1的MAC地址和VLAN进行广播,即广播MAC1、VLAN1和路由桥1(即RB1的Nickname)的信息,网关设备1在学习到上述广播信息之后,可以在表4中记录相应内容。
本发明实施例中,当目的MAC地址为本网关设备的MAC地址时,网关设备的MAC转发表中维护有目的MAC地址、VLAN标识、芯片标识和出端口之间的对应关系;如表3所示,MAC转发表中维护有MAC4、VLAN1、芯片B和端口E之间的对应关系;当有交换芯片通过以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN1)查询MAC转发表时,能够查询到对应的芯片标识为芯片B,出端口为端口E,该芯片B和端口E表示交换芯片需要将相应报文通过端口E发送给芯片B进行后续处理。
四、IP转发表,该IP转发表具体为IP路由表或IP主机表(IP主机表又可称为ARP表),如表5所示的IP路由表以及表6所示的IP主机表。
表5
目的IP地址 | 出端口 | 下一跳MAC | 源MAC | VLAN |
IP A | 端口B | MAC A | MAC4 | VLAN A |
表6
目的IP地址 | 芯片标识 | 出端口 | 下一跳MAC | 源MAC | VLAN |
IP1 | 芯片B | 端口E | MAC1 | MAC4 | VLAN1 |
IP2 | 芯片C | 端口F | MAC2 | MAC4 | VLAN2 |
对于表5所示的IP路由表中记录的内容为网关设备学习到的,具体学习方式与现有路由的学习方式相同,在此不再赘述;此外,对于表6所示的IP主机表中记录的内容为预先配置的。
本发明实施例中,网关设备的IP转发表中维护有目的IP地址、芯片标识、出端口、下一跳MAC、源MAC和VLAN标识之间的对应关系;如表6所示,IP转发表中维护有IP1、芯片B、端口E、MAC1、MAC4和VLAN1之间的对应关系,IP2、芯片C、端口F、MAC2、MAC4和VLAN2之间的对应关系;当有交换芯片通过以太报文的IP头中携带的目的IP地址(IP1)查询IP转发表时,能够查询到对应的芯片标识为芯片B、出端口为端口E、下一跳MAC为MAC1、VLAN标识为VLAN1,芯片B和端口E表示交换芯片需要将相应报文通过端口E发送给芯片B进行后续处理,MAC1为查询到的目的MAC地址,VLAN1为查询到的目的VLAN;当有交换芯片通过以太报文的IP头中携带的目的IP地址(IP2)查询IP转发表时,能够查询到对应的芯片标识为芯片C、出端口为端口F、下一跳MAC为MAC2、VLAN标识为VLAN2,芯片C和端口F表示交换芯片需要将相应报文通过端口F发送给芯片C进行后续处理,MAC2为查询到的目的MAC地址,VLAN2为查询到的目的VLAN。
本发明实施例中,网关设备包括两个以上交换芯片,且每个交换芯片均配置有一对应的代理交换芯片;基于上述各表项的维护,两个以上交换芯片中的第一交换芯片接收单播报文;如果单播报文为TRILL报文,则第一交换芯片解封装TRILL报文的TRILL头和外层以太头,得到TRILL报文内部的以太报文,并将以太报文发送给作为其代理交换芯片的第二交换芯片,由第二交换芯片对以太报文进行IP转发;如果单播报文为以太报文,则第一交换芯片通过以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;在得到TRILL报文内部的以太报文后,进一步根据以太报文的内层以太头中携带的目的MAC地址和VLAN查询MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过端口将以太报文发送给第二交换芯片。
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过端口将经IP转发处理后的以太报文发送给第二交换芯片。
本发明实施例中,第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询IP转发表,并根据查找到的表项对以太报文进行IP转发处理,具体包括:第一交换芯片通过以太报文的IP头中携带的目的IP地址查询第一交换芯片对应的IP转发表:当查询结果为出端口为网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过三层端口发送替换后的以太报文;当查询结果为出端口为第二交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过端口将替换后的以太报文发送给第二交换芯片。
本发明实施例中,根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发,具体包括:第一交换芯片通过以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口RB的Nickname时,通过出口RB的Nickname查询Nickname转发表,得到以太报文对应的下一跳信息,且以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;第一交换芯片在以太报文中封装TRILL头,并利用查询到的源MAC地址、目的MAC地址、目的VLAN在以太报文中封装外层以太头,得到包含有以太报文的TRILL报文,并通过出端口将TRILL报文发送。
以下结合具体的流程对本发明实施例进行详细说明。
情况一,在TRILL网络内部服务器(服务器1)向TRILL网络外部(主机A)发送单播报文时,第一交换芯片(芯片A)和第二交换芯片(芯片B)为网关设备1的交换芯片,如图3所示,单播报文的传输流程包括以下步骤:
步骤301、第一交换芯片从TRILL端口(端口A)接收来自服务器1的TRILL报文(即服务器1发送给TRILL网络外部主机A的单播报文)。
本发明实施例中,该TRILL报文中至少携带以太报文(具有内层以太头和IP头)、TRILL头(携带信息为RB1添加)和外层以太头(携带信息为RB1添加)。
在内层以太头中,目的MAC地址为网关设备1的三层端口的MAC地址(MAC4),源MAC地址为服务器1的MAC地址(MAC1),VLAN为服务器1所属VLAN(VLAN1);在IP头中,目的IP地址为主机A的IP地址(IP A),源IP地址为服务器1的IP地址(IP1)。
在TRILL头中,目的Nickname信息为网关设备1的Nickname(网关1),源Nickname信息为RB1的Nickname(路由桥1)。
在外层以太头中,源MAC地址为RB1的TRILL端口的MAC地址,目的MAC地址为网关设备1的TRILL端口的MAC地址(MAC3),目的VLAN为TRILL网络的VLAN(VLAN100,由TRILL网络内部各设备协商确定)。
步骤302、第一交换芯片从TRILL端口收到TRILL报文之后,利用TRILL报文的外层以太头中携带的目的MAC地址(MAC3)和目的VLAN(VLAN100)查询本设备虚端口MAC表。
基于表1中记载的内容,在通过MAC3和VLAN100查询本设备虚端口MAC表时,查询结果为TRILL处理标识为1,三层处理标识为0,即查询结果表示目的MAC地址(MAC3)为本设备TRILL端口的MAC地址。
步骤303、当查询结果为目的MAC地址为本设备TRILL端口的MAC地址时,第一交换芯片解封装TRILL报文的外层以太头,并利用TRILL报文的TRILL头中携带的目的Nickname(网关1)查询Nickname转发表。
基于表2中记载的内容,在通过网关1查询Nickname转发表时,查询结果为所属设备为1,即查询结果表示目的Nickname为本设备Nickname。
步骤304、当查询结果为目的Nickname为本设备Nickname时,第一交换芯片解封装TRILL报文的TRILL头,得到TRILL报文内部的以太报文,并通过该以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN1)查询MAC转发表。
基于表3和表4中记载的内容,在通过MAC4和VLAN1查询MAC转发表时,查询结果为芯片B和端口E;其中,芯片B表示第二交换芯片,端口E表示第一交换芯片与第二交换芯片之间的端口。
步骤305、当查询结果为第一交换芯片与第二交换芯片之间的端口时,第一交换芯片通过该端口(端口E)将以太报文发送给第二交换芯片(芯片B)。
步骤306、第二交换芯片在收到以太报文之后,通过该以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN1)查询本设备虚端口MAC表。
基于表1中记载的内容,在通过MAC4和VLAN1查询本设备虚端口MAC表时,查询结果为TRILL处理标识为0,三层处理标识为1,即查询结果表示目的MAC地址(MAC4)为本设备三层端口的MAC地址。
步骤307、当查询结果为目的MAC地址为本设备三层端口的MAC地址时,第二交换芯片通过以太报文的IP头中携带的目的IP地址(IP A)查询IP转发表(IP路由表或IP主机表);其中,第二交换芯片首先查询IP主机表(用于记录TRILL网络内部设备的IP地址),如果IP主机表中没有相应记录,则查询IP路由表(用于记录TRILL网络外部设备的IP地址)。
基于表5和表6中记载的内容,在通过IP A查询IP主机表时,没有IP A对应记录,在通过IP A查询IP路由表时有IP A对应记录,查询结果为出端口为端口B、目的MAC为MAC A、源MAC为MAC4,VLAN为VLAN A。
步骤308、当查询结果为出端口为网关设备的三层端口(端口B)时,第二交换芯片通过端口B将以太报文发送给TRILL网络外部设备(主机A)。
本发明实施例中,基于IP转发表(IP路由表或IP主机表)的查询结果可知,出端口为端口B、目的MAC为MAC A、源MAC为MAC4,VLAN为VLAN A;第二交换芯片在通过端口B将以太报文发送给TRILL网络外部设备之前,利用MAC A替换内层以太头中携带的目的MAC地址(MAC4),利用VLAN A替换内层以太头中携带的目的VLAN(VLAN1),以及,利用MAC4替换内层以太头中携带的源MAC地址(MAC1)。此时该以太报文仅包括内层以太头和IP头。
情况二,在TRILL网络外部(主机A)向TRILL网络内部服务器(服务器1)发送单播报文时,第一交换芯片(芯片A)和第二交换芯片(芯片B)为网关设备1的交换芯片,如图4所示,单播报文的传输流程包括以下步骤:
步骤401、第一交换芯片从三层端口(端口B)接收来自主机A的以太报文(即TRILL网络外部主机A发送给TRILL网络内服务器1的单播报文)。
本发明实施例中,以太报文中具有内层以太头和IP头,此时在以太报文外部没有封装外层以太头;且在内层以太头中,目的MAC地址为网关设备1的三层端口的MAC地址(MAC4),源MAC地址为主机A的MAC地址(MAC A),VLAN为主机A所属VLAN(VLAN A);在IP头中,目的IP地址为服务器1的IP地址(IP1),源IP地址为主机A的IP地址(IP A)。
步骤402、第一交换芯片从三层端口收到以太报文之后,利用该以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN A)查询本设备虚端口MAC表(MY_STATION_TCAM表)。
基于表1中记载的内容,在通过MAC4和VLAN A查询本设备虚端口MAC表时,查询结果为TRILL处理标识为0,三层处理标识为1,即查询结果表示目的MAC地址(MAC4)为本设备三层端口的MAC地址。
步骤403,当查询结果为目的MAC地址为本设备三层端口的MAC地址时,第一交换芯片通过以太报文的IP头中携带的目的IP地址(IP1)查询IP转发表(IP路由表或IP主机表);其中,第一交换芯片首先查询IP主机表(用于记录TRILL网络内部设备的IP地址),如果IP主机表中没有相应记录,则查询IP路由表(用于记录TRILL网络外部设备的IP地址)。
基于表5和表6中记载的内容,在通过IP1查询表6所示的IP主机表时,有IP1对应记录,查询结果为芯片标识为芯片B、出端口为端口E,目的MAC为MAC1,源MAC为MAC4,VLAN为VLAN1。
步骤404,当查询结果为出端口为第一交换芯片与第二交换芯片之间的端口时,第一交换芯片通过该端口(端口E)将以太报文发送给第二交换芯片。
本发明实施例中,基于IP转发表(IP路由表或IP主机表)的查询结果可知,出端口为端口E,目的MAC为MAC1,源MAC为MAC4,VLAN为VLAN1;第一交换芯片在通过端口E将以太报文发送给第二交换芯片之前,还需要利用MAC1替换内层以太头中携带的目的MAC地址(MAC4),利用VLAN1替换内层以太头中携带的目的VLAN(VLAN A),以及,利用MAC4替换内层以太头中携带的源MAC地址(MAC A)。
步骤405,第二交换芯片在收到以太报文之后,通过该以太报文的内层以太头中携带的目的MAC地址(MAC1)和VLAN(VLAN1)查询本设备虚端口MAC表(MY_STATION_TCAM表)。
基于表1中记载的内容,在通过MAC1和VLAN1查询本设备虚端口MAC表时,查询结果为空,即本设备虚端口MAC表没有MAC1对应记录。
步骤406,当查询结果为本设备虚端口MAC表中没有目的MAC地址对应记录时,第二交换芯片通过以太报文的内层以太头中携带的目的MAC地址(MAC1)和VLAN(VLAN1)查询MAC转发表。
基于表3和表4中记载的内容,在通过MAC1和VLAN1查询MAC转发表时,查询结果为路由桥1,即查询结果为路由网桥的Nickname。
步骤407,当查询结果为Nickname(路由桥1,其为目的服务器直连路由桥的Nickname)时,第二交换芯片通过该Nickname(路由桥1)查询Nickname转发表,得到以太报文对应的下一跳信息,该以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口。
基于表2中记载的内容,在通过路由桥1查询Nickname转发表时,查询结果为所属设备为0,源MAC为网关设备1的TRILL端口的MAC地址(MAC3),目的MAC为RB1的MAC(MAC 11),出端口为网关设备1的TRILL端口(端口A),目的VLAN为VLAN100(TRILL网络的VLAN)。
步骤408,第二交换芯片在以太报文中封装TRILL头和外层以太头(其信息基于查询结果确定),得到包含有以太报文的TRILL报文,并通过出端口(端口A)将TRILL报文发送给TRILL网络内部的设备(即服务器1)。
在TRILL头中,目的Nickname信息为RB1的Nickname(路由桥1),源Nickname信息为网关设备1的Nickname(网关1)。
在外层以太头中,源MAC地址为网关设备1的TRILL端口的MAC地址(MAC3),目的MAC地址为RB1的TRILL端口的MAC地址(MAC 11),目的VLAN为TRILL网络的VLAN(VLAN100)。
情况三,在TRILL网络内部服务器(服务器1)向TRILL网络内部不同VLAN的另一个服务器(服务器2)发送单播报文时,第一交换芯片(芯片A)和第二交换芯片(芯片B)为网关设备1的交换芯片,如图5所示,单播报文的传输流程包括以下步骤:
步骤501,第一交换芯片从TRILL端口(端口A)接收来自服务器1的TRILL报文(即服务器1发送给TRILL网络内部服务器2的单播报文)。
本发明实施例中,该TRILL报文中至少携带以太报文(具有内层以太头和IP头)、TRILL头(携带信息为RB1添加)和外层以太头(携带信息为RB1添加)。
在内层以太头中,目的MAC地址为网关设备1的三层端口的MAC地址(MAC4),源MAC地址为服务器1的MAC地址(MAC1),VLAN为服务器1所属VLAN(VLAN1);在IP头中,目的IP地址为服务器2的IP地址(IP2),源IP地址为服务器1的IP地址(IP1)。
在TRILL头中,目的Nickname信息为网关设备1的Nickname(网关1),源Nickname信息为RB1的Nickname(路由桥1)。
在外层以太头中,源MAC地址为RB1的TRILL端口的MAC地址,目的MAC地址为网关设备1的TRILL端口的MAC地址(MAC3),目的VLAN为TRILL网络的VLAN(VLAN100,由TRILL网络内部各设备协商确定)。
步骤502,第一交换芯片从TRILL端口收到TRILL报文之后,利用TRILL报文的外层以太头中携带的目的MAC地址(MAC3)和目的VLAN(VLAN100)查询本设备虚端口MAC表。
基于表1中记载的内容,在通过MAC3和VLAN100查询本设备虚端口MAC表时,查询结果为TRILL处理标识为1,三层处理标识为0,即查询结果表示目的MAC地址(MAC3)为本设备TRILL端口的MAC地址。
步骤503、当查询结果为目的MAC地址为本设备TRILL端口的MAC地址时,第一交换芯片解封装TRILL报文的外层以太头,并利用TRILL报文的TRILL头中携带的目的Nickname(网关1)查询Nickname转发表。
基于表2中记载的内容,在通过网关1查询Nickname转发表时,查询结果为所属设备为1,即查询结果表示目的Nickname为本设备Nickname。
步骤504,当查询结果为目的Nickname为本设备Nickname时,第一交换芯片解封装TRILL报文的TRILL头,得到TRILL报文内部的以太报文,并通过该以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN1)查询MAC转发表。
基于表3和表4中记载的内容,在通过MAC4和VLAN1查询MAC转发表时,查询结果为芯片B和端口E;其中,芯片B表示第二交换芯片,端口E表示第一交换芯片与第二交换芯片之间的端口。
步骤505、当查询结果为第一交换芯片与第二交换芯片之间的端口时,第一交换芯片通过该端口(端口E)将以太报文发送给第二交换芯片(芯片B)。
步骤506、第二交换芯片在收到以太报文之后,通过该以太报文的内层以太头中携带的目的MAC地址(MAC4)和VLAN(VLAN1)查询本设备虚端口MAC表。
基于表1中记载的内容,在通过MAC4和VLAN1查询本设备虚端口MAC表时,查询结果为TRILL处理标识为0,三层处理标识为1,即查询结果表示目的MAC地址(MAC4)为本设备三层端口的MAC地址。
步骤507、当查询结果为目的MAC地址为本设备三层端口的MAC地址时,第二交换芯片通过以太报文的IP头中携带的目的IP地址(IP2)查询IP转发表(IP路由表或IP主机表);其中,第二交换芯片首先查询IP主机表(用于记录TRILL网络内部设备的IP地址),如果IP主机表中没有相应记录,则查询IP路由表(用于记录TRILL网络外部设备的IP地址)。
基于表5和表6中记载的内容,在通过IP2查询表6所示的IP主机表时,有IP2对应记录,查询结果为芯片标识为芯片C、出端口为端口F,目的MAC为MAC2,源MAC为MAC4,VLAN为VLAN2。
步骤508,当查询结果为出端口为第二交换芯片与第二交换芯片的代理交换芯片(其可以为另一个第三交换芯片,或者,也可以为第一交换芯片,后续以第三交换芯片为例进行说明)之间的端口时,第二交换芯片通过该端口(端口F)将以太报文发送给第三交换芯片(芯片C)。
本发明实施例中,基于IP转发表(IP路由表或者IP主机表)的查询结果可知,出端口为端口F,目的MAC为MAC2,源MAC为MAC4,VLAN为VLAN2;第二交换芯片在通过端口F将以太报文发送给第三交换芯片之前,还需要利用MAC2替换内层以太头中携带的目的MAC地址(MAC4),利用VLAN2替换内层以太头中携带的目的VLAN(VLAN1),以及,利用MAC4替换内层以太头中携带的源MAC地址(MAC1)。
步骤509,第三交换芯片在收到以太报文之后,通过该以太报文的内层以太头中携带的目的MAC地址(MAC2)和VLAN(VLAN2)查询本设备虚端口MAC表(MY_STATION_TCAM表)。
基于表1中记载的内容,在通过MAC2和VLAN2查询本设备虚端口MAC表时,查询结果为空,即本设备虚端口MAC表没有MAC2对应记录。
步骤510,当查询结果为本设备虚端口MAC表中没有目的MAC地址对应记录时,第三交换芯片通过以太报文的内层以太头中携带的目的MAC地址(MAC2)和VLAN(VLAN2)查询MAC转发表。
基于表3和表4中记载的内容,在通过MAC2和VLAN2查询MAC转发表时,查询结果为路由桥2,即查询结果为路由网桥的Nickname。
步骤511,当查询结果为Nickname(路由桥2,其为目的服务器直连路由桥的Nickname)时,第三交换芯片通过该Nickname(路由桥2)查询Nickname转发表,得到以太报文对应的下一跳信息,该以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口。
基于表2中记载的内容,在通过路由桥2查询Nickname转发表时,查询结果为所属设备为0,源MAC为网关设备1的TRILL端口的MAC地址(MAC3),目的MAC为RB2的MAC(MAC 12),出端口为网关设备1的TRILL端口(端口A),目的VLAN为VLAN100(TRILL网络的VLAN)。
步骤512,第三交换芯片在以太报文中封装TRILL头和外层以太头(其信息基于查询结果确定),得到包含有以太报文的TRILL报文,并通过出端口(端口A)将TRILL报文发送给TRILL网络内部的设备(即服务器2)。
在TRILL头中,目的Nickname信息为RB2的Nickname(路由桥2),源Nickname信息为网关设备1的Nickname(网关1)。
在外层以太头中,源MAC地址为网关设备1的TRILL端口的MAC地址(MAC3),目的MAC地址为RB2的TRILL端口的MAC地址(MAC 12),目的VLAN为TRILL网络的VLAN(VLAN100)。
如图6所示,基于与上述方法同样的发明构思,本发明实施例中还提供了一种多链路透明互联TRILL网络中的网关设备,包括两个以上交换芯片,还包括用于预先为每个交换芯片配置一对应代理交换芯片的配置单元11;其中,所述两个以上交换芯片中的第一交换芯片包括:
接收单元12,用于接收单播报文;
第一处理单元13,用于在所述单播报文为TRILL报文时,解封装所述TRILL报文的TRILL头和外层以太头,得到所述TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;
第二处理单元14,用于在所述单播报文为以太报文时,通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
所述配置单元11,具体用于在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;
所述第一处理单元13,用于在得到所述TRILL报文内部的以太报文后,进一步根据所述以太报文的内层以太头中携带的目的MAC地址和VLAN查询所述MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将所述以太报文发送给所述第二交换芯片。
所述配置单元11,具体用于在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;
所述第二处理单元14,用于在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将经IP转发处理后的所述以太报文发送给所述第二交换芯片。
所述第二处理单元14包括:
第一查询子单元141,用于通过以太报文的IP头中携带的目的IP地址查询所述第一交换芯片对应的IP转发表:
第一转发子单元142,用于当查询结果为出端口为所述网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述三层端口发送替换后的以太报文;
第二转发子单元143,用于当查询结果为出端口为第二交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述端口将替换后的以太报文发送给第二交换芯片。
所述第二处理单元14包括:
第二查询子单元144,用于通过所述以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口RB的Nickname时,通过所述出口RB的Nickname查询Nickname转发表,得到所述以太报文对应的下一跳信息,且所述以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;
第三转发子单元145,用于在所述以太报文中封装TRILL头,并利用查询到的所述源MAC地址、目的MAC地址、目的VLAN在所述以太报文中封装外层以太头,得到包含有所述以太报文的TRILL报文,并通过所述出端口将所述TRILL报文发送。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种报文传输方法,应用于多链路透明互联TRILL网络中的网关设备,其特征在于,所述网关设备包括两个以上交换芯片,且每个交换芯片均配置有一对应的代理交换芯片;该方法包括:
所述两个以上交换芯片中的第一交换芯片接收单播报文;
如果所述单播报文为TRILL报文,则所述第一交换芯片解封装所述TRILL报文的TRILL头和外层以太头,得到所述TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;
如果所述单播报文为以太报文,则所述第一交换芯片通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:
若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;
若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
2.如权利要求1所述的方法,其特征在于,
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;
在得到所述TRILL报文内部的以太报文后,进一步根据所述以太报文的内层以太头中携带的目的MAC地址和VLAN查询所述MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将所述以太报文发送给所述第二交换芯片。
3.如权利要求1所述的方法,其特征在于,
预先配置第二交换芯片为第一交换芯片的代理交换芯片包括:在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;
所述第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将经IP转发处理后的所述以太报文发送给所述第二交换芯片。
4.如权利要求3所述的方法,其特征在于,所述第一交换芯片在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,具体包括:
所述第一交换芯片通过以太报文的IP头中携带的目的IP地址查询所述第一交换芯片对应的IP转发表:
当查询结果为出端口为所述网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述三层端口发送替换后的以太报文;
当查询结果为出端口为第一交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述端口将替换后的以太报文发送给第二交换芯片。
5.如权利要求1所述的方法,其特征在于,所述根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发,具体包括:
所述第一交换芯片通过所述以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口路由桥RB的Nickname时,通过所述出口路由桥RB的Nickname查询Nickname转发表,得到所述以太报文对应的下一跳信息,且所述以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;
所述第一交换芯片在所述以太报文中封装TRILL头,并利用查询到的所述源MAC地址、目的MAC地址、目的VLAN在所述以太报文中封装外层以太头,得到包含有所述以太报文的TRILL报文,并通过所述出端口将所述TRILL报文发送。
6.一种多链路透明互联TRILL网络中的网关设备,其特征在于,包括两个以上交换芯片,还包括用于预先为每个交换芯片配置一对应代理交换芯片的配置单元;其中,所述两个以上交换芯片中的第一交换芯片包括:
接收单元,用于接收单播报文;
第一处理单元,用于在所述单播报文为TRILL报文时,解封装所述TRILL报文的TRILL头和外层以太头,得到所述TRILL报文内部的以太报文,并将所述以太报文发送给作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对所述以太报文进行IP转发;
第二处理单元,用于在所述单播报文为以太报文时,通过所述以太报文的内层以太头中携带的目的MAC地址查询本设备虚端口MAC表:
若本设备虚端口MAC表中没有目的MAC地址对应记录,则根据以太报文的目的MAC地址和VLAN查询MAC转发表及Nickname转发表,进行TRILL转发;
若本设备虚端口MAC表中有目的MAC地址对应记录,则对以太报文进行IP转发处理,其中,在以太报文的目的IP地址为TRILL网络内的主机IP地址时,将经IP转发处理后的以太报文发送至作为其代理交换芯片的第二交换芯片,由所述第二交换芯片对经IP转发处理后的以太报文进行TRILL转发。
7.如权利要求6所述的网关设备,其特征在于,
所述配置单元,具体用于在第一交换芯片对应的MAC转发表中维护一目的MAC地址为网关设备的MAC地址、VLAN为TRILL网络内的主机所属VLAN、出端口为第一交换芯片上连接第二交换芯片的端口的转发表项;
所述第一处理单元,用于在得到所述TRILL报文内部的以太报文后,进一步根据所述以太报文的内层以太头中携带的目的MAC地址和VLAN查询所述MAC转发表;当查询到的转发表项对应的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将所述以太报文发送给所述第二交换芯片。
8.如权利要求6所述的网关设备,其特征在于,
所述配置单元,具体用于在第一交换芯片对应的IP转发表中,维护TRILL网络内主机的IP主机表项,且配置该IP主机表项的出端口为第一交换芯片上连接第二交换芯片的端口;
所述第二处理单元,用于在对以太报文进行IP转发处理时,进一步根据以太报文的目的IP地址查询所述IP转发表,并根据查找到的表项对以太报文进行IP转发处理,其中,当查找到的表项的出端口为第一交换芯片上连接第二交换芯片的端口时,通过所述端口将经IP转发处理后的所述以太报文发送给所述第二交换芯片。
9.如权利要求8所述的网关设备,其特征在于,所述第二处理单元包括:
第一查询子单元,用于通过以太报文的IP头中携带的目的IP地址查询所述第一交换芯片对应的IP转发表:
第一转发子单元,用于当查询结果为出端口为所述网关设备连接至TRILL网络外部的三层端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述三层端口发送替换后的以太报文;
第二转发子单元,用于当查询结果为出端口为第一交换芯片上连接第二交换芯片的端口时,通过查询到的目的MAC地址替换内层以太头中携带的目的MAC地址,通过查询到的目的VLAN替换内层以太头中携带的目的VLAN,并通过所述端口将替换后的以太报文发送给第二交换芯片。
10.如权利要求6所述的网关设备,其特征在于,所述第二处理单元包括:
第二查询子单元,用于通过所述以太报文携带的目的MAC地址和VLAN查询MAC转发表;当查询到目的MAC地址对应的出口路由桥RB的Nickname时,通过所述出口路由桥RB的Nickname查询Nickname转发表,得到所述以太报文对应的下一跳信息,且所述以太报文对应的下一跳信息包括源MAC地址、目的MAC地址、目的VLAN和出端口;
第三转发子单元,用于在所述以太报文中封装TRILL头,并利用查询到的所述源MAC地址、目的MAC地址、目的VLAN在所述以太报文中封装外层以太头,得到包含有所述以太报文的TRILL报文,并通过所述出端口将所述TRILL报文发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310095558.8A CN104065582B (zh) | 2013-03-22 | 2013-03-22 | 一种报文传输方法和网关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310095558.8A CN104065582B (zh) | 2013-03-22 | 2013-03-22 | 一种报文传输方法和网关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104065582A CN104065582A (zh) | 2014-09-24 |
CN104065582B true CN104065582B (zh) | 2017-06-27 |
Family
ID=51553120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310095558.8A Active CN104065582B (zh) | 2013-03-22 | 2013-03-22 | 一种报文传输方法和网关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104065582B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991446A (zh) * | 2015-02-06 | 2016-10-05 | 中国移动通信集团公司 | Trill网络中三层组网及数据处理方法、设备和系统 |
CN106302264B (zh) * | 2015-06-08 | 2019-06-14 | 新华三技术有限公司 | Dune交换线卡板与灵活线卡板间的单播报文互通方法及装置 |
CN106385366B (zh) * | 2016-08-31 | 2019-07-02 | 迈普通信技术股份有限公司 | Trill网络管理方法及装置 |
CN107995112B (zh) * | 2017-12-25 | 2021-02-26 | 杭州迪普科技股份有限公司 | 一种框式设备的trill报文处理方法及装置 |
CN108156066B (zh) * | 2017-12-29 | 2021-06-29 | 杭州迪普科技股份有限公司 | 报文转发方法和装置 |
CN109246006B (zh) * | 2018-08-15 | 2022-10-04 | 曙光信息产业(北京)有限公司 | 一种通过交换芯片构建的交换系统及其路由方法 |
CN110611625B (zh) * | 2018-11-27 | 2020-11-06 | 新华三技术有限公司 | 网络设备及应用于网络设备的逻辑装置 |
CN110855568B (zh) * | 2019-11-22 | 2022-02-22 | 迈普通信技术股份有限公司 | 报文转发方法及系统 |
CN112235212B (zh) * | 2020-09-11 | 2022-04-26 | 新华三信息安全技术有限公司 | 一种报文转发方法及可编程框式交换设备 |
CN113347085B (zh) * | 2021-06-02 | 2022-12-13 | 河南信大网御科技有限公司 | 一种拟态环境下实现stp协议的方法 |
CN113746740A (zh) * | 2021-09-07 | 2021-12-03 | 天津津航计算技术研究所 | 一种国产化12端口lrm三层千兆网络交换模块 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368727A (zh) * | 2011-09-14 | 2012-03-07 | 杭州华三通信技术有限公司 | 跨ip网络的trill网络通信方法、系统和设备 |
CN102571610A (zh) * | 2012-03-02 | 2012-07-11 | 杭州华三通信技术有限公司 | 一种报文转发方法和边缘设备 |
CN102882781A (zh) * | 2012-10-11 | 2013-01-16 | 华为技术有限公司 | 一种报文发送的方法、路由器桥及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9246703B2 (en) * | 2010-06-08 | 2016-01-26 | Brocade Communications Systems, Inc. | Remote port mirroring |
-
2013
- 2013-03-22 CN CN201310095558.8A patent/CN104065582B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368727A (zh) * | 2011-09-14 | 2012-03-07 | 杭州华三通信技术有限公司 | 跨ip网络的trill网络通信方法、系统和设备 |
CN102571610A (zh) * | 2012-03-02 | 2012-07-11 | 杭州华三通信技术有限公司 | 一种报文转发方法和边缘设备 |
CN102882781A (zh) * | 2012-10-11 | 2013-01-16 | 华为技术有限公司 | 一种报文发送的方法、路由器桥及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104065582A (zh) | 2014-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104065582B (zh) | 一种报文传输方法和网关设备 | |
CN107911258B (zh) | 一种基于sdn网络的安全资源池的实现方法及系统 | |
CN104243270B (zh) | 一种建立隧道的方法和装置 | |
JP6189942B2 (ja) | 個別管理方式を使用する仮想転送インスタンスの遠端アドレスへのvlanタグ付きパケットのルーティング | |
CN102970227B (zh) | 在asic中实现vxlan报文转发的方法和装置 | |
CN103841023B (zh) | 数据转发的方法和设备 | |
CN101155130B (zh) | 学习mac地址的方法及传送vpls客户数据的系统及设备 | |
CN1946041B (zh) | 基于arp侦听的vlan聚合方法、汇聚交换机及系统 | |
US20080159277A1 (en) | Ethernet over fibre channel | |
CN102739501B (zh) | 二三层虚拟私有网络中的报文转发方法和系统 | |
CN108476160A (zh) | 基于分层覆叠穿隧的交换机互连 | |
US20130259050A1 (en) | Systems and methods for multi-level switching of data frames | |
EP1971099A1 (en) | A data transfer method and a switching equipment | |
CN101110745A (zh) | 衔接二层网络和三层网络的方法、装置和系统 | |
CN102859973A (zh) | 一种地址解析的方法,装置和系统 | |
CN108200225A (zh) | 不对称网络地址封装 | |
CN104365066B (zh) | 用于以太虚拟专用网的方法和设备 | |
CN105450525B (zh) | 用于路由交换设备使用的方法和设备 | |
WO2008019614A1 (fr) | Procédé et système pour le transfert de données entre plusieurs réseaux ethernet de fournisseurs | |
CN106657442A (zh) | 基于VxLAN实现媒体共享存储网络的系统及其方法 | |
CN108199958A (zh) | 一种通用的安全资源池服务链实现方法及系统 | |
CN107317752A (zh) | 一种转发数据报文的方法及装置 | |
CN103701679B (zh) | 一种实现vlan转换的方法 | |
CN104506404A (zh) | 建立虚拟局域网转发通道的方法和装置 | |
CN103107934A (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 | ||
GR01 | Patent grant | ||
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 |