Patent classifications
H04L61/2514
Overlay network encapsulation to forward data message flows through multiple public cloud datacenters
Some embodiments establish for an entity a virtual network over several public clouds of several public cloud providers and/or in several regions. In some embodiments, the virtual network is an overlay network that spans across several public clouds to interconnect one or more private networks (e.g., networks within branches, divisions, departments of the entity or their associated datacenters), mobile users, and SaaS (Software as a Service) provider machines, and other web applications of the entity. The virtual network in some embodiments can be configured to optimize the routing of the entity's data messages to their destinations for best end-to-end performance, reliability and security, while trying to minimize the routing of this traffic through the Internet. Also, the virtual network in some embodiments can be configured to optimize the layer 4 processing of the data message flows passing through the network.
Overlay network encapsulation to forward data message flows through multiple public cloud datacenters
Some embodiments establish for an entity a virtual network over several public clouds of several public cloud providers and/or in several regions. In some embodiments, the virtual network is an overlay network that spans across several public clouds to interconnect one or more private networks (e.g., networks within branches, divisions, departments of the entity or their associated datacenters), mobile users, and SaaS (Software as a Service) provider machines, and other web applications of the entity. The virtual network in some embodiments can be configured to optimize the routing of the entity's data messages to their destinations for best end-to-end performance, reliability and security, while trying to minimize the routing of this traffic through the Internet. Also, the virtual network in some embodiments can be configured to optimize the layer 4 processing of the data message flows passing through the network.
ENABLING NAT FOR USER PLANE TRAFFIC
Systems and methods for providing Network Address Translation (NAT) are provided. In some embodiments, a method of operating a function entity configured to support NAT includes enabling a Control Plane (CP) function to instruct a User Plane (UP) function to apply a NAT function for at least one specific service data flow. In this way, one or more benefits result such as: introducing a mechanism allowing CP function to instruct UP function to perform NAT function for one or more service data flow(s); when CP and UP function are separated, using NAT function can protect a private network from potential unlawful incursion, and delaying NAT IP address and port allocation and withdrawal at the service initiation and termination can save the public IP address space. Also, one or more improvements such as allowing the network operator to support NAT policies in the context of 4G/5G networks supporting CUPS are disclosed.
ENABLING NAT FOR USER PLANE TRAFFIC
Systems and methods for providing Network Address Translation (NAT) are provided. In some embodiments, a method of operating a function entity configured to support NAT includes enabling a Control Plane (CP) function to instruct a User Plane (UP) function to apply a NAT function for at least one specific service data flow. In this way, one or more benefits result such as: introducing a mechanism allowing CP function to instruct UP function to perform NAT function for one or more service data flow(s); when CP and UP function are separated, using NAT function can protect a private network from potential unlawful incursion, and delaying NAT IP address and port allocation and withdrawal at the service initiation and termination can save the public IP address space. Also, one or more improvements such as allowing the network operator to support NAT policies in the context of 4G/5G networks supporting CUPS are disclosed.
METHODS AND SYSTEMS FOR SERVICE DISTRIBUTION USING DATA PATH STATE REPLICATION AND INTERMEDIATE DEVICE MAPPING
Network traffic flows can be processed by routers, switches, or service nodes. Service nodes may be ASICs that can provide the functionality of a switch or a router. Service nodes can be configured in a circular replication chain, thereby providing benefits such as high reliability. The service nodes can implement methods that include receiving a first packet that includes a source address in a source address field and that includes a destination address in a destination address field. The first packet can be routed to a selected service node that is in the replication chain that includes a plurality of service nodes that are configured for chain replication of a service state information. A service node configured for NAT or some other service can use the first packet to produce a translated packet that can be transmitted toward a destination indicated by the destination address.
DYNAMIC PORT ALLOCATIONS IN CARRIER GRADE NETWORK ADDRESS TRANSLATION NETWORKS
An example method includes receiving a domain name server (DNS) query initiated by an endpoint device, determining a current port assignment for the endpoint device, changing an allocation of ports for the endpoint device from the current port assignment based on a predicted port allocation need for a current communication session associated with the domain name server query, and performing a network address translation in accordance with the allocation of ports for the endpoint device.
Applying network policies to devices based on their current access network
A server of a distributed computing system that is at least partially hosted on a particular access network receives a plurality of messages from a plurality of devices over a network, each of the messages associated with a corresponding source address. For each of the plurality of devices, a current access network is determined for the device. For each of the devices with a current access network being the particular access network, a first network policy is applied to the device. For each of the devices with a current access network being other than the particular access network, a second network policy is applied to the device, the second network policy defining a second encryption requirement.
Assignment of unique physical network addresses for logical network addresses
Some embodiments provide a method for a network controller that manages multiple logical networks implemented by multiple managed forwarding elements (MFEs) operating on multiple host machines. The method receives a notification from a particular MFE that an interface corresponding to a logical port of a logical forwarding element has connected to the particular MFE and has a particular logical network address. The method assigns a unique physical network address to the interface. Each of multiple interfaces connected to the particular MFE is assigned a different physical network address. The method provides the assigned unique physical network address to the particular MFE for the particular MFE to convert data messages sent from the particular logical network address to have the unique physical network address.
Assignment of unique physical network addresses for logical network addresses
Some embodiments provide a method for a network controller that manages multiple logical networks implemented by multiple managed forwarding elements (MFEs) operating on multiple host machines. The method receives a notification from a particular MFE that an interface corresponding to a logical port of a logical forwarding element has connected to the particular MFE and has a particular logical network address. The method assigns a unique physical network address to the interface. Each of multiple interfaces connected to the particular MFE is assigned a different physical network address. The method provides the assigned unique physical network address to the particular MFE for the particular MFE to convert data messages sent from the particular logical network address to have the unique physical network address.
Flow-based local egress in a multisite datacenter
A method for a hypervisor to implement flow-based local egress in a multisite datacenter is disclosed. The method comprises: determining whether a first data packet of a first data flow has been received. If the first data packet has been received, then the hypervisor determines a MAC address of a first local gateway in a first site of a multisite datacenter that communicated the first data packet, and stores the MAC address of the first local gateway and a 5-tuple for the first data flow. Upon determining that a response for the first data flow has been received, the hypervisor determines whether the response includes the MAC address of the first local gateway. If the response includes a MAC address of another local gateway, then the hypervisor replaces, in the response, the MAC address of another local gateway with the MAC address of the first local gateway.