Patent ID: 9525627
Filing Date: 2016-12-20
CPC Classification: H04L

Claim Text:
1. A method implemented by data processing apparatus, the method comprising: receiving, from a particular source network of a plurality of source networks and at an edge device external to the particular source network and within a second network, a first network packet, the first network packet including a first inner header, the first inner header including i) a first source address specifying a user device included in the particular source network from which the first network packet originated, and ii) a first destination address specifying a destination server to which the first network packet is addressed; selecting a particular identifier for the particular source network from a plurality of routable identifiers that each uniquely identify one of the plurality of source networks, the particular identifier being different from the first source address; encapsulating the first network packet within a first encapsulation packet, the first encapsulation packet including a first outer header, the first outer header including i) a first outer source address specifying the particular identifier, and ii) a first outer destination address that is the first destination address; routing the first encapsulation packet to the destination server within the second network; receiving, from the destination server, a second encapsulation packet, the second encapsulation packet including a second network packet that includes a second outer header, the second outer header including i) a second outer source address that is the first destination address specifying the destination server from which the second encapsulation packet originated, and ii) a second destination address specifying the particular identifier to which the second encapsulation packet is addressed; extracting the second network packet from the second encapsulation packet, the second network packet including a second inner header, the second inner header including i) a second source address that is the first destination address, and ii) a second destination address that is the first source address; and routing the second network packet to the particular source network based on the particular identifier.