Internetwork Packet Exchange (IPX)

Definition of Internetwork Packet Exchange (IPX) in The Network Encyclopedia.

What is IPX (Internetwork Packet Exchange)?

A Novell NetWare protocol used for routing packets from one network node to another throughout an internetwork. Internetwork Packet Exchange (IPX) is a network layer protocol and provides connectionless datagram services for Ethernet, Token Ring, and other common data-link layer protocols. IPX is the commonly used local area network (LAN) protocol on legacy NetWare-based LANs but has recently been replaced with TCP/IP for NetWare 5.x.

How It Works

IPX packets use 32-bit (4-byte) network numbers to uniquely identify each data link (connected network) in an IPX internetwork. The administrator of each network assigns these network numbers, which must be unique for each connected network; all nodes on a connected network must have the same network number. Nodes discover their network number by communicating with routers attached to the local network. Routers use these network numbers to route IPX packets from one network to another within an internetwork. IPX is thus a routable protocol. The structure of an IPX packet is shown in the following diagram.

IPX also uses 48-bit (6-byte) addresses for each node within a given network. An entire IPX network address is thus 4 + 6 = 10 bytes long. IPX packets are assigned a 16-bit (2-byte) socket number to identify the networking service they are communicating with - for example, Network Control Protocol (NCP), Service Advertising Protocol (SAP), or Routing Information Protocol (RIP). Thus, the following 12-byte triple completely identifies the networking service that a packet is communicating for:

{network number, node address, socket number}

When an IPX client is booted on a NetWare internetwork using IPX-enabled routers, the client broadcasts a Get Nearest Server (GSN) request message to its locally connected network in order to locate the nearest NetWare server. If a NetWare server can’t be located on the connected network, the router informs the client of the nearest available server based on the cost of the connection. The router is familiar with this information because NetWare servers using IPX periodically notify the network of their presence using SAP, which allows IPX routers to construct server tables based on SAP numbers.

Graphic I-12. The structure of an IPX packet.

IPX is a connectionless protocol that works at the network layer of the Open Systems Interconnection (OSI) reference model, and IPX packets are connectionless datagrams. To function within connected networks, IPX works with a transport layer protocol called the Sequenced Packet Exchange (SPX) protocol. SPX is responsible for generating acknowledgments for IPX packets received over the network to ensure that no packets were lost during transport.

TIP

On Ethernet networks, NetWare clients and servers can communicate with each other using IPX only if they use compatible frame types (encapsulation formats). The terminology used to describe these frame types depends on whether you’re discussing Novell NetWare clients and servers or IPX-enabled routers from Cisco Systems. The following table illustrates these differences.

Ethernet_II is the default frame type for NetWare version 3.x and earlier, while NetWare 4.x uses the Ethernet_802.2 frame type.

Frame Type Terminology
Common Terminology Novell Terminology Cisco Terminology
Ethernet
Ethernet_II
arpa
raw
Ethernet_802.3
novell-ether
802.3
Ethernet_802.2
sap
snap
Ethernet_SNAP
snap