发明内容
本申请实施例提供了一种可扩展虚拟局域网络VXLAN地址聚合及数据处理方法、装置和设备,旨在解决现有技术存在的VXLAN三层网关部署复杂、地址浪费的技术问题。
基于此,本申请实施例公开了以下技术方案:
本申请实施例第一方面,公开了一种可扩展虚拟局域网络VXLAN地址聚合及数据处理方法,应用于VXLAN三层网关设备,所述方法包括:保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口;根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
在一些实施方式中,所述Sub-VNI至少包括第一Sub-VNI,所述根据所述对应关系对所述Sub-VNI对应的报文进行转发处理包括:接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;接收所述第一服务器发送的报文,对所述报文进行转发。
在一些实施方式中,所述Sub-VNI还包括第二Sub-VNI,所述接收第一服务器发送的地址解析协议ARP请求包括:接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址;所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系;所述根据所述对应关系向所述第一服务器发送ARP应答包括:根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述接收所述第一服务器发送的报文,对所述报文进行转发包括:接收所述第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在一些实施方式中,所述方法还包括:在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址;接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。
在一些实施方式中,所述接收第一服务器发送的地址解析协议ARP请求包括:接收第一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址;所述第一服务器与所述第一Sub-VNI具有对应关系;所述根据所述对应关系向所述第一服务器发送ARP应答包括:根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
在一些实施方式中,所述接收第一服务器发送的报文,对所述报文进行转发包括:接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。
本申请实施例第二方面,公开了一种可扩展虚拟局域网络VXLAN地址聚合及数据处理方法,应用于第一服务器,所述第一服务器与第一可扩展虚拟局域网络标识Sub-VNI具有应关系,所述第一Sub-VNI与超级可扩展虚拟局域网络标识Super-VNI具有对应关系,所述Super-VNI与所述第一Sub-VNI、第二Sub-VNI共用同一网段的地址,所述第一Sub-VNI与第二Sub-VNI的广播域彼此隔离,所述Super-VNI配置有三层网络接口,所述方法包括:向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址;根据所述ARP应答包含的网关设备的媒体访问控制MAC地址,发送报文。
在一些实施方式中,所述向VXLAN三层网关设备发送地址解析协议ARP请求包括:当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一些实施方式中,所述接收所述VXLAN三层网关设备发送的ARP应答包括:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址;所述根据所述ARP应答包含的网关设备的MAC地址发送报文包括:根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一些实施方式中,所述向VXLAN三层网关设备发送地址解析协议ARP请求包括:当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述接收所述VXLAN三层网关设备发送的ARP应答包括:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;所述根据所述ARP应答包含的网关设备的MAC地址发送报文包括:向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
本申请实施例第三方面,公开了一种VXLAN三层网关设备,包括:存储单元,用于保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口;转发单元,用于根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
在一些实施方式中,所述转发单元包括:接收单元,当所述Sub-VNI至少包括第一Sub-VNI时,接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;发送单元,用于根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;报文处理单元,用于接收所述第一服务器发送的报文,对所述报文进行转发。
在一些实施方式中,所述接收单元包括:第一接收单元,用于当所述Sub-VNI还包括第二Sub-VNI时,接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址;所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系;所述发送单元包括:第一发送单元,用于根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述报文处理单元包括:第一处理单元,用于接收所述第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在一些实施方式中,所述设备还包括:ARP请求单元,用于在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址;表项创建单元,用于接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。
在一些实施方式中,所述接收单元包括:第二接收单元,用于接收第一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址;所述第一服务器与所述第一Sub-VNI具有对应关系;所述发送单元包括:第二发送单元,用于根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
在一些实施方式中,所述报文处理单元包括:第二处理单元,用于接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。本申请实施例第四方面,公开了一种第一服务器,所述第一服务器与第一可扩展虚拟局域网络标识Sub-VNI具有应关系,所述第一Sub-VNI与超级可扩展虚拟局域网络标识Super-VNI具有对应关系,所述Super-VNI与所述第一Sub-VNI、第二Sub-VNI共用同一网段的地址,所述第一Sub-VNI与第二Sub-VNI的广播域彼此隔离,所述Super-VNI配置有三层网络接口,包括:ARP请求单元,用于向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;接收单元,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址;报文发送单元,用于根据所述ARP应答包含的网关设备的MAC地址,发送报文。
在一些实施方式中,所述ARP请求单元包括:第一请求单元,用于当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一些实施方式中,所述接收单元包括:第一接收单元,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址;所述报文发送单元包括:第一报文发送单元,用于根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一些实施方式中,所述ARP请求单元包括:第二请求单元,用于当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述接收单元包括:第二接收单元,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;所述报文发送单元包括:第二报文发送单元,用于向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
本申请实施例第五方面,公开了一种用于可扩展虚拟局域网络VXLAN地址聚合及数据处理的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口;根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:若所述Sub-VNI至少包括第一Sub-VNI,接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;接收所述第一服务器发送的报文,对所述报文进行转发。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:若所述Sub-VNI还包括第二Sub-VNI,接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址;所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系;根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收所述第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址;接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收第一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址;所述第一服务器与所述第一Sub-VNI具有对应关系;根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。
本申请实施例第六方面,公开了一种用于可扩展虚拟局域网络VXLAN地址聚合及数据处理的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址;根据所述ARP应答包含的网关设备的MAC地址,发送报文。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址;根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令::接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
本申请实施例第七方面,公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如第一方面所述的一个或多个所述的可扩展虚拟局域网络VXLAN地址聚合及数据处理方法。
本申请实施例第八方面,公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如第三方面所述的一个或多个所述的可扩展虚拟局域网络VXLAN地址聚合及数据处理方法。
从以上技术方案可以看出,本申请实施例具有以下优点:本申请实施例中,由于保存了Super-VNI与Sub-VNI的对应关系,并使得Super-VNI与Sub-VNI共用同一网段,使得各Sub-VNI间共用一个三层网络接口,既减少了一部分子网号、子网缺省网关地址和子网定向广播地址的消耗,又实现了不同广播域使用同一子网网段地址的目的。上述方法可以消除子网差异,增加编址的灵活性,减少闲置地址浪费。
具体实施方式
现有技术中,在VXLAN网络三层网关部署方案中,每个VNI对应一个三层地址,实现三层互通。VNI的资源24位最大可以达到16M,规模远大于VLAN,由于IPv4地址的奇缺,会造成IP地址的浪费。此外,由于VNI数量的庞大,这种三层地址的部署方案势必会造成部署的复杂,不利于网络管理。
举例说明,VNI1预计未来有10个服务器地址的需求,给其分配一个掩码长度是28的子网10.1.1.0/28,其中10.1.1.0为子网号,10.1.1.15为子网定向广播地址,这两个地址都不能用作服务器地址,此外,10.1.1.1作为子网缺省网关地址也不可作为服务器地址,剩下范围在10.1.1.2~10.1.1.14的地址可以被服务器使用,共13个。这样,尽管VNI1只需要10个地址,但是按照子网划分却要分给它13个地址。同理,VNI2预计未来有5个服务器地址的需求,至少需要分配一个掩码长度是29的子网10.1.1.16/29。VNI3预计未来只有1个服务器,则分配一个掩码长度是30的子网10.1.1.24/30。上述VNI一共需要10+5+1=16个地址,但是按照普通VNI的编址方式,即使最优化的方案也需要占用16+8+4=28个地址,浪费了将近一半的地址。而且,如果VNI1后来并没有10台服务器,而实际只接入了3台服务器,那么多出来的地址也会因不能再被其他VNI使用而被浪费掉。
另一方面,这种划分也给后续的网络升级和扩展带来了很大不便。假设VNI3今后需要再增加2台服务器,而又不愿意改变已经分配的IP地址。并且在10.1.1.24后面的地址已经分配给了其他人的情况下,只能再给VNI3的新用户重新分配一个的29位掩码的子网和一个新的VNI。这样VNI3中的客户虽然只有3台服务器,但是却被分配在两个子网中,并且也不在同一个VNI内,不利于网络管理。
因此,现有技术提供的VXLAN网络部署方案存在部署复杂、地址浪费的缺陷。本申请实施例旨在解决这一技术问题,提供了一种可扩展虚拟局域网络VXLAN地址聚合及数据处理方法和设备,可以降低VXLAN三层网关部署的复杂度,减少地址浪费、增加编址灵活性。
下面结合附图对本申请实施例提供的VXLAN地址聚合及数据处理方法和设备进行介绍。
图1为本申请一实施例提供的VXLAN地址聚合及数据处理方法示意图,所述方法应用于VXLAN三层网关设备(以下简称网关设备)。
S101,网关设备保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系。
在本申请实施例中,使用VXLAN聚合(Aggregation)技术实现VXLAN地址聚合及数据处理。VXLAN聚合就是在一个物理网络内,使用多个VNI隔离广播域,使得不同的VNI共用同一网段、属于同一个子网。所述多个VNI包括Super-VNI和Sub-VNI。其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口。
其中,Super-VNI与通常意义上的VNI不同,它只建立三层网络接口VNIif,与该子网对应,而且不包含物理接口。Super-VNI可以看作是一个逻辑的三层概念,它是若干Sub-VNI的集合。其中,Sub-VNI只包含物理接口,用于隔离广播域,一般不建立三层网络接口VNIif。它与外部的三层交换是通过Super-VNI的三层接口来实现的。
一般地,一个Super-VNI可以对应一个或多个保持着不同广播域的Sub-VNI。Sub-VNI不再占用一个独立的子网网段。在同一个Super-VNI中,无论服务器属于哪一个Sub-VNI,它的IP地址都在Super-VNI对应的子网网段内。这样,Sub-VNI间共用同一个三层接口,既减少了一部分子网号、子网缺省网关地址和子网定向广播地址的消耗,又实现了不同广播域使用同一子网网段地址的目的。通过上述方式,消除了子网差异,增加了编址的灵活性,减少了闲置地址浪费。
参见图2,为本申请一实施例提供的应用场景示意图。下面以图2所示为例进行说明。假设VNI1预计未来有10个服务器地址的需求,VNI2预计未来有5个服务器地址的需求,VNI3预计未来有1个服务器地址的需求。在本申请实施例中,可以新建VNI4并配置为Super-VNI,给其分配一个掩码长度是24的子网10.1.1.0/24,其中10.1.1.0为子网号,10.1.1.1为子网网关地址如图2所示。Sub-VNI(VNI1、VNI2、VNI3)的地址划分如下表2所示。在VXLANAggregation的实现中,各Sub-VNI间的界线也不再是从前的子网界线了,它们可以根据其各自服务器的需求数目在Super-VNI对应子网内灵活的划分地址范围。
从表2中可以看到,VNI1、VNI2和VNI3共用同一个子网(10.1.1.0/24)、子网缺省网关地址(10.1.1.1)和子网定向广播地址(10.1.1.255)。这样,普通VNI实现方式中用到的其他子网号(10.1.1.16、10.1.1.24)和子网缺省网关(10.1.1.17、10.1.1.25),以及子网定向广播地址(10.1.1.15、10.1.1.23、10.1.1.27)就都可以用来作为服务器IP地址使用。这样,3个VNI一共需要10+5+1=16个地址,实际上在这个子网里就刚好分配了16个地址(10.1.1.2~10.1.1.17)。这16个服务器地址加上子网号(10.1.1.0)、子网缺省网关(10.1.1.1)和子网定向广播地址(10.1.1.255),一共用去了19个IP地址,网段内仍剩余255-19=236的地址可以被任意Sub-VNI内的服务器使用。
参见表1,为现有技术提供的VXLAN服务器地址划分实例。从表1可以看出,对于实际需求只需要16个地址的服务器而言,使用现有VNI的的编址方式,即使最优化的方案也需要占用16+8+4=28个地址,浪费了将近一半的地址。而且,如果VNI1后来并没有10台服务器,而实际只接入了3台服务器,那么多出来的地址也会因不能再被其他VNI使用而被浪费掉。而表2所示,3个VNI一共需要10+5+1=16个地址,实际上在这个子网里就刚好分配了16个地址(10.1.1.2~10.1.1.17)。这16个服务器地址加上子网号(10.1.1.0)、子网缺省网关(10.1.1.1)和子网定向广播地址(10.1.1.255),一共用去了19个IP地址,网段内仍剩余255-19=236的地址可以被任意Sub-VNI内的服务器使用,减少了地址浪费。
表1现有技术VXLAN网络服务器地址划分示例表
VLAN |
子网 |
网关地址 |
可用地址数 |
可用服务器数 |
实际需求 |
2 |
10.1.1.0/28 |
10.1.1.1 |
14 |
13 |
10 |
3 |
10.1.1.16/29 |
10.1.1.17 |
6 |
5 |
5 |
4 |
10.1.1.24/30 |
10.1.1.25 |
2 |
1 |
1 |
表2本申请VXLAN Aggregation服务器地址划分示例表
通过表1和表2的比较,可以看出本申请实施例提供的方法显著减少了地址浪费,提高了编址的灵活性。需要说明的是,在本申请实施例中,网关设备用于保存Super-VNI与一个或多个Sub-VNI间的对应关系,便于后续报文转发。
S102,网关设备根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
具体实现时,,所述Sub-VNI至少包括第一Sub-VNI,所述根据所述对应关系对所述Sub-VNI对应的报文进行转发处理包括:接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;接收所述第一服务器发送的报文,对所述报文进行转发。
根据转发场景的不同,上述方法具有不同的实现方式。需要说明的是,由于VXLANAggregation在实现不同VNI间共用同一子网网段地址的同时,也带来了Sub-VNI间的三层转发问题。一方面,是如何实现不同Sub-VNI间的三层互通;另一方面,是如何实现Sub-VNI与外部网络的三层通信。
在一种可能的实现方式中,为了实现不同Sub-VNI间的三层互通,Sub-VNI可以通过ARP请求学习到网关设备的MAC地址,通过网关设备实现不同Sub-VNI间的通信。假设Sub-VNI包括第一Sub-VNI和第二Sub-VNI,网关设备可以接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址。其中,所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系。网关设备可以根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。具体实现时,在确定所述第二服务器与所述第一服务器属于同一网段后,网关设备向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址。网关设备接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。网关设备可以接收第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在另一种可能的实现方式中,为了实现Sub-VNI与外部网络的三层通信,Sub-VNI可以通过ARP请求学习到Super-VNI的三层网络接口的MAC地址,通过三层网络接口实现与外部网络的通信。具体地,所述网关设备接收一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址。所述第一服务器与所述第一Sub-VNI具有对应关系。网关设备根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。网关设备接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。
下面结合附图3至附图6对上述不同的实现方式进行详细地说明。
参见图3,为本申请另一实施例提供的VXLAN地址聚合及数据处理方法示意图。
需要说明的是,普通VNI实现方式中,VNI间的服务器可以通过各自不同的网关进行三层转发来达到互通的目的。但是VXLAN Aggregation方式下,同一个Super-VNI内的服务器使用的是同一个网段的地址和共用同一个网关地址。即使是属于不同的Sub-VNI的服务器,由于它们同属一个子网,彼此通信时只会做二层转发,而不会通过网关进行三层转发。而实际上不同的Sub-VNI的服务器在二层是相互隔离的,这就造成了Sub-VNI间无法通信的问题。解决这一问题的方法就是使用代理ARP(Proxy ARP)。
参见图4,为本申请另一实施例提供的应用场景示意图。如图4所示,假设VNI4为Super-VNI,其对应的Sub-VNI为VNI1和VNI2。第一服务器(Server A)对应VNI1,其IP地址为10.1.1.2/24。第二服务器(Server B)对应VNI2,其IP地址为10.1.1.3/24。其中,第一服务器和第二服务器属于同一个子网。VNI4为Super-VNI,其三层接口VNIif4的地址为10.1.1.1/24。假设网关设备使能了Sub-VNI间的Proxy ARP,下面以VNI1内的第一服务器与VNI2内的第二服务器的通信过程为例进行说明。
S301,第一服务器确定与第二服务器属于同一个子网。
具体地,第一服务器将第二服务器的IP地址(10.1.1.3)和自己所在网段10.1.1.0/24进行比较,发现第二服务器和第一服务器在同一个子网,属于同一网段。但是,第一服务器的ARP表中无第二服务器的对应表项。
S302,第一服务器发送ARP请求,用于请求第二服务器的MAC地址。
具体地,第一服务器发送ARP广播,用于请求目的服务器的MAC地址。
S303,网关设备在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址。
由于第二服务器并不在VNI1的广播域内,无法接收到第一服务器的ARP请求。由于网关设备上使能Sub-VNI间的Proxy ARP,当网关设备收到第一服务器的ARP请求后,开始在路由表中查找,发现ARP请求中的第二服务器的IP地址(10.1.1.3)为直连接口路由,则网关设备向所有其他Sub-VNI接口发送一个ARP广播,请求第二服务器的MAC地址。
S304,第二服务器接收网关设备发送的ARP请求,发送ARP应答。
S305,网关设备收到第二服务器的ARP应答后,向第一服务器发送ARP应答。
网关设备将自身的MAC地址当作第二服务器的MAC地址回应给第一服务器,这时ARP应答中包含的是网关设备自身的MAC地址。
S306,网关设备存储与第二服务器对应的ARP表项。
S307,第一服务器发送报文。其中,所述报文的目的MAC地址为所述网关设备的MAC地址、所述报文的目的IP为第二服务器的IP地址。
S308,网关设备接收第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
需要说明的是,第二服务器向第一服务器发送报文的过程类似,可以参照上述步骤执行。
以上对同一子网内的Sub-VNI间的通信过程进行说明,下面对Sub-VNI与外部网络的通信进行说明。
参见图5,为本申请再一实施例提供的VXLAN地址聚合及数据处理方法示意图。
下面结合图6对一个具体地应用场景进行说明。参见图6,假设网关设备1(Switch1)上配置了Super-VNI4,Sub-VNI1和Sub-VNI 2,并配置一个普通的三层接口VNIif10。网设备2(Switch2)上配置两个普通的三层接口VNIif10和三层接口VNIif 20。假设Super-VNI 4中的Sub-VLAN 1下的第一服务器(Server A)想访问与Switch2相连的第三服务器(Server C)。假设Switch1上已配置了去往10.1.3.0/24网段的路由,Switch2上已配置了去往10.1.1.0/24网段的路由。
S501,第一服务器确定与第三服务器属于不同子网。
具体地,第一服务器将第三服务器的IP地址(10.1.3.2)和自己所在网段10.1.1.0/24进行比较,发现第二服务器和第一服务器不在同一个子网,属于不同网段。
S502,第一服务器发送ARP请求,用于请求第一网关设备的MAC地址。
S503,第一网关设备根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
具体地,Switch1收到该ARP请求后,查找Sub-VNI和Super-VNI的对应关系,从Sub-VNI 1发送ARP应答给第一服务器。ARP应答报文中的源MAC地址为Super-VNI 4对应的VNIif4的MAC地址。这时,第一服务器学习到网关的MAC地址。
S504,第一服务器发送报文。其中,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址。
举例说明,第一服务器向第一网关设备发送目的MAC为Super-VNI 4对应的VNIif4的MAC、目的IP为10.1.3.2的报文。
S505,第一网关设备接收到报文后,进行三层转发。
第一网关设备Switch1收到该报文后进行三层转发,根据所述第三服务器的IP地址确定下一跳地址为10.1.2.2,出接口为VNIif10,把报文发送给与所述第三服务器对应的网关设备Switch2。
S506,第二网关设备接收到报文后进行三层转发,将报文发送给第三服务器。
具体地,Switch2收到该报文后进行三层转发,通过直连出接口VNIif20,把报文发送给第三服务器。
S507,第三服务器发送回应报文。
S508,第二网关设备发送回应报文到第一网关设备。
S509,第一网关设备收到该报文后进行三层转发,通过Super-VNI,把报文发送给第一服务器。
从以上实例可以看出,本申请通过地址聚合技术,将不同Sub-VNI绑定相同Super-VNI实现三层业务功能正常不同的Sub-VNI之间隔离功能依然保持。由于VXLAN场景由于VNI的扩展可以达到16M,其三层网关业务的部署复杂程度,和IP地址的浪费问题会比VLAN场景更为突出,本申请实施例可以简化VXLAN网络中的三层地址部署,节省IP地址。具体地,不同Sub-VNI间共用同一个三层接口,既减少了一部分子网号、子网缺省网关地址和子网定向广播地址的消耗,又实现了不同广播域使用同一子网网段地址的目的。本申请实施例提供的方法消除了子网差异,增加了编址的灵活性,减少了闲置地址浪费。
以上对本申请实施例提供的方法进行了整体介绍,下面从服务器侧对该数据处理方法进行介绍。
参见图7,为本申请又一实施例提供的VXLAN地址聚合及数据处理方法示意图。所示方法应用于第一服务器,所述第一服务器与第一可扩展虚拟局域网络标识Sub-VNI具有应关系,所述第一Sub-VNI与超级可扩展虚拟局域网络标识Super-VNI具有对应关系,所述Super-VNI与所述第一Sub-VNI、第二Sub-VNI共用同一网段的地址,所述第一Sub-VNI与第二Sub-VNI的广播域彼此隔离,所述Super-VNI配置有三层网络接口。所示方法包括:
S701,第一服务器向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI。
在一种可能的实现方式中,所述向VXLAN三层网关设备发送地址解析协议ARP请求包括:当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一种可能的实现方式中,所述向VXLAN三层网关设备发送地址解析协议ARP请求包括:当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
S702,第一服务器接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址。
在一种可能的实现方式中,所述接收所述VXLAN三层网关设备发送的ARP应答包括:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一种可能的实现方式中,所述接收所述VXLAN三层网关设备发送的ARP应答包括:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;
S703,第一服务器根据所述ARP应答包含的网关设备的媒体访问控制MAC地址,发送报文。
在一种可能的实现方式中,所述根据所述ARP应答包含的网关设备的MAC地址发送报文包括:根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一种可能的实现方式中,所述根据所述ARP应答包含的网关设备的MAC地址发送报文包括:向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
需要说明的是,服务器侧的具体实现可以参照图1至图6而进行,在此不再赘述。
下面对本申请实施例方法对应的设备进行介绍。
参见图8,为本申请一实施例提供的网关设备示意图。
一种VXLAN三层网关设备800,包括:
存储单元801,用于保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口。其中,所述存储单元801的具体实现可以参照图1所示实施例的S101而实现。
转发单元802,用于根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。其中,转发单元802的具体实现可以参照图1所示实施例的S102而实现。
在一些实施方式中,所述转发单元包括:接收单元,当所述Sub-VNI至少包括第一Sub-VNI时,接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;发送单元,用于根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;报文处理单元,用于接收所述第一服务器发送的报文,对所述报文进行转发。
在一些实施方式中,所述接收单元包括:第一接收单元,用于当所述Sub-VNI还包括第二Sub-VNI时,接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址;所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系;所述发送单元包括:第一发送单元,用于根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述报文处理单元包括:第一处理单元,用于接收所述第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在一些实施方式中,所述设备还包括:ARP请求单元,用于在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址;表项创建单元,用于接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。
在一些实施方式中,所述接收单元包括:第二接收单元,用于接收第一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址;所述第一服务器与所述第一Sub-VNI具有对应关系;所述发送单元包括:第二发送单元,用于根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
在一些实施方式中,所述报文处理单元包括:第二处理单元,用于接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。
参见图9,为本申请一实施例提供的服务器示意图。
一种第一服务器900,所述第一服务器与第一可扩展虚拟局域网络标识Sub-VNI具有应关系,所述第一Sub-VNI与超级可扩展虚拟局域网络标识Super-VNI具有对应关系,所述Super-VNI与所述第一Sub-VNI、第二Sub-VNI共用同一网段的地址,所述第一Sub-VNI与第二Sub-VNI的广播域彼此隔离,所述Super-VNI配置有三层网络接口,包括:
ARP请求单元901,用于向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI。其中,ARP请求单元901的具体实现可以参照图7所示实施例的S701而实现。
接收单元902,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址。其中,接收单元902的具体实现可以参照图7所示实施例的S702而实现。
报文发送单元903,用于根据所述ARP应答包含的网关设备的MAC地址,发送报文。其中,报文发送单元903的具体实现可以参照图7所示实施例的S703而实现。
在一些实施方式中,所述ARP请求单元包括:第一请求单元,用于当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一些实施方式中,所述接收单元包括:第一接收单元,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址;所述报文发送单元包括:第一报文发送单元,用于根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一些实施方式中,所述ARP请求单元包括:第二请求单元,用于当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述接收单元包括:第二接收单元,用于接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;所述报文发送单元包括:第二报文发送单元,用于向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
参见图10,为本申请另一实施例提供的可扩展虚拟局域网络VXLAN地址聚合及数据处理的装置示意图。
所述装置1000可包括至少一个处理器1001,至少一个网络接口1002或者其它通信接口,存储器1003,和至少一个通信总线1004,用于实现这些装置之间的连接通信。处理器1001用于执行存储器1003中存储的可执行模块,例如计算机程序。该处理器1001可以为CPU,存储器1003可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口实现该系统网关与至少一个其它网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。其中一个或者一个以上程序存储于存储器1003中,且经配置以由一个或者一个以上处理器1001执行所述一个或者一个以上程序包含用于进行以下操作的指令:保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口;根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:若所述Sub-VNI至少包括第一Sub-VNI,接收第一服务器发送的地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;根据所述对应关系向所述第一服务器发送ARP应答,所述ARP应答包括所述网关设备的媒体访问控制MAC地址;接收所述第一服务器发送的报文,对所述报文进行转发。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:若所述Sub-VNI还包括第二Sub-VNI,接收第一服务器发送的ARP请求,所述ARP请求包含第二服务器的IP地址;所述第一服务器与所述第一Sub-VNI具有对应关系,所述第二服务器与所述第二Sub-VNI具有对应关系;根据所述第二服务器的IP地址以及保存的Super-VNI与Sub-VNI的对应关系,确定所述第二服务器与所述第一服务器属于同一网段后,向所述第一服务器发送ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收所述第一服务器发送的报文,根据保存的与所述第二服务器对应的ARP表项,向所述第二服务器发送所述报文。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:在确定所述第二服务器与所述第一服务器属于同一网段后,向所述第二服务器发送ARP请求用于请求第二服务器的MAC地址;接收所述第二服务器发送的ARP应答,根据所述ARP应答包含的第二服务器的MAC地址,创建与所述第二服务器对应的ARP表项。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收第一服务器发送的ARP请求,所述ARP请求用于请求所述VXLAN三层网关设备的MAC地址;所述第一服务器与所述第一Sub-VNI具有对应关系;根据保存的Super-VNI与Sub-VNI的对应关系,确定与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址,向所述第一服务器发送ARP应答,所述ARP应答包含所述Super-VNI的三层网络接口的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收第一服务器发送的报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;其中,所述第三服务器与所述第一服务器属于不同网段;根据所述第三服务器的IP地址确定下一跳地址,将所述报文发送给与所述第三服务器对应的网关设备。
参见图11,为本申请另一实施例提供的用于可扩展虚拟局域网络VXLAN地址聚合及数据处理的装置示意图。
所述装置1100可包括至少一个处理器1101,至少一个网络接口1102或者其它通信接口,存储器1103,和至少一个通信总线1104,用于实现这些装置之间的连接通信。处理器1101用于执行存储器1103中存储的可执行模块,例如计算机程序。该处理器1101可以为CPU,存储器1103可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口实现该系统网关与至少一个其它网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。其中一个或者一个以上程序存储于存储器1103中,且经配置以由一个或者一个以上处理器1101执行所述一个或者一个以上程序包含用于进行以下操作的指令:向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址;根据所述ARP应答包含的网关设备的MAC地址,发送报文。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:当确定第二服务器与所述第一服务器属于同一网段时,发送地址解析协议ARP请求用于请求第二服务器的MAC地址,所述ARP请求包含第二服务器的IP地址,所述第二服务器与第二Sub-VNI具有对应关系。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含所述VXLAN三层网关设备的MAC地址;根据所述VXLAN三层网关设备的MAC地址向所述VXLAN三层网关设备发送报文,所述报文包含所述第二服务器的IP地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令:当确定第三服务器与所述第一服务器属于不同网段时,发送ARP请求用于请求所述VXLAN三层网关设备的MAC地址。
在一些实施方式中,所述处理器具体还执行所述一个或者一个以上程序包含用于进行以下操作的指令::接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包含与所述第一Sub-VNI对应的Super-VNI的三层网络接口的MAC地址;向所述网关设备发送报文,所述报文的目的MAC地址为所述Super-VNI的三层网络接口的MAC地址、所述报文的目的IP为第三服务器的IP地址;所述第三服务器与所述第一服务器属于不同网段。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由网关设备的处理器执行时,使得网关设备能够执行一种用于可扩展虚拟局域网络VXLAN地址聚合及数据处理的方法,所述方法包括:保存超级可扩展虚拟局域网络标识Super-VNI与子可扩展虚拟局域网络标识Sub-VNI的对应关系;其中,所述Super-VNI与所述Sub-VNI共用同一网段的地址,所述Sub-VNI间的广播域彼此隔离,所述Super-VNI配置有三层网络接口;根据所述对应关系对所述Sub-VNI对应的报文进行转发处理。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种用于可扩展虚拟局域网络VXLAN地址聚合及数据处理的方法,所述方法包括:向VXLAN三层网关设备发送地址解析协议ARP请求,所述ARP请求包含所述第一服务器对应的第一Sub-VNI;接收所述VXLAN三层网关设备发送的ARP应答,所述ARP应答包括所述网关设备的MAC地址;根据所述ARP应答包含的网关设备的MAC地址,发送报文。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。