CN110519410A - 一种通信方法、交换机、存储介质、通信设备及通信系统 - Google Patents
一种通信方法、交换机、存储介质、通信设备及通信系统 Download PDFInfo
- Publication number
- CN110519410A CN110519410A CN201910809199.5A CN201910809199A CN110519410A CN 110519410 A CN110519410 A CN 110519410A CN 201910809199 A CN201910809199 A CN 201910809199A CN 110519410 A CN110519410 A CN 110519410A
- Authority
- CN
- China
- Prior art keywords
- data center
- address
- gateway
- interchanger
- data
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种通信方法、交换机、存储介质、通信设备及通信系统,通信系统中两个数据中心的网关的内部IP地址相同,因此本发明在进行主机迁移时十分方便,无需修改主机的IP地址和MAC地址,也无需修改主机的网关地址。同时,本发明通过交换机在隧道网络上对ARP数据进行拦截,避免了由于网关的内部IP地址相同而导致的网关冲突。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种通信方法、交换机、存储介质、通信设备及通信系统。
背景技术
随着科学技术的发展,通信技术也日新月异。
数据中心是全球协作的特定设备网络,用来在因特网基础设施上传递、加速、展示、计算、存储数据信息。数据中心虚拟化可以使得数据中心具备高度的灵活性和适应性,因此应用越来越广泛。
在实际运营过程中,常常需要将虚拟机在两个不同的数据中心之间进行迁移。由于两个数据中心的网关的内网IP不一致,导致现有技术下虚拟机迁移时较为繁琐,需要修改虚拟机的IP地址和MAC地址。
发明内容
鉴于上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的一种通信方法、交换机、存储介质、通信设备及通信系统,技术方案如下:
一种通信方法,应用于通信系统中的至少一个交换机中,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个交换机和至少一个主机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,所述方法包括:
所述交换机在所述隧道网络的隧道接口获得ARP数据;
所述交换机确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址;
如果是,则所述交换机对获得的所述ARP数据进行拦截。
可选的,所述预设的IP地址列表包括如下IP地址中的至少一个:
所述交换机所在的数据中心中的主机的IP地址、其他数据中心中的主机的IP地址、所述交换机所在的数据中心中的网关的IP地址、其他数据中心中的网关的IP地址。
可选的,所述ARP数据包括:ARP请求和/或免费ARP,
所述ARP数据为所述ARP请求时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的主机的IP地址,和/或,其他数据中心中的主机的IP地址;
所述ARP数据为所述免费ARP时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的网关的IP地址,和/或,其他数据中心中的网关的IP地址。
可选的,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址不同,所述方法还包括:
所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,所述交换机将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
可选的,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址均为第一MAC地址,所述方法还包括:
所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
在所述跨数据中心数据包中的源MAC地址和目的MAC地址均为所述第一MAC地址时,所述交换机将所述跨数据中心数据包中的源MAC地址修改为第二MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心;
所述交换机在所述隧道网络的隧道接口获得所述隧道网络另一侧的数据中心中的网关发送的跨数据中心应答,所述跨数据中心应答是对所述跨数据中心数据包的应答;
在所述跨数据中心应答中的目的MAC地址为所述第二MAC地址时,所述交换机将所述跨数据中心应答中的目的MAC地址修改为所述第一MAC地址,并将修改后的所述跨数据中心应答发送至所述交换机所在的数据中心中的网关。
一种通信设备,应用于通信系统中的至少一个交换机中,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个所述交换机和至少一个主机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,所述通信设备包括:数据获得单元、地址确定单元和拦截单元,
所述数据获得单元,用于在所述隧道网络的隧道接口获得ARP数据;
所述地址确定单元,用于确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址,如果是,则触发所述拦截单元;
所述拦截单元,用于对获得的所述ARP数据进行拦截。
可选的,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址不同,所述通信设备还包括:数据包获得单元和第一地址修改单元,
所述数据包获得单元,用于在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
所述第一地址修改单元,用于在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
一种存储介质其上存储有程序,所述程序被处理器执行时实现上述的任一种通信方法。
一种交换机,所述交换机包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述处理器执行所述程序时实现上述的任一种通信方法。
一种通信系统,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个主机和至少一个本发明提供的交换机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同。
借由上述技术方案,本发明提供的一种通信方法、交换机、存储介质、通信设备及通信系统,通信系统中两个数据中心的网关的内部IP地址相同,因此本发明在进行主机迁移时十分方便,无需修改主机的IP地址和MAC地址,也无需修改主机的网关地址。同时,本发明通过交换机在隧道网络上对ARP数据进行拦截,避免了由于网关的内部IP地址相同而导致的网关冲突。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种通信系统的示意图;
图2示出了本发明实施例提供的一种通信方法的流程图;
图3示出了本发明实施例提供的单隧道网络的示意图;
图4示出了本发明实施例提供的多隧道网络示意图;
图5示出了本发明实施例提供的一种通信方法的流程图;
图6示出了本发明实施例提供的另一种通信方法的流程图;
图7示出了本发明实施例提供的另一种通信方法的流程图;
图8示出了本发明实施例提供的一种通信设备的结构示意图;
图9示出了本发明实施例提供的一种交换机的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供的一种通信方法可以应用于图1所示的通信系统中的至少一个交换机中。图1所示的通信系统可以包括:第一数据中心001、第二数据中心002和隧道网络003,所述第一数据中心001可以包括:第一网关004、至少一个第一交换机005和第一主机006,所述第二数据中心002可以包括:第二网关007、至少一个第二交换机008和第二主机009,所述第一交换机005与所述第二交换机008之间设置有所述隧道网络003,所述第一网关004的内部IP地址和所述第二网关007的内部IP地址相同。如图2所示,本发明实施例提供的一种通信方法可以包括:
S100、所述交换机在所述隧道网络的隧道接口获得ARP数据;
其中,所述ARP数据可以包括:ARP请求和/或免费ARP。
S200、所述交换机确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址;如果是,则执行步骤S300;否则,可以结束本发明的处理。
所述预设的IP地址列表包括如下IP地址中的至少一个:
所述交换机所在的数据中心中的主机的IP地址、其他数据中心中的主机的IP地址、所述交换机所在的数据中心中的网关的IP地址、其他数据中心中的网关的IP地址。
所述ARP数据为所述ARP请求时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的主机的IP地址,和/或,其他数据中心中的主机的IP地址。
所述ARP数据为所述免费ARP时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的网关的IP地址,和/或,其他数据中心中的网关的IP地址。
S300、所述交换机对获得的所述ARP数据进行拦截。
其中,主机可以为物理主机,也可以为虚拟机。
其中,隧道网络可以为overlay网络,可以为基于VXLAN、GRE等协议的网络,隧道网络可以使用VPN或物理专线设置。
由于所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,因此第一数据中心和第二数据中心位于同一网段,第一数据中心中的主机可以和第二数据中心中的主机进行二层通讯。同时,同一数据中心内的主机之间可以通过所在数据中心内的交换机进行二层通讯,十分方便。同时,由于第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,因此第一数据中心和第二数据中心中的主机(如虚拟机)在进行迁移时,无需修改迁移的主机的IP地址和MAC地址,十分方便。
在本发明一可选实施例中,所述第一数据中心中的网关的MAC地址和所述第二数据中心中的网关的MAC地址可以不同。在进行主机迁移后,迁移后的主机所在的数据中心内的网关可以主动发送免费ARP(地址解析协议,Address Resolution Protocol)。这样迁移的主机就可以获得其所在数据中心内的网关的MAC地址,从而通过该MAC地址访问外部网络。
本发明的通信系统中的隧道网络可以为一个,也可以为多个。
图1中通过虚线框将两个第一交换机005框在一起,并通过两个第一交换机005之间的六个黑点代表省略号,以表示该虚线框中的第一交换机005的个数可以为一个或多个。同理,图1中也通过虚线框将两个第二交换机008框在一起,并通过两个第二交换机008之间的六个黑点代表省略号,以表示该虚线框中的第二交换机008的个数可以为一个或多个。如图1所示,一个第一交换机005与一个第二交换机008之间可以设置有一个隧道网络003,因此图1所示通信系统中可以包括一个或多个隧道网络003。
当图1所示通信系统中仅包括一个隧道网络003时,图1所示通信系统可以变为图3所示通信系统,图3所示通信系统可以称为:单隧道网络通信系统。图3所示通信系统中,所述第一主机006通过所述第一交换机005与所述第一网关004通信连接,所述第二主机009通过所述第二交换机008与所述第二网关007通信连接。
当图1所示通信系统中包括两个隧道网络003时,图1所示通信系统可以变为图4所示通信系统,图4所示通信系统可以称为:多隧道网络通信系统。图4所示通信系统包括:第一数据中心001、第二数据中心002、第一隧道网络103和第二隧道网络104,第一数据中心001包括:第一网关004、第一交换机005、第三交换机105和第一主机006,第二数据中心002包括:第二网关007、第二交换机008、第四交换机106和第二主机009,第一交换机005与第四交换机106之间设置有第一隧道网络103,第二交换机008与第三交换机105之间设置有第二隧道网络104,所述第一网关004的内部IP地址和第二网关007的内部IP地址相同。所述第一网关004和第二网关007均具有两个内部IP地址,如图4所示,均分别为:第一IP地址和第二IP地址。如图4所示,第一网关004的第一IP地址与第一MAC地址对应,第一网关004的第二IP地址与第三MAC地址对应;第二网关007的第一IP地址与第二MAC地址对应,第二网关007的第二IP地址与第四MAC地址对应。
当然,包括更多隧道网络003的通信系统的结构可以参考图3所示通信系统,方便起见,本发明不再赘述。
图1所示的通信系统中的至少一个交换机(第一交换机005和/或第二交换机008)可以在所述第一隧道网络003上对ARP请求和免费ARP进行拦截。
具体的,由于隧道网络003设置在所述第一交换机005与所述第二交换机008之间,因此本发明的第一交换机005和/或第二交换机008可以在所述第一隧道网络003上对ARP请求和免费ARP进行拦截。
其中,ARP是根据IP地址获取物理地址(MAC地址)的一个TCP/IP协议。本发明中的ARP请求是主机发送至网关用于根据网关的内部IP地址获得网关的MAC地址的请求。本发明中的免费ARP是网关主动广播的该网关的MAC地址。
如图1所示,如果不在第一隧道网络003上对ARP请求和/或免费ARP进行拦截,则ARP请求和/或免费ARP将跨数据中心传输。
对于ARP请求,由于第一网关004的内部IP地址和所述第二网关007的内部IP地址相同,因此第一数据中心001中的网关和第二数据中心002中的网关都将接收到ARP请求并将自己的MAC地址返回给主机。
而对于免费ARP,第一网关004广播的免费ARP和第二网关007广播的免费ARP都会广播到主机上。
可见,无论是ARP请求还是免费ARP,主机都会接收到两个MAC地址,一个MAC地址是该主机所在数据中心中的网关的MAC地址,另一个MAC地址是另一数据中心中的网关的MAC地址。这种情况就出现了网关冲突,导致主机无法确定依据哪一个MAC地址进行网络通信。而本发明通过交换机在隧道网络上对ARP请求和/或免费ARP进行拦截,使得ARP请求和/或免费ARP只会在本地的数据中心内部传输,避免了ARP请求和/或免费ARP的跨数据中心传输,解决了由于网关的内部IP地址相同而导致的网关冲突。
可选的,所述隧道网络可以设置在所述第一数据中心中的交换机的隧道接口与所述第二数据中心中的交换机的隧道接口之间。
具体的,交换机对ARP请求进行拦截的具体过程,可以包括:
对所述第一交换机和所述第二交换机中的任一交换机:该交换机在隧道接口获得对网关的ARP请求后,该交换机确定所述ARP请求中的源IP地址是否为该交换机所在的数据中心中的主机的IP地址,如果是,则对获得的所述ARP请求进行拦截,以阻止所述ARP请求传输到所述隧道网络上。
如图1所示,第一交换机005在隧道接口101获得对网关的ARP请求后,该第一交换机005可以确定所述ARP请求中的源IP地址是否为该第一交换机005所在的第一数据中心001中的主机的IP地址,如果是,则对获得的所述ARP请求进行拦截,以阻止所述ARP请求传输到所述隧道网络003上。
对于传输到某交换机的隧道接口上的ARP请求,如果该ARP请求中的源IP地址为该交换机所在的数据中心中的主机的IP地址,则说明该ARP请求由该交换机所在的数据中心中的主机发送。如果将该ARP请求传输到隧道网络上,将引起网关冲突,因此本发明可以对获得的所述ARP请求进行拦截,以阻止ARP请求传输到所述隧道网络上。
具体的,交换机对免费ARP进行拦截的具体过程,可以包括:
对所述第一交换机和所述第二交换机中的任一交换机:该交换机在隧道接口获得免费ARP后,该交换机确定所述免费ARP请求中的源IP地址是否为该交换机所在的数据中心中的网关的IP地址,如果是,则对免费ARP进行拦截,以阻止所述免费ARP传输到所述隧道网络上。
对于传输到某交换机的隧道接口上的免费ARP,如果该免费ARP中的源IP地址为该交换机所在的数据中心中的网关的IP地址,则说明该ARP请求由该交换机所在的数据中心中的网关发送。如果将该ARP请求传输到隧道网络上,将引起网关冲突,因此本发明可以阻止免费ARP传输到所述隧道网络上。
上述对ARP请求和免费ARP进行拦截的方案是在向隧道网络上传输之前就进行拦截。在实际应用中,本发明还可以对通过隧道网络传输过来的ARP请求和免费ARP进行拦截。
下面提供对通过隧道网络传输过来的ARP请求和免费ARP进行拦截的详细方案:
可选的,交换机对ARP请求进行拦截,可以包括:
对所述第一交换机和所述第二交换机中的任一交换机:该交换机在隧道接口获得对网关的ARP请求后,该交换机确定所述ARP请求中的源IP地址是否为其他数据中心中的主机的IP地址,如果是,则丢弃所述ARP请求。
可选的,交换机对免费ARP进行拦截,可以包括:
对所述第一交换机和所述第二交换机中的任一交换机:该交换机在隧道接口获得免费ARP后,该交换机确定所述免费ARP请求中的源IP地址是否为其他数据中心中的网关的IP地址,如果是,则丢弃所述免费ARP。
可以理解的是,在本发明对ARP请求和免费ARP进行拦截后,数据中心内的主机就只会获得其所在数据中心内的网关的MAC地址。这样,主机就可以通过自己所在数据中心内的网关访问公网。
当第一数据中心中的主机与第二数据中心中的主机进行通信时,需要通过隧道网络传输跨数据中心数据包。由于第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,因此本发明还可以对第一数据中心中的主机与第二数据中心中的主机进行通信的过程进行控制。
在本发明一可选实施例中,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址可以不同,在此基础上,如图5所示,本发明实施例提供的一种通信方法还可以包括:
S101、所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
S102、在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,所述交换机将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
如果不进行上述MAC地址的修改,则跨数据中心数据包将无法传输到另一侧的数据中心中的网关,进而也就无法传输到另一侧的数据中心中的主机中。可见,本发明通过修改MAC地址实现了不同数据中心中主机的跨数据中心通信。
在本发明另一可选实施例中,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址可以均为第一MAC地址。这种情况下,由于两个数据中心中的网关的内部IP地址与MAC地址都相同,因此在进行主机迁移(如虚拟机迁移)后,虚拟机无需重新学习其所迁移到的数据中心中的网关的MAC地址(因为其所迁移到的数据中心中的网关的MAC地址与其迁移前所在的数据中心中的网关的MAC地址相同)。
当所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址可以均为第一MAC地址时,如图6所示,本发明实施例提供的一种通信方法还可以包括:
S201、所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
S202、在所述跨数据中心数据包中的源MAC地址和目的MAC地址均为所述第一MAC地址时,所述交换机将所述跨数据中心数据包中的源MAC地址修改为第二MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心;
S203、所述交换机在所述隧道网络的隧道接口获得所述隧道网络另一侧的数据中心中的网关发送的跨数据中心应答,所述跨数据中心应答是对所述跨数据中心数据包的应答;
S204、在所述跨数据中心应答中的目的MAC地址为所述第二MAC地址时,所述交换机将所述跨数据中心应答中的目的MAC地址修改为所述第一MAC地址,并将修改后的所述跨数据中心应答发送至所述交换机所在的数据中心中的网关。
可以理解的是,虽然第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址相同为主机迁移(如虚拟机迁移)带来了便利,但会导致跨数据中心数据包以及应答在通过网关进行传输时,跨数据中心数据包以及应答中的目的MAC地址与源MAC地址相同,从而导致出现MAC地址冲突。因此本发明通过图6所示各步骤可以修改跨数据中心数据包以及应答中的源MAC地址或目的MAC地址,从而避免了MAC地址冲突。
对于图4所示的通信系统,当第一主机006需要将跨数据中心数据包发送至第二主机009时,如图7所示,本发明实施例提供的一种通信方法还可以包括:
S301、所述第一交换机005将第一主机006发送的跨数据中心数据包发送至第一网关004;
S302、所述第一网关004根据跨数据中心数据包中的目的IP地址(即第二主机009的IP地址),将跨数据中心数据包发送至第三交换机105(此时跨数据中心数据包中的源MAC地址被第一网关004修改为第三MAC地址);
S303、第三交换机105将跨数据中心数据包中的目的MAC地址修改为第四MAC地址并经隧道网络发送至第二交换机008;
S304、第二交换机008将跨数据中心数据包发送至第二网关007;
S305、第二网关007将跨数据中心数据包发送至第二主机009。
可以理解的是,本发明可以使用对称路由技术来控制对跨数据中心数据的应答的发送过程。
本发明实施例提供的一种通信方法,应用于通信系统中,通信系统中两个数据中心的网关的内部IP地址相同,因此本发明在进行主机迁移时十分方便,无需修改主机的IP地址和MAC地址。同时,本发明通过修改跨数据中心通信数据中的目的IP地址实现了两个数据中心的主机间的跨数据中心通信。
在本发明其他实施例中,本发明提供的通信系统中的主机可以通过主机所在的数据中心中的网关(简称本地网关)的公网IP的第一预设端口提供对外服务,也可以通过其他数据中心中的网关(简称外网网关)的公网IP的第一预设端口提供对外服务。例如:对于图3所示通信系统中的第一主机006,其可以通过第一数据中心001中第一网关004的公网IP的第一预设端口提供对外服务,也可以通过第二数据中心002的第二网关007的第一预设端口提供对外服务。
当主机可以通过主机所在的数据中心中的网关(简称本地网关)的公网IP的第一预设端口提供对外服务时,本发明实施例提供的一种通信方法,还可以包括:
本地网关获得外网设备对第一预设端口的访问请求;
所述本地网关确定所述第一预设端口的服务提供方为第一主机;
所述本地网关将所述访问请求中的目的IP地址修改为所述第一主机的IP地址并将修改后的访问请求发送至所述第一主机;
所述第一主机根据接收的访问请求生成第一应答并将所述第一应答发送至所述本地网关;
所述本地网关将所述第一应答中的源IP地址修改为所述第一主机所在的数据中心的公网IP并发送至所述外网设备。
可选的,本发明另一实施例中,还可以在所述第一主机所在的数据中心的公网IP上添加所述第一预设端口信息(如端口号)并将添加有第一预设端口信息的公网IP作为所述第一应答中的源IP地址。
可以理解的是,通过修改访问请求中的目的IP,本实施例实现了外网设备通过主机所在数据中心内的网关对主机进行访问。
相应的,在本发明其他实施例中,当主机通过其他数据中心中的网关(简称外网网关)的公网IP的第一预设端口提供对外服务时,本发明实施例提供的一种通信方法,还可以包括:
外网网关获得外网设备对所述第一预设端口的访问请求;
外网网关确定所述第一预设端口的服务提供方为第一主机;
外网网关将所述访问请求中的目的IP地址修改为所述第一主机的IP地址并将修改后的访问请求经隧道网络发送至所述第一主机所在的数据中心中的第一交换机;
所述第一交换机将接收的访问请求中的目的MAC地址修改为第一主机所在的数据中心中的本地网关的MAC地址并将访问请求发送至本地网关;
本地网关将访问请求发送至所述第一主机;
所述第一主机根据接收的访问请求生成第一应答并将所述第一应答发送至所述本地网关;
所述本地网关将所述第一应答发送至所述第一交换机;
所述第一交换机经所述隧道网络将所述第一应答发送至外网网关;
所述外网网关将所述第一应答中的源IP地址修改为所述外网网关所在的数据中心的公网IP并发送至所述外网设备。
可以理解的是,通过修改访问请求中的目的IP和目的MAC地址,本实施例实现了外网设备通过其他数据中心内的网关对主机进行访问。
与图2所示方法实施例相对应,本发明还提供了一种通信设备,应用于图1所示的通信系统中的至少一个交换机中,所述通信系统包括::第一数据中心001、第二数据中心002和隧道网络003,所述第一数据中心001可以包括:第一网关004、至少一个第一交换机005和第一主机006,所述第二数据中心002可以包括:第二网关007、至少一个第二交换机008和第二主机009,所述第一交换机005与所述第二交换机008之间设置有所述隧道网络003,所述第一网关004的内部IP地址和所述第二网关007的内部IP地址相同。如图8所示,该通信设备可以包括:数据获得单元100、地址确定单元200和拦截单元300,
所述数据获得单元100,用于在所述隧道网络的隧道接口获得ARP数据;
所述地址确定单元200,用于确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址,如果是,则触发所述拦截单元;
其中,所述预设的IP地址列表包括如下IP地址中的至少一个:
所述交换机所在的数据中心中的主机的IP地址、其他数据中心中的主机的IP地址、所述交换机所在的数据中心中的网关的IP地址、其他数据中心中的网关的IP地址。
可选的,所述ARP数据包括:ARP请求和/或免费ARP。
在一具体实施例中,所述ARP数据为所述ARP请求时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的主机的IP地址,和/或,其他数据中心中的主机的IP地址。
在另一具体实施例中,所述ARP数据为所述免费ARP时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的网关的IP地址,和/或,其他数据中心中的网关的IP地址。
所述拦截单元300,用于对获得的所述ARP数据进行拦截。
在另一具体实施例中,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址不同,图8所示通信设备还可以包括:数据包获得单元和第一地址修改单元,
所述数据包获得单元,用于在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
所述第一地址修改单元,用于在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
在另一实施例中,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址均为第一MAC地址,图8所示通信设备还包括:数据包获得单元、第二地址修改单元、应答获得单元和第三地址修改单元,
所述数据包获得单元,用于在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
所述第二地址修改单元,用于在所述跨数据中心数据包中的源MAC地址和目的MAC地址均为所述第一MAC地址时,将所述跨数据中心数据包中的源MAC地址修改为第二MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心;
所述应答获得单元,用于在所述隧道网络的隧道接口获得所述隧道网络另一侧的数据中心中的网关发送的跨数据中心应答,所述跨数据中心应答是对所述跨数据中心数据包的应答;
所述第三地址修改单元,用于在所述跨数据中心应答中的目的MAC地址为所述第二MAC地址时,将所述跨数据中心应答中的目的MAC地址修改为所述第一MAC地址,并将修改后的所述跨数据中心应答发送至所述交换机所在的数据中心中的网关。
本发明实施例还提供了一种存储介质,其上存储有程序,所述程序被处理器执行时实现本发明实施例提供的任一种通信方法。
本发明实施例还提供了一种交换机90,如图9所示,交换机90包括至少一个处理器901、以及与处理器901连接的至少一个存储器902、总线903;其中,处理器901、存储器902通过总线903完成相互间的通信;处理器901用于调用存储器902中的程序指令,以执行上述的通信方法。本文中的交换机90可以是服务器、PC、PAD、手机等。
本发明实施例还提供了一种通信系统,如图1所示,该通信系统包括::第一数据中心001、第二数据中心002和隧道网络003,所述第一数据中心001可以包括:第一网关004、至少一个第一交换机005和第一主机006,所述第二数据中心002可以包括:第二网关007、至少一个第二交换机008和第二主机009,所述第一交换机005与所述第二交换机008之间设置有所述隧道网络003,所述第一网关004的内部IP地址和所述第二网关007的内部IP地址相同。所述第一交换机005和所述第二交换机008为图9所示交换机。
所述通信设备包括处理器和存储器,上述数据获得单元100、地址确定单元200和拦截单元300等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来拦截ARP数据。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述通信方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述通信方法。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有本发明实施例提供的通信方法所包括的各步骤的程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种通信方法,其特征在于,应用于通信系统中的至少一个交换机中,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个交换机和至少一个主机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,所述方法包括:
所述交换机在所述隧道网络的隧道接口获得ARP数据;
所述交换机确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址;
如果是,则所述交换机对获得的所述ARP数据进行拦截。
2.根据权利要求1所述的方法,其特征在于,所述预设的IP地址列表包括如下IP地址中的至少一个:
所述交换机所在的数据中心中的主机的IP地址、其他数据中心中的主机的IP地址、所述交换机所在的数据中心中的网关的IP地址、其他数据中心中的网关的IP地址。
3.根据权利要求2所述的方法,其特征在于,所述ARP数据包括:ARP请求和/或免费ARP,
所述ARP数据为所述ARP请求时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的主机的IP地址,和/或,其他数据中心中的主机的IP地址;
所述ARP数据为所述免费ARP时,所述预设的IP地址列表包括:所述交换机所在的数据中心中的网关的IP地址,和/或,其他数据中心中的网关的IP地址。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址不同,所述方法还包括:
所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,所述交换机将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
5.根据权利要求1所述的方法,其特征在于,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址均为第一MAC地址,所述方法还包括:
所述交换机在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
在所述跨数据中心数据包中的源MAC地址和目的MAC地址均为所述第一MAC地址时,所述交换机将所述跨数据中心数据包中的源MAC地址修改为第二MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心;
所述交换机在所述隧道网络的隧道接口获得所述隧道网络另一侧的数据中心中的网关发送的跨数据中心应答,所述跨数据中心应答是对所述跨数据中心数据包的应答;
在所述跨数据中心应答中的目的MAC地址为所述第二MAC地址时,所述交换机将所述跨数据中心应答中的目的MAC地址修改为所述第一MAC地址,并将修改后的所述跨数据中心应答发送至所述交换机所在的数据中心中的网关。
6.一种通信设备,其特征在于,应用于通信系统中的至少一个交换机中,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个所述交换机和至少一个主机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同,所述通信设备包括:数据获得单元、地址确定单元和拦截单元,
所述数据获得单元,用于在所述隧道网络的隧道接口获得ARP数据;
所述地址确定单元,用于确定获得的所述ARP数据的源IP地址是否为预设的IP地址列表中的IP地址,如果是,则触发所述拦截单元;
所述拦截单元,用于对获得的所述ARP数据进行拦截。
7.根据权利要求6所述的通信设备,其特征在于,所述第一数据中心中的网关的MAC地址与所述第二数据中心中的网关的MAC地址不同,所述通信设备还包括:数据包获得单元和第一地址修改单元,
所述数据包获得单元,用于在所述隧道网络的隧道接口获得所述交换机所在数据中心中的网关发送的跨数据中心数据包;
所述第一地址修改单元,用于在所述跨数据中心数据包中的源MAC地址为所述交换机所在数据中心中的网关的MAC地址时,将所述跨数据中心数据包中的目的MAC地址修改为所述隧道网络另一侧的数据中心中的网关的MAC地址,并将修改后的所述跨数据中心数据包经所述隧道网络发送至所述隧道网络另一侧的数据中心。
8.一种存储介质,其特征在于,其上存储有程序,所述程序被处理器执行时实现权利要求1至5任一项所述的通信方法。
9.一种交换机,其特征在于,所述交换机包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述处理器执行所述程序时实现权利要求1至5任一项所述的通信方法。
10.一种通信系统,其特征在于,所述通信系统包括:第一数据中心、第二数据中心和隧道网络,任一数据中心均包括:网关、至少一个主机和至少一个权利要求9所述交换机,所述第一数据中心中的交换机与所述第二数据中心中的交换机之间设置有所述隧道网络,所述第一数据中心中的网关的内部IP地址和所述第二数据中心中的网关的内部IP地址相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910809199.5A CN110519410A (zh) | 2019-08-29 | 2019-08-29 | 一种通信方法、交换机、存储介质、通信设备及通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910809199.5A CN110519410A (zh) | 2019-08-29 | 2019-08-29 | 一种通信方法、交换机、存储介质、通信设备及通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110519410A true CN110519410A (zh) | 2019-11-29 |
Family
ID=68629072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910809199.5A Pending CN110519410A (zh) | 2019-08-29 | 2019-08-29 | 一种通信方法、交换机、存储介质、通信设备及通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110519410A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988446A (zh) * | 2020-08-26 | 2020-11-24 | 锐捷网络股份有限公司 | 一种报文处理方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436934A (zh) * | 2008-10-20 | 2009-05-20 | 福建星网锐捷网络有限公司 | 一种控制用户上网的方法、系统及设备 |
CN101741855A (zh) * | 2009-12-16 | 2010-06-16 | 中兴通讯股份有限公司 | 地址解析协议缓存表维护方法和网络设备 |
US20100287548A1 (en) * | 2009-05-06 | 2010-11-11 | Vmware, Inc. | Long Distance Virtual Machine Migration |
CN104798342A (zh) * | 2014-11-17 | 2015-07-22 | 华为技术有限公司 | 数据中心的业务迁移方法、装置及系统 |
CN105827623A (zh) * | 2016-04-26 | 2016-08-03 | 山石网科通信技术有限公司 | 数据中心系统 |
CN108390821A (zh) * | 2018-02-27 | 2018-08-10 | 盛科网络(苏州)有限公司 | 一种openflow交换机实现双活的方法及系统 |
CN109218178A (zh) * | 2017-07-05 | 2019-01-15 | 华为技术有限公司 | 一种报文处理方法及网络设备 |
CN110011859A (zh) * | 2019-04-15 | 2019-07-12 | 深信服科技股份有限公司 | 一种虚拟机控制方法及集群系统 |
-
2019
- 2019-08-29 CN CN201910809199.5A patent/CN110519410A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436934A (zh) * | 2008-10-20 | 2009-05-20 | 福建星网锐捷网络有限公司 | 一种控制用户上网的方法、系统及设备 |
US20100287548A1 (en) * | 2009-05-06 | 2010-11-11 | Vmware, Inc. | Long Distance Virtual Machine Migration |
CN101741855A (zh) * | 2009-12-16 | 2010-06-16 | 中兴通讯股份有限公司 | 地址解析协议缓存表维护方法和网络设备 |
CN104798342A (zh) * | 2014-11-17 | 2015-07-22 | 华为技术有限公司 | 数据中心的业务迁移方法、装置及系统 |
CN105827623A (zh) * | 2016-04-26 | 2016-08-03 | 山石网科通信技术有限公司 | 数据中心系统 |
CN109218178A (zh) * | 2017-07-05 | 2019-01-15 | 华为技术有限公司 | 一种报文处理方法及网络设备 |
CN108390821A (zh) * | 2018-02-27 | 2018-08-10 | 盛科网络(苏州)有限公司 | 一种openflow交换机实现双活的方法及系统 |
CN110011859A (zh) * | 2019-04-15 | 2019-07-12 | 深信服科技股份有限公司 | 一种虚拟机控制方法及集群系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988446A (zh) * | 2020-08-26 | 2020-11-24 | 锐捷网络股份有限公司 | 一种报文处理方法、装置、电子设备及存储介质 |
CN111988446B (zh) * | 2020-08-26 | 2023-05-23 | 锐捷网络股份有限公司 | 一种报文处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104734931B (zh) | 一种虚拟网络功能间链路建立方法及装置 | |
CN104320350B (zh) | 用于提供基于信用的流控制的方法及系统 | |
CN103942087B (zh) | 虚拟机热迁移方法及相关装置和集群系统 | |
CN108369525A (zh) | 可缩放租户网络 | |
CN104038401B (zh) | 用于分布式覆盖虚拟环境的互操作性的方法和系统 | |
CN112513816B (zh) | 函数即服务(faas)执行分配器 | |
CN112583583A (zh) | 使用边缘服务边车的安全存储器环境中的动态共享 | |
US20180331951A1 (en) | Dynamic chain of service functions for processing network traffic in a virtual computing environment | |
CN111478846B (zh) | 一种云网环境下实现多租户网络的方法及设备、介质 | |
CN105490910B (zh) | 网络通信方法及客户端 | |
US9934060B2 (en) | Hybrid service fleet management for cloud providers | |
CN103544043A (zh) | 管理多个虚拟机的分级系统、方法和计算机程序 | |
US10146877B1 (en) | Area of interest subscription | |
Khujamatov et al. | Existing technologies and solutions in 5G-enabled IoT for industrial automation | |
JP2019517168A (ja) | 物理ネットワークと仮想ネットワークの間の相互接続 | |
CN110391999A (zh) | 一种数据通信方法及系统 | |
CN109995814A (zh) | 云主机资源的迁移方法及装置、通信设备、存储介质 | |
CN103312720A (zh) | 一种数据传输方法、设备及系统 | |
EP3432132A1 (en) | Data storage method and device | |
CN105635190A (zh) | 数据中心网络中的服务执行方法及装置 | |
CN106685860B (zh) | 网络虚拟化方法及设备 | |
CN110519410A (zh) | 一种通信方法、交换机、存储介质、通信设备及通信系统 | |
CN109982384A (zh) | 报文转发方法、装置、网络设备及介质 | |
CN110515697A (zh) | 一种虚拟机迁移方法、装置、存储介质及计算机设备 | |
JP7056555B2 (ja) | ネットワークシステム、その管理方法および装置ならびにサーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191129 |
|
RJ01 | Rejection of invention patent application after publication |