- IPX/SPX
-
IPX, Internetwork Packet eXchange, ist ein von Novell entwickeltes Computer-Netzwerkprotokoll. Es stammt vom Protokoll IDP der Xerox Network Services (XNS) ab und wurde primär für das Netzbetriebssystem (NOS) NetWare eingesetzt.
IPX ist ein verbindungsloses, proprietäres Protokoll mit Routing-Fähigkeiten, das funktionell dem IP bzw. UDP entspricht. Das auf IPX aufbauende Protokoll SPX (Sequenced Packet Exchange) realisiert analog zum TCP der TCP/IP-Protokollfamilie die gesicherte, verbindungsorientierte Kommunikation. Allerdings verwenden die Serverfunktionen von NetWare nur IPX, die Sicherungsfunktionen sind im NetWare Core Protocol (NCP) selbst unabhängig von SPX implementiert. Mit Hilfe des Service Advertising Protocol (SAP) ist es möglich, innerhalb eines IPX-Netzes angebotene Dienste zu finden.
Mit zunehmender Verbreitung des Internets ab Mitte der 1990er, der direkten Unterstützung von TCP/IP in Novell NetWare und dem sinkenden Marktanteil von NetWare verlor IPX/SPX gegenüber TCP/IP zunehmend an Bedeutung. Es wird heute nur noch selten eingesetzt, obwohl es sowohl von NetWare als auch von Clients wie Windows oder Linux immer noch unterstützt wird.
Inhaltsverzeichnis
Das Protokoll im OSI-Modell
Das Protokoll im OSI-Modell (siehe im Vergleich dazu das TCP/IP-Referenzmodell, OSI-Modell):
OSI-Schicht Englisch Einordnung TCP/IP-Schicht Einordnung IPX/SPX/NCP 7 Anwendung Application Anwendungs-
orientiertAnwendung Ende zu
Ende
(Multihop)NCP – 6 Darstellung Presentation 5 Sitzung Session 4 Transport Transport Transport-
orientiertHost to
HostSPX 3 Vermittlung Network Internet Punkt zu
PunktIPX 2 Sicherung Data Link Netzwerk Ethernet
Token Ring
FDDI
ARCNET1 Bitübertragung Physical Adressierung
IPX wurde von Anfang an mit Bezug auf das ebenfalls bei Xerox entstandene Ethernet entwickelt. IPX verwendet binäre Adressen, bestehend aus einer 32 bit langen Netzwerknummer, einer 48 bit langen Hostadresse (der MAC-Adresse des Interfaces) und einer 16 bit langen Socket-Nummer, die etwa der Portadresse in TCP oder UDP entspricht. Interessanterweise verfügt IPX daher über einen wesentlich größeren Adressraum als IP Version 4, wo Netzwerk und Host zusammen in 32 Bit kodiert sind.
Aufbau von Datenpaketen
Ein IPX-Paket besteht aus den 30 Byte großen IPX-Kopfdaten gefolgt von den Nutzdaten:
IPX Kopfdaten (Internetwork Packet Exchange) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Checksum (Prüfsumme) Packet Length (Paketlänge) Transport Control
(Transportkontrolle)Type
(Typ)Destination Network
(Zielnetz)Destination Network
(Zielnetz)Destination Node
(Zielknoten)Destination Node
(Zielknoten)Destination Socket
(Zielsocket)Source Network
(Quellnetz)Source Network
(Quellnetz)Source Node
(Quellknoten)Source Node
(Quellknoten)Source Socket
(Quellsocket)Data
(Daten)- Das 16 Bit lange Feld Prüfsumme wird immer auf 0xFFFF gesetzt, da Prüfsummen für IPX nicht unterstützt werden.
- Das 16 Bit lange Feld Paketlänge enthält die Gesamtgröße des Pakets (Kopf- und Nutzdaten).
- Die 8 Bit lange Zahl im Feld Transport Control ist der Hop-Zähler, der beim Durchlaufen eines Routers erhöht wird. Falls er irgendwann 16 erreicht, wird das Paket üblicherweise verworfen (Zweck siehe TTL).
- Das 8 Bit lange Feld Typ beschreibt das eingebettete Protokoll (encapsulated protocol):
Typ Inhalt des Datenbereiches 0x00 unbekannt ("Rohdaten") 0x01 RIP (Routing Information Packet) 0x02 Echo Packet 0x03 Error Packet 0x04 PEP (Packet Exchange Protocol) 0x05 SPX (Sequenced Packet Protocol) 0x10
–
0x1FExperimentelle Protokolle. 0x11 NCP (NetWare Core Protocol) 0x12
–
0xFF- Die Felder Source Network/Node/Socket und Destination Network/Node/Socket enthalten die entsprechenden Komponenten von Sender- bzw. Empfängeradresse, wobei folgende Socketnummern festgelegt sind:
Socket Funktion 0x00 unbekannt 0x01 RIP (Routing Information Packet) 0x02 Error Handling Packet 0x20
–
0x3F"Experimentell" 0x1
–
0xBB8"Xerox vorbehalten" 0xBB9 Dynamically Assigned. (dynamisch zugeordnet) 0x451 NCP (NetWare Core Protocol) 0x452 SAP (Service Advertising Protocol) 0x453 RIP (Routing Information Protocol) 0x455 NetBIOS 0x456 Diagnostic 0x457 Serialization 0x8060 IPX 0x9091 TCP über IPXF 0x9092 UDP über IPXF 0x9093 IPXF, IPX Fragmentation Protocol Der Datenbereich hat eine variable Länge. Da IPX-Pakete standardmäßig nicht fragmentiert werden, hängt die maximale Paketgröße vom Netzwerkmedium ab – bei Ethernet z. B. 1536 Bytes abzüglich der 30 Bytes des IPX-Kopfdatenbereiches selbst.
Routing
Ein Netzwerkteilnehmer erzeugt seine eigene Adresse aus seiner MAC-Adresse und der vom Administrator konfigurierten Netzwerknummer. (In IPX ist im Gegensatz zu IP nicht vorgesehen, dass auf einem physischen Netzwerksegment mehrere Netzwerknummern nebeneinander verwendet werden).
Pakete innerhalb des eigenen Netzwerks (gleiche Netzwerknummer) werden direkt an die enthaltene MAC-Adresse zugestellt. Erkennt ein Teilnehmer eine Zieladresse in einem fremden Netzwerk, fragt er per RIP-Broadcast nach einem zuständigen Router, an dessen MAC-Adresse er das Paket dann schickt. Die erhaltenen Router-Adressen werden lokal zwischengespeichert. Router ihrerseits broadcasten in regelmäßigen Abständen (standardmäßig eine Minute) Listen der Netzwerknummern, die über sie erreicht werden können, wobei RIP-Pakete weiter entfernt liegender Router nicht einzeln weitergeleitet, sondern zusammengefasst werden.
RIP erzeugt laufenden Broadcast-Traffic und ist dadurch auf WAN-Strecken ineffizient und bei Wählverbindungen mit automatischem Verbindungsauf/abbau nur mit Mühe verwendbar. Es wurde daher durch ein Link-State Routing-Protokoll namens NLSP abgelöst, wobei aber die grundlegenden RIP-Funktionen zur Routersuche abwärtskompatibel blieben.
Dienstesuche (Service advertising)
Analog zur Ermittlung von Routeradressen mit RIP verwaltet SAP mit einer Kombination von regelmäßigen Broadcasts und Broadcast-Anfragen eine Liste im Netzwerk angebotener Services. Auch diese Listen werden an Routern zusammengefasst.
Weblinks
Wikimedia Foundation.