CN112333135A - 网关确定方法、装置、服务器、分发器、系统及存储介质 - Google Patents

网关确定方法、装置、服务器、分发器、系统及存储介质 Download PDF

Info

Publication number
CN112333135A
CN112333135A CN202010689017.8A CN202010689017A CN112333135A CN 112333135 A CN112333135 A CN 112333135A CN 202010689017 A CN202010689017 A CN 202010689017A CN 112333135 A CN112333135 A CN 112333135A
Authority
CN
China
Prior art keywords
address
gateway
server
port
gateway cluster
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.)
Granted
Application number
CN202010689017.8A
Other languages
English (en)
Other versions
CN112333135B (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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN202010689017.8A priority Critical patent/CN112333135B/zh
Publication of CN112333135A publication Critical patent/CN112333135A/zh
Application granted granted Critical
Publication of CN112333135B publication Critical patent/CN112333135B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开实施例提供了一种网关确定方法、装置、服务器、分发器、系统及存储介质,该方法包括:获取来自虚拟机的访问数据报文,其中,访问数据报文包括用于请求访问的服务端的IP地址和端口;确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口;根据访问数据报文和地址参数生成第一隧道报文,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口;以及将第一隧道报文发送给交换机,以使交换机根据第一隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将虚拟机的IP地址转化为公网IP地址。

Description

网关确定方法、装置、服务器、分发器、系统及存储介质
技术领域
本公开实施例涉及计算机技术领域,更具体地,涉及一种网关确定方法、装置、服务器、分发器、系统及存储介质。
背景技术
在计算机网络中,网络地址转换(Network Address Translation,NAT)是一种替换IP报文包头的地址信息的技术。用于网络地址转换的网关通常部署在一个组织的网络出口位置,通过将私网IP地址替换为公网IP地址,实现公网访问需求和上层协议的连接能力。
相关技术中采用基于X86物理机构建多活集群,通过软件实现地址转换服务,并通过一定的流量分发方法将流量分发在各台网络地址转换网关上,具有高性能、高配置量和可扩容等优点。其中,由于网络地址转换服务是基于有状态服务连接实现的技术,因此,需要保证在入向流向和出向流向中,两个数据报文由同一目标网关处理。
在实现本公开构思的过程中,发明人发现现有技术中至少存在如下问题:基于上述有状态服务连接的方式使得数据报文由同一目标网关处理时会导致流量分布不均匀,降低了流量分布的均匀性。
发明内容
有鉴于此,本公开实施例提供了一种网关确定方法、装置、服务器、分发器、系统及存储介质。
本公开实施例的一个方面提供了一种网关确定方法,包括:
获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
将所述第一隧道报文发送给交换机,以使所述交换机根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址。
根据本公开的实施例,所述根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,包括:
根据所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口,生成第一映射值;以及
根据所述第一映射值,从所述网关集群中确定目标网关。
根据本公开的实施例,所述访问数据报文还包括所述虚拟机的端口:
所述确定网关集群的地址参数,包括:
根据所述虚拟机的端口确定服务类型;以及
如果所述服务类型为网络地址转换服务,则确定网关集群的地址参数。
根据本公开的实施例,所述第一隧道报文为虚似扩展局域网报文或通用路由封装报文。
本公开实施例的另一个方面提供了一种网关确定方法,包括:
获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;
将所述第二隧道报文发送给交换机,以使所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
根据本公开的实施例,所述响应数据报文还包括公网IP地址;
所述确定网关集群的地址参数,包括:
根据所述公网IP地址确定服务类型;以及
如果所述服务类型为网络地址转换服务,则确定网关集群的地址参数。
根据本公开的实施例,所述根据所述公网IP地址确定服务类型,包括:
从公网路由表中,确定与所述公网IP地址对应的服务类型,其中,所述公网路由表包括公网IP地址段与所述服务类型之间的映射关系。
本公开实施例的另一方面提供了一种网关确定装置,包括:
第一获取模块,用于获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
第一确定模块,用于确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
第一生成模块,用于根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
第二确定模块,用于将所述第一隧道报文发送给交换机,以使所述交换机根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址。
本公开实施例的另一方面提供了一种网关确定装置,包括:
第二获取模块,用于获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
第三确定模块,用于确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
第二生成模块,用于根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;
第四确定模块,用于将所述第二隧道报文发送给交换机,以使所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
本公开实施例的另一方面提供了一种服务器,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述所述的方法。
本公开实施例的另一个方面提供了一种分发器,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述所述的方法。
本公开实施例的另一方面提供了一种网关确定系统,包括:
服务器,用于:
获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
将所述第一隧道报文发送给交换机;
所述交换机,与所述服务器通信连接,其中,所述交换机用于根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址;
分发器,与所述交换机通信连接,其中,所述分发器用于:
获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口:
将所述第二隧道报文发送给所述交换机,以使得所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定所述目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
本公开实施例的另一方面提供了一种计算机可读存储介质,该指令被处理器执行时使处理器实现如上所述的方法。
本公开实施例的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据公开的实施例,由于采用了修改访问数据报文的方式,使得生成的第一隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第一隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了现有技术中公有云的数据中心中多活集群的系统架构;
图2示意性示出了根据本公开实施例的可以应用网关确定方法、网关确定装置和网关确定系统的示例性系统架构;
图3示意性示出了根据本公开实施例的一种网关确定方法的流程图;
图4示意性示出了根据本公开实施例的另一种网关确定方法的流程图;
图5示意性示出了根据本公开实施例的再一种网关确定方法的流程图;
图6示意性示出了根据本公开实施例的数据报文从分发器到交换机的示意图;
图7示出了现有技术中的数据报文从服务端到交换机的示意图;
图8示意性示出了根据本公开实施例的又一种网关确定方法的流程图;
图9示意性示出了根据本公开的实施例的一种网关确定装置的框图;
图10示意性示出了根据本公开的实施例的另一种网关确定装置的框图;
图11示意性示出了根据本公开实施例的适于实现上文描述的方法的服务器或分发器的框图;以及
图12示意性示出了根据本公开的实施例的网关确定系统的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
公有云中数据中心的网关,可以为客户端或客户端内的虚拟机(VirtualMachine,VM)提供对公网的访问和服务能力,具体可以提供如下服务类型的公网服务:网络地址转换服务、EIP(Elastic IP,弹性IP)服务和负载均衡(Server Load Balancer,SLB)服务等。其中,网络地址转换服务用于对私网IP地址和公网IP地址进行转换。现有网关提供的公网服务,如果全部由一组网关承担,则将带来资源、性能和稳定性等多方面的问题,因此,为了解决上述问题,通常采用基于服务类型划分对应的网关集群,每个网关集群承担一种或多种公网服务,每个网关集群包括至少一个网关。
同样的,针对网络地址转换服务,一般可以采用构建多活集群的方式实现,即基于X86物理机,采用Linux内核框架或DPDK(Data Plane Development Kit,数据平面开发套件)框架实现,同时通过采用BGP(Border Gateway Protocol,边界网关协议)和OSPF(OpenShortest Path First,开放式最短路径优先)等路由协议,实现公网IP地址和私网IP地址的转换。其中,公网IP地址是指在互联网上直接可达的地址。私网IP地址是指可以在局域网中使用,但是不能出现在互联网上的地址。通过将私网IP地址转换为对应的公网IP地址,实现访问互联网。
图1示意性示出了目前公有云的数据中心中多活集群的系统架构10。如图1所示,系统架构10可以包括外网核心交换机11、内网核心交换机12、接入层交换机13、服务器14和网关集群15。接入层交换机13的数量为至少两个。网关集群15可以包括至少一个网关150。服务器14上可配置虚拟机(Virtual Machine,VM)(图中未示出)和虚拟交换机140。其中,外网核心交换机11与内网核心交换机12通信连接,接入层交换机13分别与内网核心交换机12和网关集群15通信连接。虚拟交换机140分别与虚拟机和接入层交换机13通信连接。与网关集群15通信连接的接入层交换机13用于根据获取到的数据报文,从网关集群15中确定目标网关。
在该系统架构10中,可以将数据流向分为出向流向和入向流向。其中,出向流向是指由虚拟机发出数据报文,以请求服务端响应的数据流向。入向流向是指由服务端发出数据报文,以响应虚拟机请求的数据流向。其中,将由虚拟机发出的数据报文称为访问数据报文,将由服务端发出的数据报文称为响应数据报文。根据本公开的实施例,访问数据报文可以是虚拟机基于访问请求生成的数据报文。响应数据报文可以是服务端基于响应访问请求生成的数据报文。此外,由于与网关集群15通信连接的接入层交换机13用于根据获取到的数据报文,从网关集群15中确定目标网关,而在数据流的出向流向和入向流向,均需要通过目标网关,因此,针对出向流向和入向流向,接入层交换机13均需要根据数据报文,从网关集群15中确定目标网关。针对出向流向,将接入层交换机13获取到的数据报文称为出向数据报文。针对入向流向,将接入层交换机13获取到的数据报文称为入向数据报文。下面从出向流向和入向流向进行说明。
针对出向流向,虚拟机生成访问数据报文,并将访问数据报文发送给虚拟交换机140,虚拟交换机140对访问数据报文进行处理,将处理后的访问数据报文发送给接入层交换机13,处理后的访问数据报文包括虚拟交换机140的IP地址。根据本公开的实施例,针对接入层交换机13来说,处理后的访问数据报文即为出向数据报文。由于出向数据报文为由虚拟交换机140发送至接入层交换机13的,因此,出向数据报文中虚拟交换机140的IP地址即为源IP地址。
针对入向流向,服务端生成响应数据报文,并将响应数据报文通过外网核心交换机11和内网核心交换机12发送给接入层交换机141,响应数据报文包括服务端的IP地址。根据本公开的实施例,针对接入层交换机13来说,响应数据报文即为入向数据报文。由于入向数据报文为由服务端发送至接入层交换机141的,因此,入向数据报文中服务端的IP地址即为源IP地址。
从上述可以得到,由于接入层交换机13获取到的出向数据报文和入向数据报文中的源IP地址不一致,因此,基于源IP地址进行映射运算,出向流向和入向流向,确定的不是同一目标网关。而由于网络地址转换网关是基于连接进行数据处理的,所谓基于连接指的是在出向流向和入向流向,两个数据报文由同一目标网关进行处理。
为了实现保证入出流向的数据报文由同一目标网关处理,通常采用修改接入层交换机13的源IP地址的方式实现,具体如下:由于入向数据报文中的源IP地址为服务端的IP地址,出向数据报文中的源IP地址为虚拟交换机140的源IP地址,而服务端的IP地址为目标网关需要获取的,因此,无需对入向数据报文进行修改,需要将出向数据报文中的源IP地址由虚拟机交换机141的IP地址修改为服务端的IP地址,以实现保证出向数据报文和入向数据报文中的源IP地址相同,均为服务端的IP地址。由于对源IP地址进行了修改,同样的,也需要修改源端口,而修改后的源IP地址为服务器的源IP地址,因此,将出向数据报文中的源端口由虚拟交换机140的端口修改为服务端的端口。
基于上述,由于出向数据报文和入向数据报文中的源IP地址相同,因此,当接入层交换机13根据源IP地址进行映射运算,根据映射结果,从网关集群15中确定的是同一目标网关。
在实现本公开构思的过程中,发明人发现上述处理方式至少存在如下问题:如果将交换机的配置方式设置为源IP地址配置,则将根据源IP地址进行映射网关的运算。而通常每个接入层交换机13连接有多个网关,这样可能会导致不同数据报文均由同一网关进行处理,造成了流量分布的不均匀。由于上述修改方式正是根据源IP地址进行映射运算,以实现从网关集群15中确定目标网关的,因此,上述修改方式将降低流量分布的均匀性。
为了保证流量分布的均匀性,需要改变修改方式。由于数据报文的地址参数包括源IP地址、目的IP地址、源端口和目的端口,因此,可以通过修改数据报文,以实现出向数据报文和入向数据报文中上述地址参数一致,进而根据上述地址参数,从网关集群中确定目标网关。由于出现数据报文和入向数据报文中的地址参数一致,因此,根据上述地址参数,从网关集群中确定出的目标网关将相同。下面将结合具体实施例进行说明。
本公开的实施例提供了一种网关确定方法及能够实现该方法的装置、服务器、分发器和网关确定系统。该方法包括入向流向和出向流向网关确定过程。在出向流向中,服务器获取来自虚拟机的访问数据报文,确定网关集群的地址参数,根据访问数据报文和地址参数生成第一隧道报文,将第一隧道报文发送给交换机,以使交换机根据第一隧道报文的外层包头,从网关集群中确定目标网关其。在入向流向,分发器获取来自服务端的响应数据报文,确定网关集群的地址参数,根据响应数据报文和地址参数生成第二隧道报文,将第二隧道报文发送给交换机,以使交换机根据第二隧道报文的外层包头,从网关集群中确定目标网关。
图2示意性示出了根据本公开实施例的可以应用网关确定方法、网关确定装置和网关确定系统的示例性系统架构20。需要注意的是,图2所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图2所示,根据该实施例的系统架构20可以包括服务器14、交换机22、分发器23和网关集群15。交换机22可以包括外网核心交换机、内网核心交换机和接入层交换机(图中未示出)。交换机22的数量可以为至少两个。网关集群15可以包括至少一个网关150。网络用以在服务器14、交换机22、分发器23和网关集群15之间提供通信链路的介质。网络可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用服务器14通过网络与交换机22交互,以接收或发送消息等。服务器14上可以安装有虚拟机和虚拟交换机(仅为示例)。
服务器14可以是提供各种服务的服务器,例如对用户利用虚拟机所生成的数据报文提供支持的后台管理服务器(仅为示例)。
分发器23可以设置于机房互联网的出口处,用于处理来自互联网到各网关集群的流量分发。分发器23可以基于X86服务器或白盒交换机实现。
需要说明的是,本公开实施例所提供的网络参数确定方法一般可以由服务器14或分发器23执行。相应地,本公开实施例所提供的网络参数确定装置一般可以设置于服务器14或分发器23中。
应该理解,图2中的服务器14、交换机22、分发器23和网关集群15的数量仅仅是示意性的。根据实现需要,可以具有任意数量的服务器14、交换机22、分发器23和网关集群15。
图3示意性示出了根据本公开实施例的一种网关确定方法的流程图。
如图3所示,该方法可以包括操作S310~S340。
在操作S310,获取来自虚拟机的访问数据报文,其中,访问数据报文包括用于请求访问的服务端的IP地址和端口。
在本公开的实施例中,针对出向流向,虚拟交换机可以获取来自虚拟机的访问数据报文,其中,虚拟机和虚拟交换机可配置于服务器中。访问数据报文是用于请求访问服务端,以使服务端响应的数据报文。访问数据报文可以是虚拟机基于防问请求生成的,即虚拟机获取到防问请求,访问请求可以包括请求访问的服务端的IP地址和服务端的端口。虚拟机根据访问请求,生成访问数据报文。可以理解到,由于访问数据报文是用于请求访问服务端,以使服务端响应的数据报文,因此,访问数据报文中用于请求访问的服务端的IP地址即为目的IP地址,服务端的端口即为目的端口。
在操作S320,确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口。
在本公开的实施例中,网关集群即为由提供同种服务类型的网关组成的集群。网关集群中可以包括至少一个网关。这里所述的网关集群可为用于提供网络地址转换服务的集群。针对网关集群,设置有与之对应地址参数,地址参数可以包括网关集群的IP地址和网关集群的端口。可选地,网关集群的端口例如可以为4789。根据本公开的实施例,不同服务类型的网关集群的地址参数不同。
虚拟交换机在获取到来自虚拟机的访问数据报文后,可以确定网关集群的地址参数,网关集群参数可以用于作为后续生成第一隧道报文的依据。可选地,访问数据报文还可以包括虚拟交换机的端口。虚拟机交换机可以根据虚拟机的端口,确定服务类型,如果服务类型为网络地址转换服务,则可以确定网关集群的地址参数,即确定网关集群的地址参数为与网关地址转换服务对应的地址参数。
在操作S330,根据访问数据报文和地址参数生成第一隧道报文,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
在本公开的实施例中,第一隧道报文可以是基于隧道技术实现的。隧道技术是用一种网络层的协议来传输另一种网络层的协议,其基本功能是封装和加密,主要采用网络隧道来实现。具体是在原数据报文的外层封装完整的隧道协议包头,使得可以在传统转发设备间基于隧道报文的外层包头中的IP地址进行转发,达到报文封装和路由的功能。第一隧道报文包括内层报文和外层报文。需要说明的是,针对数据流路径上的交换机,其用于处理外层报文。
还需要说明的是,第一隧道报文的具体形式可以根据实际情况进行设定,在此不作具体限定。可选地,第一隧道报文为虚似扩展局域网(Virtual Extensible LAN,VXLAN)报文或通用路由封装(Generic Routing Encapsulation,GRE)报文。
为了实现在保证出入流向的数据报文由同一目标网关处理的基础上,保证流量分布的均匀性,可以通过修改数据报文的方式实现,具体的:
在出向流向,虚拟交换机后续需要将处理后的访问数据报文发送给交换机,以使交换机根据处理后的访问数据报文,从网关集群中确定目标网关。同样的,这里可以将交换机获取到的处理后的访问数据报文称为出向数据报文。
针对交换机来说,出向数据报文的外层包头中的源地址为虚拟交换机的IP地址。由于不同虚拟交换机的IP地址不同,而出向流向和入向流向针对的是同一服务端的IP地址,换句话说,访问数据报文中的服务端的IP地址,与,服务端响应访问数据报文所生成的数据报文中的服务端的IP地址一致,不同的是,访问数据报文中的服务端的IP地址是目的IP地址,而响应访问数据报文生成的数据报文中的服务端的IP地址是源IP地址,因此,虚拟交换机可以根据访问数据报文,将原本生成的隧道报文的外层包头中的源IP地址由虚拟交换机的IP地址修改为服务端的IP地址。
在此基础上,由于对原本生成的隧道报文的外层包头中的源IP地址进行了修改,同样的,也需要修改源端口,而修改后的源IP地址为服务器的源IP地址,因此,虚拟交换机可以根据访问数据报文,将原本生成的隧道报文的外层包头中的源端口由虚拟交换机的端口修改为服务端的端口。
上述即是虚拟交换机根据访问数据报文,将原本生成的隧道报文的外层包头中的源IP地址由虚拟交换机的IP地址修改为服务端的IP地址,将原本生成的隧道报文的外层包头中的源端口由虚拟机的端口修改为服务端的端口。同时,虚拟交换机可以将网关集群的地址参数中的网关集群的IP地址作为待生成的隧道报文的外层包头中的目的IP地址,网关集群的端口作为待生成的隧道报文的外层包头中的目的端口。
基于上述,虚拟交换机根据访问数据报文和地址参数,生成第一隧道报文。其中,第一隧道报文的外层包头中的源IP地址为服务端的IP地址,源端口为服务端的端口,目的IP地址为网关集群的IP地址,目的端口为网关集群的端口。
示例性的,以第一隧道报文为虚似扩展局域网报文为例进行说明。虚拟交换机获取来自虚拟机的访问数据报文,访问数据报文包括服务端的IP地址和端口。虚拟交换机确定网关集群的地址参数,地址参数包括网关集群的IP地址和端口。虚拟交换机在访问数据报文的外层包头封装完整的用户数据报协议(User Datagram Protocol,UDP)包头和虚似扩展局域网包头,外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
在操作S340,将第一隧道报文发送给交换机,以使交换机根据第一隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将虚拟机的源IP地址转化为公网IP地址。
在本公开的实施例中,虚拟交换机将第一隧道报文发送给交换机。由于针对数据流路径上的交换机,其用于处理第一隧道报文的外层报文,因此,交换机根据第一隧道报文的外层包头,进行映射运算,以从网关集群中确定目标网关,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。上述所述的映射运算即为五元组的映射运算。五元组包括源IP地址、目的IP地址、源端口、目的端口和传输层协议。
需要说明的是,映射运算可以为哈希运算。哈希运算可以将任意长度的二进制值映射为较短的固定长度的二进制值,将这个较短的固定长度的二进制值的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。
还需要说明的是,这里所述的交换机可以是接入层交换机。接入层交换机的具体形式可根据实际情况进行确定,在此不作具体限定。可选地,接入层交换机可为TOR(TopofRack,机柜顶部)交换机。
根据本实施例的技术方案,由于采用了修改访问数据报文的方式,使得生成的第一隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第一隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
可选地,在上述技术方案的基础上,根据第一隧道报文的外层包头,从网关集群中确定目标网关,可以包括:根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第一映射值。根据第一映射值,从网关集群中确定目标网关。
在本公开的实施例中,虚拟交换机可以根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第一映射值。虚拟交换机根据第一映射值,从网关集群中确定目标网关,即第一映射值与网关集群中的各个网关建立了映射关系,使得可以根据第一映射值确定对应的目标网关。
需要说明的是,这里第一映射值可以与网关集群中的各个网关建立一一映射关系,即不同第一映射值对应不同的网关,第一映射值也可以与网关建立多对一的关系,即多个不同第一映射值对应同一网关。具体可以根据实际情况进行确定,在此不作具体限定。
还需要说明的是,可以预先建立索引值与网关集群中的各个网关的映射关系,并将该映射关系记录到第一映射关系表中,即第一映射关系表包括索引值与网关集群中的各个网关之间的映射关系。可选地,虚拟交换机可以在第一映射关系表中查找与第一映射值相同的索引值,从该第一映射关系表中确定与该索引值对应的网关集群中的网关,并将该网关作为目标网关。第一映射关系表可以通过如下方式生成:虚拟交换机获取网关集群中的各个网关的网关标识和索引值。虚拟交换机建立索引值与网关标识之间的映射关系。根据映射关系生成第一映射关系表。
可选地,在上述技术方案的基础上,访问数据报文还包括虚拟机的端口。确定网关集群的地址参数,可以包括:根据虚拟机的端口确定服务类型。以及,如果服务类型为网络地址转换服务,则确定网关集群的地址参数。
在本公开的实施例中,访问数据报文还可以包括虚拟机的端口。虚拟机的端口与服务类型之间具有映射关系,服务类型可以包括网络地址转换服务、EIP服务和负载均衡服务。上述映射关系可以预先建立并存储于服务类型表。服务类型表中存储有每个虚拟机的端口与对应的服务类型之间的映射关系。
虚拟交换机获取到访问数据报文中的虚拟机的端口后,可以从服务类型表中查找与虚拟机的端口所对应的服务类型。如果服务类型为网络地址转换服务,则可以说明需要确定网关集群的地址参数,地址参数用于作为待生成的隧道报文的外层包头中的参数。
可选地,在上述技术方案的基础上,第一隧道报文为虚似扩展局域网报文或通用路由封装报文。
图4示意性示出了根据本公开实施例的另一种网关确定方法的流程图。
如图4所示,该方法可以包括操作S410~S470。
在操作S410,获取来自虚拟机的访问数据报文,其中,访问数据报文包括虚拟机的端口,以及,用于请求访问的服务端的IP地址和端口。
在操作S420,根据虚拟机的端口确定服务类型。
在操作S430,服务类型是否为网络地址转换服务;若是,则执行操作S440;若否,则执行操作S450。
在操作S440,确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口,并转入执行操作S460。
在操作S450,结束操作。
在操作S460,根据访问数据报文和地址参数生成第一隧道报文,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
在操作S470,将第一隧道报文发送给交换机,以使交换机根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第一映射值,并根据第一映射值,从网关集群中确定目标网关,其中,目标网关用于将虚拟机的IP地址转化为公网IP地址。
根据本实施例的技术方案,由于采用了修改访问数据报文的方式,使得生成的第一隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第一隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
图5示意性示出了根据本公开实施例的再一种网关确定方法的流程图。
如图5所示,该方法可以包括操作S510~S540。
在操作S510,获取来自服务端的响应数据报文,其中,响应数据报文包括服务端的IP地址和端口,其中,服务端用于响应来自虚拟机的访问数据报文,访问数据报文包括服务端的IP地址和服务端的端口。
在本发明的实施例中,针对入向流向,分发器可以获取来自服务端的响应数据报文,其中,分发器可以设置于机房互联网的出口处,用于处理来自互联网到各网关集群的流量分发。分发器可以基于X86服务器或白盒交换机实现。响应数据报文是服务端用于响应来自虚拟机的访问数据报文生成的。响应数据报文可以是服务端基于响应请求生成的,即服务端获取到响应请求,响应请求可以包括服务端的IP地址和服务端的端口。服务端根据响应请求,生成响应数据报文。可以理解到,由于响应数据报文是服务端用于响应来自虚拟机的访问数据报文生成的数据报文,因此,响应数据报文中服务端的IP地址即为源IP地址,服务端的端口即为源端口。
在操作S520,确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口。
在本公开的实施例中,网关集群即为由提供同种服务类型的网关组成的集群。网关集群中可以包括至少一个网关。这里所述的网关集群可为用于提供网络地址转换服务的集群。针对网关集群,设置有与之对应地址参数,地址参数可以包括网关集群的IP地址和网关集群的端口。可选地,网关集群的端口可以为4789。可以理解到,不同服务类型的网关集群的地址参数不同。
分发器在获取到来自服务端的响应数据报文后,可以确定网关集群的地址参数,网关集群参数可以用于作为后续生成第二隧道报文的依据。可选地,响应数据报文还可以包括公网IP地址。分发器可以根据公网IP地址,确定服务类型,如果服务类型为网络地址转换服务,则可以确定网关集群的地址参数,即确定网关集群的地址参数为与网关地址转换服务对应的地址参数。
在操作S530,根据响应数据报文和地址参数生成第二隧道报文,其中,第二隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
在本公开的实施例中,第二隧道报文可以是基于隧道技术实现的。隧道技术如上文所述,在此不再具体赘述。第二隧道报文包括内层报文和外层报文。
还需要说明的是,第二隧道报文的具体形式可以根据实际情况进行设定,在此不作具体限定。可选地,第二隧道报文为虚似扩展局域网报文或通用路由封装报文。
为了实现在保证出入流向的数据报文由同一目标网关处理的基础上,保证流量分布的均匀性,可以通过修改数据报文的方式实现,具体的:
在入向流向,分发器后续需要将处理后的响应数据报文发送给交换机,以使交换机根据处理后的响应数据报文,从网关集群中确定目标网关。同样的,这里可以将交换机获取到的处理后的响应数据报文称为入向数据报文。
针对交换机来说,入向数据报文的外层包头中的源地址为分发器的IP地址。由于不同分发器的IP地址不同,而出向流向和入向流向针对的是同一服务端的IP地址,换句话说,响应数据报文中的服务端的IP地址与访问数据报文中的服务端的IP地址一致,不同的是,响应数据报文中的服务端的IP地址是源IP地址,而访问数据报文中的服务端的IP地址是目的IP地址,因此,分发器可以根据响应数据报文,将原本生成的隧道报文的外层包头中的源IP地址由分发器的IP地址修改为服务端的IP地址。
在此基础上,由于对原本生成的隧道报文的外层包头中的源IP地址进行了修改,同样的,也需要修改源端口,而修改后的源IP地址为服务器的源IP地址,因此,分发器可以根据响应数据报文,将原本生成的隧道报文的外层包头中的源端口由虚拟交换机的端口修改为服务端的端口。
上述即是分发器根据响应数据报文,将原本生成的隧道报文的外层包头中的源IP地址由分发器的IP地址修改为服务端的IP地址,将原本生成的隧道报文的外层包头中的源端口由分发器的端口修改为服务端的端口。同时,分发器可以将网关集群的地址参数中的网关集群的IP地址作为待生成的隧道报文的外层包头中的目的IP地址,网关集群的端口作为待生成的隧道报文的外层包头中的目的端口。
基于上述,分发器根据响应数据报文和地址参数,生成第二隧道报文。其中,第二隧道报文的外层包头中的源IP地址为服务端的IP地址,源端口为服务端的端口,目的IP地址为网关集群的IP地址,目的端口为网关集群的端口。可以理解到,针对入向流向,本公开实施例通过分发器修改了数据报文,而相关技术中不存在分发器,且,针对入向流向,无需修改数据报文。
示例性的,以第二隧道报文为虚似扩展局域网报文为例进行说明。分发器获取来自服务端的响应数据报文,响应数据报文包括服务端的IP地址和端口。分发器确定网关集群的地址参数,地址参数包括网关集群的IP地址和端口。分发器在访问数据报文的外层包头封装完整的用户数据报协议包头和虚似扩展局域网包头,外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
图6示意性示出了根据本公开实施例的数据报文从分发器到交换机的示意图。图7示出了现有技术中的数据报文从服务端到交换机的示意图。图6和图7中对应IP地址的形式如“××→**”表示如下含义:箭头左侧的“××”表示源IP地址,箭头右侧的“**”表示目的地址。对应端口的形如“××→**”表示如下含义:箭头左侧的“××”表示源端口,箭头右侧的“**”表示目的端口。图6中虚线标示的部分即为对响应数据报文修改的部分,而图7中并未对数据报文进行修改。
在操作S540,将第二隧道报文发送给交换机,以使交换机根据第二隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将与虚拟机对应的公网IP地址转化为虚拟机的IP地址。
在本公开的实施例中,分发器将第二隧道报文发送给交换机。由于针对数据流路径上的交换机,其用于处理第二隧道报文的外层报文,因此,交换机根据第二隧道报文的外层包头,进行映射运算,以从网关集群中确定目标网关,其中,第二隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。上述所述的映射运算即为五元组的映射运算。五元组包括源IP地址、目的IP地址、源端口、目的端口和传输层协议。可以理解到,由于在出向流向中,交换机生成的第一隧道报文的外层包头,与,在入向流向,交换机生成的第二隧道报文的外层包头相同,因此,交换机根据第一隧道报文的外层包头,从网关集群中确定出的目标网关,与,交换机根据第二隧道报文的外层包头,从网关集群中确定出的目标网关相同,即为同一目标网关。
需要说明的是,映射运算可以为哈希运算。哈希运算可以将任意长度的二进制值映射为较短的固定长度的二进制值,将这个较短的固定长度的二进制值的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。
还需要说明的是,这里所述的交换机可以是接入层交换机。接入层交换机的具体形式可根据实际情况进行确定,在此不作具体限定。可选地,接入层交换机可为TOR交换机。
根据本实施例的技术方案,由于采用了修改响应数据报文的方式,使得生成的第二隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第二隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
可选地,在上述技术方案的基础上,响应数据报文还包括公网IP地址。确定网关集群的地址参数,可以包括:根据公网IP地址确定服务类型。以及,如果服务类型为网络地址转换服务,则确定网关集群的地址参数。
在本公开的实施例中,响应数据报文还可以包括公网IP地址。公网IP地址段与服务类型之间具有映射关系,服务类型可以包括网络地址转换服务、EIP服务和负载均衡服务。
分发器获取到响应数据报文中的公网IP地址后,可以基于公网IP地址段与服务类型之间的映射关系,确定与公网IP对应的服务类型。如果服务类型为网络地址转换服务,则可以说明需要确定网关集群的地址参数,地址参数用于作为待生成的隧道报文的外层包头中的参数。
需要说明的是,本公开实施例所述的分发器可以根据响应数据报文中的公网IP地址,将数据中心内部对于公网IP地址的引流统一在分发器上发布,并可以直接以大段路由发布引流。同时,由于设置了用于统一引流的分发器,因此,针对网关集群的IP地址,分发器获取到网关集群的IP地址便可实现引流。
而公网服务需要通过路由协议在数据中心内引流公网流量,其中,引流公网流量的方式是在网关服务上发布公网IP地址段的路由。由于公有云中的公网IP地址具有弹性,因此,无法在设置时将固定的公网IP地址段与提供对应服务类型的网关服务集群对应,进而使得路由无法以整段方式引流。
在相关技术中,各个网关集群采用根据服务类型,负责处理对应的IP地址段的方式来实现,上述引流的方式较复杂。可以理解到,相比于相关技术,本公开实施例,由于设置了用于统一引流的分发器,因此,针对网关集群的IP地址,分发器获取到网关集群的IP地址便可实现引流,因此,降低了网关集群上路由的复杂性。
可选地,在上述技术方案的基础上,根据公网IP地址确定服务类型,可以包括:从公网路由表中,确定与公网IP地址对应的服务类型,其中,公网路由表包括公网IP地址段与服务类型之间的映射关系。
在本公开的实施例中,公网IP地址段与服务类型之间具有映射关系,上述映射关系可以预先建立并存储于公网路由表,即公网路由表中存储有每个公网IP地址段与对应的服务类型之间的映射关系。
分发器获取到响应数据报文中的公网IP地址后,可以从公网路由表中查找与公网IP地址对应的公网IP地址段,根据对应的IP地址段,确定对应的服务类型。如果服务类型为网络地址转换服务,则可以说明需要确定网关集群的地址参数,地址参数用于作为待生成的隧道报文的外层包头中的参数。
可选地,在上述技术方案的基础上,根据第二隧道报文的外层包头,从网关集群中确定目标网关,可以包括:根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第二映射值。根据第二映射值,从网关集群中确定目标网关。
在本公开的实施例中,分发器可以根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第二映射值。分发器根据第二映射值,从网关集群中确定目标网关,即第二映射值与网关集群中的各个网关建立了映射关系,使得可以根据第二映射值确定对应的目标网关。
需要说明的是,这里第二映射值可以与网关集群中的各个网关建立一一映射关系,即不同第二映射值对应不同的网关,第二映射值也可以与网关建立多对一的关系,即多个不同第二映射值对应同一网关。具体可以根据实际情况进行确定,在此不作具体限定。
还需要说明的是,可以预先建立索引值与网关集群中的各个网关的映射关系,并将该映射关系记录到第二映射关系表中,即第二映射关系表包括索引值与网关集群中的各个网关之间的映射关系。可选地,分发器可以在第二映射关系表中查找与第二映射值相同的索引值,从该第二映射关系表中确定与该索引值对应的网关集群中的网关,并将该网关作为目标网关。第二映射关系表可以通过如下方式生成:分发器获取网关集群中的各个网关的网关标识和索引值。分发器建立索引值与网关标识之间的映射关系。根据映射关系生成第二映射关系表。
可以理解到,由于在出向流向中,交换机生成第一映射值的依据,与,在入向流向,交换机生成第二映射值的依据相同,因此,第一映射值和第二映射值相同。进而,由于第一映射值和第二映射值相同,因此,交换机根据第一映射值,从网关集群中确定出的目标网关,与,交换机根据第二映射值,从网关集群中确定出的目标网关相同,即为同一目标网关。
可选地,在上述技术方案的基础上,第二隧道报文为虚似扩展局域网报文或通用路由封装报文。
图8示意性示出了根据本公开实施例的又一种网关确定方法的流程图。
如图8所示,该方法可以包括操作S810~S870。
在操作S810,获取来自服务端的响应数据报文,其中,响应数据报文包括公网IP地址,以及,服务端的IP地址和端口,其中,服务端用于响应来自虚拟机的访问数据报文,访问数据报文包括服务端的IP地址和服务端的端口。
在操作S820,从公网路由表中,确定与公网IP地址对应的服务类型,其中,公网路由表包括公网IP地址段与服务类型之间的映射关系。
在操作S830,服务类型是否为网络地址转换服务;若是,则执行操作S840;若否,则执行操作S850。
在操作S840,确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口,并转入执行操作S860。
在操作S850,结束操作。
在操作S860,根据访问数据报文和地址参数生成第二隧道报文,其中,第二隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
在操作S870,将第二隧道报文发送给交换机,以使交换机根据第二隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将与虚拟机对应的公网IP地址转化为虚拟机的IP地址。
根据本实施例的技术方案,由于采用了修改响应数据报文的方式,使得生成的第二隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第二隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
图9示意性示出了根据本公开的实施例的一种网关确定装置的框图。
如图9所示,网关确定装置900包括第一获取模块910、第一确定模块920、第一生成模块930和第二确定模块940。
第一获取模块910、第一确定模块920、第一生成模块930和第二确定模块940顺次通信连接。
第一获取模块910,用于获取来自虚拟机的访问数据报文,其中,访问数据报文包括用于请求访问的服务端的IP地址和端口。
第一确定模块920,用于确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口。
第一生成模块930,用于根据访问数据报文和地址参数生成第一隧道报文,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
第二确定模块940,用于将第一隧道报文发送给交换机,以使交换机根据第一隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将虚拟机的IP地址转化为公网IP地址。
根据本实施例的技术方案,由于采用了修改访问数据报文的方式,使得生成的第一隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第一隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
可选地,在上述技术方案的基础上,第一生成模块930可以包括:
第一生成子模块,用于根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第一映射值。
第一确定子模块,用于根据第一映射值,从网关集群中确定目标网关。
可选地,在上述技术方案的基础上,访问数据报文还包括虚拟机的端口。
第一确定模块920可以包括:第二确定子模块和第三确定子模块。
第二确定子模块用于根据虚拟机的端口确定服务类型。以及
第三确定子模块用于如果服务类型为网络地址转换服务,则确定网关集群的地址参数。
可选地,在上述技术方案的基础上,第一隧道报文为虚似扩展局域网报文或通用路由封装报文。
根据本公开的实施例的模块、子模块、单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(Field ProgrammableGate Array,FPGA)、可编程逻辑阵列(Programmable Logic Arrays,PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(Application Specific Integrated Circuit,ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块910、第一确定模块920、第一生成模块930和第二确定模块940中的任意多个可以合并在一个模块/子模块/单元中实现,或者其中的任意一个模块/子模块/单元可以被拆分成多个模块/子模块/单元。或者,这些模块/子模块/单元中的一个或多个模块/子模块/单元的至少部分功能可以与其他模块/子模块/单元的至少部分功能相结合,并在一个模块/子模块/单元中实现。根据本公开的实施例,第一获取模块910、第一确定模块920、第一生成模块930和第二确定模块940中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(Field Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Arrays,PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(Application Specific Integrated Circuit,ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块910、第一确定模块920、第一生成模块930和第二确定模块940中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中网关确定装置部分与本公开的实施例中网关确定方法部分是相对应的,网关确定装置部分的描述具体参考网关确定方法部分,在此不再赘述。
图10示意性示出了根据本公开的实施例的另一种网关确定装置的框图。
如图10所示,网关确定装置1000包括第二获取模块1010、第三确定模块1020、第二生成模块1030和第四确定模块1040。
第二获取模块1010、第三确定模块1020、第二生成模块1030和第四确定模块1040顺次通信连接。
第二获取模块1010,用于获取来自服务端的响应数据报文,其中,响应数据报文包括服务端的IP地址和端口,其中,服务端用于响应来自虚拟机的访问数据报文,访问数据报文包括服务端的IP地址和服务端的端口。
第三确定模块1020,用于确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口。
第二生成模块1030,用于根据响应数据报文和地址参数生成第二隧道报文,其中,第二隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口。
第四确定模块1040,用于将第二隧道报文发送给交换机,以使交换机根据第二隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将与虚拟机对应的公网IP地址转化为虚拟机的IP地址。
根据本实施例的技术方案,由于采用了修改响应数据报文的方式,使得生成的第二隧道报文的外层包头中的源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合第二隧道报文的外层包头中网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
可选地,在上述技术方案的基础上,响应数据报文还包括公网IP地址。
第三确定模块1020可以包括:第四确定子模块和第五确定子模块。
第四确定子模块,用于根据公网IP地址确定服务类型。以及
第五确定子模块,用于如果服务类型为网络地址转换服务,则确定网关集群的地址参数。
可选地,在上述技术方案的基础上,第四确定子模块可以包括:第一确定单元。
第一确定单元,用于从公网路由表中,确定与公网IP地址对应的服务类型,其中,公网路由表包括公网IP地址段与服务类型之间的映射关系。
可选地,在上述技术方案的基础上,第二生成模块1030,可以包括:第二生成子模块和第六确定子模块。
第二生成子模块用于根据服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口,生成第二映射值。
第六确定子模块用于根据第二映射值,从网关集群中确定目标网关。
可选地,在上述技术方案的基础上,第二隧道报文为虚似扩展局域网报文或通用路由封装报文。
根据本公开的实施例的模块、子模块、单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(Field ProgrammableGate Array,FPGA)、可编程逻辑阵列(Programmable Logic Arrays,PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(Application Specific Integrated Circuit,ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第二获取模块1010、第三确定模块1020、第二生成模块1030和第四确定模块1040中的任意多个可以合并在一个模块/子模块/单元中实现,或者其中的任意一个模块/子模块/单元可以被拆分成多个模块/子模块/单元。或者,这些模块/子模块/单元中的一个或多个模块/子模块/单元的至少部分功能可以与其他模块/子模块/单元的至少部分功能相结合,并在一个模块/子模块/单元中实现。根据本公开的实施例,第二获取模块1010、第三确定模块1020、第二生成模块1030和第四确定模块1040中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(Field Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Arrays,PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(Application Specific Integrated Circuit,ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第二获取模块1010、第三确定模块1020、第二生成模块1030和第四确定模块1040中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中网关确定装置部分与本公开的实施例中网关确定方法部分是相对应的,网关确定装置部分的描述具体参考网关确定方法部分,在此不再赘述。
图11示意性示出了根据本公开实施例的适于实现上文描述的方法的服务器或分发器的框图。图11示出的服务器仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,根据本公开实施例的服务器14包括处理器1101,其可以根据存储在只读存储器(Read-Only Memory,ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(Random Access Memory,RAM)1103中的程序而执行各种适当的动作和处理。处理器1101例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(Application Specific Integrated Circuit,ASIC)),等等。处理器1101还可以包括用于缓存用途的板载存储器。处理器1101可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理子模块或者是多个处理子模块。
在RAM 1103中,存储有服务器14操作所需的各种程序和数据。处理器1101、ROM1102以及RAM 1103通过总线1104彼此相连。处理器1101通过执行ROM 1102和/或RAM 1103中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1102和RAM 1103以外的一个或多个存储器中。处理器1101也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,服务器14还可以包括输入/输出(I/O)接口1105,输入/输出(I/O)接口1105也连接至总线1104。系统500还可以包括连接至I/O接口1105的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被处理器1101执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、子模块等可以通过计算机程序模块来实现。
如图11所示,根据本公开实施例的分发器23包括处理器1101、ROM 1102、RAM1103、总线1104、I/O接口1105、输入部分1106、输出部分1107、存储部分1108、通信部分1109、驱动器1110和可拆卸介质1111。针对分发器23上述组成部分的介绍参见上文服务器14部分,在此不再具体赘述。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被处理器1201执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、子模块等可以通过计算机程序模块来实现。
图12示意性示出了根据本公开的实施例的网关确定系统的框图。
如图12所示,网关确定系统130包括服务器14、交换机22和分发器23。
服务器14,用于:获取来自虚拟机的访问数据报文,其中,访问数据报文包括用于请求访问的服务端的IP地址和端口;确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口;根据访问数据报文和地址参数生成第一隧道报文,其中,第一隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口;将第一隧道报文发送给交换机。
交换机22,与服务器14通信连接,其中,交换机22用于根据第一隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将虚拟机的IP地址转化为公网IP地址。
分发器23,与交换机22通信连接,其中,分发器23用于:获取来自服务端的响应数据报文,其中,响应数据报文包括服务端的IP地址和端口,其中,服务端用于响应来自虚拟机的访问数据报文,访问数据报文包括服务端的IP地址和服务端的端口;确定网关集群的地址参数,其中,地址参数包括网关集群的IP地址和网关集群的端口;根据响应数据报文和地址参数生成第二隧道报文,其中,第二隧道报文的外层包头包括服务端的IP地址、服务端的端口、网关集群的IP地址和网关集群的端口;将第二隧道报文发送给交换机,以使得交换机根据第二隧道报文的外层包头,从网关集群中确定目标网关,其中,目标网关用于将与虚拟机对应的公网IP地址转化为虚拟机的IP地址。
根据本实施例的技术方案,由于采用了修改访问数据报文和响应数据报文的方式,使得生成的第一隧道报文的外层包头与第二隧道报文的外层包头相同,源IP地址为服务端的IP地址,目的端口为服务端的端口,同时结合外层包头中的网关集群的IP地址和网关集群的端口,进行匹配目标网关的运算,因此至少部分地克服了流量分布不均匀性的技术问题,进而达到了在保证出入流向的数据报文由同一目标网关处理的基础上,保证了流量分布的均匀性。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(EPROM(Erasable Programmable Read Only Memory)或闪存)、便携式紧凑磁盘只读存储器(Computer Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1102和/或RAM 1103以外的一个或多个存储器。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (13)

1.一种网关确定方法,包括:
获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
将所述第一隧道报文发送给交换机,以使所述交换机根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址。
2.根据权利要求1所述的方法,其中,所述根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,包括:
根据所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口,生成第一映射值;以及
根据所述第一映射值,从所述网关集群中确定目标网关。
3.根据权利要求1或2所述的方法,其中,所述访问数据报文还包括所述虚拟机的端口;
所述确定网关集群的地址参数,包括:
根据所述虚拟机的端口确定服务类型;以及
如果所述服务类型为网络地址转换服务,则确定网关集群的地址参数。
4.根据权利要求1-3中任一项所述的方法,其中,所述第一隧道报文为虚似扩展局域网报文或通用路由封装报文。
5.一种网关确定方法,包括:
获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;
将所述第二隧道报文发送给交换机,以使所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
6.根据权利要求5所述的方法,其中,所述响应数据报文还包括公网IP地址;
所述确定网关集群的地址参数,包括:
根据所述公网IP地址确定服务类型;以及
如果所述服务类型为网络地址转换服务,则确定网关集群的地址参数。
7.根据权利要求6所述的方法,其中,所述根据所述公网IP地址确定服务类型,包括:
从公网路由表中,确定与所述公网IP地址对应的服务类型,其中,所述公网路由表包括公网IP地址段与所述服务类型之间的映射关系。
8.一种网关确定装置,包括:
第一获取模块,用于获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
第一确定模块,用于确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
第一生成模块,用于根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
第二确定模块,用于将所述第一隧道报文发送给交换机,以使所述交换机根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址。
9.一种网关确定装置,包括:
第二获取模块,用于获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
第三确定模块,用于确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
第二生成模块,用于根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;
第四确定模块,用于将所述第二隧道报文发送给交换机,以使所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
10.一种服务器,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1-4中任一项所述的方法。
11.一种分发器,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求5-7中任一项所述的方法。
12.一种网关确定系统,包括:
服务器,用于:
获取来自虚拟机的访问数据报文,其中,所述访问数据报文包括用于请求访问的服务端的IP地址和端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述访问数据报文和所述地址参数生成第一隧道报文,其中,所述第一隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;以及
将所述第一隧道报文发送给交换机;
所述交换机,与所述服务器通信连接,其中,所述交换机用于根据所述第一隧道报文的外层包头,从所述网关集群中确定目标网关,其中,所述目标网关用于将所述虚拟机的IP地址转化为公网IP地址;
分发器,与所述交换机通信连接,其中,所述分发器用于:
获取来自服务端的响应数据报文,其中,所述响应数据报文包括所述服务端的IP地址和端口,其中,所述服务端用于响应来自虚拟机的访问数据报文,所述访问数据报文包括所述服务端的IP地址和所述服务端的端口;
确定网关集群的地址参数,其中,所述地址参数包括所述网关集群的IP地址和所述网关集群的端口;
根据所述响应数据报文和所述地址参数生成第二隧道报文,其中,所述第二隧道报文的外层包头包括所述服务端的IP地址、所述服务端的端口、所述网关集群的IP地址和所述网关集群的端口;
将所述第二隧道报文发送给所述交换机,以使得所述交换机根据所述第二隧道报文的外层包头,从所述网关集群中确定所述目标网关,其中,所述目标网关用于将与所述虚拟机对应的公网IP地址转化为所述虚拟机的IP地址。
13.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1-7中任一项所述的方法。
CN202010689017.8A 2020-07-16 2020-07-16 网关确定方法、装置、服务器、分发器、系统及存储介质 Active CN112333135B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010689017.8A CN112333135B (zh) 2020-07-16 2020-07-16 网关确定方法、装置、服务器、分发器、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010689017.8A CN112333135B (zh) 2020-07-16 2020-07-16 网关确定方法、装置、服务器、分发器、系统及存储介质

Publications (2)

Publication Number Publication Date
CN112333135A true CN112333135A (zh) 2021-02-05
CN112333135B CN112333135B (zh) 2022-09-06

Family

ID=74302976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010689017.8A Active CN112333135B (zh) 2020-07-16 2020-07-16 网关确定方法、装置、服务器、分发器、系统及存储介质

Country Status (1)

Country Link
CN (1) CN112333135B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113114565A (zh) * 2021-04-09 2021-07-13 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备
CN113794788A (zh) * 2021-09-14 2021-12-14 北京百度网讯科技有限公司 网关导流方法、系统、装置、设备、存储介质及产品
CN113810296A (zh) * 2021-09-10 2021-12-17 北京百度网讯科技有限公司 集群化网关的分流方法、装置、存储介质以及电子设备
CN115442297A (zh) * 2022-09-06 2022-12-06 中电云数智科技有限公司 一种基于bgp实现eip智能接入的系统和方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101707569A (zh) * 2009-12-21 2010-05-12 杭州华三通信技术有限公司 Nat业务报文处理的方法及装置
CN104753930A (zh) * 2015-03-17 2015-07-01 成都盛思睿信息技术有限公司 基于安全网关的云桌面管理系统及其安全访问控制方法
CN108293022A (zh) * 2015-12-30 2018-07-17 华为技术有限公司 一种报文传输的方法、装置和系统
CN109151084A (zh) * 2017-06-15 2019-01-04 中兴通讯股份有限公司 报文发送方法及装置、系统、cgn设备
CN109451084A (zh) * 2018-09-14 2019-03-08 华为技术有限公司 一种服务访问方法及装置
CN109495596A (zh) * 2017-09-13 2019-03-19 阿里巴巴集团控股有限公司 一种实现地址转换的方法及装置
WO2019071464A1 (zh) * 2017-10-11 2019-04-18 华为技术有限公司 数据中心系统中域名解析的方法、装置和系统
CN110753072A (zh) * 2018-07-24 2020-02-04 阿里巴巴集团控股有限公司 负载均衡系统、方法、装置及设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101707569A (zh) * 2009-12-21 2010-05-12 杭州华三通信技术有限公司 Nat业务报文处理的方法及装置
CN104753930A (zh) * 2015-03-17 2015-07-01 成都盛思睿信息技术有限公司 基于安全网关的云桌面管理系统及其安全访问控制方法
CN108293022A (zh) * 2015-12-30 2018-07-17 华为技术有限公司 一种报文传输的方法、装置和系统
CN109151084A (zh) * 2017-06-15 2019-01-04 中兴通讯股份有限公司 报文发送方法及装置、系统、cgn设备
CN109495596A (zh) * 2017-09-13 2019-03-19 阿里巴巴集团控股有限公司 一种实现地址转换的方法及装置
WO2019071464A1 (zh) * 2017-10-11 2019-04-18 华为技术有限公司 数据中心系统中域名解析的方法、装置和系统
CN110753072A (zh) * 2018-07-24 2020-02-04 阿里巴巴集团控股有限公司 负载均衡系统、方法、装置及设备
CN109451084A (zh) * 2018-09-14 2019-03-08 华为技术有限公司 一种服务访问方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113114565A (zh) * 2021-04-09 2021-07-13 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备
CN113114565B (zh) * 2021-04-09 2023-05-12 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备
CN113810296A (zh) * 2021-09-10 2021-12-17 北京百度网讯科技有限公司 集群化网关的分流方法、装置、存储介质以及电子设备
CN113794788A (zh) * 2021-09-14 2021-12-14 北京百度网讯科技有限公司 网关导流方法、系统、装置、设备、存储介质及产品
CN115442297A (zh) * 2022-09-06 2022-12-06 中电云数智科技有限公司 一种基于bgp实现eip智能接入的系统和方法
CN115442297B (zh) * 2022-09-06 2023-08-22 中电云数智科技有限公司 一种基于bgp实现eip智能接入的系统和方法

Also Published As

Publication number Publication date
CN112333135B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
CN112333135B (zh) 网关确定方法、装置、服务器、分发器、系统及存储介质
US11575600B2 (en) Tunnel-less SD-WAN
US11102079B2 (en) Cross-regional virtual network peering
CN110012125B (zh) 集群网络通信方法、装置、存储介质和设备
EP4158858A1 (en) Loop prevention in virtual l2 networks
US8725898B1 (en) Scalable port address translations
US9961021B2 (en) Enabling applications in a multi-transport stack environment
US11516126B2 (en) Techniques for high performant virtual routing capabilities
US9602416B2 (en) Overlay capabilities exchange using DCBX
US11362947B2 (en) Interconnecting multiple separate openflow domains
US20200110626A1 (en) Rdma with virtual address space
US11444808B1 (en) Scaling network address translation (NAT) and firewall functionality to support public cloud networks
US20220086025A1 (en) Flexible network interfaces as a framework for a network appliance
US11777897B2 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
US20200136963A1 (en) Method and system for accessing cloud services
CN111698346B (zh) 一种专线网络地址转换方法、装置、专线网关及存储介质
US11121969B2 (en) Routing between software defined networks and physical networks
US20220353339A1 (en) Efficient flow management utilizing control packets
US20230396579A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
US9130883B2 (en) Method and apparatus to increase forwarding silicon functionality through packet manipulation
US20230269227A1 (en) Edge gateways in disaggregated networks
US10218607B2 (en) Flow distribution using fabric access tunnels
CN111147520B (zh) 由防火墙执行的信息处理方法和装置
US20230269201A1 (en) Pooling smart nics for network disaggregation
US12015562B2 (en) Port addressing via packet header modification

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
GR01 Patent grant
GR01 Patent grant