Apparatus and methods for determining the correct workstation within a LAN for a LAN modem to route a packet
First Claim
1. Apparatus for a router comprising:
- a processor;
a memory, connected to the processor for storing executable instructions; and
communication circuitry, operative in response to the processor, for interconnecting first and second networks together so as to receive and transmit packets on said first and second networks;
wherein the processor, in response to execution of the stored instructions, performs the following operations;
(A) searches for an entry in a network address (NAT) table matching a header portion of a received packet and, if found, routes the received packet to an appropriate destination;
(B) searches, if the operation (A) above is unsuccessful, for an entry in a static table matching the header portion of the received packet, and, if found, routes the received packet to the appropriate destination;
(C) searches, if the operations (A) and (B) above steps are unsuccessful, for an entry in the NAT table having an identifier matching the header portion, and, if found, creates a NAT table entry and routing the received packet to the appropriate destination; and
(D) identifies, if the operations (A), (B) and (C) steps are unsuccessful, a profile to which a remote server that provided the received packet belongs, and, routes the received packet to the appropriate destination.
5 Assignments
0 Petitions
Accused Products
Abstract
A LAN modem permits unambiguous routing for multiple workstations located on a LAN to each gain access through the LAN modem to any one of a number of different remote servers located on a number of different remote networks using a combination of public port number and public address of the workstation. There are instances where sessions are changed between the same workstation/server. This changing of sessions changes the public port numbers associated with each session, which destroys the above unambiguous routing, since the combination of a public destination IP address and a private destination port number is no longer the same unique value contained in an address translation table of the LAN modem. A four step hierarchical procedure is provided in which the LAN modem determines which workstation the packet is to be routed based upon value of fields stored in the network address translation (NAT) table or value of fields stored in a static table. The NAT table or static table entries are compared to the values of fields stored in the packet header.
88 Citations
9 Claims
-
1. Apparatus for a router comprising:
-
a processor;
a memory, connected to the processor for storing executable instructions; and
communication circuitry, operative in response to the processor, for interconnecting first and second networks together so as to receive and transmit packets on said first and second networks;
wherein the processor, in response to execution of the stored instructions, performs the following operations;
(A) searches for an entry in a network address (NAT) table matching a header portion of a received packet and, if found, routes the received packet to an appropriate destination;
(B) searches, if the operation (A) above is unsuccessful, for an entry in a static table matching the header portion of the received packet, and, if found, routes the received packet to the appropriate destination;
(C) searches, if the operations (A) and (B) above steps are unsuccessful, for an entry in the NAT table having an identifier matching the header portion, and, if found, creates a NAT table entry and routing the received packet to the appropriate destination; and
(D) identifies, if the operations (A), (B) and (C) steps are unsuccessful, a profile to which a remote server that provided the received packet belongs, and, routes the received packet to the appropriate destination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
compares a value stored in a source address field of the header portion of the received packet with a value stored in an ISP/IP address field of an entry stored in the NAT table;
compares a value stored in a protocol ID field of the header portion of the received packet with a value stored in a protocol ID field of the entry stored in the NAT table;
compares a valued stored in a source port number field of the header portion of the received packet with a value stored in an ISP side/port number field of the entry stored in the NAT table; and
compares a value stored in a destination port number field of the header portion of the received packet with a value stored in a LAN side/public port number field of the entry stored in the NAT table.
-
-
4. The apparatus according to claim 3 wherein the processor, in response to execution of the instructions and as part of said operation (B), performs the following operations:
-
compares a value stored in a protocol ID field of the header portion of the received packet with a value stored in a protocol ID field of each entry contained in the static table; and
compares a value stored in a destination port number field of the header portion of the received packet with a value stored in a LAN side/port number field stored in the static table.
-
-
5. The apparatus according to claim 4 wherein the processor, in response to execution of the instructions and as part of said operation (C), performs the following operation:
compares a value stored in a source IP address field of the header portion of the received packet with a value stored in an ISP side/IP address field of a NAT table entry.
-
6. The apparatus according to claim 4 wherein the processor, in response to execution of the instructions and as part of said operation (C), performs the following operation:
compares a value stored in a B channel field of a NAT table entry with a B channel on which the received packet arrived.
-
7. The apparatus according to claim 5 wherein the processor, in response to the instructions and as part of said operation (D), performs the following operations:
-
locates, in a local database, a service provider profile relating to the remote server that provided the received packet; and
identifies the appropriate destination to which to route the received packet from the service provider profile.
-
-
8. The apparatus according to claim 7 wherein the appropriate destination is a busiest destination.
-
9. The apparatus according to claim 7 wherein the appropriate destination is a destination having a greatest number of applications.
Specification