Network communication

Abstract: An electronic network system for implementing ARP (Address Resolution Protocol) and RARP (Reverse Address Resolution Protocol) type communication. ARP type communication is facilitated by including within the ARP response packet an offset address indicating the memory location of the software application that is the subject of the ARP type communication. RARP type communication is facilitated by providing each network node with a network unique ID and using the unique ID when generating RARP requests.

Description: This invention relates to a method of communicating over a network, a network, an ARP or RARP response packet, and an apparatus for use as a network node. There are many well known protocols for implementing electronic communication in a network. Bill Croft, John Gilmore "Bootstrap Protocol (BOOTP) Network Working Group, Request for Comments no. 951, September 1985 XP002053146" describes a bootstrap protocol which allows a diskless client machine to discover its own IP address, the address of a server host and the name of a file to be loaded into memory and executed. Two well known protocols are the Address Resolution Protocol (ARP) and the Reverse Address Resolution Protocol (RARP). RARP is described in "A Reverse Address Resolution Protocol", Finlayson Mann, Mogul, Theimer (Stanford University) Network Working Group, Request for Comments, no. 903, June 1984 XP-002053148. ARP is also briefly described in that document. The ARP and RARP protocols may be used, for example, to implement communications in a network that includes two or more network nodes connected via an electronic bus. An illustrative network is shown in Fig. 1. As can be seen from Fig. 1, transmissions directed from a first general purpose computer 2 to a second general purpose computer 4 are indicated by an arrow 6. Similarly, communications directed from the second computer to the first computer are indicated by an arrow 8. It should be understood that an electronic bus, such as an IEEE-1394 serial bus, interconnects computers 2 and 4, and is used to channel transmissions between the computers. The transmissions are abstractly represented by arrows 6 and 8. Furthermore, it should be understood that although Fig. 1 shows only two computers, the network represented in Fig. 1 may be made up of more than two computers. Fig. 1 is referenced below for purposes of describing ARP and RARP communication in more detail. ARP may be used when a first network computer wishes to communicate with a second network computer but does not know the second computer's physical address. For example, computer 2 may wish to communicate with computer 4 but has only computer 4's internet protocol address (or "IP address") and not computer 4's physical address. In accordance with ARP, computer 2 broadcasts an "ARP request" (represented by arrow 6) over the network bus. The request includes the IP address of computer 4. By examining the IP address of the request, computer 4 recognizes that it is the intended recipient of the request. Computer 4 then transmits an "ARP response" (represented by arrow 8), which is addressed to computer 2 and contains computer 4's physical address. RARP may be used when a network computer wishes to determine its IP address through the network. For example, computer 2, wishing to determine its IP address, broadcasts a "RARP request" (represented by arrow 6) over the network. The RARP request includes the IP address of computer 4, as well as the physical address of computer 2. After computer 4 ascertains that it is the intended recipient of the RARP request - through examination of the IP address - it determines the IP address of computer 2 by cross-referencing computer 2's physical address to computer 2's IP address and then transmits a "RARP response" (represented by arrow 8), which includes the IP address of computer 2. Both ARP and RARP have drawbacks which limit their effectiveness. In ARP, a requesting node is limited to acquiring the physical address of a target node, and cannot acquire information that would facilitate communication between itself and the target node. In particular, the requesting node cannot acquire the address within the target computer of the application which is the subject of the request. Thus, in Fig. 1 for example once computer 2 determines the physical address of computer 4, communication between the two computers may proceed, but each time computer 4 receives a communication packet from computer 2, computer 4's processing unit (CPU) must examine the received packet and then forward the packet to an appropriate application within its memory. Moreover, the size of the communication packets is limited in ARP, further limiting flexibility. A drawback of RARP is its sensitivity to bus resets. When a network bus is reset- such as when the power supply is toggled, or a new device is connected to the network - the physical addresses of the network nodes may change, resulting in the generation of incorrect cross-references by nodes generating RARP responses, thereby resulting in the transmission of incorrect IP addresses to requesting nodes. A first aspect of the present invention provides a method for implementing communication over a network having a plurality of nodes, comprising the steps of: transmitting an ARP request packet from a first network node to a second network node; and transmitting an ARP response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. A second aspect of the present invention provides a communications network having plurality of nodes, including: first means arranged to transmit an ARP request packet from a first network node to a second network node; and second means arranged to transmit an ARP response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. A third aspect of the present invention provides an ARP response packet which includes a physical address indicating a location in a network of a node producing the response packet, and an offset address indicating a location within the said node of an application program for processing communication packets. A fourth aspect of the present invention provides apparatus for use as a node in a communications network, the apparatus comprising means arranged to produce, in response to a received ARP request packet, an ARP response packet which includes the physical address of the apparatus and an offset address indicating the location within the apparatus of an application program for processing communication packets. Including an offset address in the response packet allows subsequent communication packets to be addressed directly to the application program and allows the subsequent packets to be of variable size. In accordance with a preferred embodiment of the invention, the ARP type communication session is initiated through request and response packets, the response packet includes an offset address specifying the location of the software application that is the subject of the session. Thereby, allowing session packets subsequent to the response packet to be addressed directly to the application, and allowing those subsequent packets to be of variable size. A fifth aspect of the invention provides a method for implementing communication over a network having a plurality of nodes, comprising the steps of: transmitting a Reverse Address Resolution Protocol request packet from a first network node to a second network node said request packet including a node unique ID identifying said first node; and transmitting a Reverse Address Resolution Protocol response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. A sixth aspect of the invention provides a communications network having plurality of nodes, including: first means arranged to transmit a Reverse Address Resolution Protocol request packet from a first network node to a second network node said request packet including a node unique ID identifying said first node; and second means arranged to transmit a Reverse Address Resolution Protocol response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. In accordance with a preferred embodiment of the invention each network node is assigned a node unique ID for the purpose of providing an unchanging identifier for each node, thereby, providing an unchanging physical address reference for use in RARP type requests, and allowing RARP type communication to be conducted without interference from network resets. The following detailed description, given by way of example and not intended to limit the present invention solely thereto, will best be appreciated in conjunction with the accompanying drawings, where like reference numerals denote like elements and parts, in which: Fig. 1 is a schematic diagram of an electronic network useful in describing ARP type and RARP type communications. Fig. 2 is a schematic diagram of an electronic network in accordance with the invention. Fig. 3 is a representation of an address cache table in accordance with the invention. Fig. 4 is a representation of an ARP type request packet in accordance with the invention. Fig. 5 is a representation of an ARP type response packet in accordance with the invention. Fig. 6 is a representation of a RARP type request packet in accordance with the invention. Fig. 7 is a representation of a RARP type response packet in accordance with the invention. Fig. 2 shows an illustrative electronic network in which embodiments of the present invention may be employed. As can be seen from the figure, the network includes two buses, bus 24 and bus 26, that are coupled together via a bridge 28. Bus 24 is coupled to three nodes, nodes 10, 12 and 14, and bus 26 is coupled to four nodes, nodes 16, 18, 20 and 22. For purposes of illustration, each node of Fig. 2 is considered to be a general purpose computer, buses 24 and 26 are considered to be IEEE-1394 buses, and the bridge is considered to be an IEEE-1394 bridge - although in view of this disclosure it will be apparent that many types of nodes, buses, and bridges are suitable for implementing the invention. In any event, the buses and nodes of Fig. 2 are assigned identification numbers (IDs). Buses 24 and 26 are referred to as buses "0" and "1", respectively. Nodes 10, 12 and 14 are referred to as nodes "0", "1" and "2", respectively, and nodes 16, 18, 20 and 22 are referred to as nodes "0", "1", "2" and "3", respectively - any two nodes having the same ID being distinguished by the busses to which they are coupled. In addition, each of nodes 10-22 is assigned a node unique ID which is sufficient to uniquely identify each node without referring to bus IDs and/or node IDs. The bus IDs, node IDs and node unique IDs are stored in an address cache table along with the node IP addresses. Preferably, a copy of the address cache table is stored within each network node. An exemplary address cache table corresponding to the network of Fig. 2 is shown in Fig. 3. One way in which each of the network nodes may acquire the address cache table is through ARP type signaling. That is, in the course of conducting an ARP type session, a responding node may send the requesting node its bus ID, node ID, node unique ID, and IP address, which the requesting node then stores in its address cache table. Of course, at any given time the requesting node's table may or may not contain updated information for all nodes in the network. Having described an illustrative network configuration and an illustrative address cache table, ARP type and RARP type communication in accordance with embodiments of the invention will now be described in detail. Figs. 4 and 5 show illustrative ARP type communication packets in accordance with the invention. Fig. 4 shows an ARP type request packet, and Fig. 5 shows an ARP type response packet. As shown in the figures, the ARP request and response packets are asynchronous packets. Each packet includes five primary divisions: an asynchronous packet header 30, a stream type 32, a Logical Link Control/SNAP (LLC/SNAP) header 34, an ARP/RARP header 36, and ARP/RARP data 38. Each of the primary divisions are, in turn, divided into one or more horizontal subdivisions having a length of four bytes each. Referring to the ARP request packet of Fig. 4, it can be seen that the first item included in the asynchronous packet header is a broadcast bus indicator (e.g. 10 bits representing the string 0x3FE) for indicating which bus or buses in the network should receive the request packet (e.g. all - buses 0 and 1). The next item is a broadcast node indicator (e.g. 6 bits representing the string 0x3F) for indicating which node or nodes in the network should receive the request (e.g. all - nodes 10-22). After the broadcast node indicator is a source ID which is the node ID of the node that transmits the request. Following the source ID is a destination offset (e.g. 6 bytes representing the string 0xFFFF FFFF FFFF) for indicating a location within the memory of intended recipient node where the request should be directed. The stream type (ST) division includes a communication type indicator (e.g. bits representing the string 0x00) for indicating the type of communication to which the request packet is related (e.g. Logical Link Control - ARP/RARP/IP). The LLC/SNAP header division includes a resolution protocol indicator (e.g. bits representing the string 0x0806) for indicating the type of protocol to which the request packet is related (i.e. ARP). The ARP header division includes a protocol type indicator and an operation indicator. The protocol type indicator contains information (e.g. bits representing the string 0x0800) for indicating the protocol to which the request packet is related (e.g. IP protocol). The operation indicator contains information indicating the type of operation to which the packet is related (i.e. ARP request). Finally, the ARP data division of the ARP request packet will be described. The first item included in the ARP data division is a transmitter address, indicating the address of the node that transmitted the ARP request packet. The transmitter address may be, for example, a 64 bit address, with the first 16 bits indicating the node ID of the transmitting node and the following 48 bits indicating a requesting node offset address, the requesting node offset address being an address within the transmitting node's memory where communication packets are processed (e.g.the address of an application program). The second item in the ARP data division is the node unique ID of the transmitting node (e.g. 64 bits). The third item is the IP address of the transmitting node (e.g. 32 bits), and the fourth item is the IP address (e.g. 32 bits) of the node that is the intended recipient of the request packet. As an option, the ARP data division may include areas for a destination address and a node unique ID of the destination node. These areas are analogous to those provided for the transmitter address and the node unique ID of the transmitting node, respectively. However, since the request packet is broadcast, the destination areas are indefinite, and therefore are not filled with actual addresses. In an exemplary embodiment, the destination address and destination unique ID areas are 64 bit areas that are filled with zeros to indicate their indefinite state. As an additional option, error checking bit(s) may be included within the request packet. These bits may be for detecting and/or correcting errors within the packet through implementation of an error checking code, such as a cyclic redundancy code (CRC). Moreover, multiple groups of error checking bits may be included within the packet, with each group dedicated to detecting and/or correcting errors within a distinct portion of the packet. Thus, for example, the ARP header division may include a first group of dedicated error checking bits for use in detecting and/or correcting errors in the header division's contents, while the ARP data division may include a second group of dedicated error checking bits for use in detecting and/or correcting errors in the data division's contents. The ARP response packet will now be described with reference to Fig. 5. It can be seen from Fig. 5 that the first item included in the asynchronous packet header is a transmitter node ID (e.g. 16 bits) which is the node ID of the node that transmitted the ARP request packet prompting the response. The next item is a response source ID (e.g. 16 bits) which is the node ID of the node transmitting the response packet. Following the response source ID is a response destination offset (e.g. 6 bytes) which indicates the location within the memory of the responding node where the_protocol specified by the "protocol type" indicator is processed. The stream type (ST), LLC/SNAP header, and ARP header divisions of the response packet are similar to the ST, LLC/SNAP header, and ARP header divisions of the request packet. The ST division of the response packet includes a communication type indicator (e.g. bits representing the string 0x00) for indicating the type of communication to which the request packet is related (e.g. Logical Link Control - ARP/RARP/IP). The LLC/SNAP header division includes a resolution protocol indicator (e.g. bits representing the string 0x0806) for indicating the type of protocol to which the request packet is related (i.e. ARP). The ARP header division of the response packet includes a protocol type indicator and an operation indicator - the protocol type indicator containing information (e.g. bits representing the string 0x0800) for indicating the protocol to which the response packet is related (e.g. IP protocol), and the operation indicator containing information indicating the type of operation to which the packet is related (i.e. ARP response). Finally, the ARP data division of the ARP response packet will be described. The first item included in the ARP data division is a response transmitter address, indicating the address of the node that transmitted the ARP response packet. The response transmitter address may be, for example, a 64 bit address, with the first 16 bits indicating the node ID of the responding node and the following 48 bits indicating a responding node offset address, the responding node offset address being an address within the responding node's memory where communication packets are processed (e.g. the address of an application program). The second item in the ARP data division is the node unique ID of the response transmitting node (e.g. 64 bits). The third item is the IP address of the response transmitting node (e.g. 32 bits), and the fourth item is the IP address (e.g. 32 bits) of the node that is the intended recipient of the response packet. The ARP data division of the response packet further includes the address of the intended recipient of the response packet (i.e. the requesting node) and the node unique ID of the intended recipient. The format for these additional items may be analogous to the format for the request transmitter address and the request transmitter node unique ID, respectively. Thus, the responding node may simply use the first two items of the request packet's ARP data as the additional items in the response packet, thereby facilitating formation of the response packet. As was in the case the request packet, the response packet optionally includes error checking bit(s). These bits may be for detecting and/or correcting errors within the packet through implementation of an error checking code, such as a cyclic redundancy code (CRC). Moreover, multiple groups of error checking bits may included within the packet, with each group dedicated to detecting and/or correcting errors within a distinct portion of the packet. Thus, for example, the ARP header division may include a first group of dedicated error checking bits for use in detecting and/or correcting errors in the header division's contents, while the ARP data division may include a second group of dedicated error checking bits for use in detecting and/or correcting errors in the data division's contents. Having described a network suitable for implementing the invention and ARP type packets in accordance with the invention, an illustrative ARP type communication will now be described. In an illustrative ARP type communication according to the invention, node 0 on bus 0 (or "node 10" as indicated in Fig. 2) wants to know the physical address of the node having an IP address of 4 (or "node 18" as indicated by Fig. 2). Accordingly, node 10 broadcasts an ARP request packet having the format shown in Fig. 4 to all of the nodes in the network - the packet being transmitted to the nodes in bus 1 via the bridge (see Fig. 2). As mentioned above, the request packet includes a destination offset in the ARP header division, and a destination IP address in the ARP data division. In the present illustration the ARP data includes a destination IP address of "4". Upon reception of the broadcast request packet, each node in the network sends the ARP data of the packet to the address indicated by the destination offset. Each node then reviews the destination IP address indicated in the ARP data of the request, and if the destination IP address does not match the reviewing node's IP address the reviewing node ignores the request. If the destination IP address does match the reviewing node's IP address, the reviewing node generates an ARP response packet like the one shown in Fig. 5. Thus, when node 18 checks the destination IP address of the request packet, it determines that it is the intended recipient and proceeds to generate an ARP response packet. Incidentally, generation of the ARP response packet is simplified through use of the IP protocol. In particular, by noting from the ARP header of the ARP request packet that the protocol is IP, the node generating the response packet may form the response destination offset (48 bits) by extracting the response source ID (16 bits) from the response transmitter address (64 bits). ARP type communication in accordance with the invention has advantages over prior ARP systems. One advantage is a reduced computational burden on the responding node's CPU which results from the inclusion of a responding node offset address in the response packet. More, particularly, including the responding node offset address in the response packet allows the requesting node to acquire the responding node offset address, and thereafter transmit information directly to an application program located at the offset address. Thereby, allowing the responding node's CPU to be bypassed. Another advantage is the ability to accommodate various length ARP packets. As mentioned above, including the responding node offset address in the response packet allows the responding node's CPU to be relieved of having to interpret subsequently received packets. Therefore, packets received at the responding node do not need to be temporarily stored in the responding node's CPU buffer, and the size of the packets that can be used is not limited by the size of CPU buffer (i.e. the packets do not need to fit into the CPU buffer). Accordingly, the invention provides greater packet length flexibility. Next, RARP type communication in accordance with the invention will be described. Figs. 6 and 7 show an illustrative RARP type request packet in accordance with the invention and an illustrative RARP type response packet in accordance with the invention, respectively. As was the case with ARP type communication, RARP type communication may be implemented in the network of Fig. 2, using the address cache table of Fig. 3. The RARP type packets of Figs. 6 and 7 are similar to the ARP packets of Figs. 4 and 5, respectively, and therefore only the differences between the respective ARP and RARP packets will be discussed. Referring to Fig. 6, it can be seen that the RARP request packet includes the same five primary divisions as the ARP request packet but differs from the ARP request packet in three of the primary divisions. The RARP LLC/SNAP header division includes a resolution protocol indicator (e.g. bits representing the string 0x8035) indicating that the type of protocol to which the request packet is related is RARP - rather than ARP. In addition, the RARP header division includes an operation indicator containing information indicating that the type of operation to which the packet is related is RARP request - rather than ARP request. Finally, the RARP data division does not include the IP address of the transmitter node, but rather includes some indicator that the IP address of the transmitter is indefinite (e.g. bits indicating a string of zeros). The absence of the requesting node's IP address is consistent with RARP operation since the very reason RARP requests are generated is so that the requesting node can determine its own IP address. The RARP response packet differs from the ARP response packet in two of the primary divisions. The RARP LLC/SNAP header division includes a resolution protocol indicator (e.g. bits representing the string 0x8035) indicating that the type of protocol to which the request packet is related is RARP - rather than ARP; and the RARP header division includes an operation indicator containing information indicating that the type of operation to which the packet is related is RARP response - rather than ARP response. When a RARP type communication is initiated, a node which wants to determine its own IP address generates a RARP request packet as described above. The RARP request is broadcast to all nodes in the network (e.g. the network of Fig. 2) and a node which is assigned to respond to RARP requests (e.g. a server) determines the IP address of the requesting node and generates a RARP response. In determining the IP address of the requesting node, the RARP response node first determines the requesting nodes physical address by referencing the transmitter node's node ID as set forth in the RARP request's asynchronous packet header, alternatively, by referencing the transmitter node's node unique ID as set forth in the RARP request's data division. Once the requesting node's physical address has been determined, the responding node uses its address cache table (e.g. the table of Fig. 3) to cross-references the requesting node's physical address (node ID or unique node ID) with the requesting node's IP address, and inserts the requesting node's IP address into the RARP data portion of the RARP response packet. Thus, for example, if node 0 of bus 0 (node 10 in Fig. 2) is a server, and node 1 of bus 1 (node 18) wants to determine its IP address, node 18 broadcasts a RARP request that includes its node unique ID ("641 "). Node 10 receives the request and uses the address cache table of Fig. 3 to cross-references the received node unique ID '64' with the IP address of node 18 ("4"). Node 10 then inserts the determined IP address '4' into a RARP response packet and transmits the response packet to node 18. An advantage of performing RARP type signaling in accordance with the invention is that a network implementing such signaling becomes less sensitive to bus resets. In prior systems, as described above, when a network bus is reset the physical addresses of the nodes in that network may change, giving rise to incorrect RARP cross-references. Thus, for example, if bus 1 of the Fig. 2 network is reset the node ID of node 1 on bus 1 (node 18) may change from "1" to "3". Thereafter, if node 18 transmits a RARP request including its node ID of "3", and the responding node uses the table of Fig. 3 to cross-reference the node ID, the IP address of node 18 will be incorrectly determined to be "7". However, the present invention allows IP addresses to be cross-referenced through node unique IDs. Since node unique IDs do not change upon the occurrence of bus resets, their use in RARP cross-referencing insures correct determination of a requesting node's IP address. Thus, in the example, the responding node would use the cache table to correctly cross-reference node 18's node unique ID to the IP address of "4". While embodiments of the present invention have been particularly shown and described herein, it will be readily appreciated by those of ordinary skill in the art that various changes may be made without departing from the spirit and scope of the invention. For example, although the invention has been described in the context of IEEE-1394 communications it may be applied in the context of IPX communications and Apple Talk communications.

Claims: A method for implementing communication over a network having a plurality of nodes, comprising the steps of: transmitting an Address Resolution Protocol request packet from a first network node (10, 12, 14) to a second network node (16, 18, 20, 22); and transmitting an Address Resolution Protocol response packet from said second node (16, 18, 20, 22) to said first node (10, 12, 14); wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node (16, 18, 20, 22) is located and said offset address indicating a location within said second node (16, 18, 20, 22) where an application program processes communication packets. A method according to claim 1, wherein said offset address is included within a 64 bit string. A method according to claim 1 or 2, wherein said request packet includes a node unique ID identifying said first node (10, 12, 14). A method according to claim 1, 2 or 3, comprising the further step of transmitting communication packets from the first network node to the second network node. A method according to claim 4, wherein communications packets are processed according to the internet protocol. A method according to claim 4 or 5, wherein communication packets received at said second node are passed to said location indicated by said offset address prior to any processing of said packets. A method according to claim 1, 2, 3, 4, 5 or 6, wherein the network comprises one or more IEEE-1394 buses (24, 26). An Address Resolution Protocol response packet which includes a physical address indicating a location in a network of a node producing the response packet, and an offset address indicating a location within. the said node of an application program for processing communication packets. A communications network having plurality of nodes (10-22), including: first (10, 12, 14) means arranged to transmit an Address Resolution Protocol request packet from a first network node to a second network node; and second (16,18,20,22) means arranged to transmit an Address Resolution Protocol response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. A network according to claim 9, wherein said offset address is included within a 64 bit string. A network according to claim 9 or 10, wherein said request packet includes a node unique ID identifying said first node. A network according to claim 9, 10 or 11, which comprises one or more IEEE-1394 buses (24, 26). A network according to any one of claims 9 to 12, arranged to transmit communications packets from one of said nodes to another. A network according to claim 13, wherein communications packets are processed according to the internet protocol. Apparatus for use as a node in a communications network, the apparatus comprising means arranged to produce, in response to a received Address Resolution Protocol request packet, an Address Resolution Protocol response packet which includes the physical address of the apparatus and an offset address indicating the location within the apparatus of an application program for processing communication packets. The apparatus according to claim 15, wherein communication packets received at said node are passed to said location indicated by said offset address prior to any processing of said packets. A method for implementing communication over a network having a plurality of nodes, comprising the steps of: transmitting a Reverse Address Resolution Protocol request packet from a first network node (10, 12, 14) to a second network node (16, 18, 20, 22) said request packet including a node unique ID identifying said first node (10, 12, 14); and transmitting a Reverse Address Resolution Protocol response packet from said second node (16, 18, 20, 22) to said first node (10, 12, 14); wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node (10, 18, 20, 22) is located and said offset address indicating a location within said second node (16, 18, 20, 22) where an application program processes communication packets. A method according to claim 17, wherein said offset address is included within a 64 bit string. A method according to claim 17 or 18, comprising the further step of transmitting communication packets from the first network node to the second network node. A method according to claim 19, wherein communications packets are processed according to the internet protocol. A method according to claim 19 or 20, wherein communication packets received at said second node are passed to said location indicated by said offset address prior to any processing of said packets. A method according to claim 17, 18, 19, 20 or 21, wherein the network comprises one or more IEEE-1394 buses (24, 26). A communications network having plurality of nodes (10-22), including: first (10, 12, 14) means arranged to transmit a Reverse Address Resolution Protocol request packet from a first network node to a second network node said request packet including a node unique ID identifying said first node; and second (16, 18, 20, 22) means arranged to transmit a Reverse Address Resolution Protocol response packet from said second node to said first node; wherein said response packet includes a physical address and an offset address, said physical address indicating the location within the network where said second node is located and said offset address indicating a location within said second node where an application program processes communication packets. A network according to claim 23, wherein said offset address is included within a 64 bit string. A network according to claim 23 or 24, which comprises one or more IEEE-1394 buses (24, 26). A network according to claim 23, 24 or 25, arranged to transmit communications packets from one of said nodes to another. A network according to claim 26, wherein communications packets are processed according to the internet protocol.

Inventors: FUJIMORI TAKAHIRO, SATO MAKOTO, TANAKA TOMOKO, FUJIMORI, TAKAHIRO, SATO, MAKOTO, TANAKA, TOMOKO, Fujimori, Takahiro, c/o Sony Corporation, SATO, MAKOTO, C/O SONY CORPORATION, Tanaka, Tomoko, c/o Sony Corporation
Applicants: SONY CORP, SONY CORPORATION
Application year: 1997
Main classification: H04L29
IPC codes: H04L12, H04L29, G06F13