一种地址解析协议代答方法和装置制造方法

文档序号:7816372阅读:176来源:国知局
一种地址解析协议代答方法和装置制造方法
【专利摘要】本发明提供了一种地址解析协议(ARP)代答方法,该方法包括:VTEP设备获得本设备下挂主机设备的路由信息进行存储,并将所述路由信息同步给其它VTEP设备;该VTEP设备接收到其它VTEP设备同步的路由信息时,在本地存储;该VTEP设备接收到下挂主机设备发送的ARP请求报文时,使用本地存储的路由信息进行ARP代答。基于同样的发明构思,本申请还提出一种地址解析协议代答装置,能够提高收集ARP代答信息的效率,从而提高ARP代答的效率。
【专利说明】一种地址解析协议代答方法和装置

【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种地址解析协议代答方法和装置。

【背景技术】
[0002]在云计算的多租户环境中,每个租户都需要分配一个能够与其它逻辑网络进行很好隔离的逻辑网络,逻辑网络的隔离可以通过虚拟可扩展局域网(Virtual extensibleLocal Area Network, VXLAN)技术来实现。VXLAN网络通过24bit来标识一个VXLAN网络。
[0003]VXLAN网络致力于建立一个基于三层网络的二层网络,故VXLAN网络也称为叠加网络(Overlay Network)。在VXLAN网络中可以通过隧道走三层或二层转发。
[0004]VXLAN需要在隧道上运行。一般情况下VXLAN会在数据中心网络中部署,运行VXLAN网络的设备称为虚拟可扩展局域网隧道端点(VXLAN Tunnel End Point,VTEP),负责VXLAN网络报文的加封装和解封装。
[0005]VTEP下行口一般用于连接服务器,上行口是运行VXLAN的隧道,VTEP之间通过隧道两两互连,VTEP之间运行VXLAN网络。数据中心网络的服务器内会运行很多虚拟机,VTEP连接由多个服务器组成的站点网络,虚拟机之间使用VLAN协议在二层进行通信。
[0006]当不同的站点网络需要在二层进行通信时,通过VTEP之间的VXLAN网络就可以进行通信。不同站点之间穿越VXLAN网络进行通信,在虚拟机看来,就是一个二层网络,根本感知不到VXLAN网络的存在。
[0007]虚拟机在二层网络通信时通常会运行地址解析协议(Address Resolut1nProtocol, ARP)协议,ARP请求是以泛洪的形式向全网扩散,包括用VXLAN网络连接起来的不同站点二层网络,这对数据中心整网带宽消耗较大,如果虚拟机数量较多,APR协议报文会经常占用大量网络带宽;为了解决这一技术问题,VTEP收集ARP代答信息进行ARP代答,因此,收集ARP代答信息的方式将直接影响ARP代答的效率。


【发明内容】

[0008]有鉴于此,本申请提供一种地址解析协议代答方法和装置,以解决收集ARP代答信息效率低下的问题。
[0009]为解决上述技术问题,本申请的技术方案是这样实现的:
[0010]一种地址解析协议ARP代答方法,应用于虚拟可扩展局域网VXLAN网络中的虚拟可扩展局域网隧道端点VTEP设备上,所述方法包括:
[0011]该VTEP设备获得本设备下挂主机设备的路由信息进行存储,并将所述路由信息同步给其它VTEP设备;所述路由信息包括主机设备的因特网协议IP地址、媒体访问控制MAC地址和该主机设备所属的VXLAN的VXLAN标识;
[0012]该VTEP设备接收到其它VTEP设备同步的路由信息时,在本地存储;
[0013]该VTEP设备接收到下挂主机设备发送的ARP请求时,使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配,当匹配到对应的路由信息时,将该路由信息中的MAC地址响应给发送该ARP请求的主机设备。
[0014]一种地址解析协议ARP代答装置,应用于虚拟可扩展局域网VXLAN网络中的虚拟可扩展局域网隧道端点VTEP设备上,所述装置包括:获得单元、存储单元、发送单元、接收单元和匹配单元;
[0015]所述获取单元,用于获得本装置下挂主机设备的路由信息;
[0016]所述存储单元,用于存储所述获取单元获得的本装置下挂主机设备的路由信息;当所述接收单元接收到其它VTEP设备同步的路由信息时,进行存储;所述路由信息包括主机设备的因特网协议IP地址、媒体访问控制MAC地址和该主机设备所属的VXLAN的VXLAN标识;
[0017]所述发送单元,用于将所述获取单元获得的本装置下挂主机设备的路由信息同步给其它VTEP设备;当所述匹配单元匹配到对应的路由信息时,将该路由信息中的MAC地址响应给发送该ARP请求的主机设备;
[0018]所述接收单元,用于接收其它VTEP设备同步的路由信息;用于接收ARP请求报文;
[0019]所述匹配单元,用于当所述接收单元接收到下挂主机设备发送的ARP请求时,使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配。
[0020]由上面的技术方案可知,本申请中通过在VTEP设备之间同步各自下挂主机设备的路由信息,从而各VTEP设备获得所有对端VTEP设备下挂主机设备的路由信息,能够提高收集ARP代答信息的效率,从而提高ARP代答的效率。

【专利附图】

【附图说明】
[0021]图1为本申请实施例中网关设备获取全网路由信息的流程示意图;
[0022]图2为本申请实施例中新增TLV结构示意图;
[0023]图3为本申请实施例中VTEP进行ARP代答过程流程示意图;
[0024]图4为VXLAN分布式网关典型组网示意图;
[0025]图5为本申请具体实施例中应用于上述技术的流程示意图。

【具体实施方式】
[0026]为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
[0027]本申请提供一种ARP代答方法,应用于VXLAN网络中的VTEP上,这里的VTEP可以是网关设备,也可以是边界设备(Border)。VXLAN网络中存在多个VTEP设备时,各VTEP设备之间会两两建立隧道。
[0028]参见图1,图1为本申请实施例中网关设备获取全网路由信息的流程示意图。具体步骤包括:
[0029]步骤101,VTEP设备获得本设备下挂主机设备的路由信息进行存储,并将所述路由信息同步给其它VTEP设备。
[0030]本步骤中获得的下挂主机设备的路由信息包括:该主机设备的因特网协议(Internet Protocol, IP)地址、媒体访问控制(Media Access Control, MAC)地址和该主机设备所属的VXLAN的VXLAN标识。
[0031]本步骤中VTEP设备获得其下挂主机设备的路由信息有多种方式,如接收到免费ARP请求报文获得,如接收到主机设备的登录请求信息获得,如接收到主机设备要访问网络的请求信息获得等。
[0032]该VTEP设备将所述路由信息同步给其它VTEP设备,即将获得的自身的下挂主机设备的路由信息同步给其它VTEP设备,不会将其它VTEP设备同步给本设备的路由信息再次同步。
[0033]在具体实现时,本申请通过在链路状态协议数据单元(Link State Protocol DataUnit, LSP)报文中携带路由信息,同步给其它VTEP设备。
[0034]需要LSP报文同步路由信息时,在各VTEP上使能ISIS协议,用于传输LSP报文。当VTEP为边界设备时,若该边界设备不存在下挂主机设备时,可以不使能ISIS协议,与其它网关设备不进行路由信息的同步。
[0035]本申请中的主机设备可以是虚拟机(virtual machine, VM),可以是服务器、一台个人计算机(Personal Computer, PC)等有自身的IP地址和MAC地址的设备。
[0036]步骤102,该VTEP设备接收到其它VTEP设备同步的路由信息时,在本地存储。
[0037]VTEP接收到其它VTEP设备同步的路由信息在本地存储后,不在将接收到的路由信息同步给其它VTEP设备。
[0038]在具体实现时,如果使用LSP报文同步路由信息时,则在接收到其它VTEP设备发送的LSP报文时,获取LSP报文中的路由信息,并在本地存储。
[0039]本实施例中步骤101和步骤102的执行不分先后顺序。
[0040]本申请使用LSP携带路由信息时,通过在LSP报文新增TLV实现。参见图2,图2为本申请实施例中新增TLV结构示意图。
[0041]图2 中,
[0042]类型(Type)为主机设备的路由信息(H0ST-RI);
[0043]长度(Length)为该TLV的总长度;
[0044]可信度(Confidence),用于对冲突IP的优选;
[0045]标准IP协议族(IP FAMILY),值为2,表示是IPV4地址;值为10,表示是IPV6地址;
[0046]前缀长度(Prefix Len),表示该TLV中携带的所有IP地址的总长度;
[0047]Prefix,用于携带路由信息中的IP地址;
[0048]预留字段(RSV),为保留字段,填充O ;
[0049]标识位(TAG),值为O时,表示后面字段是普通VLAN ;值为I时,表示后面字段是Bridge-Domain ;值为2时,表示后面字段是VXLAN ;本申请实施例中该标识位的值为2 ;
[0050]VLAN-1D/Bridge-Domain/VXLAN:MAC 地址所在的 VLAN、Bridge-Domain 或 VXLAN ;
[0051]MAC,用于携带路由信息中的MAC地址信息。
[0052]本实施例中,一个TLV为尽可能地携带该VTEP设备下挂的主机设备的路由信息,当该VTEP设备下挂的主机设备数量过大,一个TLV不能携带时,可以增加TLV实现,也可以再发送一条LSP报文实现。
[0053]本申请具体实现时,任一 VTEP设备当确定本VTEP设备下挂主机设备的路由信息变化时,将变化后的路由信息同步给其它VTEP设备。
[0054]当虚拟机迁移,有新的主机设备上线,或有主机设备下线时,都会导致VTEP设备下挂主机设备的路由信息发生变化。
[0055]由于各VTEP设备上的路由信息发生变化时,都会通知其它VTEP设备。因此,VTEP设备可能会多次接收到其它VTEP设备同步的路由信息,在每次接收到其它VTEP设备同步的路由信息时,确定接收到的路由信息与本地存储的路由信息不一致时,使用接收到的路由信息更新本地存储的所述其它VTEP设备对应的路由信息;否则,直接在本地存储即可。
[0056]该VTEP获得VXLAN网络中所有VTEP下挂主机设备的路由信息时,可以对其下挂主机设备进行ARP代答。参见图3,图3为本申请实施例中VTEP进行ARP代答过程流程示意图。具体步骤包括:
[0057]步骤301, VTEP设备接收到下挂主机设备发送的ARP请求。
[0058]步骤302,该VTEP设备使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配。
[0059]步骤303,当匹配到对应的路由信息时,该VTEP设备将该路由信息中的MAC地址响应给发送该ARP请求的主机设备。
[0060]当匹配到对应的路由信息时,该VTEP设备将该路由信息中的MAC地址响应给发送该ARP请求的主机设备,即该VTEP设备对该ARP请求报文进行响应时,不再通过接收该ARP请求报文的端口之外的端口广播该ARP请求报文。
[0061]当匹配不成功时,即不存在该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识对应的路由信息时,通过接收该ARP请求报文的端口之外的端口广播该ARP请求报文,如果广播该ARP请求报文的端口为隧道口,则根据该隧道口对应的隧道信息封装该ARP请求报文后再发送。
[0062]下面结合附图,详细说明本申请具体实施例中如何实现ARP代答。参见图4,图4为VXLAN分布式网关典型组网示意图。图4中,VTEP设备以网关设备为例,以网关设备接收免费ARP报文获得下挂主机设备的路由信息为例。
[0063]网关设备1、网关设备2和网关设备3两两之间建立險道,并都使能ISIS协议。
[0064]网关设备I下挂主机设备I和主机设备2,网关设备2下挂主机设备3、主机设备4和主机设备5,网关设备3下挂主机设备6。
[0065]主机设备I到主机设备6在上线时,都会送免费ARP报文。
[0066]网关设备I在接收到主机设备I发送的免费ARP报文时,获得主机设备I的路由信息(IP1、MAC1、VXLAN10),其中IPl为免费ARP报文的发送端IP地址,MACl为免费ARP报文的源MAC地址。
[0067]同样的实现过程,网关设备I获得主机设备2的路由信息(IP2、MAC2、VXLAN20);网关设备2获得主机设备3的路由信息(IP3、MAC3、VXLAN10)、主机设备4的路由信息(IP4、MAC4.VXLAN20)和主机设备5的路由信息(IP5、MAC5、VXLAN30);网关设备3获得主机设备6 的路由信息(IP6、MAC6、VXLAN20)。
[0068]网关设备I将主机设备I和主机设备2的路由信息携带在LSP报文中发送给网关设备2和网关设备3 ;网关设备2将主机设备3、主机设备4和主机设备5的路由信息携带在LSP报文中发送给网关设备I和网关设备3 ;网关设备3将主机设备6的路由信息携带在LSP报文中国发送给网关设备I和网关设备2。
[0069]网关设备I接收到网关设备2发送的LSP报文时,将该LSP报文中携带主机设备
3、主机设备4和主机设备5的路由信息在本地存储,并标识是由网关设备2同步的路由信息;接收到网关设备3发送的LSP报文时,将该LSP报文中携带的主机设备6的路由信息在本地存储,并标识是由网关设备3同步的。
[0070]同上述一致的处理,网关设备1、网关设备2和网关设备3在本地均存储了 VXLAN网络中所有主机设备的路由信息。
[0071]当主机设备I向主机设备3发送数据报文,且本地不存在对应的ARP表项时,发送ARP请求报文请求主机设备3的MAC地址。
[0072]网关设备I接收到该ARP请求报文时,使用该ARP请求报文的目标端IP地址(IP3)以及该ARP请求报文携带的VXLAN标识(VXLAN10),在本地存储的路由信息中匹配,当匹配至Ij对应的路由信息时,将该路由信息中的MAC地址(MAC3)响应给主机设备1,使主机设备I使用MAC地址(MAC3)进行数据报文的转发。
[0073]当网关设备2下挂的主机设备3下线时,网关设备2确定其获得的主机路由信息发生变化,即由主机设备3、主机设备4和主机设备5的路由信息变化为主机设备4和主机设备5的路由信息,则将变化后的路由信息携带在LSP中发送给网关设备I和网关设备3,。
[0074]网关设备I和网关设备3接收到该LSP报文时,分别更新本地存储的网关设备2对应的路由信息。
[0075]基于同样的发明构思,本申请还提出一种地址解析协议代答装置,应用于虚拟可扩展局域网VXLAN网络中的虚拟可扩展局域网隧道端点VTEP设备上。参见图5,图5为本申请具体实施例中应用于上述技术的流程示意图。该装置包括:获得单元501、存储单元502、发送单元503、接收单元504和匹配单元505。
[0076]获取单元501,用于获得本装置下挂主机设备的路由信息;
[0077]存储单元502,用于存储获取单元501获得的本装置下挂主机设备的路由信息;当接收单元504接收到其它VTEP设备同步的路由信息时,进行存储;所述路由信息包括主机设备的因特网协议IP地址、媒体访问控制MAC地址和该主机设备所属的VXLAN的VXLAN标识;
[0078]发送单元503,用于将获取单元501获得的本装置下挂主机设备的路由信息同步给其它VTEP设备;当匹配单元505匹配到对应的路由信息时,将该路由信息中的MAC地址响应给发送该ARP请求的主机设备;
[0079]接收单元504,用于接收其它VTEP设备同步的路由信息;用于接收ARP请求报文;
[0080]匹配单元505,用于当接收单元504接收到下挂主机设备发送的ARP请求时,使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配。
[0081]较佳地,
[0082]发送单元503,具体用于将获取单元501获得的本装置下挂主机设备的路由信息携带在LSP报文中发送给其它VTEP设备。
[0083]较佳地,该装置进一步包括:确定单元506 ;
[0084]确定单元506,用于确定本装置下挂主机设备的路由信息是否发生变化;
[0085]发送单元503,进一步用于当确定单元506确定本装置下挂主机设备的路由信息变化时,将变化后的路由信息同步给其它VTEP设备。
[0086]较佳地,
[0087]确定单元506,进一步用于当所述接收单元接收到其它VTEP设备同步的路由信息时,确定本地是否存在所述其它VTEP设备同步的路由信息;
[0088]存储单元502,进一步用于当确定单元506确定本地存在所述其他VTEP设备同步的路由信息时,使用接收到的路由信息更新本地存储的所述其它VTEP设备对应的路由信息;否则,将接收到的路由信息进行存储。
[0089]上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单兀。
[0090]综上所述,本申请通过在VTEP设备之间同步各自下挂主机设备的路由信息,从而各VTEP设备获得所有对端VTEP设备下挂主机设备的路由信息,能够提高收集ARP代答信息的效率,从而提高ARP代答的效率。
[0091]本申请提供的实施例提高了 ARP协议请求报文效率,减少ARP报文在整网中泛洪,节省网络带宽资源,加快网络收敛速度。
[0092]并且通过ISIS协议,使得VXLAN网络的VTEP节点都同步了主机路由信息,方便使用主机路由信息做后续扩展和应用。
[0093]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种地址解析协议ARP代答方法,应用于虚拟可扩展局域网VXLAN网络中的虚拟可扩展局域网隧道端点VTEP设备上,其特征在于,所述方法包括: 该VTEP设备获得本设备下挂主机设备的路由信息进行存储,并将所述路由信息同步给其它VTEP设备;所述路由信息包括主机设备的因特网协议IP地址、媒体访问控制MAC地址和该主机设备所属的VXLAN的VXLAN标识; 该VTEP设备接收到其它VTEP设备同步的路由信息时,在本地存储; 该VTEP设备接收到下挂主机设备发送的ARP请求时,使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配,当匹配到对应的路由信息时,将该路由信息中的MAC地址响应给发送该ARP请求的主机设备。
2.根据权利要求1所述的方法,其特征在于,所述将所述路由信息同步给其它VTEP设备,包括: 将所述路由信息携带在链路状态协议数据单元LSP报文中发送给其它VTEP设备。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括: VTEP设备当确定本VTEP设备下挂主机设备的路由信息变化时,将变化后的路由信息同步给其它VTEP设备。
4.根据权利要求3所述的方法,其特征在于,所述该VTEP接收到其它VTEP设备同步的路由信息时,所述在本地存储之前,所述方法进一步包括: 确定本地是否存在所述其它VTEP设备同步的路由信息,如果是,确定接收到的路由信息与本地存储的路由信息不一致时,使用接收到的路由信息更新本地存储的所述其它VTEP设备对应的路由信息;否则,执行所述在本地存储。
5.一种地址解析协议ARP代答装置,应用于虚拟可扩展局域网VXLAN网络中的虚拟可扩展局域网隧道端点VTEP设备上,其特征在于,所述装置包括:获得单元、存储单元、发送单元、接收单元和匹配单元; 所述获取单元,用于获得本装置下挂主机设备的路由信息; 所述存储单元,用于存储所述获取单元获得的本装置下挂主机设备的路由信息;当所述接收单元接收到其它VTEP设备同步的路由信息时,进行存储;所述路由信息包括主机设备的因特网协议IP地址、媒体访问控制MAC地址和该主机设备所属的VXLAN的VXLAN标识; 所述发送单元,用于将所述获取单元获得的本装置下挂主机设备的路由信息同步给其它VTEP设备;当所述匹配单元匹配到对应的路由信息时,将该路由信息中的MAC地址响应给发送该ARP请求的主机设备; 所述接收单元,用于接收其它VTEP设备同步的路由信息;用于接收ARP请求报文; 所述匹配单元,用于当所述接收单元接收到下挂主机设备发送的ARP请求时,使用该ARP请求报文的目标端IP地址以及该ARP请求报文携带的VXLAN标识,在本地存储的路由信息中匹配。
6.根据权利要求5所述的装置,其特征在于, 所述发送单元,具体用于将所述获取单元获得的本装置下挂主机设备的路由信息携带在链路状态协议数据单元LSP报文中发送给其它VTEP设备。
7.根据权利要求5所述的装置,其特征在于,该装置进一步包括:确定单元; 所述确定单元,用于确定本装置下挂主机设备的路由信息是否发生变化; 所述发送单元,进一步用于当所述确定单元确定本装置下挂主机设备的路由信息变化时,将变化后的路由信息同步给其它VTEP设备。
8.根据权利要求7所述的方法,其特征在于, 所述确定单元,进一步用于当所述接收单元接收到其它VTEP设备同步的路由信息时,确定本地是否存在所述其它VTEP设备同步的路由信息; 所述存储单元,进一步用于当所述确定单元确定本地存在所述其他VTEP设备同步的路由信息时,使用接收到的路由信息更新本地存储的所述其它VTEP设备对应的路由信息;否则,将接收到的路由信息进行存储。
【文档编号】H04L29/12GK104283980SQ201410527542
【公开日】2015年1月14日 申请日期:2014年10月9日 优先权日:2014年10月9日
【发明者】羊俊, 田小强, 曹辉, 赵君 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1