Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Point-to-Point Protocol

Das Point-to-Point Protocol (PPP; engl. für Punkt-zu-Punkt-Protokoll) ist in der Informationstechnik ein Netzwerkprotokoll zum Verbindungsaufbau über …

Inhalt5 Abschnitte
  1. 1. Einordnung und Bedeutung
  2. 2. Aufbau eines PPP-Rahmens
  3. 3. Phasen des Verbindungsaufbaus
  4. 4. Aushandlung und Anmeldung bei PPPoE
  5. 5. IP-Konfiguration durch IPCP

Einordnung und Bedeutung

Das Point-to-Point Protocol (PPP) ist ein Netzwerkprotokoll zum Aufbau einer direkten Verbindung zwischen zwei Kommunikationspartnern, besonders über Wählleitungen. Im TCP/IP-Protokollstapel gehört es zum Netzzugang unterhalb von IP. PPP basiert auf High-Level Data Link Control (HDLC) und löste das Serial Line Internet Protocol (SLIP) sowie mehrere proprietäre Protokolle ab.

PPP ist das Standardprotokoll, das Internetprovider zur Einwahl ihrer Kunden verwenden. Dabei kann der Provider einem Computer oder Router wichtige Einstellungen wie seine IP-Adresse und die zu verwendenden DNS-Server mitteilen. Früher kam PPP hauptsächlich bei Modem- und ISDN-Verbindungen zum Einsatz. Es wird aber auch für GPRS-/UMTS-Mobilfunkverbindungen und bei DSL typischerweise als PPP over Ethernet (PPPoE) verwendet. Weitere Formen sind PPP over ATM (PPPoA) und PPP über HDLC.

Die Spezifikation ist nicht auf IP beschränkt: PPP kann auch Netzwerkprotokolle wie IPX oder AppleTalk transportieren. Es ist in RFC 1661 standardisiert. Auf statischen Verbindungen beziehungsweise Standleitungen wird PPP seltener eingesetzt, beispielsweise um seine Authentifizierungsverfahren PAP oder CHAP zu nutzen. Häufig werden dafür abgewandelte Protokolle wie PPPoE oder PPTP verwendet.

Wichtige Merkmale sind Fehlererkennung, dynamische Zuweisung von IP-Adressen, Authentifizierungsmechanismen und das Aushandeln von Parametern der Sicherungsschicht.

Aufbau eines PPP-Rahmens

Bei PPP über HDLC nach RFC 1662 besteht ein Rahmen aus mehreren Feldern:

  • Das HDLC-Flag begrenzt den Rahmen und hat immer den Binärwert 01111110b beziehungsweise den Hexadezimalwert 0x7e.
  • Die HDLC-Adresse besitzt standardmäßig den Wert 11111111b beziehungsweise 0xff. Damit sollen alle Stationen den PPP-Rahmen akzeptieren; besondere Verbindungsadressen müssen nicht vergeben werden.
  • Das Steuerungsfeld hat standardmäßig den Wert 00000011b beziehungsweise 0x03 und kennzeichnet einen unnummerierten Rahmen. Bei besonders schlechten Verbindungen gewährleistet dies keine sichere Übertragung. Dann, etwa in störanfälligen drahtlosen Netzen, sollten nummerierte Rahmen verwendet werden. Weil Adresse und Steuerung meist ihre Standardwerte haben, kann das Link Control Protocol (LCP) vereinbaren, beide Felder wegzulassen.
  • Das Protokollfeld bezeichnet die Art des Pakets im Nutzdatenfeld. LCP kann aushandeln, dass dieses Feld nur 1 Byte groß ist. Wichtige Codes sind 0x0021 für IPv4, 0x0057 für IPv6, 0x80fd für das Compression Control Protocol (CCP), 0x8021 für das Internet Protocol Control Protocol (IPCP), 0x8057 für das IPv6 Control Protocol (IPV6CP), 0xc021 für LCP, 0xc023 für das Password Authentication Protocol (PAP) und 0xc223 für das Challenge Handshake Authentication Protocol (CHAP).
  • Das Nutzdatenfeld ist variabel lang; seine Länge wird durch LCP vereinbart. Bei Bedarf kann es durch Padding aufgefüllt werden.
  • Die Frame Check Sequence (FCS) ist eine CRC-Prüfsumme über die Felder Adresse, Steuerung, Protokoll und Nutzdaten. Sie dient der Fehlererkennung.

Phasen des Verbindungsaufbaus

PPP stellt die Kommunikation über eine Punkt-zu-Punkt-Verbindung in vier Phasen her:

  1. Verbindungsaufbau und Konfigurationsaushandlung: Der Ausgangsknoten sendet LCP-Rahmen, um die Datenverbindung aufzubauen und ihre Parameter festzulegen.
  2. Bestimmung der Verbindungsqualität: Optional wird geprüft, ob die Qualität der Verbindung für Protokolle der Vermittlungsschicht ausreicht.
  3. Konfiguration der Vermittlungsschicht: Der Ausgangsknoten sendet Rahmen eines Network Control Protocol (NCP). Damit werden Protokolle wie IP, IPX oder AppleTalk ausgewählt und so konfiguriert, dass ihre Pakete übertragen werden können.
  4. Verbindungsbeendigung: Die konfigurierte Verbindung bleibt bestehen, bis LCP- oder NCP-Rahmen sie beenden oder ein äußeres Ereignis wie die Inaktivität des Benutzers eintritt.

LCP ist somit für Aufbau und Parameter der eigentlichen Verbindung zuständig. NCP bezeichnet eine Familie von Steuerungsprotokollen für die jeweils verwendete Vermittlungsschicht. Dazu gehören IPCP für IP, IPXCP für IPX und das AppleTalk Control Protocol für AppleTalk.

Aushandlung und Anmeldung bei PPPoE

Das Beispiel einer PPPoE-Verbindung zeigt den typischen Austausch zwischen dem Client, also dem Rechner des Internetnutzers, und dem Point of Presence (PoP), dem Remote Access Server des Internetproviders. Anfragen und Antworten besitzen IDs, damit sie auch bei verschachteltem Austausch richtig zugeordnet werden können.

Zunächst schlägt der Client mit einer LCP Configuration Request das Microsoft Call Back Control Protocol (CBCP) vor. CBCP ermöglicht besonders bei ISDN einen Rückruf durch den PoP und kann dadurch Telefonkosten sparen. Weil dies bei DSL nicht möglich ist, antwortet der PoP mit Configuration Reject. Reject bedeutet, dass eine Funktion überhaupt nicht unterstützt wird und darüber nicht weiter verhandelt werden kann.

Anschließend schlägt der PoP CHAP zur Authentifizierung und eine Maximum Receive Unit (MRU) von 1492 Byte vor. Die MRU ist wegen des 8 Byte großen PPP-Headers kleiner als die maximal mögliche MTU von 1500 Byte. Da im Windows-DFÜ-Netzwerk eine MTU von 1480 Byte eingestellt ist, antwortet der Client mit Configuration Nak und nennt seinen Gegenwert. Nak, kurz für Not acknowledged, lehnt den Vorschlag ab, erlaubt aber eine neue Verhandlung. Der PoP sendet daraufhin einen neuen Request mit der geänderten MRU und CHAP; der Client bestätigt ihn mit Configuration Acknowledge.

Bei CHAP sendet der PoP als Challenge eine 128-Bit-Zufallszahl. Der Client berechnet aus dieser Zahl und dem Passwort des Internetkontos mithilfe von MD5 einen Hash-Wert und übermittelt ihn zusammen mit dem Login als CHAP Response. Der PoP oder ein RADIUS-Server ermittelt anhand des Logins das zugehörige Passwort und berechnet mit derselben Challenge einen zweiten Hash. Stimmen beide Werte überein, folgt CHAP Success, andernfalls CHAP Fail. Das Passwort selbst wird dabei im Gegensatz zu PAP nicht im Klartext übertragen.

Danach versucht der Client, über das Compression Control Protocol (CCP) die Microsoft Point-to-Point-Compression (MPPC) auszuhandeln. Da DSL und der PoP keine Datenkompression unterstützen, weist der PoP das gesamte CCP mit Protocol Reject zurück. Bei Modem- und ISDN-Verbindungen verläuft der Aufbau ähnlich; Unterschiede betreffen vor allem die Daten- und IP-Header-Kompression, die bei DSL nicht möglich ist.

IP-Konfiguration durch IPCP

Das Internet Protocol Control Protocol (IPCP) gehört zur NCP-Familie. Es wird zur Vergabe von IP-Adressen und zur Einstellung der IP-Header-Kompression eingesetzt. Dabei können die IP-Adresse des PoPs, die dynamische IP-Adresse des Clients aus einem Adresspool des Providers und die Adressen von zwei DNS-Servern übermittelt werden. Auch der Client darf IP-Adressen vorschlagen.

Im Beispiel fordert der Client zunächst VJ-IP-Header-Kompression sowie Angaben für WINS, DNS und seine eigene IP-Adresse an. Der PoP wählt aus, welche Optionen er unterstützt. Da WINS im Internet nicht benutzt wird und DSL keine IP-Header-Kompression unterstützt, weist er diese Optionen mit Configuration Reject zurück.

Damit bleiben die Clientadresse und die Adressen der beiden DNS-Server. Der Client fordert diese Werte zunächst mit „0.0.0.0“ an. Weil diese Angaben nicht als tatsächliche DNS- und IP-Adressen geeignet sind, antwortet der PoP mit Configuration Nak und übermittelt zugleich passende Vorschläge. Der Client sendet die vorgeschlagenen DNS- und IP-Daten anschließend in einer neuen Configuration Request zurück. Dadurch zeigt er sein Einverständnis; der PoP schließt die Aushandlung mit Configuration Acknowledge ab.

Die grundlegende PPP-Spezifikation wurde als RFC 1661 im Juli 1994 veröffentlicht und löste RFC 1548 ab. Die HDLC-ähnliche Rahmung beschreibt RFC 1662, ebenfalls vom Juli 1994; sie löste RFC 1549 ab. Beide Standards stammen von W. Simpson.

Weiterlesen

Englische Sprache Die englische Sprache (Eigenbezeichnung: [ˈɪŋɡlɪʃ]) ist eine ursprünglich in England beheimatete germanische Sprache, die zum westgermanischen Zweig gehört. Informationstechnik Informationstechnik (kurz IT) steht für die Technik zur Elektronischen Datenverarbeitung (EDV) und der hierzu verwendeten Hard- und Software-Infrastruktur. Netzwerkprotokoll Ein Netzwerkprotokoll (auch Netzprotokoll) ist ein Kommunikationsprotokoll für den Austausch von Daten zwischen Computern bzw. Prozessen, die in einem … IP-Adresse Im Falle von Ethernet-Netzen dient das ARP (Address Resolution Protocol) zum Auffinden der Hardwareadresse. ARP arbeitet auf der zweiten Schicht des OSI … Domain Name System Das Domain Name System, deutsch Domain-Namen-System, (DNS) ist ein hierarchisch unterteiltes Bezeichnungssystem in einem meist IP-basierten Netz zur … Internet Protocol Das Internet Protocol (IP; deutsch Internetprotokoll) ist ein in Rechnernetzen weit verbreitetes Netzwerkprotokoll und stellt durch seine Funktion die … Link Control Protocol Dieses Protokoll wird verwendet, um eine Datenverbindung bei einer PPP (Point-to-Point Protocol) Verbindung zu konfigurieren, aufzubauen und zu prüfen. OSI-Modell Das ISO/OSI-Referenzmodell (englisch Open Systems Interconnection model) ist ein Referenzmodell für Netzwerkprotokolle als Schichtenarchitektur. MAC-Adresse Die MAC-Adresse (Media-Access-Control-Adresse, auch Media-Access-Code-Adresse) ist die Nummer eines Gerätes auf einer Datenverbindung.