Patent ID: 8289968

Claim:
A method of allocating network resources for use in network address translation (NAT), the method comprising: storing, with one of the plurality of NAT modules executing in a network device, data defining a local pool of two or more unallocated NAT resources for use in performing network address translation but that have not yet been allocated for use in performing network address translation, wherein each of the NAT resources of the local pool of NAT resources includes a network address and a network port number; receiving, with the one of the plurality of NAT modules, a packet that includes a source address; determining, with the one of the plurality of NAT modules, whether any of the NAT resources from the local pool of NAT resources are available for use in obscuring the source address; in response to the determination that none of the NAT resources from the local pool of NAT resources are available for use in obscuring the source address, requesting, with the one of the plurality of NAT modules, one or more additional NAT resources for use in obscuring the source address; performing, with the one of the plurality of NAT modules, network address translation to obscure the source address of the packet using one of the one or more additional NAT resources to generate a modified packet; and forwarding, with the network device, the modified packet to a destination identified by a destination address specified within the modified packet.