ARP packet to preserve canonical form of addresses
First Claim
1. A method for determining a hardware address of a first computer by a remote computer, when a protocol address of said remote computer is known to said first computer, comprising:
- transmitting an address resolution protocol request (ARP Request) packet by said first computer to said remote computer, said ARP Request packet containing a canonical field, said canonical field indicating a canonical format of bytes written into said ARP Request packet, said ARP Request packet having a broadcast address in a layer 2 destination address field, and said ARP Request packet containing fields for a hardware address and a protocol address of said first computer, and having a field containing said protocol address of said remote computer;
receiving said ARP packet by said remote computer in response to said layer 2 broadcast address;
determining by said remote computer, in response to said canonical field, whether or not said canonical format of said ARP Request packet is consistent with a LAN canonical format used by a local area network (LAN) connected to said remote computer;
deciding, in response to said determining step, whether or not to perform a bit swapping operation on data stored in said ARP packet before storing said data into memory of said remote computer as canonically correct data;
updating, in response to said deciding step, an ARP table in said remote computer using canonically correct data of said hardware address of said first computer and said protocol address of said first computer in said canonical format used by said LAN connected to said remote computer, and performing said bit swapping operation on said hardware address and said protocol address before said updating step, in the event that said canonical field indicates that said canonical format of said data written into said data field of said ARP packet differs from said LAN canonical format.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention is a new field in an ARP packet which designates the canonical format of the addresses written into fields such as ar$sha (the source station hardware address) and ar$spa (the source station protocol address) ar$tha (the target station hardware address), ar$tpa (the target station protocol address) so that a receiving station can determine the canonical format used to create these fields. The station receiving the ARP request or ARP response packet can then write its ARP table entry in the correct canonical format for its computer network.
41 Citations
8 Claims
-
1. A method for determining a hardware address of a first computer by a remote computer, when a protocol address of said remote computer is known to said first computer, comprising:
-
transmitting an address resolution protocol request (ARP Request) packet by said first computer to said remote computer, said ARP Request packet containing a canonical field, said canonical field indicating a canonical format of bytes written into said ARP Request packet, said ARP Request packet having a broadcast address in a layer 2 destination address field, and said ARP Request packet containing fields for a hardware address and a protocol address of said first computer, and having a field containing said protocol address of said remote computer;
receiving said ARP packet by said remote computer in response to said layer 2 broadcast address;
determining by said remote computer, in response to said canonical field, whether or not said canonical format of said ARP Request packet is consistent with a LAN canonical format used by a local area network (LAN) connected to said remote computer;
deciding, in response to said determining step, whether or not to perform a bit swapping operation on data stored in said ARP packet before storing said data into memory of said remote computer as canonically correct data;
updating, in response to said deciding step, an ARP table in said remote computer using canonically correct data of said hardware address of said first computer and said protocol address of said first computer in said canonical format used by said LAN connected to said remote computer, and performing said bit swapping operation on said hardware address and said protocol address before said updating step, in the event that said canonical field indicates that said canonical format of said data written into said data field of said ARP packet differs from said LAN canonical format. - View Dependent Claims (2, 3, 4, 7, 8)
transmitting an ARP Reply packet by said remote computer to said first computer, in response to said remote computer having received said ARP Request packet from said first computer, said ARP Reply packet written in said LAN canonical format of said LAN to which said remote computer is attached, said ARP Reply packet having a canonical bit field, said canonical bit field in said ARP Reply packet indicating said LAN canonical format in which said ARP Reply packet is written.
-
-
3. The method as in claim 1 further comprising:
indicating by said canonical field that said ARP packet is written in a canonical format having a first bit of a byte being a most significant bit, and said LAN format having a canonical format having a first bit of a byte being a least significant bit.
-
4. The method as in claim 1 further comprising:
indicating by said canonical field that said ARP packet is written in a canonical format having a first bit of a byte being a least significant bit, and said LAN format having a canonical format having a first bit of a byte being a most significant bit.
-
7. A computer readable media comprising:
said computer readable media containing instructions for execution in a processor for the practice of the method of claim 1 or claim 5.
-
8. Electromagnetic signals propagating on a computer network, comprising:
said electromagnetic signals carrying instructions for execution on a processor for the practice of the method of claim 1 or claim 5.
-
5. A method for determining a hardware address of a remote computer by a first computer, when a protocol address of said remote computer is known to said first computer, comprising:
-
transmitting an address resolution protocol request packet (ARP Request packet) by said first computer with said protocol address of said remote computer written into said ARP Request packet, said ARP Request packet having a canonical field indicating a request canonical format in which said ARP Request packet was written so that said remote computer can interpret data written into fields of said ARP Request packet;
receiving an ARP Reply packet by said first computer from said remote computer, said ARP Reply packet transmitted by said remote computer in response to receiving said ARP Request packet and in response to using said request canonical field to interpret said ARP Request packet, said ARP Reply packet having a reply canonical field, said reply canonical field indicating a canonical format of data written into said ARP Reply packet, said ARP Reply packet containing both said hardware address and said protocol address of said remote computer written in a canonical format indicated by said reply canonical field;
determining by said first computer, in response to said reply canonical field, whether or not said canonical format of data written into said ARP Reply packet is consistent with a LAN canonical format used by a local area network (LAN) connected to said first computer;
deciding, in response to said determining step, whether or not to perform a bit swapping operation on data stored in said ARP Reply packet before storing said data into memory of said first computer as canonically correct data;
updating, in response to said deciding step, an ARP table in said first computer using canonically correct data of both said hardware address and said protocol address of said remote computer in said canonical format used by said LAN connected to said first computer, and performing said bit swapping operation on said hardware address and said protocol address before said updating step, in the event that said reply canonical bit indicates that said canonical format of data written into said ARP Reply packet differs from said LAN canonical format.
-
-
6. A computer comprising:
-
means for receiving an address resolution protocol request (ARP Request) packet transmitted by a remote computer to said computer, said ARP Request packet containing a canonical field, said canonical field indicating a canonical format of bytes written into said ARP Request packet, said ARP Request packet having a broadcast address in a layer 2 destination address field, and said ARP Request packet containing fields for a hardware address and a protocol address of said computer, and having a field containing said protocol address of said remote computer;
means for determining by said computer, in response to said canonical field, whether or not said canonical format of said ARP Request packet is consistent with a LAN canonical format used by a local area network (LAN) connected to said computer;
means for deciding, in response to said determining step, whether or not to perform a bit swapping operation on data stored in said ARP packet before storing said data into memory of said computer as canonically correct data; and
means for updating, in response to said deciding step, an ARP table in said computer using canonically correct data of said hardware address of said remote computer and said protocol address of said remote computer in said canonical format used by said LAN connected to said remote computer, and performing said bit swapping operation on said hardware address and said protocol address before said updating step, in the event that said canonical field indicates that said canonical format of said data written into said data field of said ARP packet differs from said LAN canonical format.
-
Specification