Techniques for network address and port translation for network protocols that do not use translated ports when requesting network resources
First Claim
1. A method for translating between logical addresses and ports of a first network and a logical address and ports of a second network connected to the first network at an intermediate device, the method comprising the computer-implemented step of:
- receiving at the intermediate device a first packet from a first device having a first address on the first network;
sending a second packet to a second device on the second network in response to receiving the first packet, the second packet including, in a source address field, data indicating a particular address of the intermediate device on the second network;
determining whether the first packet includes a first message that registers a first resource on the first device with a protocol server for a particular protocol, the protocol server available at the second device on the second network, wherein;
the particular protocol does not support translated ports for requesting network resources, andthe protocol server is configured to register unique names for resources provided by devices on the second network according to the particular protocol; and
if it is determined that the first packet includes the first message registering the first resource, thendetermining first information in the first message for uniquely requesting the first resource, andstoring data indicating the first information in a first data structure in association with the first address,wherein the intermediate device performs the steps of determining the first information in the first message and storing data indicating the first information in the first data structure.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for translating between logical addresses and ports of a first network, and logical addresses and ports of a second network connected to the first network at an intermediate device include receiving a first packet at the intermediate device from a first device having a first address on the first network. A second packet is sent to a second device on the second network in response to receiving the first packet. The second packet includes, in a source address field, a particular address of the intermediate device on the second network. It is determined whether the first packet includes a resource registration message that registers a first resource on the first device with a protocol server for a particular protocol. The protocol server is available at the second device on the second network. If the first packet includes the resource registration message, then information in the resource registration message for uniquely requesting the first resource is determined. The first information is stored in a first data structure in association with the first address. As a result, network address and port translation (NAPT) functions in a system using NetBIOS protocol.
55 Citations
28 Claims
-
1. A method for translating between logical addresses and ports of a first network and a logical address and ports of a second network connected to the first network at an intermediate device, the method comprising the computer-implemented step of:
-
receiving at the intermediate device a first packet from a first device having a first address on the first network; sending a second packet to a second device on the second network in response to receiving the first packet, the second packet including, in a source address field, data indicating a particular address of the intermediate device on the second network; determining whether the first packet includes a first message that registers a first resource on the first device with a protocol server for a particular protocol, the protocol server available at the second device on the second network, wherein; the particular protocol does not support translated ports for requesting network resources, and the protocol server is configured to register unique names for resources provided by devices on the second network according to the particular protocol; and if it is determined that the first packet includes the first message registering the first resource, then determining first information in the first message for uniquely requesting the first resource, and storing data indicating the first information in a first data structure in association with the first address, wherein the intermediate device performs the steps of determining the first information in the first message and storing data indicating the first information in the first data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-readable medium carrying one or more sequences of instructions for translating between logical addresses and ports of a first network, and logical addresses and ports of a second network connected to the first network at an intermediate device, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
receiving at the intermediate device a first packet from a first device having a first address on the first network; sending a second packet to a second device on the second network in response to receiving the first packet, the second packet including, in a source address field, data indicating a particular address of the intermediate device on the second network; determining whether the first packet includes a first message that registers a first resource on the first device with a protocol server for a particular protocol, the protocol server available at the second device on the second network, wherein; the particular protocol does not support translated ports for requesting network resources, and the protocol server is configured to register unique names for resources provided by devices on the second network according to the particular protocol; and if it is determined that the first packet includes the first message registering the first resource, then determining first information in the first message for uniquely requesting the first resource, and storing data indicating the first information in a first data structure in association with the first address, wherein the intermediate device performs the steps of determining the first information in the first message and storing data indicating the first information in the first data structure.
-
-
17. An apparatus comprising an intermediate networking device for translating between logical addresses and ports of a first network, and logical addresses and ports of a second network connected to the first network at the intermediate device, comprising:
-
means for receiving at the intermediate device a first packet from a first device having a first address on the first network; means for sending a second packet to a second device on the second network in response to receiving the first packet, the second packet including, in a source address field, data indicating a particular address of the intermediate device on the second network; means for determining whether the first packet includes a first message that registers a first resource on the first device with a protocol server for a particular protocol, the protocol server available at the second device on the second network, wherein; the particular protocol does not support translated ports for requesting network resources, and the protocol server is configured to register unique names for resources provided by devices on the second network according to the particular protocol; means for determining first information in the first message for uniquely requesting the first resource, if it is determined that the first packet includes the first message, and means for storing data indicating the first information in a first data structure in association with the first address, if it is determined that the first packet includes the first message. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
18. An apparatus comprising an intermediate networking device for translating between logical addresses and ports of a first network, and logical addresses and ports of a second network connected to the first network through the intermediate device, comprising:
-
a first network interface that is coupled to the first network for sending and receiving messages thereon; a second network interface that is coupled to the second network for sending and receiving messages thereon; a processor; one or more stored sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of; receiving at the intermediate device a first packet from a first device having a first address on the first network; sending a second packet to a second device on the second network in response to receiving the first packet, the second packet including, in a source address field, data indicating a particular address of the intermediate device on the second network; determining whether the first packet includes a first message that registers a first resource on the first device with a protocol server for a particular protocol, the protocol server available at the second device on the second network, wherein; the particular protocol does not support translated ports for requesting network resources, and the protocol server is configured to register unique names for resources provided by devices on the second network according to the particular protocol; and if it is determined that the first packet includes the first message registering the first resource, then determining first information in the first message for uniquely requesting the first resource, and storing data indicating the first information in a first data structure in association with the first address. - View Dependent Claims (24, 25, 26, 27, 28)
-
Specification