IPX/SPX
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
|
LAN | |
Developer(s) | Novell |
---|---|
Introduction | 1983 |
Based on | XNS |
OSI layer | 3 and 4 |
Hardware | Ethernet, others |
IPX/SPX stands for Internetwork Packet Exchange/Sequenced Packet Exchange.
Protocol layers
IPX and SPX are derived from
IPX and SPX both provide connection services similar to
Despite the protocols' association with NetWare, they are neither required for NetWare communication (as of NetWare 5.x), nor exclusively used on NetWare networks. NetWare communication requires an NCP implementation, which can use IPX/SPX, TCP/IP, or both, as a transport.
Implementations
Novell was largely responsible for the use of IPX as a popular computer networking protocol due to their dominance in the network operating system software market (with Novell Netware) from the late 1980s through the mid-1990s.
DOS
Novell's original NetWare client was written for DOS. Initial versions required a hard-linked protocol stack, where a separate executable would be created by the network administrator for each network card configuration on the network. This executable would be loaded at boot time and remain resident in memory until the system was shut down. Later implementations allowed the network stack to be loaded and unloaded dynamically, using pre-existing modules. This greatly simplified maintenance of client workstations on the network.
IPX/SPX was the de facto standard for DOS-era multi-user network games. Many games' longevity were extended through tunneling programs like
Windows
Because of IPX/SPX's prevalence in LANs in the 1990s, Microsoft added support for the protocols into
For the most part, Novell's 32-bit Windows client software have eschewed NWLink for an alternative developed by Novell, although some versions permit use of Microsoft's IPX/SPX implementation (with warnings about potential incompatibility).
Others
For several years, Novell supplied a native NetWare client for OS/2. This was similar in structure to the client for DOS.
Novell also published an IPX client for
Implementations have been written for various flavors of Unix/Linux, both by Novell and other vendors. In particular, Novell's UnixWare supported IPX/SPX natively. However, while UnixWare could act as a client to NetWare servers, and applications could optionally support IPX/SPX as a transport, UnixWare did not provide the ability to share files or printers on a NetWare network without an additional software package. Open Enterprise Server - Linux does not support IPX/SPX.[4] The Linux kernel used to support IPX/SPX, but SPX support was removed in 2002,[5] and IPX support was removed in 2018.[6]
The open source FreeBSD operating system includes an IPX/SPX stack, to support both a NetWare file system client, nwfs, as well as NetWare server using Mars NWE[7][8] (providing some functionality[9]). OpenBSD dropped support with version 4.2,[10][11] and 4.1 needed some work to compile with IPX.[12]
Legacy
IPX usage has declined in recent years, as the rise of the Internet has made TCP/IP ubiquitous. Novell's initial attempt to support TCP/IP as a client protocol, called NetWare/IP, simply "tunneled" IPX within IP packets, allowing NetWare clients and servers to communicate over pure TCP/IP networks. However, due to complex implementation and a significant loss in performance due to the tunnelling overhead, NetWare/IP was largely ignored, except as a mechanism to route IPX through TCP/IP-only routers and WAN links. NetWare 5.x introduced native support for NCP over TCP/IP, which is now the preferred configuration. The successor to NetWare, Open Enterprise Server, comes in two flavors: OES-NetWare, which provides legacy support for IPX/SPX (deprecated), and OES-Linux, which only supports TCP/IP.
Both Microsoft and Novell have provided support (through
One area where IPX remains useful is for bypassing VPN connections with security policies that prohibit communication with other LAN devices (such as printers and network-attached storage) via TCP/IP.[citation needed]
See also
- Internetwork Packet Exchange (IPX)
- NetWare Core Protocol (NCP)
- NetBIOS Frames (NBF)
- NetBIOS over TCP/IP (NBT)
- NWLink
- Communications protocol
References
- ^ "How to play IPX / SPX games over LAN (WinXP)". April 12, 2013.
- ^ [1] Some notes on MacIPX internetworking, formerly at [2] Archived 2010-08-23 at the Wayback Machine
- ^ Blizzard Support. Web.archive.org (2010-08-20). Retrieved on 2013-09-27.
- ^ http://www.oreilly.com/openbook/linag2/book/ch15.html (note however that the statement "Alan Cox first developed IPX support for the Linux kernel in 1985" must be a misprint because it predates the kernel itself)
- ^ https://lwn.net/Articles/7208/ (see: "Remove SPX and the last typedefs in IPX, create ipx_hdr")
- ^ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7a2e838d28cff6718a0bdf66164465402f8e40ed ("staging: ipx: delete it from the tree")
- ^ FreeBSD ports info on Mars NWE
- ^ Freshports info on Mars NWE
- ^ Novell's comments on Mars NWE
- ^ OpenBSD 4.2 changes
- ^ Removal of IPX from OpenBSD
- ^ Berkeley Software Design (BSD): building kernel support with ipx fails Archived July 26, 2011, at the Wayback Machine