CN112769695A - 边缘网关处的动态数据通路 - Google Patents

边缘网关处的动态数据通路 Download PDF

Info

Publication number
CN112769695A
CN112769695A CN202110039636.7A CN202110039636A CN112769695A CN 112769695 A CN112769695 A CN 112769695A CN 202110039636 A CN202110039636 A CN 202110039636A CN 112769695 A CN112769695 A CN 112769695A
Authority
CN
China
Prior art keywords
logical
network
packet
stage
stages
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
Application number
CN202110039636.7A
Other languages
English (en)
Inventor
张荣华
王勇
T·考珀内恩
洪新华
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.)
Nicira Inc
Original Assignee
Nicira Inc
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 Nicira Inc filed Critical Nicira Inc
Publication of CN112769695A publication Critical patent/CN112769695A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • H04L12/465Details on frame tagging wherein a single frame includes a plurality of VLAN tags
    • H04L12/4654Details on frame tagging wherein a single frame includes a plurality of VLAN tags wherein a VLAN tag represents a customer VLAN, e.g. C-Tag
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • 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/19Flow control; Congestion control at layers above the network layer
    • 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
    • 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/3063Pipelined operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2585NAT traversal through application level gateway [ALG]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1038Load balancing arrangements to avoid a single path through a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/321Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L2012/4629LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5077Network service management, e.g. ensuring proper service fulfilment according to agreements wherein the managed service relates to simple transport services, i.e. providing only network infrastructure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开涉及边缘网关处的动态数据通路。提供了一种通过使用数据通路管道处理进出网络的流量的网关的新颖设计。数据通路管道包括用于在网络边缘处执行各种数据平面分组处理操作的多个阶段。处理阶段包括集中式路由阶段和分布式路由阶段。处理阶段可以包括服务提供阶段,诸如NAT和防火墙。网关高速缓存先前分组操作的结果,并将结果重新应用于满足某些标准的后续分组。对于不具有来自先前分组处理操作的适用或有效结果的分组,网关数据通路守护程序执行管道化分组处理阶段并记录来自管道的每个阶段的一组数据,并将这些数据合成到用于后续分组的高速缓存条目中。

Description

边缘网关处的动态数据通路
本申请是申请日为2016年10月29日、申请号为201680069286.6、发明名称为“边缘网关处的动态数据通路”的发明专利申请的分案申请。
技术领域
本发明公开通常涉及边缘网关处的动态数据通路。
背景技术
网关是充当到另一个网络的入口的网络点。在由数据中心提供的网络中,分配为网关节点的计算资源促进并调节数据中心网络与外部物理网络之间的流量。网关通常与知道向哪里引导到达网关的数据的给定分组的路由器以及为给定分组供给进出网关的实际路径的交换机相关联。
网关也是提供诸如防火墙、网络地址转换(NAT)、安全协议(诸如基于SSL的HTTP)等各种网络流量服务的计算节点。随着数据中心变得更大并且提供更多的计算和联网资源,网关也必须处理更多的流量。换句话说,网关及其相关联的路由器和交换机必须以更快的速度执行更多的交换、路由和服务任务。
发明内容
一些实施例提供了通过使用数据通路管道来处理进出网络的流量的网关。数据通路管道包括用于在网络边缘处执行各种数据平面分组处理操作的多个阶段。在一些实施例中,处理阶段包括集中式路由阶段和分布式路由阶段。在一些实施例中,处理阶段包括服务提供阶段,诸如NAT和防火墙。
在一些实施例中,根据接收到的分组的内容来动态确定要作为数据通路管道的一部分执行的阶段序列。在一些实施例中,数据通路管道的每个阶段与逻辑网络中的分组处理逻辑实体(诸如逻辑路由器或逻辑交换机)对应,并且由该阶段处的分组处理识别出的下一阶段与分组在逻辑网络中的下一跳对应,下一跳是另一个逻辑实体。
在一些实施例中,每个逻辑实体的分组处理操作基于存储在该逻辑实体的数据通路配置数据库中的配置数据。这种配置数据还定义了用于识别分组的下一跳的标准或规则。在一些实施例中,这样的下一跳识别规则被存储在DP配置数据库中作为与该阶段相关联的路由表或转发表。在一些实施例中,这样的下一跳识别规则允许数据通路守护程序(daemon)通过检查分组的内容和/或通过记录分组通过其进入逻辑实体的逻辑端口来确定下一跳的标识(identity)。
在一些实施例中,每个分组处理阶段被实现为对数据通路守护程序线程的函数调用。在一些实施例中,被调用以实现数据通路的各个阶段的函数是在核心处操作的数据通路守护程序的编程的一部分,但是被调用的函数基于用于不同网络标识的不同配置数据执行不同的操作。换句话说,核心的编程提供了可以由数据通路守护程序调用以执行各种逻辑路由器、逻辑交换机和服务提供实体的功能的函数。函数调用使用分组的内容作为输入实参(argument)。在一些实施例中,函数调用还使用分组通过其进入对应逻辑实体的逻辑端口的标识作为输入实参。在一些实施例中,函数调用还识别出口端口,该出口端口用于识别用于下一个管道阶段的下一个函数调用的入口端口。在一些实施例中,每个逻辑实体的每个逻辑端口与通用唯一标识符(UUID)相关联,使得逻辑端口可以由网关唯一地识别。逻辑端口的UUID还允许数据通路守护程序识别逻辑端口所属的逻辑实体,这又允许数据通路守护程序识别识别出的逻辑实体的配置数据并执行对应的管道阶段。
在一些实施例中,逻辑网络的一些逻辑实体/构造/元件分布在数据中心中的多个物理机器当中,并且一些逻辑实体/实体不是分布式的,而是集中式的或集中在一个物理机器上。在一些实施例中,这种集中式路由器充当用于在逻辑网络和外部路由器之间路由分组的集中式点(centralized point)。在一些实施例中,当处理传入分组时,数据通路守护程序将执行分布式逻辑实体和集中式逻辑实体两者作为其管道阶段。在一些实施例中,服务路由器是集中式逻辑路由器。每个服务路由器在一个网关机器上只有一个实例运行。因此,在网关机器上运行的数据通路守护程序将调用集中式的或集中在网关机器上的服务路由器作为其数据通路管道阶段之一。
在一些实施例中,数据中心支持用于多个不同租户的多个逻辑网络。不同的租户逻辑网络共享同一组网关机器,并且每个网关机器为所有连接的租户逻辑网络提供分组交换、转发和路由操作。在一些实施例中,数据通路守护程序能够为去往和来自属于不同租户的不同逻辑网络的分组执行分组处理阶段。在这些实施例中的一些实施例中,DP配置数据库提供在网关处启用特定于租户的分组转发操作的配置数据(即,路由表、转发表等)和服务规范。
在一些实施例中,除了执行L3路由和L2路由管道阶段之外,网关数据通路守护程序还执行用于L4到L7处理的服务提供阶段。这些服务支持源应用和目的地应用之间的端对端通信,并在每当消息从用户传递或被传递给用户时使用。数据通路守护程序将这些服务应用于边缘网关的有利位置处的分组,而无需改变在分组的源或目的地处运行的应用。在一些实施例中,数据通路可以包括用于流量过滤服务(诸如防火墙)、地址映射服务(诸如NAT)、加密和安全服务(诸如IPSec和HTTPS)的服务阶段。
在一些实施例中,当数据通路守护程序正在执行服务路由器管道阶段时,执行这些服务提供阶段中的一些或全部。此外,在一些实施例中,数据通路守护程序可以针对不同的分组执行不同的服务提供管道阶段。在一些实施例中,数据通路守护程序基于分组所属的L4流以及流的状态来执行不同的服务提供阶段。在一些实施例中,数据通路守护程序基于分组所属的租户执行不同的服务提供阶段。
在一些实施例中,网关不是对所有分组执行管道化阶段,而是高速缓存先前分组操作的结果并将结果重新应用于符合某些标准(即,高速缓存命中)的后续分组。对于不具有来自先前分组处理操作的适用或有效结果的分组,即,高速缓存未命中,网关数据通路守护程序执行管道化分组处理阶段。在一些实施例中,当数据通路守护程序执行管道化阶段来处理分组时,它记录来自管道的每个阶段的一组数据并将这些数据合成到用于后续分组的高速缓存条目中。当数据通路管道正在被执行时,执行阶段中的一些或全部发出将由合成器用来合成高速缓存条目的数据或指令。在一些实施例中,由管道阶段发出的高速缓存条目合成指令或数据包括高速缓存启用字段、位掩码字段和动作字段。
合成器收集来自所有管道阶段的所有高速缓存条目合成指令,并且从所有接收到的指令合成流高速缓存中的条目,除非一个或多个管道阶段指定不应该生成高速缓存条目。合成的高速缓存条目指定满足某些标准(即,属于某些L4流)的分组的最终动作。当生成高速缓存条目时,在一些实施例中合成器还包括指定高速缓存条目被创建的时间的时间戳。这个时间戳将用于确定高速缓存条目对后续分组是否有效。
一些实施例即使在数据通路守护程序正在主动访问DP配置数据库时,也动态地更新DP配置数据库。为了确保数据通路守护程序在DP配置数据库被更新时没有为其管道阶段使用不完整的(并且因此损坏的)的配置数据,一些实施例维护DP配置数据库的两个副本。数据库的一个副本用作来自网络控制器/管理器的新更新的暂存区(staging area),使得数据通路守护程序可以安全地使用数据库的其它副本。一旦更新完成,两个数据库副本的角色将以原子方式反转。在一些实施例中,网络控制器在切换之前等待数据通路守护程序完成其当前的运行至完成(run-to-completion)分组处理管道阶段。
前面的发明内容旨在用作针对本发明的一些实施例的简要介绍。它并不意味着是本文档中所公开的所有发明性主题的介绍或概述。以下的具体实施方式和参考具体实施方式的附图说明将进一步描述在发明内容以及其它实施例中所描述的实施例。因此,为了理解本文档所描述的所有实施例,需要对发明内容、具体实施方式和附图说明进行全面地审阅。此外,所要求保护的主题不受在发明内容、具体实施方式和附图说明中的说明性细节的限制,而是要由所附权利要求来定义,这是因为所要求保护的主题可以在不脱离本主题的精神的情况下以其它特定形式来体现。
附图说明
本发明的新颖特征在所附权利要求中阐述。但是,为了解释的目的,本发明的几种实施例在以下图中阐述。
图1概念性地图示了其去往和来自外部网络的流量经过网关的数据中心。
图2更详细地图示了实现数据通路管道的网关机器。
图3图示了数据通路守护程序对处理阶段的动态识别。
图4概念性地图示了作为函数调用执行数据通路管道的每个阶段的数据通路守护程序。
图5图示了提供用于每个数据通路管道阶段的配置数据的示例DP配置数据库。
图6概念性地图示了当使用DP配置数据库执行数据通路管道时由处理核心执行的过程。
图7图示了具有分布式和集中式逻辑实体的逻辑网络。
图8图示了对于从外部网络到数据中心的逻辑网络的传入分组执行管道阶段的网关数据通路守护程序。
图9图示了对于从数据中心的逻辑网络到外部网络的传出分组执行管道阶段的网关数据通路守护程序。
图10图示了数据中心的整个网络的逻辑视图。
图11图示了在网关机器处对不同租户执行网关分组处理的数据通路守护程序。
图12示出了通过调用与各种逻辑实体对应的管道阶段来处理分组的数据通路守护程序。
图13图示了执行用于不同租户的服务提供管道阶段的网关数据通路守护程序。
图14概念性地图示了用于在逻辑路由器内提供服务的过程。
图15a-b图示了维持高速缓存以加速分组处理的数据通路守护程序。
图16图示了用于数据通路高速缓存的高速缓存条目的合成。
图17图示了聚合高速缓存条目和精确匹配高速缓存条目的示例合成。
图18图示了指定覆盖所有其它动作的动作的数据通路阶段的示例。
图19图示了检查数据通路高速缓存的条目以确定是否存在高速缓存未命中或高速缓存命中。
图20概念性地图示了用于操作数据通路高速缓存的过程。
图21图示了具有支持以原子方式进行的更新的DP配置数据库的网关。
图22a-b图示了数据通路配置数据库2110的原子更新。
图23概念性地图示了控制DP配置数据库的读指针和写指针的过程。
图24图示了根据本发明的一些实施例的网关机器的体系架构。
图25a概念性地图示了使用IPC与服务进程通信以便提供服务的RTC线程。
图25b概念性地图示了使用Linux内核与服务进程通信以便提供服务的RTC线程。
图26图示了用作运行本发明的一些实施例的虚拟化软件的主机机器的计算设备。
图27概念性地图示了实现本发明的一些实施例的电子系统。
具体实施方式
在以下描述中,为于解释的目的阐述了许多细节。但是,本领域普通技术人员将认识到,本发明可以在不使用这些具体细节的情况下进行实践。在其它情况下,众所周知的结构和设备以框图的形式示出,以便防止用不必要的细节模糊本发明的描述。
一些实施例提供了通过使用数据通路管道来处理进出网络的流量的网关。数据通路管道包括用于在网络边缘处执行各种数据平面分组处理操作的多个阶段。在一些实施例中,处理阶段包括集中式路由阶段和分布式路由阶段。在一些实施例中,处理阶段包括服务提供阶段,诸如NAT和防火墙。
图1概念性地图示了其去往和来自外部网络190的流量经过网关111-112的数据中心100。每个网关操作用于处理经过网关的分组的数据通路管道(分别为141和142)。
数据中心包括通过提供商网络互连的各种其它计算和联网资源121-129。这些资源通过提供商网络彼此通信和通过经物理通信介质(其可以包括诸如以太网的有线通信或诸如WiFi的无线通信)的网络流量与外部网络190通信。来自计算和联网资源121-129的分组可以通过网关111-112之一到达外部网络190,并且来自外部网络190的分组可以通过网关111-112之一到达计算和网络资源121-129。因此,网络的网关被认为处于网络的边缘处,并且因此也被称为边缘设备。
在一些实施例中,这些资源中的一些资源由用作主机机器121-129的计算设备提供。这些主机机器中的一些操作虚拟化软件,其允许这些主机机器托管各种虚拟机(VM)。运行虚拟化软件的主机机器将在下面通过参考图26更详细地描述。在一些实施例中,网关本身是主机机器,并且网关的数据通路管道(141或142)由在其虚拟化软件上运行的VM之一提供。这些资源中的一些资源作为“裸金属(bare metal)”运行,即,没有虚拟化软件。在一些实施例中,网关是裸金属计算设备,其在没有虚拟化软件的情况下直接在其自己的操作系统上操作其数据通路管道。
在一些实施例中,通过使用诸如虚拟可扩展LAN(VXLAN)、通用网络虚拟化封装(GENEVE)和使用通用路由封装的网络虚拟化(NVGRE)之类的覆盖逻辑网络来引领数据中心内的分组流量。VXLAN。在这些实施例中的一些实施例中,主机机器和网关机器中的每一个是使用覆盖封装来传送包的VXLAN端点(被称为VTEP)。在一些实施例中,外部物理网络通过VLAN引领,并且网关通过将VXLAN分组转换成VLAN分组来中继数据中心和外部网络之间的流量,反之亦然。
在一些实施例中,数据中心的计算和联网资源实现一个或多个逻辑网络,每个逻辑网络都可以访问网关111-112以获取去往和来自外部网络190的流量。在一些实施例中,每个逻辑网络具有其自己的一组逻辑交换机和用于引领逻辑网络的网络流量的逻辑交换机。这些逻辑路由器和交换机中的一些或全部由在主机机器中操作的软件(或者作为虚拟化软件或者作为在裸金属主机机器上执行的程序)提供。在一些实施例中,逻辑路由器和交换机中的一些在网关111-112中作为它们各自的数据通路管道141-142中的阶段进行操作。在一些实施例中,数据中心包括用于供应/创建数据中心100中的逻辑网络的网络管理器180和用于控制各种逻辑网络的各种逻辑路由器和交换机(包括在网关111-112中操作的那些逻辑路由器和交换机)的网络控制器170(或控制器集群)。逻辑路由器和交换机在于2015年6月30日提交的标题为“Logical Router with Multiple Routing Components”的美国专利申请14/814,473中描述,该申请通过引用被结合于此。
一些实施例的控制平面为主机系统(例如,数据中心)的一个或多个租户配置和管理一个或多个逻辑网络。在一些实施例中,主机系统的逻辑网络使用一组逻辑转发元件(例如,逻辑L2和L3交换机)将一组终端机(例如,虚拟机、物理服务器、容器等)逻辑地连接到一组物理机器。在一些实施例中,终端机的不同子集驻留在执行受管理转发元件(MFE)的不同主机机器上。MFE实现本地终端机逻辑地连接到的逻辑网络的逻辑转发元件。在各种不同的实施例中,这些MFE可以是基于流的转发元件(例如,Open vSwitch)或基于代码的转发元件(例如,ESX),或者这两者的组合。这些不同类型的转发元件不同地实现各种逻辑转发元件,但是在每种情况下,它们为可能需要处理分组的每个逻辑转发元件执行管道。
图2更详细地图示了实现数据通路管道的网关机器。如图所示,网关111包括处理核心211-214和网络接口控制器(NIC)220。NIC220从连接网关111的网络通信介质接收数据分组,并将接收到的分组提供给核心211-214用于处理。
每个处理核心正在操作一个或多个处理线程。具体而言,核心211正在操作数据通路管道141作为处理线程,该处理线程被称为数据通路守护程序241。如图所示,数据通路守护程序241接收分组270并且通过一系列阶段221-229处理分组270以产生经处理的分组275。在一些实施例中,每个核心一次只执行一个线程,并且每个线程一次处理一个分组。换句话说,每个分组处理线程是运行至完成(RTC)线程,该线程直到它已经完成通过其所有阶段221-229处理当前分组(即,270)之后才开始处理另一个分组。
数据通路守护程序241的操作由数据通路配置数据库存储(DP配置数据库)230来定义或指定。存储在DP配置数据库230中的配置数据指定管道的每个阶段应当针对每个传入分组执行哪些功能或操作。对于与逻辑路由器或交换机对应的一些阶段,DP配置数据库在一些实施例中为路由表或转发表提供指定下一跳的内容。对于与诸如防火墙的网络服务对应的一些阶段,DP配置数据库230提供服务规则。在一些实施例中,网络控制器170(或网络管理器180)加载并更新DP配置数据库230的内容。
下面描述本发明的若干更详细的实施例。第I部分讨论了用于网关处分组处理的动态管道阶段。第II部分描述了用于网关数据通路管道的高速缓存。第III部分描述了用于网关数据通路管道的配置数据库的更新。第IV部分描述了实现数据通路管道的网关的软件体系架构。第V部分描述了操作虚拟化软件的计算设备。最后,第VI部分描述了实现本发明的一些实施例的电子系统。
I.动态管道阶段
在一些实施例中,根据接收到的分组的内容来动态确定要作为数据通路管道的一部分执行的阶段序列。在图2的上下文中,这意味着分组270的内容动态地确定要执行哪些处理阶段作为数据通路管道141的一部分。在一些实施例中,当在特定阶段处理分组时,核心211确定或识别要用于处理分组的下一个阶段。在一些实施例中,数据通路管道的每个阶段与诸如逻辑路由器或逻辑交换机的分组处理逻辑实体对应,并且由该阶段的分组处理识别出的下一个阶段与逻辑网络中分组的下一跳对应,下一跳是另一个分组处理逻辑实体。(为了简单起见,在整个本文档中将把分组转发逻辑实体称为逻辑实体)。
在一些实施例中,与逻辑路由器或逻辑交换机对应的管道阶段是逻辑路由器或交换机的完整功能模型,即,它指定所有的其逻辑端口、其路由/转发表、其提供的服务、其安全策略、其封装协议等。在一些实施例中,逻辑路由器的所有这些特征由计算机可执行代码包指定,并且可以通过函数调用作为管道阶段执行。它或者通过目的地MAC(L2交换)或者通过目的地IP(L3路由)执行转发。这样的管道阶段因此可与OpenFlow或Open vSwitch下的流表区分开来,其中OpenFlow或Open vSwitch下的流表根据一组流条目执行流转发,每个条目描述匹配条件和对应动作。
在一些实施例中,每个逻辑实体的分组处理操作(即,管道阶段)基于存储在用于该逻辑实体的DP配置数据库中的配置数据。这种配置数据还定义了用于识别分组的下一跳的标准或规则。在一些实施例中,这样的下一跳识别规则被存储在DP配置数据库中作为与该阶段相关联的路由表或转发表。在一些实施例中,这种下一跳识别规则允许数据通路守护程序通过检查分组的内容(例如,其源地址和目的地地址)和/或通过记录分组通过其进入逻辑实体的逻辑端口来确定下一跳的标识。换句话说,DP配置数据库可以被认为是存储逻辑网络的各个跳之间的逻辑关系,并且数据通路守护程序通过根据这些逻辑关系和分组的内容遍历逻辑网络来处理每个分组。
图3图示了数据通路守护程序动态识别处理阶段。如图所示,核心211正在将数据通路守护程序241作为处理线程操作。数据通路守护程序241正在根据逻辑网络300处理分组371,逻辑网络300的配置数据存储在DP配置数据库230中。
如图所示,逻辑网络300包括服务路由器311和312(SR1和SR2)、逻辑交换机321、322和323(LS1、LS2和TLS)以及分布式路由器313(DR)。服务路由器SR1和SR2中的每一个具有用于连接到外部网络190的上行链路(U1和U2)。逻辑交换机TLS是为来自路由器SR1、SR2和DR1的分组提供L2交换的转接逻辑交换机,路由器SR1、SR2和DR1被分配分别具有MAC地址“MAC1”、“MAC2”和“MAC3”的逻辑端口。另一方面,分布式路由器DR1提供由逻辑交换机LS1、LS2和TLS定义的L2网络段之间的L3路由。
该图图示了数据通路守护程序241如何根据存储在DP配置数据库230中的配置数据来处理两个不同的分组371和372。这两个不同的分组使得数据通路守护程序241不同地遍历逻辑网络300并执行不同的对应管道阶段。
分组371是来自外部网络190去往逻辑交换机LS1的L2段后面的VM 381(VM1)的分组。处理核心211在接收到分组371时执行与服务路由器SR1对应的分组处理阶段351。阶段351的操作由DP配置数据库中的配置来定义。服务路由器SR1在逻辑上将分组转发到逻辑交换机TLS,这使得数据通路守护程序241识别与逻辑交换机TLS对应的下一个分组处理阶段352。
处理阶段352由DP配置数据库230配置为作为逻辑交换机TLS执行L2交换操作,逻辑交换机TLS将分组371从其“MAC1”端口转发到其“MAC3”端口。MAC3端口与分布式路由器DR1对应,并且数据通路守护程序241对应地识别与DR1对应的下一个分组处理阶段353。
处理阶段353由DP配置数据库230配置为作为分布式逻辑路由器DR1执行L3路由操作,其根据由DP配置数据库230提供的路由表进行操作。根据路由表和分组371的目的地IP地址,逻辑路由器DR1将分组371从由逻辑交换机TLS定义的L2端路由到由逻辑交换机LS1定义的L2段。对应地,数据通路守护程序241识别与LS1对应的下一个分组处理阶段354。
处理阶段352由DP配置数据库230配置为作为逻辑交换机LS1执行L2交换操作,逻辑交换机LS1根据分组的目的地MAC地址将分组371转发到虚拟机VM1(381)。
分组372去往附接到由逻辑交换机LS2定义的L2段的VM 382。分组372使得数据通路守护程序241识别分组处理阶段361以执行服务路由器SR1,然后识别分组处理阶段362以执行逻辑交换TLS,然后识别分组处理阶段363以执行分布式路由器DR。当处理分组372时,分组处理阶段363将来自由逻辑交换机TLS定义的L2端的分组路由到由逻辑交换机LS2定义的L2段。对应地,数据通路守护程序241识别与逻辑交换机LS2对应的下一个分组处理阶段364,逻辑交换机LS2根据分组的目的地MAC地址将分组372转发到虚拟机VM2(382)。
在图3的示例中,虽然数据通路守护程序241根据相同的DP配置数据库230进行操作,但是两个不同的分组371和372使得数据通路守护程序不同地遍历逻辑网络300并且执行不同的分组处理阶段(对于分组371,SR1-TLS-DR1-LS1,对于分组372,SR1-TLS-DR1-LS2)。
在一些实施例中,每个分组处理阶段被实现为对数据通路守护程序线程的函数调用。在一些实施例中,函数(也被称为子例程或过程)是被封装为元件以执行特定任务的程序指令序列。在一些实施例中,被调用以实现数据通路的各个阶段的函数是在核心处操作的数据通路守护程序的编程的一部分,但被调用的函数基于用于不同网络标识的不同配置数据执行不同的操作。换句话说,核心的编程提供了可以由数据通路守护程序调用以执行各种逻辑路由器、逻辑交换机和服务提供实体的功能的函数。
函数调用使用分组的内容作为输入实参。在一些实施例中,函数调用还使用分组通过其进入对应逻辑实体的逻辑端口的标识作为输入实参。在一些实施例中,函数调用还识别出口端口,出口端口用于识别用于下一个管道阶段的下一个函数调用的入口端口。
图4概念性地图示了作为函数调用执行数据通路管道的每个阶段的数据通路守护程序400。如图所示,数据通路守护程序正在根据逻辑网络处理分组470。对于每个阶段,数据通路守护程序执行函数调用,该函数调用执行与分组处理阶段(例如,逻辑路由器、逻辑交换机、服务路由器等)的操作对应的一组指令。该函数调用基于用于该功能/阶段的一组配置数据(即,规则表、路由表、转发表等)对分组470进行操作。函数调用的结果由数据通路守护程序400用来识别下一跳并执行下一个函数调用作为下一个阶段。每个函数调用都使用作为输入实参的分组、以及其它信息,诸如逻辑实体的标识或分组转发到的逻辑端口。
对于一些实施例,图5图示了提供用于每个数据通路管道阶段的配置数据的示例DP配置数据库500,以及不同逻辑实体之间允许数据通路守护程序识别下一个管道阶段的连接映射。在一些实施例中,这样的连接映射指定每个逻辑实体的每个出口端口的连接目的地,不管它是另一个逻辑实体的入口端口,还是离开网关的连接(诸如到外部网络的上行链路)。因此,这样的连接映射有效地为一些实施例提供了网络的逻辑拓扑。
在一些实施例中,每个逻辑实体的每个逻辑端口与通用唯一标识符(UUID)相关联,使得逻辑端口可以由网关唯一地识别。逻辑端口的UUID也允许数据通路守护程序识别逻辑端口所属的逻辑实体,这又允许数据通路守护程序识别识别出的逻辑实体的配置数据并执行对应的管道阶段。
如图所示,DP配置数据库500指定若干逻辑实体501-503(逻辑实体A、B、C)及其对应的逻辑端口。每个逻辑端口与UUID相关联。例如,逻辑实体501带有具有UUID:UUID1、UUID2、UUID3和UUID4的逻辑端口,而逻辑实体502带有具有UUID:UUID5、UUID6和UUID7的逻辑端口。DP配置数据库还指定每个逻辑端口的连接。例如,逻辑端口UUID4连接到逻辑端口UUID5,逻辑端口UUID6连接到逻辑端口UUID8,逻辑端口UUID7连接到逻辑端口UUID9等。
DP配置数据库500还包括用于每个逻辑实体的配置数据,其包括逻辑实体的入口端口和出口端口以及其路由表或转发表、在该逻辑实体上提供或启用的服务等。在一些实施例中,这样的配置数据包括将在分组处理期间由数据通路消费的其它数据,诸如MAC到VTEP映射表。
图6概念性地图示了当使用DP配置数据库执行数据通路管道时由处理核心执行的过程600。该过程在它接收(在610处)传入分组时开始。该过程然后识别(620)用于接收到的分组的初始连接。在一些实施例中,这种识别基于分组的内容,诸如分组的报头字段。在一些实施例中,这种连接与UUID相关联,因此它将具有根据DP配置数据库的连接映射。
该过程然后确定(在630处)识别出的连接是逻辑实体的入口端口还是网关的离开端口。在一些实施例中,该过程检查由DP配置数据库提供的连接映射以识别连接的目的地。如果连接是到网关内的另一个逻辑实体的入口端口,则该过程进行到640。如果连接是网关的离开端口,则该过程进行到690。
在640处,该过程基于连接识别逻辑实体。在这个阶段,该过程已确定该连接连接到逻辑实体的入口端口。通过使用DP配置数据库,该过程能够识别连接是入口端口的逻辑实体。例如,在图5中,根据DP配置数据库500,逻辑端口UUID5是逻辑实体B(501)的入口端口。
该过程然后执行(在650处)逻辑实体的操作。这些操作由与识别出的逻辑实体相关联的配置数据(例如,路由表、转发表、服务规则等)来指定。这些操作的结果还基于分组的内容,诸如分组的源和目的地地址。该操作在一些实施例中与函数调用对应,该函数调用通过参考DP配置数据库中的配置数据来执行一系列指令。
该过程然后识别(在660处)逻辑实体的出口端口。对于作为逻辑交换机或逻辑路由器的逻辑实体,在一些实施例中,这种出口端口识别对应于查找转发表或路由表以基于入口端口的标识或分组的内容来执行路由。在一些实施例中,出口端口(以及因此下一个处理阶段或下一跳)的识别是基于分组中以下参数中的一些:(1)用于L2交换/转发的分组的源和目的地MAC地址;(2)用于L3路由的分组的源和目的地IP地址;(3)用于L4传输/连接/流处理的分组的源和目的端口;(4)分组所属的逻辑网络或租户的标识。来自DP配置数据库的配置数据提供规则,这些规则指定基于这些分组参数要在每个阶段采取的动作。
接下来,该过程基于由DP配置数据库提供的连接映射来识别(在670处)出口端口的连接。例如,在图5中,根据DP配置数据库500,逻辑端口UUID4连接到逻辑端口UUID5。然后该过程返回到630以确定出口端口是连接到网关的离开端口还是连接到另一个逻辑实体。
在690处,该过程结束数据通路管道并将分组发送到其目的地物理路由器或主机机器。该过程然后结束。在一些实施例中,网关与数据中心中作为覆盖网络(例如,VXLAN)的VTEP的其它主机机器进行通信,并且下一跳位于数据中心中的另一个VTEP的后面。在这种情况下,该过程根据覆盖网络封装分组,并将封装后的分组发送到目的地VTEP。如果下一跳是外部网络(其通常是VLAN)中的物理路由器,则网关将删除覆盖封装并将分组桥接到物理路由器。在一些实施例中,DP配置提供将分组的目的地MAC地址映射到对应的VTEP地址的映射。
a.集中式和分布式管道阶段
在一些实施例中,分布在数据中心中的多个物理机器之间的逻辑网络的一些逻辑实体/实体/元件,即,这些主机机器中的每一个都具有分布式逻辑实体的副本或实例。需要由分布式逻辑实体处理的分组可以由正在运行分布式逻辑实体的实例的任何机器处理。另一方面,逻辑实体/实体中的一些不是分布式的,而是集中式的或集中在一个物理机器上,即,逻辑实体仅具有一个物理实例。在一些实施例中,这种集中式路由器充当用于在逻辑网络和外部路由器之间路由分组的集中式点。需要由集中式逻辑实体处理的分组必须被转发到正在操作集中式逻辑实体的机器。分布式逻辑路由器和集中式逻辑路由器在于2015年6月30日提交的标题为“Logical Router with Multiple Routing Components”的美国专利申请No.14/814,473中描述。
在一些实施例中,当处理传入分组时,数据通路守护程序将执行分布式逻辑实体和集中式逻辑实体两者作为其管道阶段。在一些实施例中,服务路由器是集中式逻辑路由器。每个服务路由器在一个网关机器上只有一个实例运行。因此,在网关机器上运行的数据通路守护程序将调用集中式的或集中在网关机器上的服务路由器作为其数据通路管道阶段之一。
在一些实施例中,控制服务路由器阶段的操作的配置数据(DP配置数据库)包括逻辑路由器应该提供的任何服务的定义、逻辑路由器将被配置为活动-活动模式还是活动-备用模式、为逻辑路由器配置了多少上行链路、上行链路的IP和MAC地址、上行链路的L2和L3连接、逻辑路由器的任何南向接口的子网、以及用于逻辑路由器的路由信息库(RIB)的任何静态路由以及其它数据。
图7图示了具有分布式和集中式逻辑实体两者的逻辑网络。具体而言,该图图示了逻辑网络300的逻辑视图和物理视图。逻辑网络300的逻辑视图示出了网络的各种逻辑实体之间的逻辑关系和连接。逻辑网络300的物理视图示出了物理主机机器中的各种逻辑实体以及数据中心的物理网关的物理实例化(instantiation)。
根据逻辑视图,逻辑网络300包括服务路由器311和312(SR1和SR2)、逻辑交换机321、322和323(LS1、LS2和TLS)以及分布式路由器313(DR)。在这些逻辑实体中,服务路由器SR1和SR2是集中式逻辑实体,而LS1、LS2、TLS和DR是分布式逻辑实体。
一些实施例提供以分布式方式启用第一跳路由的分布式逻辑路由器实现(而不是将所有路由功能集中在网关处)。在物理实现中,一些实施例的逻辑路由器包括单个分布式路由组件(也被称为分布式路由器或DR)以及一个或多个服务路由组件(也被称为服务路由器或SR)。在一些实施例中,DR跨越与直接或间接逻辑地连接到逻辑路由器的虚拟机(VM)或其它数据计算节点直接耦合的受管理转发元件(MFE)。一些实施例的DR还跨越逻辑路由器绑定到的网关以及能够执行路由操作的一个或多个物理路由器。一些实施例的DR负责逻辑交换机和/或逻辑地连接到逻辑路由器的其它逻辑路由器之间的第一跳分布式路由。服务路由器(SR)仅跨越逻辑网络的边缘节点并且负责交付未以分布式方式实现的服务(例如,一些有状态的服务)。
网络的物理视图示出了数据中心100的实际物理机器中这些集中式和分布式逻辑实体的物理实例化。如图所示,数据中心100包括通过物理连接互连的网关111-112和主机机器121-123。分布元件TLS、LS1、LS2和DR的实例跨网关111-112和主机机器121-123分布。在一些实施例中,分布式元件的不同物理实例根据同一组转发表进行操作。但是,集中式元件SR1仅在网关111中是活动的,而集中式元件SR2仅在网关112中是活动的。换句话说,只有网关111的数据通路守护程序执行SR1作为管道阶段并且只有网关112的数据通路守护程序执行SR2作为管道阶段。
图8图示了对于从外部网络到数据中心的逻辑网络的传入分组(也称为南行流量)执行管道阶段的网关数据通路守护程序。如图所示,通过上行链路U1从外部网络接收到的分组由网关111处理,网关111的数据通路守护程序141执行与SR1、TLS、DR和LS-A(或LS-B,这取决于分组的目的地L2段)对应的管道阶段。处理后的分组然后被发送到其中一个主机机器以转发到目的地VM。另一方面,通过上行链路U2从外部网络接收到的分组由网关112处理,网关112的数据通路守护程序142执行与SR2、TLS、DR和LS-A(或LS-B,这取决于分组的目的地地址)对应的管道阶段。处理后的分组然后被发送到其中一个主机机器以转发到目的地VM。在一些实施例中,数据通路守护程序的逻辑交换阶段(LS-A或LS-B)识别目的地VM的主机机器。
网关111和112都执行与分布的转接逻辑交换机TLS、分布式路由器DR以及逻辑交换机LS-A和LS-B对应的管道阶段,因为这些是分布式逻辑网络构造。但是,只有网关111的数据通路守护程序为服务路由器SR1执行管道阶段,因为SR1是位于网关111处的集中式路由器,并且只有网关112的数据通路守护程序为服务路由器SR2执行管道阶段,因为SR2是位于网关112处的集中式路由器。
图9图示了对于从数据中心的逻辑网络到外部网络的传出分组(也称为北向流量)执行管道阶段的网关数据通路守护程序。如图所示,源自在主机机器中操作的VM的分组经历与LS-A(或LS-B,这取决于源VM的L2段)、DR和TLS对应的管道阶段。主机机器的TLS阶段识别下一跳路由器,其或者是网关111中的SR1或者是网关112中的SR2。在一些实施例中,服务路由器的选择是基于分组的目的地地址以及之前在管道中做出的路由决定。
对于发送到网关111的分组,网关111的数据通路守护程序141在通过上行链路U1将分组中继到外部网络之前执行与TLS和SR1对应的管道阶段。对于发送到网关112的分组,网关112的数据通路守护程序142在通过上行链路U2将分组中继到外部网络之前执行与TLS和SR2对应的管道阶段。
b.用于不同租户的数据通路管道
在一些实施例中,数据中心支持用于多个不同租户的多个逻辑网络。不同的租户逻辑网络共享同一组网关机器,并且这些网关机器中的每一个为所有连接的租户逻辑网络提供分组交换、转发和路由操作。在一些实施例中,数据通路守护程序能够对去往和来自属于不同租户的不同逻辑网络的分组执行分组处理阶段。在这些实施例中的一些实施例中,DP配置数据库提供在网关处启用特定于租户的分组转发操作的配置数据(即,路由表、转发表等)和服务规范。
不同的租户逻辑网络具有不同的分组处理逻辑实体,例如,不同的逻辑路由器和逻辑交换机。图10图示了数据中心的整个网络的逻辑视图的图1000。整个网络包括属于不同租户逻辑网络的各种逻辑实体以及由数据中心提供的一组逻辑实体。这些数据中心提供的逻辑实体为所有租户共享,以便通过网关访问外部网络并使用网关提供的服务。
根据图1000,数据中心的整个网络包括提供商逻辑路由器(PLR)1090和租户逻辑路由器(TLR)1010、1020和1030(TLR1、TLR2和TLR3)。PLR 1090通过转接逻辑路由器1019(TLS1)与TLR1 1010连接、通过转接逻辑路由器1029(TLS2)与TLR2 1020连接、以及通过转接逻辑路由器1039(TLS3)与TLR3 1030连接。TLR1用于执行租户1的L3流量、TLR2用于执行租户2的L3流量、TLR3用于执行租户3的L3流量。不同租户的逻辑网络由PLR 1090连接在一起。PLR 1090用作各租户逻辑网络与外部物理网络之间的中间逻辑路由器。
在一些实施例中,逻辑路由器是双层逻辑网络结构的一部分。一些实施例的双层结构包括(1)用于将逻辑网络连接到数据中心外部的网络的单个逻辑路由器(被称为提供商逻辑路由器(PLR)并且由例如数据中心的拥有者管理);以及(2)连接到PLR并且不与外部网络单独通信的多个逻辑路由器(每个被称为租户逻辑路由器(TLR)并且由例如数据中心的不同租户管理)。在一些实施例中,控制平面定义PLR的分布式组件与TLR的服务组件之间的转接逻辑交换。
对于PLR逻辑路由器,一些实施例尽可能地使用活动-活动模式,并且仅当为PLR配置有状态服务(例如,NAT、防火墙、负载平衡器等)时才使用活动-备用模式。在活动-备用模式下,只有一个服务路由组件处于是活动的,即,在某个时间完全可操作,并且只有这个活动路由组件发出消息来吸引流量。所有其它服务路由组件都处于备用模式。在一些实施例中,活动服务组件和备用服务组件使用相同的IP地址但不同的MAC地址来与分布式组件通信。但是,只有活动组件才应答来自该分布式组件的地址解析协议(ARP)请求。此外,只有活动的服务组件才将路由通告给外部网络以吸引流量。
对于TLR逻辑路由器,当为TLR配置有状态服务时,一些实施例或者不使用服务组件或者在活动-备用模式下使用两个服务组件。TLR在内部以与活动-备用模式下的PLR相同的方式操作,即,具有共享相同网络层地址的活动组件和备用组件,但仅活动组件对ARP请求响应。为了连接到PLR,一些实施例向TLR的两个服务组件中的每一个分配相同的网络层地址(尽管与用于连接到其自己的分布式组件的IP地址不同)。
上述逻辑路由器是由单个分布式路由组件和一组服务路由组件实现的分布式逻辑路由器。一些实施例在诸如集中式逻辑路由器的物理网络(例如,数据中心网络)中提供其它类型的逻辑路由器实现。在集中式逻辑路由器中,仅在网关机器中执行L3逻辑路由功能,并且一些实施例的控制平面不定义任何分布式路由组件,而是仅定义多个服务路由组件,其中每个服务路由组件都在单独的网关机器中实现。
具有多个路由组件的不同类型的逻辑路由器(例如,分布式逻辑路由器、多层逻辑路由器等)以及在边缘节点上实现不同类型的逻辑路由器以及在数据中心的主机机器上操作的受管理转发元件在于2015年7月30日提交的美国专利申请14/814,473中更详细地描述,该申请通过引用被结合于此。
PLR包括提供对物理网络和边缘服务的接入的服务路由器1001-1003(SR1、SR2和SR3)。PLR还包括分布式路由器1005(PLR-DR),用于路由去往和来自不同租户逻辑网络的分组。PLR分布式路由器1005通过转接逻辑路由器(PLR-TLS)1099连接到服务路由器SR1、SR2和SR3。
每个TLR用作租户逻辑网络的L3集线器。每个TLR包括用于连接由不同逻辑交换机定义的不同L2段的分布式路由器(DR)。具体而言,TLR1包括用于连接逻辑交换机LS-A和LS-B(1011和1012)的TLR1-DR(1015),TLR2包括用于连接逻辑交换机LS-C和LS-D(1021和1022)的TLR2-DR(1025),并且TLR3包括用于连接逻辑交换机LS-E和LS-F(1031和1032)的TLR3-DR(1035)。
在一些实施例中,DP配置数据库将用于不同逻辑实体的路由表、转发表、规则表等存储为配置数据。DP配置数据库提供连接标识(入口端口和出口端口)与网络逻辑实体标识之间的映射。数据通路守护程序又通过函数调用并遵循不同逻辑实体之间的连接映射执行用于不同租户的数据通路管道,其中逻辑实体中的一些与各种特定于租户的逻辑网络构造(例如,用于不同租户的TLR-LS或TLR-DR)对应。数据通路守护程序通过执行与各种提供商逻辑实体(例如,SR和PLR-DR)对应的管道阶段向所有租户提供公共网络服务。
图11图示了在网关机器1100处为不同租户执行网关分组处理的数据通路守护程序1105。数据通路守护程序1105是在网关机器1100的处理器核心1110上操作的处理线程。它脱离DP配置数据库1130操作。DP配置数据库1130存储如网络图1000中所示的数据中心的各种逻辑实体的配置数据(诸如路由表、转发表和规则表)。
如图所示,DP配置数据库1130包括用于网络的每个逻辑实体/实体(逻辑路由器和逻辑交换机1001-1099)的配置数据,其包括特定于租户的实体(例如,TLR)以及由所有租户共享的提供商实体(例如,PLR)。图12图示了通过调用与各种逻辑实体对应的管道阶段来处理分组的数据通路守护程序1105。
分组1211-1216是通过网关1100的上行链路从外部网络进入数据中心的南向分组。分组1211-1216去往属于不同租户的VM:分组1211和1212去往租户1的逻辑网络,分组1213和1214去往租户2的逻辑网络,并且分组1215和1216去往租户3的逻辑网络。由于分组1211-1216来自外部网络,因此它们是没有被封装的VLAN分组。
用于不同租户的分组具有不同的目的地IP或MAC地址,并且数据通路守护程序相应地识别和执行与不同租户对应的不同管道阶段(例如,对不同网络逻辑实体的函数调用)。数据通路守护程序最初调用PLR阶段PLR-SR1、PLR-TLS、PLR-DR,其基于分组的目的地地址将分组路由到它们对应的TLS。这些TLS又将分组交换到其对应的特定于租户的TLR。
例如,分组1211是去往逻辑交换机LS-A后面的VM的租户1分组。数据通路守护程序1105因此执行与以下逻辑实体对应的管道阶段:PLR-SR1、PLR-TLS、PLR-DR、TLS1、TLR1-DR和LS-A。分组1214是去往逻辑交换机LS-D后面的VM的租户2分组。数据通路守护程序1105相应地执行管道阶段PLR-SR1、PLR-TLS、PLR-DR、TLS2、TLR2-DR和LS-D。分组1215是去往逻辑交换机LS-E后面的VM的租户3分组。数据通路守护程序1105相应地执行管道阶段PLR-SR1、PLR-TLS、PLR-DR、TLS3、TLR3-DR和LS-E。
在这些逻辑实体中,PLR-SR1、PLR-TLS和PLR-DR是所有租户共有的提供商构造。TLS1、TLR1-DR和LS-A是用于租户1的特定于租户的构造。TLS2、TLR2-DR和LS-D是用于租户2的特定于租户的构造。TLS3、TLR2-DR和LS-E是用于租户3的特定于租户的构造。这些阶段中的每个阶段具有由DP配置数据库提供的用于路由分组、识别下一跳、提供服务等的对应配置数据。在一些实施例中,特定于租户的逻辑网络构造使用特定于租户的转发表、路由表、规则表和其它特定于租户的配置数据。
由于分组1211-1216的目的地是数据中心中其它地方的VM,因此网关通过封装覆盖网络将这些分组隧道传送到它们对应的目的地主机机器。具体而言,分组1211-1216根据其对应的租户逻辑网络进行封装并作为封装分组1221-1226发送。
分组1231-1236是通过网关1100退出数据中心到外部网络的北向分组。这些分组1231-1236被封装在提供商覆盖下,因为它们已经被路由到在其对应的源主机机器处的PLR-TLS。它们通过提供商覆盖封装隧道传送到网关,并且网关1100调用PLR-TLS和PLR-SR1以在通过上行链路将其作为VLAN分组发送到外部网络之前提供必要的服务。
虽然未图示,但是在一些实施例中,不同租户的分组针对不同的覆盖网络被不同地封装,并且数据通路守护程序使用封装中特定于租户的信息来识别和执行与不同租户对应的不同管道阶段。
c.服务提供管道阶段
在一些实施例中,除了执行L3路由和L2路由管道阶段之外,网关数据通路守护程序还执行用于L4至L7处理的服务提供阶段。这些服务支持源应用和目的地应用之间的端对端通信,并在每当消息从用户传递或被传递给用户时使用。数据通路守护程序将这些服务应用于边缘网关的有利位置处的分组,而无需改变在分组的源或目的地处运行的应用。在一些实施例中,数据通路可以包括用于流量过滤服务(诸如防火墙)、地址映射服务(诸如NAT)、加密和安全服务(诸如IPSec和HTTPS)的服务阶段。
在一些实施例中,当数据通路守护程序正在执行服务路由器管道阶段时,执行这些服务提供阶段中的一些或全部。此外,在一些实施例中,数据通路守护程序可以针对不同的分组执行不同的服务提供管道阶段。在一些实施例中,数据通路守护程序基于分组所属的L4流以及流的状态来执行不同的服务提供阶段。在一些实施例中,数据通路守护程序基于分组所属的租户执行不同的服务提供阶段。
图13图示了执行用于不同租户的服务提供管道阶段的网关数据通路守护程序。数据通路守护程序1305是在网关机器1300的处理器核心1310上操作的处理线程。它脱离DP配置数据库1330操作,DP配置数据库1330为各种数据通路管道阶段提供配置数据和连接映射。这些管道阶段中的一些是服务的服务提供阶段,诸如防火墙、NAT和HTTPS。数据通路守护程序根据逻辑路由器的配置数据、L3路由的结果和/或分组的内容,其可以指示分组属于的哪个L4流和/或哪个租户,来决定要执行哪个服务阶段。
数据通路守护程序在集中式路由(1321)之后和在管道的转接逻辑交换机(1322)、分布式路由器(1323)和逻辑交换机(1324)阶段之前执行这些服务提供阶段。在一些实施例中,这些服务提供阶段被认为是服务路由器(SR)管道阶段的一部分。在一些实施例中,服务提供阶段中的一些用于提供有状态服务并且因此是在一个网关机器处操作的集中式或集中的逻辑实体。在一些实施例中,L4服务阶段通过维持每个L4连接的状态来提供有状态的服务。
该图图示了针对不同分组1371-1373执行不同分组服务提供阶段的数据守护程序1305。这些分组可能属于不同的租户或不同的L4流,或属于不同状态下的同一个L4流。如图所示,当处理分组1371时,数据通路守护程序执行分别提供防火墙、NAT、IPSec和HTTPS服务的服务阶段1311、1312和1314。当处理分组1372时,数据通路守护程序仅执行防火墙服务阶段(1311)。当处理分组1373时,数据通路执行NAT和HTTPS服务阶段(1312和1314)。
图14概念性地图示了用于在逻辑路由器(例如,服务路由器)内提供服务的过程1400。在一些实施例中,执行数据通路守护程序的核心在其执行针对与服务路由器对应的管道阶段的函数调用时执行过程1400。该过程在它接收(在1400处)分组和作为入口端口的逻辑端口的标识时开始。如上面参考图5和图6所讨论的,在一些实施例中,DP配置数据库提供必要的映射,该映射允许数据通路守护程序在被提供了逻辑端口的标识时识别对应的逻辑实体。该过程然后访问(在1420处)识别出的逻辑实体的配置数据。如所提到的,诸如服务路由器的逻辑实体的配置数据可以包括其路由表以及要由服务路由器提供的服务的规范。
该过程然后执行(在1430处)分组的路由(因为这是服务路由器阶段)。在一些实施例中,这种路由是基于分组的源或目的地地址或入口端口的标识。该过程然后根据逻辑实体的配置数据来识别(在1440处)网络服务。在一些实施例中,服务路由器可以属于不同的租户逻辑网络,其可以具有不同的策略和需要不同的服务。因此,DP配置数据库将为不同租户逻辑路由器指定不同的服务,并且这些不同租户逻辑路由器的服务路由器将执行不同的服务。
然后该过程执行(在1450处)如由识别出的服务(例如,NAT、防火墙、HTTPS等)指定的操作。在一些实施例中,这些操作也基于分组的当前内容(例如,目的地IP地址),其可能已被过程执行的先前服务更改。
在1460处,该过程确定DP配置数据库是否为该服务路由器指定了另一个服务。如果是,则该过程返回到1440以执行另一个服务。否则,该过程进行到1470以识别出口端口并输出下一跳的分组。过程1400然后结束。
II.用于数据通路管道的高速缓存
在一些实施例中,网关不是对所有分组执行管道化阶段,而是高速缓存先前分组操作的结果并将结果重新应用于符合某些标准(即,高速缓存命中)的后续分组。对于不具有来自先前分组处理操作的适用或有效结果的分组,即,高速缓存未命中,网关数据通路守护程序执行管道化分组处理阶段。在一些实施例中,当数据通路守护程序执行管道化阶段来处理分组时,它记录来自管道的每个阶段的一组数据并将这些数据合成到用于后续分组的高速缓存条目中。
在一些实施例中,每个高速缓存条目与L4流/连接对应(例如,具有相同的源IP、目的地IP、源端口、目的地端口和传输协议的五元组)。换句话说,数据通路守护程序通过识别分组流来确定分组是否具有适用的高速缓存条目。因此,在这些实施例中的一些实施例中,数据通路高速缓存也被称为流高速缓存。
图15a-b图示了维护高速缓存以加速分组处理的数据通路守护程序。如图所示,在处理器的核心上运行的数据通路守护程序1510正在处理来自NIC 1590的分组1570。数据通路守护程序1510是处理器线程,其可以通过执行如部分I中所描述的数据通路管道1520的阶段或者通过应用来自数据通路高速缓存1530的条目来处理分组1570。数据通路守护程序使用存储在数据通路配置数据库1540中的配置数据来配置和执行其管道化阶段。
图15a图示了当传入分组1570是高速缓存命中时的分组处理。如图所示,数据通路守护程序能够在数据通路高速缓存1530中为传入分组1570找到有效的匹配条目(例如,具有相同的流标识符)。守护程序1510又使用高速缓存中的匹配条目来直接指定关于分组应当采取的动作,例如,指定分组的下一跳、解析IP地址、拒绝分组、转换分组报头中的IP地址、加密/解密分组等。没有任何管道阶段被执行(即,数据通路守护程序不执行任何管道阶段)。
图15b图示了当传入分组1570是高速缓存未命中时的分组处理。如所示出的,分组1570在数据通路高速缓存1530中不具有用于分组1570的有效匹配条目。数据通路守护程序1510因此执行数据通路管道的阶段(即,如以上第I部分中所述,通过执行函数调用并且应用逻辑实体的配置数据)。由于数据通路执行数据通路管道的阶段,因此数据通路管道的每个阶段产生一组用于合成数据通路高速缓存中的高速缓存条目的信息。该新的高速缓存条目(或更新后的高速缓存条目)将适用于属于与分组1570相同的分组类别(例如,属于相同的L4流)的后续分组。
图16图示了数据通路高速缓存的高速缓存条目的合成。如所示出的,分组1570已导致高速缓存未命中并且数据通路守护程序1510在执行数据通路管道1520的阶段。当数据通路管道正在被执行时,执行的阶段中的一些或全部发出将由合成器1610用来合成高速缓存条目1620的数据或指令。在一些实施例中,由管道阶段发出的高速缓存条目合成指令或数据包括以下:高速缓存启用字段1631、位掩码字段1632和动作字段1633。
高速缓存启用字段1631指定是否创建高速缓存条目。在一些实施例中,管道阶段可以确定分组处理的结果不应该用作将来分组的高速缓存条目,即,只有分组1570应该以这种方式进行处理,并且将来的分组不应该重用分组1570的处理结果。在一些实施例中,即使所有其它管道阶段指示启用高速缓存条目的创建是可以的,指定不应该创建高速缓存条目的一个管道阶段也将防止合成器1610创建高速缓存条目。
位掩码字段1632定义管道阶段实际使用分组报头的哪个部分来确定关于分组要采取的动作。一些实施例仅向内部报头(IP报头和MAC报头)而不是外部报头(即,诸如VXLAN的覆盖封装的报头)中的字段应用位掩码。在其中高速缓存条目是基于流的一些实施例中,位掩码字段1632用于创建适用于多个流的高速缓存条目,即,通过将内部报头中的某些位字段设置为“不关心”。
动作字段1633指定关于分组管道阶段已经采取了什么动作。
合成器1620收集来自所有管道阶段的所有高速缓存条目合成指令,并且从所有接收到的指令合成流高速缓存中的条目1620(除非一个或多个管道阶段指定不应该生成高速缓存条目)。合成的高速缓存条目为满足某些标准(即,属于某些L4流)的分组指定最终动作。当生成高速缓存条目1620时,合成器在一些实施例中还包括指定高速缓存条目被创建的时间的时间戳。这个时间戳将用于确定高速缓存条目是否对后续分组有效。
在一些实施例中,合成器1610创建适用于多个L4流或“巨流”的聚合高速缓存条目。在一些实施例中,这些是其匹配标准具有被掩蔽的某些位或字段(即,被认为“不关心”)的条目。在一些实施例中,合成器基于从执行的管道阶段接收到的位掩码字段1633创建巨流条目。合成器1610还创建其匹配标准被完全指定为仅适用于一个流或“微流”的精确匹配条目。
图17图示了聚合高速缓存条目和精确匹配高速缓存条目的示例合成。数据通路1520通过其阶段1521-1523处理分组1700,并且每个阶段为高速缓存条目合成器1610产生一组高速缓存合成指令。高速缓存条目合成器1610又创建用于数据通路高速缓存1530的聚合高速缓存条目1751和精确匹配高速缓存条目1752。
如图所示,完全匹配条目1752将所有字段完全指定为其匹配标准。这些字段完全匹配分组1700的字段(例如,其报头中的5元组流标识符)。另一方面,聚合条目1751在其匹配标准中仅指定其一些字段,同时掩蔽一些其它字段。分组1700将匹配这些匹配标准,但是在这些对应字段中可能具有不同值的其它分组也将可能匹配这些匹配标准。在一些实施例中,在聚合条目的匹配标准中掩蔽了哪些字段/位由各个数据通路阶段产生的位掩码字段(例如,1632)来确定。
每个高速缓存条目还指定关于与高速缓存条目匹配的每个分组要采取的最终动作。在一些实施例中,这些动作包括在分组被输出时影响分组的所有动作。在图17的示例中,阶段1521、1522和1523分别指定动作(1)、动作(2)和动作(3)。动作(1)和(3)影响分组,但不影响动作(2),因此只有动作(1)和(3)成为合成高速缓存条目1751和1752的一部分。例如,更新寄存器以指示分组处理阶段的动作不影响输出分组,并且因此不包括在高速缓存的流条目中,而修改报头值(例如,作为L3路由操作的一部分修改MAC地址)的动作被包括在内。如果第一动作将MAC地址从第一值修改为第二值,并且随后的动作将MAC地址从第二值修改为第三值,那么一些实施例指定将MAC地址直接修改为高速缓存的流条目中的第三值。
在一些实施例中,由一个阶段指定的动作将覆盖所有其它阶段。图18图示了指定覆盖所有其它动作的动作的数据通路阶段的示例。该图图示了由数据通路1520处理的两个示例分组1871和1872。
如图所示,当数据通路1520处理分组1871和1872时,其每个阶段指定某些动作。对于分组1871,所指定的动作包括由阶段1523“拒绝分组”。该动作将覆盖所有其它动作,并且由这个分组1871创建的高速缓存条目将仅执行动作“拒绝分组”。对于分组1872,阶段1522指定禁用高速缓存(高速缓存启用=0)。如上所述,在一些实施例中,数据通路的每个阶段可以(例如,通过其高速缓存启用位)指定不为给定分组创建高速缓存条目,而不管数据通路中的其它阶段已经指定了什么。因此,高速缓存条目合成器1610(未示出)不为分组1872创建高速缓存条目。
图19图示了检查数据通路高速缓存的条目以确定是否存在高速缓存未命中或高速缓存命中。如图所示,数据通路守护程序(在匹配函数1910处)将分组1570的某些字段(例如,流识别字段)与高速缓存1530中的条目进行比较,以查找适用于分组1570的高速缓存条目。如果匹配函数1910不能找到匹配的高速缓存条目,则数据通路守护程序将作为高速缓存未命中进行。
如图所示,每个条目还与时间戳相关联,从而标记高速缓存条目(由合成器1610)创建并存储到数据高速缓存中的时间。一些实施例(通过比较函数1920)将匹配高速缓存条目的时间戳与DP配置数据库1540的时间戳进行比较,以便确定高速缓存条目是否仍然有效。(在一些实施例中,该时间戳记录了数据库中的数据最后由网络控制器或管理器更新的时间,DP配置数据库的更新将在下面的部分III中描述)。具体而言,如果DP配置数据库1540自从创建高速缓存条目以来未被更改,即,DP配置数据库的时间戳在匹配条目的时间戳之前,则高速缓存条目仍然有效,并且数据通路守护程序将作为高速缓存命中进行。相反,如果DP配置数据库1540自从创建高速缓存条目以来已被更改,即,DP配置数据库的时间戳在匹配条目的时间戳之后,则高速缓存条目被视为不再有效,并且数据通路守护程序将作为高速缓存未命中进行。
图20概念性地图示了用于操作数据通路高速缓存的过程2000。在一些实施例中,操作作为数据通路守护程序的线程的处理器核心执行过程2000。过程2000在它或者从外部物理网络或者从数据中心接收(在2010处)分组时开始。然后该过程确定(在2020处)分组是否在数据通路高速缓存中具有匹配的条目。如果是,则过程进行到2025。如果分组在数据通路高速缓存中没有匹配的条目,则过程进行到2030。
在2025处,该过程确定匹配的高速缓存条目是否仍然有效,例如,其时间戳是否指示高速缓存条目是在对DP配置数据库的最近更新之后做出的。高速缓存条目有效性的确定通过参考以上图19来描述。如果匹配的高速缓存条目有效,则该过程进行到2060。否则,该过程进行到2030。
在2030处,该过程指示分组已导致高速缓存未命中并通过执行其阶段来启动数据通路管道。该过程然后基于由数据通路管道的阶段产生的数据或指令来合成(在2040处)高速缓存条目。高速缓存条目的合成通过参考以上图16来描述。该过程然后存储(在2050处)合成的高速缓存条目并将条目与当前时间戳相关联。过程2000然后结束。
在2060处,该过程指示高速缓存命中并根据匹配的高速缓存条目执行动作。过程2000然后结束。
III.数据通路配置更新
如上所述,数据通路守护程序的管道阶段使用DP配置数据库中的配置数据作为转发表、路由表、规则表等。由于这些表包含关于在网关处关于分组应该采取哪些动作的实时信息,因此,即使在数据通路守护程序主动访问DP配置数据库时,一些实施例也动态地更新DP配置数据库。为了确保数据通路守护程序在DP配置数据库被更新时不使用其管道阶段的不完整的(并因此损坏的)配置数据,一些实施例维护DP配置数据库的两个副本。数据库的一个副本用作用于来自网络控制器/管理器的新更新的暂存区,使得数据通路守护程序可以安全地使用数据库的其它副本。一旦更新完成,两个数据库副本的角色将以原子方式反转。在一些实施例中,网络控制器在切换之前等待数据通路守护程序完成其当前的运行至完成分组处理管道阶段。
图21图示了具有以原子方式支持更新的DP配置数据库2110的网关2100。如图所示,网关2100具有一组处理器核心2121-2123,每个核心正在操作使用DP配置数据库2110中的配置数据来执行与逻辑实体对应的管道阶段的数据通路守护程序。网络控制器/管理器2190在内核正在主动使用数据库的同时动态地更新存储在DP配置数据库内的配置数据。
如图所示,DP配置数据库2110具有两个副本:奇数副本2111和偶数副本2112(“DP配置奇数”和“DP配置偶数”)。数据库的每个副本都存储完整的配置数据,以便在核心2121-2123处操作数据通路守护程序。在一些实施例中,两个不同副本被存储在两个不同的物理存储装置中。在一些实施例中,两个副本被存储在相同存储装置的不同位置中。
在对DP配置数据库2110进行更新时,网络控制器2190使用写指针2195来选择要写入到奇数副本还是偶数副本。当执行管道阶段时,核心2121-2123分别使用读指针2131-2133来选择要读取的是奇数副本还是偶数副本。网络控制器2190选择并更新DP配置数据库的一个副本,而核心2121-2123各自选择并使用DP配置数据库的另一个副本。
图22a-b图示了数据通路配置数据库2110的原子更新。该图图示了六个阶段2201-2206中的更新过程。
在第一阶段2201处,所有读指针2131-2133都指向奇数副本2111,并且写指针2195指向偶数副本2112。此外,所有核心2121-2123正在分别读取来自奇数副本2111的配置数据和执行用于处理分组2271-2273的分组处理管道。网络控制器2190正在写入到偶数副本2112中。偶数副本2112中的数据因此是不完整的或者被损坏的,但是核心2121和2123中的数据通路守护程序与这隔离开,因为它们正脱离奇数副本2111操作。
在第二阶段2202处,网络控制器已经完成对DP配置数据库的更新,即,它已经完成写入到偶数副本2112中。该更新的数据库与时间戳2252相关联(如以上部分II中所述,用于确定高速缓存条目有效性)。与此同时,所有核心仍处于其各自的运行至完成管道的中间。
在第三阶段2203处,核心2121已完成其对分组2271的先前运行至完成管道。读指针2131然后在核心2121开始处理另一个分组之前切换至偶数副本2112。换句话说,核心2121的数据通路守护程序将对其下一个分组使用更新后的配置数据。通过使用数据库的奇数副本,其它两个核心2122和2123仍处于其当前的运行至完成管道中。
在第四阶段2204处,核心2122也已完成其对分组2272的分组处理管道,并且其对应的读指针已切换到偶数副本2112。同时,核心2121已经通过使用偶数副本2112中更新后的新数据开始处理另一个分组2274。核心2123仍然通过使用奇数副本2111处的旧配置来处理分组2273。
在第五阶段2205处,核心2123也已完成其对分组2273的分组处理管道并且其对应的读指针2133已经切换到偶数副本2112。核心2122已经开始处理分组2275。在此时,没有数据通路守护程序正在使用奇数副本2111中的旧配置数据来处理分组。由于在偶数副本2112中已经存在新的更多更新版本的DP配置数据库,因此奇数副本2111中的旧数据不再有用。因此,一些实施例重置DP配置数据库的奇数副本2111以指示其中的数据不再有效,并且网络控制器可自由地向其写入新的配置数据。
在第六阶段处,写指针2195已经切换到数据库的奇数副本,而核心2121-2123正在使用存储在偶数副本2112中的配置数据来处理分组2274-2276。这允许进行对DP配置数据库的更新,而不会影响任何数据通路守护程序的操作。
图23概念性地图示了控制DP配置数据库的读指针和写指针的过程2301和2302。在一些实施例中,网关机器执行过程2301和2302两者。
过程2301用于控制写指针以便由网络控制器写入到DP配置数据库中。过程2301在网关机器从网络控制器/管理器接收(在2310处)对DP配置数据库的更新数据时开始。然后该过程确定(在2320处)由写指针指向的数据库的副本是否当前正在被运行数据通路守护程序的任何核心读取。如果是,则该过程返回到2320等待,直到数据库的副本不再被任何数据通路守护程序使用。否则,该过程进行到2330。一些实施例通过检查由数据通路守护程序使用的读指针来做出该确定:当读指针当前都没有指向由写指针指向的数据库的副本时,由写指针指向的数据库的副本没有被使用(因此,对其写入是安全的)。
在2330处,该过程更新(在2330处)存储在由写指针指向的数据库的副本中的配置数据(例如,通过添加、删除、修改表条目等)。一旦更新完成,该过程就翻转(在2340处)写指针以指向数据库的另一个副本(如果是奇数副本则翻转为指向偶数副本,反之亦然)。过程2301然后结束。
过程2302用于控制由核心/数据通路守护程序使用的读指针以便从DP配置数据库中读取。过程2300在数据通路守护程序接收(在2350处)要处理的分组并启动数据通路管道时开始。
然后该过程读取(在2360处)并应用存储在由数据通路守护程序的读指针指向的数据库的副本中的配置数据。该过程还通过管道的所有阶段(运行至完成)处理(在2370处)分组至完成。过程2301的操作确保应用的配置数据将不会由于对数据通路配置数据库的任何更新而被损坏。
接下来,该过程确定(在2375处)数据库的其它副本是否具有更新后的配置数据。如果数据库的另一个副本不具有较新版本的配置数据,则过程2302结束。如果数据库的另一个副本确实具有较新版本的配置数据,则该过程翻转(在2380处)读指针以指向数据库的另一个副本。过程2302然后结束。
IV.软件体系架构
图24图示了根据本发明的一些实施例的网关机器2400的体系架构。网关机器的存储器使用被划分为用户空间和内核空间。内核空间被保留用于运行特权操作系统内核、内核扩展和大多数设备驱动程序。用户空间是应用软件和一些驱动程序在其中执行的存储器区域。
如图所示,分组处理线程2410(即,数据通路守护程序)正在用户空间中操作以便处理L2交换、L3路由以及诸如防火墙、NAT和HTTPS的服务。诸如ARP(地址解析请求)学习、BFD(双向转发检测)的其它服务任务被认为是较慢运行并因此由用户空间中的单独过程2420进行处理。这些较慢的任务不由数据通路守护程序处理,并且不是数据通路管道的一部分。分组处理线程2410依赖于用于从NIC接收分组的一组DPDK库2430(由
Figure BDA0002895187730000353
开发的
Figure BDA0002895187730000354
Figure BDA0002895187730000355
)。在一些实施例中,NIC操作依赖于使用轮询模式来接收分组的用户空间NIC驱动程序。
在内核空间中,操作系统内核2440(例如,Linux)操作TCP/IP栈并处理用于与外部网络交换路由信息的BGP栈(边界网关协议)。一些实施例使用KNI(内核NIC接口)来允许用户空间应用访问内核空间栈。
如上所述,一些实施例中的网关机器通过使用具有多个核心的处理器来实现,并且每个数据通路守护程序在一个核心处的RTC(运行至完成)线程中执行其所有管道阶段。在一些实施例中,数据通路守护程序可以插入由在另一个核心处的另一个线程执行的服务进程执行的服务管道阶段。
在一些实施例中,这些服务进程使用某种形式的进程间通信(IPC)(诸如共享存储器或套接字)与RTC线程通信。RTC线程接收来自NIC的分组、执行常规L2/L3转发、并对分组进行分类以确定分组是否需要服务。当分组需要服务时,分组经由IPC通道发送到对应的服务进程。IPC服务进程使分组出列并处理分组。在处理分组之后,服务进程将其传回给RTC线程,RTC线程继续处理分组(并且可能将分组发送到用于其它服务的另一个服务进程)。有效地,RTC线程用于提供基本转发并在服务进程之间引导分组。图25a概念性地图示了使用IPC与服务进程通信以便提供服务的RTC线程。
在一些其它实施例中,服务进程在容器内运行并且不使用IPC来与RTC线程通信并且实际上不知道RTC线程。该进程打开标准的TCP/UDP套接字来发送分组和接收来自Linux内核的分组。不是使用IPC在服务进程和RTC线程之间进行通信,而是在容器内创建tun/tap设备或KNI设备。容器的路由表被正确填充,使得由服务进程发送的分组可以使用正确的tun/tap/KNI设备进行路由。
当RTC线程确定分组需要服务时,它将分组发送到Linux内核。在接收到分组之后,Linux内核就像分组从NIC接收到一样处理它。最终,分组被交付给服务进程。当服务进程完成对分组的处理之后,它将分组发送到套接字。分组将由Linux内核朝着tun/tap/KNI设备之一进行路由,并将由RTC线程接收。图25b概念上图示了使用Linux内核与服务进程通信以便提供服务的RTC线程。
V.计算设备&虚拟化软件
虚拟化软件(也称为受管理转发元件(MFE)或管理程序)允许计算设备托管一组虚拟机(VM)以及执行分组转发操作(包括L2交换和L3路由操作)。这些计算设备因此也被称为主机机器。虚拟化软件的分组转发操作由一组中央控制器管理和控制,并且因此在一些实施例中,虚拟化软件也被称为受管理软件转发元件(MSFE)。在一些实施例中,当主机机器的虚拟化软件将逻辑转发元件的本地实例化作为物理转发元件操作时,MSFE为一个或多个逻辑转发元件执行其分组转发操作。这些物理转发元件中的一些是用于为逻辑路由元件(LRE)执行L3路由操作的受管理物理路由元件(MPRE),这些物理转发元件中的一些是用于为逻辑交换元件(LSE)执行L2交换操作的受管理物理交换元件(MPSE)。图26图示了计算设备2600,其用作运行本发明的一些实施例的虚拟化软件的主机机器(或主机物理端点)。
如图所示,计算设备2600可以通过物理NIC(PNIC)2695访问物理网络2690。主机2600还运行虚拟化软件2605并且托管VM2611-2614。虚拟化软件2605用作托管的VM和物理NIC 2695(以及其它物理资源,诸如处理器和存储器)之间的接口。VM中的每一个包括用于通过虚拟化软件2605访问网络的虚拟NIC(VNIC)。VM中的每个VNIC负责在VM和虚拟化软件2605之间交换分组。在一些实施例中,VNIC是由虚拟NIC仿真器实现的物理NIC的软件抽象。
虚拟化软件2605管理VM 2611-2614的操作,并且包括用于管理VM对物理网络的访问(在一些实施例中,通过实现VM连接到的逻辑网络)的若干组件。如图所示,虚拟化软件包括若干组件,包括MPSE 2620、一组MPRE 2630、控制器代理2640、VTEP 2650和一组上行链路管道2670。
VTEP(VXLAN隧道端点)2650允许主机机器2600用作逻辑网络流量(例如,VXLAN流量)的隧道端点。VXLAN是覆盖层网络封装协议。由VXLAN封装创建的覆盖层网络有时被称为VXLAN网络,或者简称为VXLAN。当主机2600上的VM向同一VXLAN网络中但在不同主机上的另一个VM发送分组(例如,以太网帧)时,VTEP将在把分组发送到物理网络之前,使用VXLAN网络的VNI和VTEP的网络地址封装数据分组。分组通过物理网络隧道传送(即,封装使得底层分组对中间网络元件透明)到目的地主机。在目的地主机处VTEP对分组进行解封装,并且只将原始内部数据分组转发到目的地VM。在一些实施例中,VTEP模块只用作用于VXLAN封装的控制器接口,而VXLAN分组的封装和解封装在上行链路模块2670处完成。
控制器代理2640从控制器或控制器集群接收控制平面消息。在一些实施例中,这些控制平面消息包括用于配置虚拟化软件的各种组件(诸如MPSE 2620和MPRE 2630)和/或虚拟机的配置数据。在图26所示的示例中,控制器代理2640从物理网络2690接收来自控制器集群2660的控制平面消息,并且继而通过控制信道而不经过MPSE 2620将接收到的配置数据提供给MPRE 2630。但是,在一些实施例中,控制器代理2640从独立于物理网络2690的直接数据管道(未示出)接收控制平面消息。在一些其它实施例中,控制器代理从MPSE 2620接收控制平面消息,并通过MPSE 2620将配置数据转发给路由器2630。
MPSE 2620向与物理网络2690接口的物理NIC 2695递送网络数据并从物理NIC2695接收网络数据。MPSE还包括可通信地将物理NIC与VM 2611-2614、MPRE 2630和控制器代理2640互连的多个虚拟端口(vPort)。在一些实施例中,每个虚拟端口与唯一的L2MAC地址相关联。MPSE在连接到其虚拟端口的任何两个网络元件之间执行L2链路层分组转发。MPSE还在连接到其虚拟端口中的任何一个的任何网络元件与物理网络2690上的可到达的L2网络元件(例如,在另一个主机上运行的另一个VM)之间执行L2链路层分组转发。在一些实施例中,MPSE是跨不同主机机器操作并且可以在同一主机机器上或不同主机机器上的VM之间执行L2分组交换的逻辑交换元件(LSE)的本地实例化。在一些实施例中,MPSE根据那些逻辑交换机的配置执行若干LSE的交换功能。
MPRE 2630对从MPSE 2620上的虚拟端口接收到的数据分组执行L3路由。在一些实施例中,该路由操作需要将L3 IP地址解析为下一跳L2 MAC地址和下一跳VNI(即,下一跳的L2段的VNI)。每个路由的数据分组然后被发送回MPSE 2620以根据解析的L2MAC地址被转发到其目的地。该目的地可以是连接到MPSE 2620上的虚拟端口的另一个VM或物理网络2690上的可到达的L2网络元件(例如,在另一个主机上运行的另一个VM、物理非虚拟化机器等)。
如上所述,在一些实施例中,MPRE是跨不同主机机器操作并且可以在同一主机机器上或不同主机机器上的VM之间执行L3分组转发的逻辑路由元件(LRE)的本地实例化,。在一些实施例中,主机机器可以具有连接到单个MPSE的多个MPRE,其中主机机器中的每个MPRE实现不同的LRE。在一些实施例中,即使MPRE和MPSE用软件实现,MPRE和MPSE也被称为“物理”路由/交换元件,以便与“逻辑”路由/交换元件区分开。在一些实施例中,MPRE被称为“软件路由器”,并且MPSE被称为“软件交换机”。在一些实施例中,LRE和LSE被统称为逻辑转发元件(LFE),而MPRE和MPSE被统称为受管理的物理转发元件(MPFE)。贯穿本文档提到的一些逻辑资源(LR)是LRE或LSE,它们具有在每个主机机器中运行的对应的本地MPRE或本地MPSE。
在一些实施例中,MPRE 2630包括一个或多个逻辑接口(LIF),每个逻辑接口用作到网络的特定段(L2段或VXLAN)的接口。在一些实施例中,每个LIF可通过其自己的IP地址寻址,并用作网络的其特定段的网络节点(例如,VM)的默认网关或ARP代理。在一些实施例中,不同主机机器中的所有MPRE都可通过相同的“虚拟”MAC地址(或vMAC)寻址,而每个MPRE也被分配“物理”MAC地址(或pMAC)以便指示MPRE到底在哪个主机机器中操作。
上行链路模块2670在MPSE 2620和物理NIC 2695之间中继数据。上行链路模块2670包括每个执行多个操作的出口链和入口链。这些操作中的一些操作是用于MPRE 2630的预处理和/或后处理操作。LIF、上行链路模块、MPSE和MPRE的操作在于2013年12月20日提交的标题为“Logical Router”、作为美国专利申请公开2015/0106804公布的美国专利申请14/137,862中描述。
如图26所示,虚拟化软件2605具有用于多个不同LRE的多个MPRE。在多租户环境中,主机机器可以操作来自多个不同用户或租户(即,连接到不同逻辑网络)的虚拟机。在一些实施例中,每个用户或租户在用于处理其L3路由的主机中具有其LRE的对应的MPRE实例化。在一些实施例中,虽然不同的MPRE属于不同的租户,但是它们在MPSE 2620上共享相同的vPort,并且因此共享相同的L2 MAC地址(vMAC或pMAC)。在一些其它实施例中,属于不同租户的每个不同MPRE具有其自己到MPSE的端口。
MPSE 2620和MPRE 2630使数据分组有可能在VM 2611-2614之间转发,而无需通过外部物理网络2690发送(只要VM连接到相同的逻辑网络,因为不同租户的VM将彼此隔离)。具体而言,MPSE通过使用各种逻辑网络的各种L2段(即,它们对应的L2逻辑交换机)的VNI来执行本地逻辑交换机的功能。同样,MPRE通过使用那些各种L2段的VNI来执行逻辑路由器的功能。由于每个L2段/L2交换机具有其自己的唯一VNI,因此主机机器2600(及其虚拟化软件2605)能够将不同逻辑网络的分组引导到其正确的目的地,并且有效地将不同逻辑网络的流量彼此分离。
VI.电子系统
上述许多特征和应用被实现为软件过程,这些软件过程被指定为记录在计算机可读存储介质(也被称为计算机可读介质)上的指令集合。当这些指令被一个或多个处理单元(例如,一个或多个处理器、处理器核心、或其它处理单元)执行时,它们使得该(一个或多个)处理单元执行在指令中指示的动作。计算机可读介质的示例包括,但不限于,CD-ROM、闪存驱动器、RAM芯片、硬盘驱动器、EPROM等。计算机可读介质不包括无线地或通过有线连接传递的载波和电子信号。
在本说明书中,术语“软件”是指包括驻留在只读存储器中的固件或者可以被读入到存储器中以供处理器处理的存储在磁存储中的应用。此外,在一些实施例中,多个软件发明可以被实现为更大程序的子部分,同时保留明显的软件发明。在一些实施例中,多个软件发明也可以被实现为单独的程序。最后,一起实现本文所描述的软件发明的单独程序的任意组合在本发明的范围内。在一些实施例中,当软件程序被安装,以在一个或多个电子系统上操作时,软件程序定义运行和执行软件程序的操作的一个或多个特定的机器实现。
图27概念性地图示了实现本发明的一些实施例的电子系统2700。电子系统2700可以用于执行上述任何控制、虚拟化或操作系统应用。电子系统2700可以是计算机(例如,台式计算机、个人计算机、平板计算机、服务器计算机、大型机、刀片计算机等)、电话、PDA或任何其它类型的电子设备。这样的电子系统包括用于各种其它类型的计算机可读介质的各种类型的计算机可读介质和接口。电子系统2700包括总线2705、(一个或多个)处理单元2710、系统存储器2725、只读存储器2730、永久性存储设备2735、输入设备2740和输出设备2745。
总线2705统一地表示可通信地连接电子系统2700的许多内部设备的所有系统、外围设备和芯片组总线。例如,总线2705将(一个或多个)处理单元2710与只读存储器2730、系统存储器2725和永久性存储设备2735可通信地连接。
(一个或多个)处理单元2710从这些各种存储器单元中检索要执行的指令和要处理的数据,以便执行本发明的过程。(一个或多个)处理单元在不同实施例中可以是单个处理器或多核处理器。
只读存储器(ROM)2730存储由(一个或多个)处理单元2710和电子系统的其它模块所需的静态数据和指令。另一方面,永久性存储设备2735是读写存储器设备。这个设备是即使当电子系统2700关闭时也存储指令和数据的非易失性存储器单元。本发明的一些实施例使用大容量存储设备(诸如磁盘或光盘及其对应的盘驱动器)作为永久性存储设备2735。
其它实施例使用可移除存储设备(诸如软盘、闪存驱动器等)作为永久性存储设备。与永久性存储设备2735一样,系统存储器2725是读写存储器设备。但是,与存储设备2735不同的是,系统存储器是易失性读写存储器,诸如随机存取存储器。系统存储器存储处理器在运行时所需的一些指令和数据。在一些实施例中,本发明的过程被存储在系统存储器2725、永久性存储设备2735和/或只读存储器2730中。(一个或多个)处理单元2710从这些各种存储器单元中检索要执行的指令和要处理的数据,以便执行一些实施例的过程。
总线2705还连接到输入和输出设备2740和2745。输入设备使用户能够向电子系统传达信息和选择给电子系统的命令。输入设备2740包括字母数字键盘和定点设备(也称为“光标控制设备”)。输出设备2745显示由电子系统生成的图像。输出设备包括打印机和显示设备,诸如阴极射线管(CRT)或液晶显示器(LCD)。一些实施例包括用作输入和输出设备两者的设备,诸如触摸屏。
最后,如图27所示,总线2705还通过网络适配器(未示出)将电子系统2700耦合到网络2765。以这种方式,计算机可以是计算机的网络(诸如局域网(“LAN”)、广域网(“WAN”)、或内联网、或网络的网络,诸如互联网)的一部分。电子系统2700的任何或全部组件可以与本发明结合使用。
一些实施例包括电子组件,诸如微处理器、在机器可读或计算机可读介质(可替代地称为计算机可读存储介质、机器可读介质或机器可读存储介质)中存储计算机程序指令的存储设备和存储器。这种计算机可读介质的一些示例包括RAM、ROM、只读压缩盘(CD-ROM)、可记录压缩盘(CD-R)、可重写压缩盘(CD-RW)、只读数字多功能盘(例如,DVD-ROM,双层DVD-ROM)、各种可记录/可重写DVD(例如,DVD-RAM、DVD-RW、DVD+RW等)、闪存存储器(例如,SD卡、小型SD卡、微型SD卡等)、磁和/或固态硬盘驱动器、只读和可记录
Figure BDA0002895187730000431
盘、超密度光盘、任何其它光或磁介质、以及软盘。计算机可读介质可以存储可由至少一个处理单元执行的并且包括用于执行各种操作的指令集的计算机程序。计算机程序或计算机代码的示例包括诸如由编译器产生的机器代码,以及包括由计算机、电子组件、或利用解释器的微处理器执行的更高级代码的文件。
虽然以上讨论主要指执行软件的微处理器或多核处理器,但是一些实施例通过一个或多个集成电路来执行,诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA)。在一些实施例中,这种集成电路执行在该电路自身上存储的指令。
如在本说明书中所使用的,术语“计算机”、“服务器”、“处理器”、以及“存储器”都是指电子或其它技术设备。这些术语不包括人或人群。为了本说明书的目的,术语显示或正在显示意味着在电子设备上显示。如本说明书中所使用的,术语“计算机可读介质”、“多个计算机可读介质”和“机器可读介质”被完全限制为以由计算机可读的形式存储信息的、有形的、物理的对象。这些术语不包括任何无线信号、有线下载信号、以及任何其它短暂信号。
在本文档中,术语“分组”是指以特定格式跨网络发送的位集合。本领域普通技术人员将认识到的是,术语分组在本文可以用于指可以跨网络发送的各种格式化的位集合,诸如以太网帧、TCP段、UDP数据报、IP分组等。
贯穿本说明书提到包括虚拟机(VM)的计算和网络环境。但是,虚拟机只是数据计算节点(DCN)或数据计算端节点(也被称为可寻址节点)的一个示例。DCN可以包括非虚拟化物理主机、虚拟机、在主机操作系统之上运行而不需要管理程序或单独的操作系统的容器、以及管理程序内核网络接口模块。
在一些实施例中,VM使用由虚拟化软件(例如,管理程序、虚拟机监视器等)虚拟化的主机的资源与在主机上其自己的客户操作系统一起操作。租户(即VM的所有者)可以选择在客户操作系统之上要操作哪些应用。另一方面,一些容器是在主机操作系统之上运行而不需要管理程序或单独的客户操作系统的构造。在一些实施例中,主机操作系统使用名称空间来将容器彼此隔离,并因此提供在不同容器内操作的不同应用组的操作系统级分离。这种分离类似于在虚拟化系统硬件的管理程序虚拟化环境中提供的VM分离,并且因此可以被视为隔离在不同容器中操作的不同应用组的一种虚拟化形式。这种容器比VM更轻巧。
在一些实施例中,管理程序内核网络接口模块是包括具有管理程序内核网络接口和接收/传送线程的网络堆栈的非-VM DCN。管理程序内核网络接口模块的一个示例是作为VMware公司的ESXiTM管理程序的一部分的vmknic模块。
本领域普通技术人员将认识到的是,虽然本说明书提到VM,但是给出的示例可以是任何类型的DCN,包括物理主机、VM、非-VM容器和管理程序内核网络接口模块。事实上,在一些实施例中,示例网络可以包括不同类型的DCN的组合。
虽然本发明已经参考许多特定细节进行了描述,但是本领域普通技术人员将认识到,在不脱离本发明的精神的情况下,本发明可以以其它特定形式体现。此外,多个图(包括图5、图14、图20和图23)概念性地示出了过程。这些过程的特定操作可以不以所示出和描述的确切顺序执行。特定操作可以不在一系列连续的操作中执行,并且不同的特定操作可能在不同的实施例中执行。此外,过程可以利用若干子过程来实现,或者作为较大的宏过程的一部分来实现。因此,本领域普通技术人员将理解,本发明不受上述说明性细节的限制,而是由所附权利要求来限定。

Claims (30)

1.一种用于计算设备实现网关数据通路的方法,所述网关数据通路处理在第一网络和第二网络之间发送的分组,所述方法包括:
从第一网络接收分组;
执行多个管道阶段以处理所述分组并确定所述分组的下一目的地,其中所述多个管道阶段包括用于执行分组转发的一组逻辑转发元件阶段和用于执行传输层服务和应用层服务的一组服务阶段;以及
基于所述分组的下一目的地将经处理的分组输出到第二网络。
2.如权利要求1所述的方法,其中每个管道阶段是由网关数据通路调用的函数。
3.如权利要求1所述的方法,其中所述一组服务阶段基于所述分组的层4(L4)报头来执行传输层服务,并且基于所述分组的层7(L7)报头来执行应用层服务。
4.如权利要求1所述的方法,其中所述一组服务阶段包括用于维护一组传输层连接中每一个传输层连接的状态信息的有状态服务的阶段。
5.如权利要求1所述的方法,其中所述第一网络是提供商网络,在所述提供商网络上实现一个或多个逻辑网络,并且所述第二网络是外部物理网络。
6.如权利要求1所述的方法,其中所述一组逻辑转发元件阶段包括至少一个逻辑交换机阶段和至少一个逻辑路由器阶段。
7.如权利要求1所述的方法,其中所述分组是第一分组,所述多个管道阶段是第一多个管道阶段,并且所述一组服务阶段是第一组服务阶段,所述方法还包括:
从第一网络接收第二分组;
执行第二多个管道阶段以处理所述第二分组并确定所述第二分组的下一目的地,其中所述第二多个管道阶段包括所述一组逻辑转发元件阶段和第二组服务阶段,其中由所述第二组服务阶段执行的至少一个服务不由所述第一组服务阶段执行;以及
基于所述第二分组的下一目的地,将经处理的第二分组输出到所述第二网络。
8.如权利要求7所述的方法,其中基于所述第一和第二分组属于不同的L4数据流,所述第一和第二组服务阶段是不同的。
9.一种用于计算设备实现第一网络和第二网络之间的网关数据通路的方法,所述方法包括:
从第一网络接收分组;
执行所述网关数据通路的多个管道阶段以确定所述分组在所述第二网络内的下一目的地,其中所述多个管道阶段包括集中式逻辑路由器阶段和分布式逻辑路由器阶段,所述集中式逻辑路由器阶段和所述分布式逻辑路由器阶段两者都在所述计算设备的单个上下文中执行,其中所述集中式逻辑路由器仅由所述第一网络与所述第二网络之间的第一组计算设备处的网关数据通路实现,而所述分布式逻辑路由器由所述第一组计算设备的所述网关数据通路并且由所述第二网络中的第二组计算设备实现。
10.如权利要求9所述的方法,其中所述多个管道阶段在处理器处作为网关数据通路的单个运行至完成线程被执行。
11.如权利要求9所述的方法,其中:
所述多个管道阶段还包括在所述集中式逻辑路由器阶段与所述分布式逻辑路由器阶段之间的转接逻辑交换机阶段;
所述转接逻辑交换机具有用于所述集中式逻辑路由器的第一逻辑端口和用于所述分布式逻辑路由器的第二逻辑端口;
转接逻辑交换机阶段在集中式逻辑路由器和分布式逻辑路由器之间进行交换;以及
转接逻辑交换机阶段在所述计算设备的单个上下文中执行。
12.如权利要求9所述的方法,其中所述分布式逻辑路由器根据同一路由表在所述第一组和第二组计算设备的每一组中执行路由。
13.如权利要求9所述的方法,其中所述第二网络是提供商网络,在所述提供商网络上实现一个或多个逻辑网络,并且所述第一网络是外部物理网络。
14.如权利要求9所述的方法,还包括:
在所述计算设备处从所述第二网络接收第二分组;
执行所述网关数据通路的第二多个管道阶段以确定所述分组在所述第一网络中的下一目的地,其中所述第二多个管道阶段包括所述集中式逻辑路由器阶段但不包括所述分布式逻辑路由器阶段。
15.如权利要求14所述的方法,其中所述分布式逻辑路由器先前在另一计算设备处应用于所述第二分组。
16.一种用于在与外部物理网络接口的提供商网络的边缘处实现网关数据通路的方法,所述方法包括:
从所述提供商网络接收具有逻辑网络标识符的分组;
执行多个管道阶段以确定所述分组的下一目的地,其中执行多个管道阶段包括:(i)当所述逻辑网络标识符用于使用第一逻辑路由器的第一逻辑网络时,执行第一逻辑路由器阶段,以及(ii)当逻辑网络标识符用于使用第二逻辑路由器的第二逻辑网络时,执行第二逻辑路由器阶段;和
基于对接收到的分组的下一目的地的确定,将所述分组转发到外部物理网络。
17.如权利要求16所述的方法,其中所述第一逻辑路由器阶段使用第一路由表,并且所述第二逻辑路由器阶段使用不同的第二路由表。
18.如权利要求16所述的方法,其中所述分组是提供商网络上的覆盖逻辑网络的封装分组,所述封装分组具有包括所述逻辑网络标识符的封装报头。
19.如权利要求16所述的方法,其中所述第一逻辑路由器阶段对应于根据所述提供商网络的第一租户的服务和策略进行操作的第一租户逻辑路由器(TLR),并且所述第二逻辑路由器阶段对应于根据所述提供商网络的第二租户的服务和策略进行操作的第二TLR。
20.如权利要求19所述的方法,其中执行所述多个管道阶段还包括:不管所述逻辑网络标识符是用于所述第一逻辑网络还是用于所述第二逻辑网络,都执行与和外部物理路由器交换路由的提供商逻辑路由器(PLR)对应的一组阶段。
21.如权利要求20所述的方法,其中:
执行多个管道阶段还包括在第一或第二TLR阶段与PLR阶段之间执行转接逻辑交换机阶段;和
转接逻辑交换机具有用于PLR的第一逻辑端口和用于TLR的第二逻辑端口,以在PLR和TLR之间进行交换。
22.一种用于在与外部物理网络接口的提供商网络的边缘处实现网关数据通路的方法,所述方法包括:
从外部物理网络接收分组;
执行多个管道阶段以确定所述分组在提供商网络内的下一目的地,其中执行多个管道阶段包括:(i)当所述分组的目的地地址与包括第一逻辑路由器的第一租户逻辑网络相关联时,执行第一逻辑路由器阶段;以及(ii)当所述分组的目的地地址与包括第二逻辑路由器的第一租户逻辑网络相关联时执行第二逻辑路由器阶段;和
将所述分组转发到提供商网络内所识别的下一目的地。
23.如权利要求22所述的方法,还包括:当所述目的地地址与所述第一逻辑网络相关联时,针对所述第一逻辑网络封装处理后的分组;以及当所述目的地地址与所述第二逻辑网络相关联时,针对所述第二逻辑网络封装处理后的分组。
24.如权利要求22所述的方法,其中所述第一逻辑路由器阶段使用第一路由表,并且所述第二逻辑路由器阶段使用不同的第二路由表。
25.如权利要求22所述的方法,其中所述第一逻辑路由器阶段对应于根据所述提供商网络的第一租户的服务和策略进行操作的第一租户逻辑路由器(TLR),并且所述第二逻辑路由器阶段对应于根据提供商网络的第二租户的服务和策略进行操作的第二TLR。
26.如权利要求25所述的方法,其中执行多个管道阶段还包括:不管所述目的地地址是与所述第一逻辑网络相关联还是与所述第二逻辑网络相关联,都在执行第一或第二TLR阶段之前执行与提供商逻辑路由器(PLR)对应的一组阶段。
27.如权利要求22所述的方法,其中:
执行多个管道阶段还包括在PLR阶段与第一或第二TLR阶段之间执行转接逻辑交换机阶段;
转接逻辑交换机具有用于PLR的第一逻辑端口和用于第一或第二TLR的第二逻辑端口。
28.一种存储程序的机器可读介质,所述程序在由至少一个处理单元实施时实施如权利要求1-27中任一项所述的方法。
29.一种计算设备,包括:
一组处理单元;和
存储程序的机器可读介质,所述程序在由至少一个所述处理单元实施时实施如权利要求1-27中任一项所述的方法。
30.一种系统,包括用于实施如权利要求1-27中任一项所述的方法的装置。
CN202110039636.7A 2015-01-30 2016-10-29 边缘网关处的动态数据通路 Pending CN112769695A (zh)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US201562110061P 2015-01-30 2015-01-30
US14/929,431 US10341257B2 (en) 2015-01-30 2015-11-02 Datapath for multiple tenants
US14/929,427 US9973445B2 (en) 2015-01-30 2015-11-02 Datapath with service stages
US14/929,434 US10110514B2 (en) 2015-01-30 2015-11-02 Datapath cache
US14/929,425 2015-11-02
US14/929,429 US10057191B2 (en) 2015-01-30 2015-11-02 Datapath with centralized and distributed routers
US14/929,425 US10084726B2 (en) 2015-01-30 2015-11-02 Dynamic datapath at edge gateway
US14/929,431 2015-11-02
US14/929,429 2015-11-02
US14/929,434 2015-11-02
US14/929,427 2015-11-02
CN201680069286.6A CN108293021B (zh) 2015-01-30 2016-10-29 边缘网关处的动态数据通路

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680069286.6A Division CN108293021B (zh) 2015-01-30 2016-10-29 边缘网关处的动态数据通路

Publications (1)

Publication Number Publication Date
CN112769695A true CN112769695A (zh) 2021-05-07

Family

ID=56553456

Family Applications (6)

Application Number Title Priority Date Filing Date
CN202211107867.8A Active CN115442303B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN202211107837.7A Active CN115442302B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN201680006264.5A Active CN107210959B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN202010831065.6A Active CN111865775B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN202110039636.7A Pending CN112769695A (zh) 2015-01-30 2016-10-29 边缘网关处的动态数据通路
CN201680069286.6A Active CN108293021B (zh) 2015-01-30 2016-10-29 边缘网关处的动态数据通路

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CN202211107867.8A Active CN115442303B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN202211107837.7A Active CN115442302B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN201680006264.5A Active CN107210959B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器
CN202010831065.6A Active CN111865775B (zh) 2015-01-30 2016-01-29 具有多个路由部件的逻辑路由器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201680069286.6A Active CN108293021B (zh) 2015-01-30 2016-10-29 边缘网关处的动态数据通路

Country Status (7)

Country Link
US (24) US10129180B2 (zh)
EP (4) EP3251306B1 (zh)
JP (3) JP6908525B2 (zh)
CN (6) CN115442303B (zh)
AU (5) AU2016211222B2 (zh)
CA (2) CA2974535C (zh)
WO (4) WO2016123550A1 (zh)

Families Citing this family (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8560634B2 (en) * 2007-10-17 2013-10-15 Dispersive Networks, Inc. Apparatus, systems and methods utilizing dispersive networking
US9882713B1 (en) 2013-01-30 2018-01-30 vIPtela Inc. Method and system for key generation, distribution and management
US10348767B1 (en) * 2013-02-26 2019-07-09 Zentera Systems, Inc. Cloud over IP session layer network
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US9910686B2 (en) 2013-10-13 2018-03-06 Nicira, Inc. Bridging between network segments with a logical router
JP6510167B2 (ja) * 2013-10-30 2019-05-08 京セラ株式会社 通信装置、通信システム、通信制御方法、及び通信制御プログラム
US9467478B1 (en) 2013-12-18 2016-10-11 vIPtela Inc. Overlay management protocol for secure routing based on an overlay network
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
EP3175582B1 (en) * 2014-07-28 2017-09-06 Telefonaktiebolaget LM Ericsson (publ) Automated flow devolvement in an aggregate flow environment
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10225137B2 (en) 2014-09-30 2019-03-05 Nicira, Inc. Service node selection by an inline service switch
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US9755898B2 (en) 2014-09-30 2017-09-05 Nicira, Inc. Elastically managing a service node group
US9774537B2 (en) 2014-09-30 2017-09-26 Nicira, Inc. Dynamically adjusting load balancing
US9798377B2 (en) 2014-10-08 2017-10-24 Apple Inc. Methods and apparatus for recovering errors with an inter-processor communication link between independently operable processors
US11533255B2 (en) 2014-11-14 2022-12-20 Nicira, Inc. Stateful services on stateless clustered edge
US10129180B2 (en) 2015-01-30 2018-11-13 Nicira, Inc. Transit logical switch within logical router
US10594743B2 (en) 2015-04-03 2020-03-17 Nicira, Inc. Method, apparatus, and system for implementing a content switch
IL238690B (en) 2015-05-07 2019-07-31 Mellanox Technologies Ltd Network-based computational accelerator
US9558029B2 (en) 2015-05-17 2017-01-31 Nicira, Inc. Logical processing for containers
US10243848B2 (en) 2015-06-27 2019-03-26 Nicira, Inc. Provisioning logical entities in a multi-datacenter environment
US10361952B2 (en) 2015-06-30 2019-07-23 Nicira, Inc. Intermediate logical interfaces in a virtual distributed router environment
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US9923818B2 (en) * 2015-09-14 2018-03-20 Citrix Systems, Inc. Systems and methods of achieving equal distribution of packets in a multicore system which acts as a tunnel end point
US10498624B2 (en) * 2015-10-05 2019-12-03 Unisys Corporation Systems and methods for adaptive router failover in Linux-based computing systems
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10078527B2 (en) 2015-11-01 2018-09-18 Nicira, Inc. Securing a managed forwarding element that operates within a data compute node
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10063469B2 (en) 2015-12-16 2018-08-28 Nicira, Inc. Forwarding element implementation for containers
US9980303B2 (en) 2015-12-18 2018-05-22 Cisco Technology, Inc. Establishing a private network using multi-uplink capable network devices
KR101835315B1 (ko) * 2016-03-07 2018-03-08 주식회사 윈스 Ips 스위치 장치 및 처리 방법
US10063457B2 (en) * 2016-03-29 2018-08-28 Juniper Networks, Inc. Method, system, and apparatus for improving forwarding capabilities during route convergence
US10419361B2 (en) * 2016-03-31 2019-09-17 Alibaba Group Holding Limited Interworking between physical network and virtual network
US10243916B2 (en) 2016-04-07 2019-03-26 Cisco Technology, Inc. Control plane based technique for handling multi-destination traffic in overlay networks
US10469343B2 (en) 2016-05-04 2019-11-05 Telefonaktiebolaget Lm Ericsson (Publ) Path continuity determination in an aggregate flow environment
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10554549B1 (en) * 2016-08-05 2020-02-04 Cisco Technology, Inc. DCI stitching for data center overlays
US10193749B2 (en) 2016-08-27 2019-01-29 Nicira, Inc. Managed forwarding element executing in public cloud data compute node without overlay network
EP3485610B1 (en) 2016-08-27 2020-06-10 Nicira Inc. Extension of network control system into public cloud
CN106341402B (zh) * 2016-08-30 2019-11-12 中国民生银行股份有限公司 基于多架构分布式缓存的处理方法和装置
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10104177B2 (en) * 2016-09-30 2018-10-16 Hughes Network Systems, Llc Distributed gateways with centralized data center for high throughput satellite (HTS) spot beam network
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US11303701B2 (en) 2016-12-11 2022-04-12 Nicira Inc. Handling failure at logical routers
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10802858B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
CN108259325B (zh) * 2016-12-29 2021-07-30 中国电信股份有限公司 路由维护方法和路由设备
US9912739B1 (en) * 2017-01-12 2018-03-06 Red Hat Israel, Ltd. Open virtualized multitenant network scheme servicing virtual machine and container based connectivity
US10756966B2 (en) 2017-02-22 2020-08-25 Cisco Technology, Inc. Containerized software architecture for configuration management on network devices
US10447581B2 (en) 2017-02-28 2019-10-15 Nicira, Inc. Failure handling at logical routers according to a non-preemptive mode
CN106685835B (zh) * 2017-03-06 2019-06-28 无锡华云数据技术服务有限公司 一种在数据中心的计算节点间实现高速分布式路由的方法
CN108667637B (zh) * 2017-03-28 2020-11-06 比亚迪股份有限公司 基于轨道交通的远程测试方法、网关和系统
US10700959B2 (en) 2017-04-09 2020-06-30 Barefoot Networks, Inc. Source routing design with simplified forwarding elements
US11146508B2 (en) * 2017-05-12 2021-10-12 Xilinx, Inc. Data processing system
US11093284B2 (en) * 2017-05-12 2021-08-17 Xilinx, Inc. Data processing system
US10432523B2 (en) 2017-05-31 2019-10-01 Juniper Networks, Inc. Routing protocol signaling of multiple next hops and their relationship
US10382333B2 (en) * 2017-05-31 2019-08-13 Juniper Networks, Inc. Fabric path context-based forwarding for virtual nodes
US10476817B2 (en) 2017-05-31 2019-11-12 Juniper Networks, Inc. Transport LSP setup using selected fabric path between virtual nodes
US10389635B2 (en) 2017-05-31 2019-08-20 Juniper Networks, Inc. Advertising selected fabric paths for service routes in virtual nodes
US10659352B2 (en) 2017-05-31 2020-05-19 Juniper Networks, Inc. Signaling private context forwarding tables for a private forwarding layer
WO2018229745A1 (en) * 2017-06-16 2018-12-20 Drivenets Ltd. Parallel information processing on multi-core computing platforms
CN107241459B (zh) * 2017-06-26 2020-08-04 睿哲科技股份有限公司 一种基于IPv6实现云平台IP地址复用的装置及操作方法
US10432513B2 (en) * 2017-07-14 2019-10-01 Nicira, Inc. Asymmetric network elements sharing an anycast address
US10587434B2 (en) * 2017-07-14 2020-03-10 Nicira, Inc. In-band management interface with user space datapath
CN110915171B (zh) 2017-07-17 2022-02-25 Nicira股份有限公司 分布式多播逻辑路由器
US11296984B2 (en) 2017-07-31 2022-04-05 Nicira, Inc. Use of hypervisor for active-active stateful network service cluster
US10951584B2 (en) 2017-07-31 2021-03-16 Nicira, Inc. Methods for active-active stateful network service cluster
US11570092B2 (en) 2017-07-31 2023-01-31 Nicira, Inc. Methods for active-active stateful network service cluster
US20190036770A1 (en) * 2017-07-31 2019-01-31 Cisco Technology, Inc. Network route provisioning
CN109391650B (zh) * 2017-08-04 2020-09-29 华为技术有限公司 一种建立会话的方法及装置
US10810033B2 (en) * 2017-08-11 2020-10-20 International Business Machines Corporation Propagating external route changes into a cloud network
US10567482B2 (en) 2017-08-24 2020-02-18 Nicira, Inc. Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table
CN111052686B (zh) * 2017-08-27 2022-03-29 Nicira股份有限公司 在公共云中执行在线服务的方法和机器可读介质
US10277420B2 (en) * 2017-08-28 2019-04-30 Michael Emory Mazarick System and method for providing private instances of shared resources using VxLAN
US10511546B2 (en) 2017-09-29 2019-12-17 Juniper Networks, Inc. Connecting virtual nodes in a network device using abstract fabric interfaces
US11005771B2 (en) 2017-10-16 2021-05-11 Mellanox Technologies, Ltd. Computational accelerator for packet payload operations
US11502948B2 (en) 2017-10-16 2022-11-15 Mellanox Technologies, Ltd. Computational accelerator for storage operations
US10581798B2 (en) * 2017-10-27 2020-03-03 At&T Intellectual Property I, L.P. Network based distribution for compute resource and application accessibility
US10805181B2 (en) 2017-10-29 2020-10-13 Nicira, Inc. Service operation chaining
US10841243B2 (en) * 2017-11-08 2020-11-17 Mellanox Technologies, Ltd. NIC with programmable pipeline
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10374827B2 (en) * 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
US10778506B1 (en) 2017-11-30 2020-09-15 Open Invention Network Llc Coordinated switch of activity in virtual network function components
EP3669504B1 (en) 2017-12-04 2022-12-07 Nicira, Inc. High availability for stateful services in public cloud logical networks
US10708240B2 (en) 2017-12-14 2020-07-07 Mellanox Technologies, Ltd. Offloading communication security operations to a network interface controller
CN108156034B (zh) * 2017-12-22 2021-10-01 武汉噢易云计算股份有限公司 一种基于深度神经网络辅助的报文转发方法和报文转发系统
US11201940B2 (en) * 2018-01-04 2021-12-14 Intel Corporation Technologies for flow rule aware exact match cache compression
CN108345502A (zh) * 2018-01-15 2018-07-31 中兴飞流信息科技有限公司 基于dpdk的资源调度方法、装置、终端设备及可读存储介质
US10848461B2 (en) * 2018-01-26 2020-11-24 Nicira, Inc. Unified security policies across virtual private clouds with overlapping IP address blocks
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10659252B2 (en) 2018-01-26 2020-05-19 Nicira, Inc Specifying and utilizing paths through a network
CN108418798B (zh) * 2018-02-01 2020-10-30 烽火通信科技股份有限公司 一种bfd慢协商实现系统及实现方法
US10791092B2 (en) * 2018-02-14 2020-09-29 Nicira, Inc. Firewall rules with expression matching
US11153122B2 (en) * 2018-02-19 2021-10-19 Nicira, Inc. Providing stateful services deployed in redundant gateways connected to asymmetric network
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
US10728174B2 (en) 2018-03-27 2020-07-28 Nicira, Inc. Incorporating layer 2 service between two interfaces of gateway device
US11792307B2 (en) * 2018-03-28 2023-10-17 Apple Inc. Methods and apparatus for single entity buffer pool management
CN108650295A (zh) * 2018-03-30 2018-10-12 深圳市风云实业有限公司 协议报文跨层通信方法装置及电子设备
US10332235B1 (en) 2018-05-01 2019-06-25 At&T Intellectual Property I, L.P. Direct memory access for graphics processing unit packet processing
US11388222B2 (en) * 2018-05-04 2022-07-12 Verizon Patent And Licensing Inc. Mobile edge computing
CN110535813B (zh) * 2018-05-25 2022-04-22 网宿科技股份有限公司 内核态协议栈与用户态协议栈并存处理方法和装置
US11343229B2 (en) 2018-06-28 2022-05-24 Vmware, Inc. Managed forwarding element detecting invalid packet addresses
US11418382B2 (en) * 2018-07-17 2022-08-16 Vmware, Inc. Method of cooperative active-standby failover between logical routers based on health of attached services
IL271826B2 (en) * 2018-07-26 2023-11-01 Drivenets Ltd A platform containing several routers
US10530634B1 (en) * 2018-07-27 2020-01-07 Vmware, Inc. Two-channel-based high-availability
TWI819072B (zh) * 2018-08-23 2023-10-21 美商阿爾克斯股份有限公司 在網路運算環境中用於避免環路衝突的系統、非暫態電腦可讀取儲存媒體及電腦實現方法
EP4243367A3 (en) 2018-08-24 2023-11-15 VMware, Inc. Intelligent use of peering in public cloud
US11374794B2 (en) 2018-08-24 2022-06-28 Vmware, Inc. Transitive routing in public cloud
US11196591B2 (en) 2018-08-24 2021-12-07 Vmware, Inc. Centralized overlay gateway in public cloud
US10846224B2 (en) 2018-08-24 2020-11-24 Apple Inc. Methods and apparatus for control of a jointly shared memory-mapped region
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
CN112673596B (zh) * 2018-09-02 2023-05-02 Vm维尔股份有限公司 逻辑网关处的服务插入方法、设备和系统
US11044337B2 (en) * 2018-09-12 2021-06-22 International Business Machines Corporation Runtime localized messages for cloud services
CN109412951B (zh) * 2018-10-12 2021-06-22 华为技术有限公司 一种发送路由信息的方法和装置
CN111131044B (zh) * 2018-10-30 2021-10-22 华为技术有限公司 路由管理方法和装置
US10795840B2 (en) 2018-11-12 2020-10-06 At&T Intellectual Property I, L.P. Persistent kernel for graphics processing unit direct memory access network packet processing
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
EP3888308A4 (en) 2018-11-26 2022-09-14 Arrcus Inc. LOGICAL ROUTER WITH DISAGGREGATED NETWORK ELEMENTS
US10824469B2 (en) 2018-11-28 2020-11-03 Mellanox Technologies, Ltd. Reordering avoidance for flows during transition between slow-path handling and fast-path handling
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
KR102097999B1 (ko) * 2018-12-28 2020-04-07 주식회사 아라드네트웍스 가상 라우터를 이용한 IP in IP 통신 시스템
US11240160B2 (en) 2018-12-28 2022-02-01 Alibaba Group Holding Limited Method, apparatus, and computer-readable storage medium for network control
US11397604B2 (en) 2019-02-22 2022-07-26 Vmware, Inc. Service path selection in load balanced manner
JP7207006B2 (ja) * 2019-02-25 2023-01-18 日本電信電話株式会社 ネットワーク管理装置、方法及びプログラム
US11258729B2 (en) * 2019-02-27 2022-02-22 Vmware, Inc. Deploying a software defined networking (SDN) solution on a host using a single active uplink
EP3703341A1 (en) * 2019-02-28 2020-09-02 Rohde & Schwarz GmbH & Co. KG System for analyzing and interpreting at least one data stream as well as method of automatic configuration of a system
US11456967B2 (en) * 2019-03-04 2022-09-27 Arris Enterprises Llc System and method for increasing flexibility and high availability in remote network devices
US11184439B2 (en) 2019-04-01 2021-11-23 Mellanox Technologies, Ltd. Communication with accelerator via RDMA-based network adapter
CN110290174B (zh) * 2019-05-24 2021-02-05 华为技术有限公司 一种主主集群的控制方法以及控制节点
US11218559B2 (en) 2019-05-28 2022-01-04 Red Hat, Inc. Asymmetric networking proxy
US10992515B1 (en) * 2019-06-10 2021-04-27 Cisco Technology, Inc. Link state tracking for virtual interfaces
US10979352B2 (en) 2019-06-14 2021-04-13 Vmware, Inc. Using a control plane to set a preferred egress point in multi-site logical routers
US11533259B2 (en) * 2019-07-24 2022-12-20 Vmware, Inc. Building a platform to scale control and data plane for virtual network functions
US11177978B2 (en) 2019-07-29 2021-11-16 Vmware, Inc. Connecting virtual computer networks with overlapping IP addresses using transit virtual computer network
CN111181871B (zh) * 2019-08-02 2022-03-25 腾讯科技(深圳)有限公司 一种报文传输的方法及相关装置
US11411843B2 (en) * 2019-08-14 2022-08-09 Verizon Patent And Licensing Inc. Method and system for packet inspection in virtual network service chains
US11095480B2 (en) * 2019-08-30 2021-08-17 Vmware, Inc. Traffic optimization using distributed edge services
CN112506674B (zh) * 2019-09-16 2024-02-02 北京华耀科技有限公司 Linux系统下用户态TCP/IP协议栈与本地应用通信的系统及方法
US11558348B2 (en) 2019-09-26 2023-01-17 Apple Inc. Methods and apparatus for emerging use case support in user space networking
US11829303B2 (en) 2019-09-26 2023-11-28 Apple Inc. Methods and apparatus for device driver operation in non-kernel space
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
CN110784364B (zh) * 2019-11-07 2022-08-05 北京博睿宏远数据科技股份有限公司 一种数据监测方法、装置、存储介质及终端
CN110995581B (zh) * 2019-12-19 2022-07-19 锐捷网络股份有限公司 一种防止路由黑洞的方法、装置、电子设备及存储介质
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
CN117221214A (zh) 2020-01-14 2023-12-12 Vm维尔股份有限公司 在物理和逻辑网络之间提供有状态服务的透明隔离区
US11240154B2 (en) * 2020-01-14 2022-02-01 Cisco Technology, Inc. Dynamic hardware forwarding pipeline compression
US11411777B2 (en) 2020-01-14 2022-08-09 Vmware, Inc. Port mapping for bonded interfaces of ECMP group
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
WO2021196080A1 (en) 2020-04-01 2021-10-07 Vmware Information Technology (China) Co., Ltd. Auto deploying network elements for heterogeneous compute elements
US11088919B1 (en) 2020-04-06 2021-08-10 Vmware, Inc. Data structure for defining multi-site logical network
US11777793B2 (en) 2020-04-06 2023-10-03 Vmware, Inc. Location criteria for security groups
US11088902B1 (en) 2020-04-06 2021-08-10 Vmware, Inc. Synchronization of logical network state between global and local managers
US11528219B2 (en) 2020-04-06 2022-12-13 Vmware, Inc. Using applied-to field to identify connection-tracking records for different interfaces
US11316773B2 (en) 2020-04-06 2022-04-26 Vmware, Inc. Configuring edge device with multiple routing tables
US11381456B2 (en) 2020-04-06 2022-07-05 Vmware, Inc. Replication of logical network data between global managers
US11233824B2 (en) 2020-04-06 2022-01-25 Vmware, Inc. Site aware policy-based proximity routing and policy-based proximity routing
CN111585979B (zh) * 2020-04-22 2020-12-18 广州锦行网络科技有限公司 一种基于网络映射的复杂多构网络隔离技术实现方法
CN111563281B (zh) * 2020-04-30 2023-10-27 北京中科晶上科技股份有限公司 一种支持多种加解密算法的处理器及其实现方法
CN113630310B (zh) * 2020-05-06 2024-02-02 北京农信数智科技有限公司 一种分布式高可用网关系统
CN113691410B (zh) * 2020-05-19 2023-05-12 花瓣云科技有限公司 网络性能数据的获取方法、装置和服务器
US11121956B1 (en) * 2020-05-22 2021-09-14 Arista Networks, Inc. Methods and systems for optimizing bidirectional forwarding detection in hardware
US11606302B2 (en) 2020-06-12 2023-03-14 Apple Inc. Methods and apparatus for flow-based batching and processing
WO2021263047A1 (en) 2020-06-24 2021-12-30 Juniper Networks, Inc. Layer-2 network extension over layer-3 network using encapsulation
US11848980B2 (en) * 2020-07-09 2023-12-19 Boray Data Technology Co. Ltd. Distributed pipeline configuration in a distributed computing system
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11616755B2 (en) 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11362863B2 (en) 2020-07-21 2022-06-14 Vmware, Inc. Handling packets travelling from logical service routers (SRs) for active-active stateful service insertion
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11108728B1 (en) * 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer
US11803408B2 (en) 2020-07-29 2023-10-31 Vmware, Inc. Distributed network plugin agents for container networking
IL276538B2 (en) 2020-08-05 2023-08-01 Mellanox Technologies Ltd A cryptographic device for data communication
CN114095153A (zh) 2020-08-05 2022-02-25 迈络思科技有限公司 密码数据通信装置
US11671359B2 (en) * 2020-08-07 2023-06-06 Telia Company Ab Methods and apparatuses in a network comprising a plurality of switch devices
US11775359B2 (en) 2020-09-11 2023-10-03 Apple Inc. Methods and apparatuses for cross-layer processing
US11954540B2 (en) 2020-09-14 2024-04-09 Apple Inc. Methods and apparatus for thread-level execution in non-kernel space
US11799986B2 (en) 2020-09-22 2023-10-24 Apple Inc. Methods and apparatus for thread level execution in non-kernel space
US11343227B2 (en) 2020-09-28 2022-05-24 Vmware, Inc. Application deployment in multi-site virtualization infrastructure
CN112202640B (zh) * 2020-09-30 2022-02-22 中国工商银行股份有限公司 应用于容器云平台的监控方法和装置
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11736413B2 (en) * 2021-01-15 2023-08-22 Vmware, Inc. Programmable virtual network interface controller (VNIC)
US11934658B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Enhanced storage protocol emulation in a peripheral device
US11934333B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Storage protocol emulation in a peripheral device
CN113132382B (zh) * 2021-04-19 2022-09-02 中文出版集团有限公司 一种智能计算机网络信息安全控制器
US11477270B1 (en) * 2021-07-06 2022-10-18 Vmware, Inc. Seamless hand-off of data traffic in public cloud environments
US11909637B2 (en) * 2021-07-14 2024-02-20 VMware LLC Orchestration of tenant overlay network constructs
US11824780B2 (en) 2021-07-22 2023-11-21 Vmware, Inc. Managing tunnel interface selection between gateways in a computing environment
US11882051B2 (en) 2021-07-26 2024-01-23 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements
US11876719B2 (en) 2021-07-26 2024-01-16 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements
US11949604B2 (en) * 2021-10-06 2024-04-02 Inernational Business Machines Corporation Integrated network switch operation
US11916879B2 (en) * 2022-01-03 2024-02-27 VMware LLC Performing firewall operations by sharing metadata between firewall processes
US11799761B2 (en) 2022-01-07 2023-10-24 Vmware, Inc. Scaling edge services with minimal disruption
US11962564B2 (en) 2022-02-15 2024-04-16 VMware LLC Anycast address for network address translation at edge
CN114827017B (zh) * 2022-03-31 2024-01-30 北京声智科技有限公司 Kafka集群的通信方法、装置、电子设备和存储介质
US11956164B2 (en) * 2022-04-29 2024-04-09 Hewlett Packard Enterprise Development Lp Remote management of a switch stack
WO2024076337A1 (en) * 2022-10-03 2024-04-11 Zeku, Inc. Apparatus and method for adaptive activation/deactivation of an uplink layer 2 datapath and hardware threads
US12007921B2 (en) 2022-11-02 2024-06-11 Mellanox Technologies, Ltd. Programmable user-defined peripheral-bus device implementation using data-plane accelerator (DPA)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595918A (zh) * 2003-10-29 2005-03-16 深圳市研祥智能科技股份有限公司 多功能宽带网关及其通信方法
CN103888555A (zh) * 2014-03-26 2014-06-25 清华大学 一种IPv4/IPv6无状态翻译算法
US20150063364A1 (en) * 2013-09-04 2015-03-05 Nicira, Inc. Multiple Active L3 Gateways for Logical Networks
US20150271011A1 (en) * 2014-03-21 2015-09-24 Nicira, Inc. Dynamic routing for logical routers
US20150271303A1 (en) * 2014-03-21 2015-09-24 Nicira, Inc. Multiple levels of logical routers

Family Cites Families (432)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1068461B (zh) 1957-04-18 1959-11-05
DE1776914U (de) 1958-02-17 1958-11-06 Licentia Gmbh Befestigung des magnetankers am beweglichen schaltteil von elektromagneten, insbesondere bei schuetzen.
US3027260A (en) 1960-01-05 1962-03-27 Procter & Gamble Mayonnaise
WO1992005485A2 (en) 1990-09-17 1992-04-02 Cabletron Systems, Inc. Network management system using model-based intelligence
US5742760A (en) 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
US5485455A (en) * 1994-01-28 1996-01-16 Cabletron Systems, Inc. Network having secure fast packet switching and guaranteed quality of service
SE9402059D0 (sv) 1994-06-13 1994-06-13 Ellemtel Utvecklings Ab Sätt och anordning vid telekommunikation
US5751967A (en) 1994-07-25 1998-05-12 Bay Networks Group, Inc. Method and apparatus for automatically configuring a network device to support a virtual network
US5550816A (en) 1994-12-29 1996-08-27 Storage Technology Corporation Method and apparatus for virtual switching
US6418324B1 (en) 1995-06-01 2002-07-09 Padcom, Incorporated Apparatus and method for transparent wireless communication between a remote device and host system
US5584295A (en) 1995-09-01 1996-12-17 Analogic Corporation System for measuring the period of a quasi-periodic signal
US6035105A (en) 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
US6108304A (en) 1996-03-08 2000-08-22 Abe; Hajime Packet switching network, packet switching equipment, and network management equipment
US6085238A (en) * 1996-04-23 2000-07-04 Matsushita Electric Works, Ltd. Virtual LAN system
JPH09307587A (ja) 1996-05-09 1997-11-28 Fujitsu Ltd 交換機
US6456624B1 (en) 1997-10-29 2002-09-24 Enterasys Networks, Inc. Network address resolve blocker
US6446149B1 (en) 1998-03-03 2002-09-03 Compaq Information Technologies Group, L.P. Self-modifying synchronization memory address space and protocol for communication between multiple busmasters of a computer system
JP3609256B2 (ja) 1998-05-19 2005-01-12 株式会社日立製作所 ネットワーク管理装置,ノード装置及びネットワーク管理システム
US6424659B2 (en) 1998-07-17 2002-07-23 Network Equipment Technologies, Inc. Multi-layer switching apparatus and method
US6584102B1 (en) 1998-12-21 2003-06-24 At&T Corp. Communication network apparatus and method
US6950428B1 (en) 1998-12-30 2005-09-27 Hewlett-Packard Development Company, L.P. System and method for configuring adaptive sets of links between routers in a system area network (SAN)
US6636498B1 (en) 1999-01-08 2003-10-21 Cisco Technology, Inc. Mobile IP mobile router
JP2000244567A (ja) * 1999-02-23 2000-09-08 Hitachi Ltd ルータネットワーク管理方法
EP1171976A2 (en) * 1999-02-23 2002-01-16 Alcatel Internetworking, Inc. Multi-service network switch
US6678274B1 (en) 1999-07-30 2004-01-13 Riverstone Networks, Inc. Method and system for managing forwarding tables
US6914907B1 (en) 1999-08-05 2005-07-05 Alcatel Canada Inc. Method and apparatus for providing multi-cast transmissions using a distributed router
US7020697B1 (en) 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US6963585B1 (en) 1999-10-21 2005-11-08 International Business Machines Corporation Method and system for establishing a virtual path capability in a frame relay network
US6680934B1 (en) 1999-12-02 2004-01-20 Nortel Networks Limited System, device and method for expediting control flow in a communication system
US6977924B1 (en) * 1999-12-22 2005-12-20 Alcatel Control and distribution protocol for a portable router framework
US6904593B1 (en) * 2000-03-24 2005-06-07 Hewlett-Packard Development Company, L.P. Method of administering software components using asynchronous messaging in a multi-platform, multi-programming language environment
US8204082B2 (en) 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
US20020093952A1 (en) 2000-06-30 2002-07-18 Gonda Rumi Sheryar Method for managing circuits in a multistage cross connect
US7389358B1 (en) 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US6618397B1 (en) 2000-10-05 2003-09-09 Provisionpoint Communications, Llc. Group packet encapsulation and compression system and method
US7225270B2 (en) 2000-10-17 2007-05-29 Cisco Technology, Inc. Selective diversion and injection of communication traffic
US9639553B2 (en) 2000-11-02 2017-05-02 Oracle International Corporation TCP/UDP acceleration
JP4225681B2 (ja) 2000-12-06 2009-02-18 富士通株式会社 仮想閉域網構築方法及び装置並びに中継装置
US7260648B2 (en) 2001-01-25 2007-08-21 Ericsson, Inc. Extension of address resolution protocol (ARP) for internet protocol (IP) virtual networks
US6999454B1 (en) 2001-02-09 2006-02-14 Nortel Networks Limited Information routing system and apparatus
US6785843B1 (en) 2001-02-23 2004-08-31 Mcrae Andrew Data plane restart without state change in a control plane of an intermediate network node
US7107356B2 (en) 2001-03-07 2006-09-12 Lucent Technologies Inc. Translator for enabling logical partitioning of a network switch
US7069337B2 (en) 2001-03-20 2006-06-27 Mci, Inc. Policy-based synchronization of per-class resources between routers in a data network
US7209439B2 (en) 2001-03-20 2007-04-24 Mci, Llc Pool-based resource management in a data network
US7269157B2 (en) 2001-04-10 2007-09-11 Internap Network Services Corporation System and method to assure network service levels with intelligent routing
US7620363B2 (en) * 2001-05-16 2009-11-17 Aol Llc Proximity synchronization of audio content among multiple playback and storage devices
US7065482B2 (en) 2001-05-17 2006-06-20 International Business Machines Corporation Internet traffic analysis tool
US7102996B1 (en) 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US7483411B2 (en) 2001-06-04 2009-01-27 Nec Corporation Apparatus for public access mobility LAN and method of operation thereof
US7881208B1 (en) 2001-06-18 2011-02-01 Cisco Technology, Inc. Gateway load balancing protocol
US7126944B2 (en) 2001-07-05 2006-10-24 Intel Corporation Routing packets across multiple forwarding elements
US7630358B1 (en) 2001-07-09 2009-12-08 Sable Networks, Inc. Mechanism for implementing multiple logical routers within a single physical router
US7774440B1 (en) * 2001-07-25 2010-08-10 Scalable Network Technologies, Inc. Method and system for enhancing performance of a physical network under real-time control using simulation of a reference model
JP2003069609A (ja) 2001-08-23 2003-03-07 Fujitsu Ltd 仮想私設網サービスを提供するシステム
KR100450951B1 (ko) 2001-10-05 2004-10-06 삼성전자주식회사 대용량 평행 라우터용 리던던시 기계화 프로토콜
US7277383B2 (en) 2001-10-05 2007-10-02 Samsung Electronics Co., Ltd. Redundancy mechanization protocol for a massively parallel router
JP3879471B2 (ja) 2001-10-10 2007-02-14 株式会社日立製作所 計算機資源割当方法
US7194553B2 (en) 2001-10-16 2007-03-20 Microsoft Corporation Resolving virtual network names
US7200144B2 (en) 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US7447197B2 (en) 2001-10-18 2008-11-04 Qlogic, Corporation System and method of providing network node services
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
EP1331793A1 (en) 2002-01-24 2003-07-30 Alcatel Canada Inc. Method for distributing aggregate route information
US7801155B2 (en) 2002-03-01 2010-09-21 Verizon Business Global Llc Resource allocation in virtual routers
US6941487B1 (en) 2002-03-07 2005-09-06 Riverstone Networks, Inc. Method, system, and computer program product for providing failure protection in a network node
JP3904968B2 (ja) 2002-04-19 2007-04-11 日本電信電話株式会社 Vpnシステムおよびルータ
US7197572B2 (en) 2002-05-06 2007-03-27 Qlogic, Corporation System and method for implementing logical switches in a network system
US20030231632A1 (en) 2002-06-13 2003-12-18 International Business Machines Corporation Method and system for packet-level routing
US6907039B2 (en) 2002-07-20 2005-06-14 Redback Networks Inc. Method and apparatus for routing and forwarding between virtual routers within a single network element
JP3801129B2 (ja) * 2002-10-09 2006-07-26 日本電気株式会社 ルータパラメータ設定システム及びその方法
KR100463417B1 (ko) 2002-10-10 2004-12-23 한국전자통신연구원 상관함수의 최대값과 그의 후보값의 비를 이용한 피치검출 방법 및 그 장치
US20040073659A1 (en) 2002-10-15 2004-04-15 Carl Rajsic Method and apparatus for managing nodes in a network
US7181742B2 (en) * 2002-11-19 2007-02-20 Intel Corporation Allocation of packets and threads
US20040098505A1 (en) * 2002-11-20 2004-05-20 Clemmensen Daniel G. Forwarding system with multiple logical sub-system functionality
US7224668B1 (en) 2002-11-27 2007-05-29 Cisco Technology, Inc. Control plane security and traffic flow management
JP3689083B2 (ja) * 2002-12-10 2005-08-31 株式会社東芝 ネットワークシステム及びノード装置
KR100542341B1 (ko) * 2003-02-19 2006-01-10 삼성전자주식회사 비쥐피 프로토콜을 분산 처리하는 장치 및 그 방법
US20040230659A1 (en) * 2003-03-12 2004-11-18 Chase Michael John Systems and methods of media messaging
US7783739B1 (en) * 2003-03-21 2010-08-24 The United States Of America As Represented By The United States Department Of Energy High-speed and high-fidelity system and method for collecting network traffic
JP4157409B2 (ja) 2003-03-31 2008-10-01 富士通株式会社 仮想パス構築装置および仮想パス構築方法
US7283473B2 (en) 2003-04-10 2007-10-16 International Business Machines Corporation Apparatus, system and method for providing multiple logical channel adapters within a single physical channel adapter in a system area network
KR20060025135A (ko) 2003-04-21 2006-03-20 네트셀 코포레이션 재구성 가능한 데이터 경로를 갖는 디스크 어레이 제어기
US7792987B1 (en) 2003-04-21 2010-09-07 Juniper Networks, Inc. Supporting virtual private networks using a first network topology for forwarding and a subset of the first network topology or a smaller topology for signaling
US7710874B2 (en) 2003-06-04 2010-05-04 International Business Machines Corporation System and method for automatic management of many computer data processing system pipes
JP4278445B2 (ja) 2003-06-18 2009-06-17 株式会社日立製作所 ネットワークシステム及びスイッチ
US7356818B2 (en) 2003-06-24 2008-04-08 International Business Machines Corporation Virtual machine communicating to external device without going through other virtual machines by using a list of IP addresses managed only by a single virtual machine monitor
US7463579B2 (en) 2003-07-11 2008-12-09 Nortel Networks Limited Routed split multilink trunking
US20050018669A1 (en) 2003-07-25 2005-01-27 International Business Machines Corporation Infiniband subnet management queue pair emulation for multiple logical ports on a single physical port
US7697527B2 (en) 2003-07-30 2010-04-13 Nortel Networks Limited Method and apparatus for direct frame switching using frame contained destination information
US7593346B2 (en) 2003-07-31 2009-09-22 Cisco Technology, Inc. Distributing and balancing traffic flow in a virtual gateway
US8776050B2 (en) 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7366181B2 (en) 2003-09-06 2008-04-29 Fujitsu Limited Virtual private network (VPN) with channelized ethernet over sonet (EoS) interface and method
US7342916B2 (en) 2003-09-10 2008-03-11 Intel Corporation Method, apparatus and system for optimizing routing of mobile IP packets
US20050074003A1 (en) * 2003-10-02 2005-04-07 Ball David Alexander Distributed software architecture for implementing BGP
US20050105538A1 (en) 2003-10-14 2005-05-19 Ananda Perera Switching system with distributed switching fabric
US8009556B2 (en) 2003-10-17 2011-08-30 Ip Infusion, Inc. System and method for providing redundant routing capabilities for a network node
US7555002B2 (en) 2003-11-06 2009-06-30 International Business Machines Corporation Infiniband general services queue pair virtualization for multiple logical ports on a single physical port
US8146148B2 (en) 2003-11-19 2012-03-27 Cisco Technology, Inc. Tunneled security groups
JP4231773B2 (ja) 2003-12-01 2009-03-04 株式会社日立コミュニケーションテクノロジー Vrの機密性を維持したvrrp技術
US8095640B2 (en) 2003-12-12 2012-01-10 Alcatel Lucent Distributed architecture for real-time flow measurement at the network domain level
US7450598B2 (en) 2003-12-15 2008-11-11 At&T Intellectual Property I, L.P. System and method to provision MPLS/VPN network
US7478173B1 (en) 2003-12-18 2009-01-13 Wmware, Inc. Method and system for sharing a network connection in a virtual computer system
US9032095B1 (en) 2004-01-06 2015-05-12 Juniper Networks, Inc. Routing device having multiple logical routers
US7391771B2 (en) 2004-01-23 2008-06-24 Metro Packet Systems Inc. Method of sending information through a tree and ring topology of a network system
US7996631B1 (en) * 2004-02-17 2011-08-09 Oracle America, Inc. System and method for accessing storage devices attached to a stateless client
RU2006143768A (ru) 2004-05-12 2008-06-20 Алькатель (Fr) Ароматическое ограничение сетевого нарушителя
US8422500B2 (en) 2004-07-02 2013-04-16 Rockstar Consortium Us Lp VLAN support of differentiated services
US7787360B2 (en) 2004-07-23 2010-08-31 Cisco Technology, Inc. System and method for preserving multicast data forwarding during control failures in a router
EP1624615B1 (en) 2004-08-02 2008-02-20 Alcatel Lucent Shared resources in a multi manager environment
US7706302B2 (en) 2004-09-14 2010-04-27 Alcatel Lucent Optimization of routing forwarding database in a network processor
US7512738B2 (en) * 2004-09-30 2009-03-31 Intel Corporation Allocating call stack frame entries at different memory levels to functions in a program
GB2419703A (en) 2004-10-29 2006-05-03 Hewlett Packard Development Co Isolated virtual overlay infrastructures each having an interface to control interaction with others
US8068408B2 (en) 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US9014181B2 (en) 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US8458467B2 (en) 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
JP2008524916A (ja) 2004-12-21 2008-07-10 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 通信システムにおけるパケットフローに関する装置及び方法
CA2590669A1 (en) 2004-12-31 2006-07-06 British Telecommunications Public Limited Company Method to run a connectionless network as a connection oriented network
JP4733399B2 (ja) 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US7606231B2 (en) * 2005-02-18 2009-10-20 Broadcom Corporation Pipeline architecture for a network device
US8254285B2 (en) 2005-02-25 2012-08-28 Ip Infusion, Inc. Hardware abstraction layer
US7936770B1 (en) 2005-03-08 2011-05-03 Enterasys Networks, Inc. Method and apparatus of virtual class of service and logical queue representation through network traffic distribution over multiple port interfaces
US20070064673A1 (en) 2005-03-10 2007-03-22 Nehru Bhandaru Flexible, scalable, wireless data forwarding and mobility for secure wireless networks
US20060203774A1 (en) 2005-03-10 2006-09-14 Nokia Corporation System, method and apparatus for selecting a remote tunnel endpoint for accessing packet data services
FR2883437B1 (fr) 2005-03-16 2007-08-03 Wavestorm Sarl Dispositif et procede de communication dans un reseau
US7414975B2 (en) 2005-03-24 2008-08-19 Ixia Protocol stack
JP4016998B2 (ja) * 2005-06-22 2007-12-05 ヤマハ株式会社 通信装置およびプログラム
US7802000B1 (en) 2005-08-01 2010-09-21 Vmware Virtual network in server farm
US8149737B2 (en) 2005-08-09 2012-04-03 Motorola Solutions, Inc. Method and system for data transmission in a wireless network
US8799431B2 (en) 2005-08-15 2014-08-05 Toutvirtual Inc. Virtual systems management
US7817541B2 (en) 2005-09-16 2010-10-19 Acme Packet, Inc. Method and system of providing redundancy in a network device
JP2007135109A (ja) 2005-11-11 2007-05-31 Hitachi Ltd 仮想ネットワーク管理方法、仮想ネットワーク管理プログラム、仮想ネットワーク管理システムおよび仮想ネットワーク管理手段
WO2008048304A2 (en) * 2005-12-01 2008-04-24 Firestar Software, Inc. System and method for exchanging information among exchange applications
US8441919B2 (en) 2006-01-18 2013-05-14 Cisco Technology, Inc. Dynamic protection against failure of a head-end node of one or more TE-LSPs
US8620994B2 (en) * 2006-02-23 2013-12-31 Qualcomm Incorporated System and method for scheduling content updates in a content-based application
US7616585B1 (en) 2006-02-28 2009-11-10 Symantec Operating Corporation Preventing network micro-congestion using send pacing based on end-to-end bandwidth
US8619771B2 (en) 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US8838756B2 (en) 2009-07-27 2014-09-16 Vmware, Inc. Management and implementation of enclosed local networks in a virtual lab
US7839847B2 (en) 2006-05-08 2010-11-23 Cisco Technology, Inc. Methods and apparatus providing VPN traffic matrix construction
US7953089B1 (en) 2006-05-16 2011-05-31 Cisco Technology, Inc. Systems and methods for multicast switching in a private VLAN
US8060875B1 (en) 2006-05-26 2011-11-15 Vmware, Inc. System and method for multiple virtual teams
US7729347B2 (en) * 2006-05-31 2010-06-01 Zvi Rosberg Method and apparatus for fair flow control and congestion avoidance supporting multiple QoS class requirements
JP4714081B2 (ja) 2006-06-01 2011-06-29 アラクサラネットワークス株式会社 ネットワーク接続装置
US7706303B2 (en) 2006-06-26 2010-04-27 Cisco Technology, Inc. Port pooling
US7643482B2 (en) 2006-06-30 2010-01-05 Sun Microsystems, Inc. System and method for virtual switching in a host
US7916682B2 (en) 2006-07-14 2011-03-29 Symbol Technologies, Inc. Wireless switch network architecture implementing layer 3 mobility domains
EP1885088B1 (en) 2006-08-04 2008-12-17 Alcatel Lucent Routing device, routing module and routing method for an access network
US20080059556A1 (en) 2006-08-31 2008-03-06 Egenera, Inc. Providing virtual machine technology as an embedded layer within a processing platform
US7643488B2 (en) 2006-09-29 2010-01-05 Nortel Networks Limited Method and apparatus for supporting multiple customer provisioned IPSec VPNs
US7996835B2 (en) 2006-10-10 2011-08-09 International Business Machines Corporation System, method and program for managing communication with multiple configurations for virtual machine
US7792097B1 (en) 2006-10-25 2010-09-07 Cisco Technology, Inc. Static, dynamic and intelligent VRF routing for services traffic
JP5244332B2 (ja) 2006-10-30 2013-07-24 株式会社日立製作所 情報システム、データ転送方法及びデータ保護方法
US7987506B1 (en) 2006-11-03 2011-07-26 Cisco Technology, Inc. Methods and systems for dynamically updating a routing table in a virtual private network
US7826482B1 (en) 2006-11-17 2010-11-02 Juniper Networks, Inc. Service-specific forwarding in an LDP-RSVP hybrid network
US8223668B2 (en) 2006-12-14 2012-07-17 Rockstar Bidco Lp Method and apparatus for exchanging routing information and the establishment of connectivity across multiple network areas
US7738457B2 (en) 2006-12-20 2010-06-15 Oracle America, Inc. Method and system for virtual routing using containers
CN100579072C (zh) 2006-12-22 2010-01-06 华为技术有限公司 一种在ip设备之间进行通信的方法和系统
US20080159301A1 (en) 2006-12-29 2008-07-03 De Heer Arjan Arie Enabling virtual private local area network services
US20080189769A1 (en) 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
EP2109965B1 (en) 2007-02-02 2015-04-08 Groupe Des Ecoles Des Telecommunications (GET) Institut National Des Telecommunications (INT) Autonomic network node system
US8259720B2 (en) 2007-02-02 2012-09-04 Cisco Technology, Inc. Triple-tier anycast addressing
IL189514A (en) 2007-02-14 2011-12-29 Marvell Israel Misl Ltd Logical mediation system and method
US20080209422A1 (en) 2007-02-28 2008-08-28 Coha Joseph A Deadlock avoidance mechanism in multi-threaded applications
US8055789B2 (en) 2007-03-27 2011-11-08 Amazon Technologies, Inc. Configuring intercommunications between computing nodes
US8111707B2 (en) 2007-12-20 2012-02-07 Packeteer, Inc. Compression mechanisms for control plane—data plane processing architectures
US8296394B1 (en) * 2007-04-10 2012-10-23 AT & T Intellectual Property II, LP Method and system for caching real-time data
US8594085B2 (en) 2007-04-11 2013-11-26 Palo Alto Networks, Inc. L2/L3 multi-mode switch including policy processing
WO2008128194A2 (en) 2007-04-12 2008-10-23 Rutgers, The State University Of New Jersey System and method for controlling a file system
US7903655B2 (en) 2007-04-19 2011-03-08 Hewlett-Packard Development Company, L.P. Marked packet forwarding
US9223600B1 (en) 2007-05-07 2015-12-29 Hewlett Packard Enterprise Development Lp In-processor dynamic address redirection table for substituting instruction strings
US7948874B2 (en) 2007-05-24 2011-05-24 World Wide Packets, Inc. Transitioning a virtual interface from one tunnel to another tunnel
US8031633B2 (en) 2007-08-13 2011-10-04 Honeywell International Inc. Virtual network architecture for space data processing
US8528070B2 (en) 2007-09-05 2013-09-03 Hewlett-Packard Development Company, L.P. System and method for secure service delivery
US8908700B2 (en) 2007-09-07 2014-12-09 Citrix Systems, Inc. Systems and methods for bridging a WAN accelerator with a security gateway
US8798056B2 (en) 2007-09-24 2014-08-05 Intel Corporation Method and system for virtual port communications
US7751329B2 (en) 2007-10-03 2010-07-06 Avaya Inc. Providing an abstraction layer in a cluster switch that includes plural switches
EP2201474B1 (en) 2007-10-03 2020-05-06 NTT Global Networks Incorporated Virtualized application acceleration infrastructure
US8059650B2 (en) 2007-10-31 2011-11-15 Aruba Networks, Inc. Hardware based parallel processing cores with multiple threads and multiple pipeline stages
US8848544B2 (en) 2007-11-08 2014-09-30 Cisco Technology, Inc. Event correlation using network data flow simulation over unmanaged network segments
US7984123B2 (en) 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
US8199750B1 (en) 2007-12-18 2012-06-12 World Wide Packets, Inc. Communicating with a control plane using a forwarding information format and control plane processing of packets devoid of a virtual switch identifier
US8194674B1 (en) 2007-12-20 2012-06-05 Quest Software, Inc. System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses
US9432213B2 (en) 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network
US7738949B2 (en) 2008-02-26 2010-06-15 Welch Allyn, Inc. Method and apparatus for spectrum estimation
GB2459433B (en) 2008-03-07 2012-06-06 Hewlett Packard Development Co Distributed network connection policy management
GB2458157B (en) 2008-03-07 2012-04-25 Hewlett Packard Development Co Virtual machine liveness check
GB2458154B (en) 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US8155028B2 (en) 2008-03-17 2012-04-10 Alcatel Lucent Method and apparatus for providing full logical connectivity in MPLS networks
EP2253124B1 (en) 2008-03-20 2016-03-16 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for communication of data packets between local networks
US20090249471A1 (en) 2008-03-27 2009-10-01 Moshe Litvin Reversible firewall policies
US8429739B2 (en) 2008-03-31 2013-04-23 Amazon Technologies, Inc. Authorizing communications between computing nodes
US20090252173A1 (en) 2008-04-03 2009-10-08 Rangaprasad Sampath Method For Improving Efficiency Of Redundancy Protocols
US20110032843A1 (en) 2008-04-10 2011-02-10 Oktavian Papp Setting up a virtual private network using virtual lan identifiers
US8339959B1 (en) 2008-05-20 2012-12-25 Juniper Networks, Inc. Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
WO2009147674A1 (en) 2008-06-03 2009-12-10 Ethos Networks Ltd. Automatic signaling method and device for telecommunication services
US8160063B2 (en) 2008-06-09 2012-04-17 Microsoft Corporation Data center interconnect and traffic engineering
EP2294856A1 (en) 2008-06-19 2011-03-16 Telefonaktiebolaget LM Ericsson (publ) Transfer of connections triggered by a mme in case of failure of a serving gateway
US8027260B2 (en) 2008-07-23 2011-09-27 Verizon Patent And Licensing Inc. Mixed integer programming model for minimizing leased access network costs
JP5113684B2 (ja) 2008-09-05 2013-01-09 株式会社日立製作所 アクセスゲートウェイ装置の制御方法及び通信システム
JP5536779B2 (ja) * 2008-09-22 2014-07-02 インターナショナル・ビジネス・マシーンズ・コーポレーション 移動体デバイス上で映像を再生するための方法及びシステム
US8166146B2 (en) * 2008-09-29 2012-04-24 International Business Machines Corporation Providing improved message handling performance in computer systems utilizing shared network devices
US7885276B1 (en) 2008-09-30 2011-02-08 Emc Corporation Isolating network traffic in multi-tenant virtualization environments
US7962647B2 (en) 2008-11-24 2011-06-14 Vmware, Inc. Application delivery control module for virtual network switch
US8055770B2 (en) 2008-12-15 2011-11-08 At&T Intellectual Property I, L.P. Method and apparatus for providing network virtualization
US8271775B2 (en) 2008-12-17 2012-09-18 Cisco Technology, Inc. Layer two encryption for data center interconnectivity
WO2010071884A2 (en) 2008-12-19 2010-06-24 Watchguard Technologies, Inc. Self-monitoring cluster of network security devices
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US8054832B1 (en) 2008-12-30 2011-11-08 Juniper Networks, Inc. Methods and apparatus for routing between virtual resources based on a routing location policy
US8331362B2 (en) 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US7995483B1 (en) 2009-01-20 2011-08-09 Juniper Networks, Inc. Simultaneously testing connectivity to multiple remote maintenance endpoints of the same maintenance association
US20100192225A1 (en) 2009-01-28 2010-07-29 Juniper Networks, Inc. Efficient application identification with network devices
US7948986B1 (en) 2009-02-02 2011-05-24 Juniper Networks, Inc. Applying services within MPLS networks
JP5419974B2 (ja) 2009-02-19 2014-02-19 華為技術有限公司 ポイントツーマルチポイントドメイン間マルチプロトコルラベルスイッチングトラフィックエンジニアリング経路計算のシステム、及び方法
US8213336B2 (en) 2009-02-23 2012-07-03 Cisco Technology, Inc. Distributed data center access switch
JP5408243B2 (ja) 2009-03-09 2014-02-05 日本電気株式会社 OpenFlow通信システムおよびOpenFlow通信方法
US8265075B2 (en) 2009-03-16 2012-09-11 International Business Machines Corporation Method and apparatus for managing, configuring, and controlling an I/O virtualization device through a network switch
CN104702537B (zh) 2009-04-01 2018-07-10 Nicira股份有限公司 用于实现和管理虚拟交换机的方法和装置
WO2010121216A1 (en) 2009-04-17 2010-10-21 Viasat, Inc. System, method and apparatus for providing end-to-end layer 2 connectivity
US8589919B2 (en) 2009-04-28 2013-11-19 Cisco Technology, Inc. Traffic forwarding for virtual machines
US8027354B1 (en) 2009-04-29 2011-09-27 Cisco Technology, Inc. Network consolidation for virtualized servers
US8867349B2 (en) 2009-05-18 2014-10-21 Cisco Technology, Inc. Regulation of network traffic in virtual private networks
US8229484B2 (en) 2009-06-11 2012-07-24 Genesys Telecommunications Laboratories, Inc. System and methods for integrating short message service messaging with contact center applications
US20100318609A1 (en) 2009-06-15 2010-12-16 Microsoft Corporation Bridging enterprise networks into cloud
US9210065B2 (en) 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
US8644188B1 (en) 2009-06-25 2014-02-04 Amazon Technologies, Inc. Providing virtual networking functionality for managed computer networks
US20110032830A1 (en) 2009-08-06 2011-02-10 Jacobus Van Der Merwe Live Router Migration
US8339994B2 (en) 2009-08-27 2012-12-25 Brocade Communications Systems, Inc. Defining an optimal topology for a group of logical switches
US8619779B2 (en) 2009-09-30 2013-12-31 Alcatel Lucent Scalable architecture for enterprise extension in a cloud topology
US8571031B2 (en) 2009-10-07 2013-10-29 Intel Corporation Configurable frame processing pipeline in a packet switch
US20110085557A1 (en) 2009-10-08 2011-04-14 Brocade Communications Systems, Inc. Partitioning of Switches and Fabrics into Logical Switches and Fabrics
US8599864B2 (en) 2009-10-08 2013-12-03 Brocade Communications Systems, Inc. Transit switches in a network of logical switches
EP2497234B1 (en) 2009-11-02 2018-09-19 Marvell World Trade Ltd. Network device and method based on virtual interfaces
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
CN101764696B (zh) * 2009-11-27 2012-06-27 福建星网锐捷网络有限公司 分布式路由交换设备及其实现方法
US7937438B1 (en) 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
US9036504B1 (en) 2009-12-07 2015-05-19 Amazon Technologies, Inc. Using virtual networking devices and routing information to associate network addresses with computing nodes
US20110134931A1 (en) 2009-12-08 2011-06-09 Jacobus Van Der Merwe Virtual router migration
US8705513B2 (en) 2009-12-15 2014-04-22 At&T Intellectual Property I, L.P. Methods and apparatus to communicatively couple virtual private networks to virtual machines within distributive computing networks
US8331371B2 (en) 2009-12-17 2012-12-11 Amazon Technologies, Inc. Distributed routing architecture
US8325730B2 (en) 2009-12-17 2012-12-04 Amazon Technologies, Inc. Distributed routing architecture
JP5323674B2 (ja) * 2009-12-28 2013-10-23 日本電信電話株式会社 DNS(DomainNameSystem)登録装置、VPN(VirtualPrivateNetwork)間接続管理システム、広域DNS装置、DNS登録プログラム、広域DNSプログラム、DNS登録方法、及びVPN間接続管理方法
US7953865B1 (en) 2009-12-28 2011-05-31 Amazon Technologies, Inc. Using virtual networking devices to manage routing communications between connected computer networks
US8224971B1 (en) 2009-12-28 2012-07-17 Amazon Technologies, Inc. Using virtual networking devices and routing information to initiate external actions
US7991859B1 (en) 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks
US8345688B2 (en) 2010-02-23 2013-01-01 Google Inc. System and method for managing flow of packets
KR101121853B1 (ko) 2010-03-02 2012-03-22 연세대학교 산학협력단 패킷 전달 시스템 및 방법
US8612627B1 (en) 2010-03-03 2013-12-17 Amazon Technologies, Inc. Managing encoded multi-part communications for provided computer networks
US8259571B1 (en) 2010-03-26 2012-09-04 Zscaler, Inc. Handling overlapping IP addresses in multi-tenant architecture
US8224931B1 (en) 2010-03-31 2012-07-17 Amazon Technologies, Inc. Managing use of intermediate destination computing nodes for provided computer networks
US8533719B2 (en) * 2010-04-05 2013-09-10 Oracle International Corporation Cache-aware thread scheduling in multi-threaded systems
JP5450227B2 (ja) * 2010-04-16 2014-03-26 日本電信電話株式会社 トラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法
US8504718B2 (en) 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8625616B2 (en) 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
WO2011140028A1 (en) * 2010-05-03 2011-11-10 Brocade Communications Systems, Inc. Virtual cluster switching
US8989186B2 (en) 2010-06-08 2015-03-24 Brocade Communication Systems, Inc. Virtual port grouping for virtual cluster switching
US8407366B2 (en) 2010-05-14 2013-03-26 Microsoft Corporation Interconnecting members of a virtual network
US8724456B1 (en) 2010-05-19 2014-05-13 Juniper Networks, Inc. Network path selection for multi-homed edges to ensure end-to-end resiliency
MX2012007559A (es) 2010-05-28 2012-07-30 Huawei Tech Co Ltd Capa 2 virtual y mecanismo para hacerla escalable.
US8374183B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Distributed virtual network gateways
CN102971992B (zh) 2010-06-29 2016-03-09 华为技术有限公司 虚拟专用局域网设备、网络组件和数据帧转发方法
US8559324B1 (en) 2010-06-29 2013-10-15 Amazon Technologies, Inc. Network routing metering
US8897303B2 (en) 2010-06-29 2014-11-25 Futurewei Technologies, Inc. Delegate gateways and proxy for target hosts in large layer 2 and address resolution with duplicated internet protocol addresses
US8239572B1 (en) 2010-06-30 2012-08-07 Amazon Technologies, Inc. Custom routing decisions
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US8880468B2 (en) 2010-07-06 2014-11-04 Nicira, Inc. Secondary storage architecture for a network control system that utilizes a primary network information base
US8964528B2 (en) 2010-07-06 2015-02-24 Nicira, Inc. Method and apparatus for robust packet distribution among hierarchical managed switching elements
TWI421791B (zh) 2010-07-16 2014-01-01 Univ Nat Taiwan Science Tech 物流網路之運輸商選擇方法
US8456984B2 (en) 2010-07-19 2013-06-04 Ciena Corporation Virtualized shared protection capacity
US8416709B1 (en) 2010-09-28 2013-04-09 Amazon Technologies, Inc. Network data transmission analysis management
US8565108B1 (en) 2010-09-28 2013-10-22 Amazon Technologies, Inc. Network data transmission analysis
US9717412B2 (en) 2010-11-05 2017-08-01 Gary And Mary West Health Institute Wireless fetal monitoring system
US8737417B2 (en) * 2010-11-12 2014-05-27 Alcatel Lucent Lock-less and zero copy messaging scheme for telecommunication network applications
US8631122B2 (en) 2010-11-29 2014-01-14 Viralheat, Inc. Determining demographics based on user interaction
US8705533B1 (en) 2010-12-10 2014-04-22 Juniper Networks, Inc. Fast packet encapsulation using templates
US9208071B2 (en) 2010-12-13 2015-12-08 SanDisk Technologies, Inc. Apparatus, system, and method for accessing memory
CN103262054B (zh) * 2010-12-13 2015-11-25 桑迪士克科技股份有限公司 用于自动提交存储器的装置、系统和方法
US8769494B2 (en) 2010-12-14 2014-07-01 Microsoft Corporation Globally sound and consistent configuration management for distributed datacenter components
US8824370B2 (en) * 2010-12-16 2014-09-02 Openet Telecom Ltd. Methods, systems and devices for dynamic context-based routing
US8880726B2 (en) * 2010-12-16 2014-11-04 Openet Telecom Ltd. Methods, systems and devices for dynamic context-based routing using a topology tree
US8943221B2 (en) * 2010-12-16 2015-01-27 Openet Telecom Ltd. Methods, systems and devices for pipeline processing
US9001827B2 (en) 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches
US10142218B2 (en) 2011-01-14 2018-11-27 International Business Machines Corporation Hypervisor routing between networks in a virtual networking environment
US9578081B2 (en) * 2011-02-02 2017-02-21 Imvu, Inc. System and method for providing an actively invalidated client-side network resource cache
US8819833B2 (en) * 2011-03-01 2014-08-26 Honeywell International Inc. Assured pipeline threat detection
FR2972884A1 (fr) * 2011-03-15 2012-09-21 France Telecom Procede de communication dans un reseau de communication avec acheminement par nom
US8665739B2 (en) 2011-03-16 2014-03-04 Juniper Networks, Inc. Packet loss measurement at service endpoints of a virtual private LAN service
US9043452B2 (en) 2011-05-04 2015-05-26 Nicira, Inc. Network control apparatus and method for port isolation
CN102780605B (zh) 2011-05-13 2015-05-06 中国科学院声学研究所 一种域间出口路径动态选择方法及系统
US8751872B2 (en) 2011-05-27 2014-06-10 Microsoft Corporation Separation of error information from error propagation information
JP5824911B2 (ja) 2011-06-29 2015-12-02 富士通株式会社 情報処理装置、情報処理プログラムおよび管理方法
US9900224B2 (en) 2011-08-04 2018-02-20 Midokura Sarl System and method for implementing and managing virtual networks
JP5870192B2 (ja) 2011-08-17 2016-02-24 ニシラ, インコーポレイテッド 論理l3ルーティング
US8830835B2 (en) * 2011-08-17 2014-09-09 Nicira, Inc. Generating flows for managed interconnection switches
US9167501B2 (en) 2011-08-29 2015-10-20 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3G packet core in a cloud computer with openflow data and control planes
US8856518B2 (en) * 2011-09-07 2014-10-07 Microsoft Corporation Secure and efficient offloading of network policies to network interface cards
US8606105B2 (en) * 2011-09-15 2013-12-10 Ciena Corporation Virtual core router and switch systems and methods with a hybrid control architecture
US9185056B2 (en) * 2011-09-20 2015-11-10 Big Switch Networks, Inc. System and methods for controlling network traffic through virtual switches
US8751614B2 (en) 2011-10-11 2014-06-10 Telefonaktiebolaget L M Ericsson (Publ) Providing virtualized visibility through routers
US8830820B2 (en) 2011-10-14 2014-09-09 Google Inc. Semi-centralized routing
US9178833B2 (en) 2011-10-25 2015-11-03 Nicira, Inc. Chassis controller
US8745177B1 (en) 2011-11-01 2014-06-03 Edgecast Networks, Inc. End-to-end monitoring and optimization of a content delivery network using anycast routing
JP5714187B2 (ja) 2011-11-15 2015-05-07 ニシラ, インコーポレイテッド ミドルボックスを備えるネットワークのアーキテクチャ
CN109039772B (zh) * 2011-11-29 2021-08-10 亚马逊科技公司 管理直接网络对等操作的接口
JP5522160B2 (ja) 2011-12-21 2014-06-18 トヨタ自動車株式会社 車両ネットワーク監視装置
FR2986012B1 (fr) 2012-01-20 2017-12-01 Saint Gobain Ct Recherches Cuve d'electrolyse.
JP2013157855A (ja) 2012-01-31 2013-08-15 Nec Corp 仮想ネットワークの接続方法、仮想ネットワーク接続装置およびプログラム
US8660129B1 (en) * 2012-02-02 2014-02-25 Cisco Technology, Inc. Fully distributed routing over a user-configured on-demand virtual network for infrastructure-as-a-service (IaaS) on hybrid cloud networks
US9130869B2 (en) 2012-02-09 2015-09-08 Telefonaktiebolaget L M Ericsson (Publ) Methods of redirecting network forwarding elements and related forwarding elements and controllers
US9083644B2 (en) 2012-02-14 2015-07-14 International Business Machines Corporation Packet routing for embedded applications sharing a single network interface over multiple virtual networks
US8923296B2 (en) * 2012-02-23 2014-12-30 Big Switch Networks, Inc. System and methods for managing network packet forwarding with a controller
US8705536B2 (en) 2012-03-05 2014-04-22 Telefonaktiebolaget L M Ericsson (Publ) Methods of operating forwarding elements including shadow tables and related forwarding elements
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
TWI458314B (zh) * 2012-03-22 2014-10-21 Wistron Corp 傳送遠端封包至主機的伺服器系統及其管理方法
KR101761702B1 (ko) 2012-03-30 2017-08-04 노키아 솔루션스 앤드 네트웍스 오와이 분산된 게이트웨이들을 위한 중앙집중화된 ip 어드레스 관리 방법 및 장치
US8856339B2 (en) 2012-04-04 2014-10-07 Cisco Technology, Inc. Automatically scaled network overlay with heuristic monitoring in a hybrid cloud environment
US8923149B2 (en) 2012-04-09 2014-12-30 Futurewei Technologies, Inc. L3 gateway for VXLAN
US9225635B2 (en) 2012-04-10 2015-12-29 International Business Machines Corporation Switch routing table utilizing software defined network (SDN) controller programmed route segregation and prioritization
US9331938B2 (en) * 2012-04-13 2016-05-03 Nicira, Inc. Extension of logical networks across layer 3 virtual private networks
US9021066B1 (en) 2012-04-13 2015-04-28 Juniper Networks, Inc. Providing A-priori information about implication of operator interaction with network device
CN104170334B (zh) 2012-04-18 2017-11-07 Nicira股份有限公司 一种用于管理网络的控制器的配置托管元件的方法及设备
US9064216B2 (en) 2012-06-06 2015-06-23 Juniper Networks, Inc. Identifying likely faulty components in a distributed system
WO2013184941A1 (en) 2012-06-06 2013-12-12 Huawei Technologies Co., Ltd. Method of seamless integration and independent evolution of information-centric networking via software defined networking
EP3451587B1 (en) 2012-06-06 2021-04-28 Juniper Networks, Inc. Creating searchable and global database of user visible process traces
US8959185B2 (en) 2012-06-06 2015-02-17 Juniper Networks, Inc. Multitenant server for virtual networks within datacenter
US8972602B2 (en) 2012-06-15 2015-03-03 Citrix Systems, Inc. Systems and methods for using ECMP routes for traffic distribution
US9451056B2 (en) 2012-06-29 2016-09-20 Avaya Inc. Method for mapping packets to network virtualization instances
CN103546381B (zh) 2012-07-12 2017-06-09 华为技术有限公司 基于内部网关协议创建双向组播分发树的方法、装置及系统
US9094459B2 (en) 2012-07-16 2015-07-28 International Business Machines Corporation Flow based overlay network
US9172557B2 (en) 2012-08-17 2015-10-27 International Business Machines Corporation Load balancing overlay network traffic using a teamed set of network interface cards
US9563480B2 (en) 2012-08-21 2017-02-07 Rackspace Us, Inc. Multi-level cloud computing system
US11074025B2 (en) 2012-09-03 2021-07-27 Semiconductor Energy Laboratory Co., Ltd. Display device and method for manufacturing the same
US9055004B2 (en) * 2012-09-18 2015-06-09 Cisco Technology, Inc. Scalable low latency multi-protocol networking device
US9071529B2 (en) 2012-10-08 2015-06-30 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for accelerating forwarding in software-defined networks
WO2014078820A1 (en) 2012-11-19 2014-05-22 Unisys Corporation Translating function calls in virtualized environments
US9454392B2 (en) 2012-11-27 2016-09-27 Red Hat Israel, Ltd. Routing data packets between virtual machines using shared memory without copying the data packet
US9535871B2 (en) 2012-11-27 2017-01-03 Red Hat Israel, Ltd. Dynamic routing through virtual appliances
US9363172B2 (en) 2012-11-27 2016-06-07 Red Hat Israel, Ltd. Managing a configurable routing scheme for virtual appliances
US9036639B2 (en) 2012-11-29 2015-05-19 Futurewei Technologies, Inc. System and method for VXLAN inter-domain communications
US9197596B2 (en) 2012-12-18 2015-11-24 Dell Products, Lp System and method to use common addresses on a management controller without conflict
CN105684365B (zh) 2013-02-12 2020-03-24 慧与发展有限责任合伙企业 利用软件定义流映射和虚拟化的网络功能的网络控制
CN104009929B (zh) * 2013-02-21 2019-01-18 中兴通讯股份有限公司 一种管理虚拟路由器的方法及物理路由器
US20140269299A1 (en) 2013-03-14 2014-09-18 Hewlett-Packard Development Company, L.P. Network controller normalization of network traffic
US8982707B2 (en) 2013-03-14 2015-03-17 Cisco Technology, Inc. Interoperability of data plane based overlays and control plane based overlays in a network environment
US9197520B2 (en) 2013-03-15 2015-11-24 Microsoft Technology Licensing, Llc Methods and computer program products for transaction analysis of network traffic in a network device
US10135914B2 (en) 2013-04-16 2018-11-20 Amazon Technologies, Inc. Connection publishing in a distributed load balancer
US9210074B2 (en) 2013-05-03 2015-12-08 Alcatel Lucent Low-cost flow matching in software defined networks without TCAMs
US9203738B2 (en) 2013-05-21 2015-12-01 Cisco Technology, Inc. Optimal forwarding for trill fine-grained labeling and VXLAN interworking
US9471356B2 (en) 2013-06-12 2016-10-18 Dell Products L.P. Systems and methods for providing VLAN-independent gateways in a network virtualization overlay implementation
US9160650B2 (en) 2013-06-17 2015-10-13 Futurewei Technologies, Inc. Enhanced flow entry table cache replacement in a software-defined networking switch
US9509614B2 (en) 2013-06-20 2016-11-29 Cisco Technology, Inc. Hierarchical load balancing in a network environment
US20140376550A1 (en) 2013-06-24 2014-12-25 Vmware, Inc. Method and system for uniform gateway access in a virtualized layer-2 network domain
US9515924B2 (en) 2013-07-03 2016-12-06 Avaya Inc. Method and apparatus providing single-tier routing in a shortest path bridging (SPB) network
US9325630B2 (en) 2013-07-05 2016-04-26 Red Hat, Inc. Wild card flows for switches and virtual switches based on hints from hypervisors
CN105379197B (zh) 2013-07-05 2019-01-11 华为技术有限公司 建立隧道的方法、分配标签的方法、设备及网络系统
US9350657B2 (en) 2013-07-08 2016-05-24 Nicira, Inc. Encapsulating data packets using an adaptive tunnelling protocol
US9130775B2 (en) 2013-07-10 2015-09-08 Cisco Technology, Inc. Support for virtual extensible local area network segments across multiple data center sites
US9197529B2 (en) 2013-07-12 2015-11-24 Nicira, Inc. Tracing network packets through logical and physical networks
US20160182287A1 (en) 2013-07-30 2016-06-23 Nec Corporation Control apparatus, management apparatus, control method, management method, and program
US10356037B2 (en) 2013-08-01 2019-07-16 Hewlett Packard Enterprise Development Lp Address resolution rewriting
US9887960B2 (en) 2013-08-14 2018-02-06 Nicira, Inc. Providing services for logical networks
US9819505B2 (en) 2013-08-20 2017-11-14 Cisco Technology, Inc. Group bundling priority dissemination through link-state routing protocol in a network environment
WO2015027357A1 (en) 2013-08-30 2015-03-05 Telefonaktiebolaget L M Ericsson (Publ) Ipv4 and ipv6 support in an mbms network
US9654390B2 (en) * 2013-09-03 2017-05-16 Cisco Technology, Inc. Method and apparatus for improving cloud routing service performance
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
US9674087B2 (en) 2013-09-15 2017-06-06 Nicira, Inc. Performing a multi-stage lookup to classify packets
US9491094B2 (en) 2013-09-25 2016-11-08 Cisco Techonology, Inc. Path optimization in distributed service chains in a network environment
US9444721B2 (en) 2013-09-30 2016-09-13 Juniper Networks, Inc. Two-part metric for link state routing protocols
US20150098475A1 (en) 2013-10-09 2015-04-09 International Business Machines Corporation Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality
US10063458B2 (en) 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9910686B2 (en) 2013-10-13 2018-03-06 Nicira, Inc. Bridging between network segments with a logical router
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US9774667B2 (en) 2013-11-08 2017-09-26 Vmware, Inc. System and method for dynamically configuring a load balancer in a virtual network environment
US9385925B1 (en) 2013-12-16 2016-07-05 Amazon Technologies, Inc. Anycast route detection
US20150172156A1 (en) 2013-12-18 2015-06-18 Cisco Technology, Inc. Detecting end hosts in a distributed network environment
GR20130100707A (el) 2013-12-23 2015-07-31 Arm Limited, Μεταφραση διευθυνσης σε μια συσκευη επεξεργασιας δεδομενων
US10009287B2 (en) 2013-12-26 2018-06-26 Huawei Technologies Co., Ltd. Hierarchical software-defined network traffic engineering controller
US9548896B2 (en) 2013-12-27 2017-01-17 Big Switch Networks, Inc. Systems and methods for performing network service insertion
WO2015100656A1 (zh) 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
US9473414B2 (en) 2014-02-06 2016-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for supporting packet prioritization at a data network
US9749214B2 (en) 2014-02-26 2017-08-29 Futurewei Technologies, Inc. Software defined networking (SDN) specific topology information discovery
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9590901B2 (en) * 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
WO2015142404A1 (en) 2014-03-21 2015-09-24 Nicira, Inc. Dynamic routing for logical routers
US9641435B1 (en) 2014-03-28 2017-05-02 Juniper Neworks, Inc. Packet segmentation offload for virtual networks
US9344373B2 (en) 2014-06-13 2016-05-17 International Business Machines Corporation Packet I/O support for a logical switch router architecture
US9716687B2 (en) 2014-06-19 2017-07-25 Cisco Technology, Inc. Distributed gateways for overlay networks
CN105471740B (zh) 2014-07-09 2018-10-12 新华三技术有限公司 基于软件定义网络的网关迁徙处理方法及装置
US10129181B2 (en) 2014-08-16 2018-11-13 New York University Controlling the reactive caching of wildcard rules for packet processing, such as flow processing in software-defined networks
US9531720B2 (en) * 2014-09-02 2016-12-27 Akamai Technologies, Inc. System and methods for leveraging an object cache to monitor network traffic
US11178051B2 (en) 2014-09-30 2021-11-16 Vmware, Inc. Packet key parser for flow-based forwarding elements
US10931478B2 (en) 2014-10-14 2021-02-23 Mido Holdings Ltd. System and method for distributed flow state P2P setup in virtual networks
US9948472B2 (en) 2014-10-22 2018-04-17 Juniper Networks, Inc. Protocol independent multicast sparse mode (PIM-SM) support for data center interconnect
US10079740B2 (en) * 2014-11-04 2018-09-18 Fermi Research Alliance, Llc Packet capture engine for commodity network interface cards in high-speed networks
US9819574B2 (en) 2014-11-07 2017-11-14 Cisco Technology, Inc. Concerted multi-destination forwarding in a joint TRILL fabric and VXLAN/IP fabric data center
US10171559B2 (en) 2014-11-21 2019-01-01 Cisco Technology, Inc. VxLAN security implemented using VxLAN membership information at VTEPs
US9882815B2 (en) 2014-12-22 2018-01-30 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive load balancing in packet processing
US9787573B2 (en) 2014-12-31 2017-10-10 Juniper Networks, Inc. Fast convergence on link failure in multi-homed Ethernet virtual private networks
US10129180B2 (en) 2015-01-30 2018-11-13 Nicira, Inc. Transit logical switch within logical router
CN105991430B (zh) 2015-03-05 2022-01-14 李明 跨多个自治网络系统的数据路由
US10146702B2 (en) 2015-03-09 2018-12-04 Intel Corporation Memcached systems having local caches
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9634934B2 (en) 2015-05-08 2017-04-25 Cisco Technology, Inc. Dynamic host configuration protocol relay in a multipod fabric
US9800497B2 (en) 2015-05-27 2017-10-24 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US11204791B2 (en) 2015-06-30 2021-12-21 Nicira, Inc. Dynamic virtual machine network policy for ingress optimization
US9819581B2 (en) 2015-07-31 2017-11-14 Nicira, Inc. Configuring a hardware switch as an edge node for a logical router
US9847938B2 (en) 2015-07-31 2017-12-19 Nicira, Inc. Configuring logical routers on hardware switches
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
WO2017027073A1 (en) 2015-08-11 2017-02-16 Nicira, Inc. Route configuration for logical router
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US10165093B2 (en) 2015-08-31 2018-12-25 Cisco Technology, Inc. Generating segment routing conduit in service provider network for routing packets
US10270687B2 (en) 2015-09-07 2019-04-23 Citrix Systems, Inc. Systems and methods for dynamic routing on a shared IP address
US10361972B2 (en) 2015-09-23 2019-07-23 Citrix Systems, Inc. Systems and methods to support VXLAN in partition environment where a single system acts as multiple logical systems to support multitenancy
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US9800433B2 (en) 2015-12-16 2017-10-24 At&T Intellectual Property I, L.P. Method and apparatus for providing a point-to-point connection over a network
US10237142B2 (en) 2016-04-04 2019-03-19 Nicira, Inc. Troubleshooting virtual network reachability
CN105791412A (zh) 2016-04-04 2016-07-20 合肥博雷电子信息技术有限公司 一种大数据处理平台网络架构
US10320681B2 (en) 2016-04-12 2019-06-11 Nicira, Inc. Virtual tunnel endpoints for congestion-aware load balancing
US10454877B2 (en) 2016-04-29 2019-10-22 Cisco Technology, Inc. Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10819678B2 (en) 2016-08-24 2020-10-27 British Telecommunications Public Limited Company Data network address sharing between multiple elements associated with a shared network interface unit
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10382321B1 (en) 2017-03-28 2019-08-13 Juniper Networks, Inc. Aggregate link bundles in label switched paths
US10432513B2 (en) 2017-07-14 2019-10-01 Nicira, Inc. Asymmetric network elements sharing an anycast address
US10623322B1 (en) 2017-09-15 2020-04-14 Juniper Networks, Inc. Dynamic prefix list for route filtering
US11032183B2 (en) 2017-10-06 2021-06-08 Nicira, Inc. Routing information validation in SDN environments
US10771590B2 (en) 2018-03-07 2020-09-08 Ciena Corporation Systems and methods for intelligent routing and content placement in information centric networks
US10673757B2 (en) 2018-06-05 2020-06-02 Arista Networks, Inc. System and method of a data processing pipeline with policy based routing
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595918A (zh) * 2003-10-29 2005-03-16 深圳市研祥智能科技股份有限公司 多功能宽带网关及其通信方法
US20150063364A1 (en) * 2013-09-04 2015-03-05 Nicira, Inc. Multiple Active L3 Gateways for Logical Networks
US20150271011A1 (en) * 2014-03-21 2015-09-24 Nicira, Inc. Dynamic routing for logical routers
US20150271303A1 (en) * 2014-03-21 2015-09-24 Nicira, Inc. Multiple levels of logical routers
CN103888555A (zh) * 2014-03-26 2014-06-25 清华大学 一种IPv4/IPv6无状态翻译算法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KANG LI ET AL.: ""Fast Forwarding System for Centralized Router"", 《IEEE》 *
于洋等: ""基于NAT-PT和隧道的过渡网关研究与实现"", 《通信技术》 *
刘五苟 等 *
周振勇: ""基于DS-lite的IP城域网向IPv6演进过渡方案研究"", 《邮电设计技术》 *

Also Published As

Publication number Publication date
US20190207870A1 (en) 2019-07-04
CN115442303A (zh) 2022-12-06
US10129180B2 (en) 2018-11-13
JP2021184604A (ja) 2021-12-02
US10110514B2 (en) 2018-10-23
US10153987B2 (en) 2018-12-11
US20160226959A1 (en) 2016-08-04
US10050905B2 (en) 2018-08-14
US20160226961A1 (en) 2016-08-04
EP3700144A1 (en) 2020-08-26
US11343204B2 (en) 2022-05-24
EP3251306B1 (en) 2020-01-15
CN111865775A (zh) 2020-10-30
EP3654592B1 (en) 2023-03-08
US10700996B2 (en) 2020-06-30
US20230362105A1 (en) 2023-11-09
US9973445B2 (en) 2018-05-15
CN115442302A (zh) 2022-12-06
US10193828B2 (en) 2019-01-29
US9979677B2 (en) 2018-05-22
CN107210959B (zh) 2020-08-25
CN108293021B (zh) 2021-01-22
AU2019203294B2 (en) 2020-10-08
US20200267095A1 (en) 2020-08-20
CA3148877A1 (en) 2016-08-04
WO2017099901A1 (en) 2017-06-15
AU2019203294A1 (en) 2019-05-30
US20220255882A1 (en) 2022-08-11
US10057191B2 (en) 2018-08-21
US20240007419A1 (en) 2024-01-04
US20160226763A1 (en) 2016-08-04
EP3700144B1 (en) 2024-07-03
US10079779B2 (en) 2018-09-18
WO2017099900A1 (en) 2017-06-15
US20160226957A1 (en) 2016-08-04
AU2021245096A1 (en) 2021-10-28
US20160226795A1 (en) 2016-08-04
US11283731B2 (en) 2022-03-22
US10798023B2 (en) 2020-10-06
AU2016211222B2 (en) 2019-02-14
US20160226822A1 (en) 2016-08-04
EP3251306A1 (en) 2017-12-06
US11929943B2 (en) 2024-03-12
US9787605B2 (en) 2017-10-10
CA2974535A1 (en) 2016-08-04
AU2021200083A1 (en) 2021-03-18
US20160226958A1 (en) 2016-08-04
US20160226700A1 (en) 2016-08-04
US10084726B2 (en) 2018-09-25
JP2018507635A (ja) 2018-03-15
EP3366012A1 (en) 2018-08-29
WO2016123550A1 (en) 2016-08-04
US11799800B2 (en) 2023-10-24
AU2023219914A1 (en) 2023-09-14
US20160226821A1 (en) 2016-08-04
JP6908525B2 (ja) 2021-07-28
CN115442302B (zh) 2024-06-21
US10700997B2 (en) 2020-06-30
CA2974535C (en) 2022-05-03
US10243883B2 (en) 2019-03-26
US11706159B2 (en) 2023-07-18
AU2021200083B2 (en) 2021-07-29
WO2017079068A1 (en) 2017-05-11
CN107210959A (zh) 2017-09-26
US20160226960A1 (en) 2016-08-04
US20200287843A1 (en) 2020-09-10
EP3366012B1 (en) 2020-04-22
US20220141155A1 (en) 2022-05-05
US20190020600A1 (en) 2019-01-17
US20160226762A1 (en) 2016-08-04
US11095574B2 (en) 2021-08-17
US20160226967A1 (en) 2016-08-04
JP2022191323A (ja) 2022-12-27
US20160226759A1 (en) 2016-08-04
AU2016211222A1 (en) 2017-09-07
JP7153774B2 (ja) 2022-10-14
CN115442303B (zh) 2024-06-25
US20160226754A1 (en) 2016-08-04
EP3654592A1 (en) 2020-05-20
CN111865775B (zh) 2022-09-16
US10341257B2 (en) 2019-07-02
AU2021245096B2 (en) 2023-05-25
US20210377186A1 (en) 2021-12-02
JP7417826B2 (ja) 2024-01-19
US20190306085A1 (en) 2019-10-03
CN108293021A (zh) 2018-07-17

Similar Documents

Publication Publication Date Title
CN108293021B (zh) 边缘网关处的动态数据通路
US11115465B2 (en) Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table
US10491516B2 (en) Packet communication between logical networks and public cloud service providers native networks using a single network interface and a single routing table
WO2019040720A1 (en) ACCESS TO END POINTS IN LOGIC NETWORKS AND NATIVE NETWORKS OF PUBLIC CLOUD SERVICE PROVIDERS USING ONLY ONE NETWORK INTERFACE AND ONE ROUTING TABLE

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