A port reservation API for an intelligent transparent gateway is provided.
The API creates one or more port pools that contain port numbers reserved
from the gateway's TCP and UDP port numbers. The API then allows the
proxy to reserve and release port numbers from the created pools. The API
may create and destroy a port reservation, and acquire and release a port
number. The creation of a port reservation returns a handle to the
network application that can be used for requesting port numbers. The
destroying of a port reservation destroys a handle supplied by the
previous operation, returning all outstanding port numbers to the network
gateway. The acquiring of a port number from a reservation requests one
or more port numbers from the network gateway. Finally, the releasing of
a port number to a reservation returns one or more previously acquired
port numbers to the network gateway.