Patent ID: 7839855

Claim:
A method comprising: receiving, at a network device having a layer 2 network address, a first layer 2 network packet from a client, the first layer 2 network packet having a layer 2 destination address and a layer 2 source address, the layer 2 destination address of the first layer 2 network packet being the layer 2 network address of the network device, the first layer 2 network packet encapsulating a layer 3 network packet, the layer 3 network packet having a layer 3 destination address, the layer 3 destination address being a layer 3 network address of a host; forwarding the first layer 2 network packet to a next-hop layer 3 device having a layer 2 network address by (a) associating the host with a particular next-hop layer 3 device connected to the network device, (b) creating a modified first layer 2 network packet by overwriting the layer 2 destination address of the first layer 2 network packet with the layer 2 network address of the next-hop layer 3 device, and (c) sending the modified first layer 2 network packet over a network, the modified first layer 2 network packet retaining the original layer 2 source address of the first layer 2 network packet; receiving, at the network device, a second layer 2 network packet from the next-hop layer 3 device, the second layer 2 network packet having a layer 2 destination address and a layer 2 source address, the layer 2 destination address of the second layer 2 network packet being the layer 2 network address of the client; and forwarding the second layer 2 network packet to the client by (a) creating a modified second layer 2 network packet by overwriting the layer 2 source address of the second layer 2 network packet with the layer 2 network address of the network device and (b) sending the modified second layer 2 network packet over a network, the modified second layer 2 network packet retaining the original layer 2 destination address; wherein the network device is connected to the client over a first layer 2 network and the network device is connected to the next-hop layer 3 device over a second layer 2 network, the first and second layer 2 networks being distinct; wherein the network device and the first layer 2 network are under the control of an access service provider (ASP); wherein the network device connects to a plurality of internet gateways across the second layer 2 network, each internet gateway of the plurality of internet gateways being under the control of a distinct internet service provider (ISP), at least one ISP being distinct from the ASP; wherein each ISP assigns layer 3 network addresses to clients contracting with that ISP, independently of the other ISPs; wherein associating the host with the particular next-hop layer 3 device connected to the network device includes: selecting an ISP that contracts with the client; associating the host with the internet gateway distinctly under the control of that ISP as the particular next-hop layer 3 device.