produktivzone
3 Normseiten, geschätzte Lesezeit 2 Min.

Well-Known Ports

Was sind Ports?

Wenn zwei Computer über das Internet kommunizieren wollen, benötigen Sie eine eindeutige Adresse, unter der sie erreicht werden, ähnlich wie eine Telefonnummer. Es handelt sich um die IP-Adresse. Diese kann von den Programmen auf einem Computer geteilt werden. Dazu hat man die Verbindung in insgesamt 64'000 Ports (Kanäle) unterteilt, die von den Programmen einzeln genutzt werden können.

Wenn ein Port belegt ist, können andere Programme nicht mehr darüber kommunizieren. Deshalb besteht die Notwendigkeit, die Port-Belegung zu definieren. Dafür zuständig ist die Institution IANA (Internet Assigned Numbers Authority). Dort unterscheidet man folgende Nummernbereiche:

Systemports 0 bis 1023 (#0000-#03FF)

Enthalten die Ports jener Programme, die im Internet am meisten verbreitet sind. Sie werden deshalb auch well-known Ports genannt. Manche Ports sind mehrfach belegt, was zu Konflikten führen kann, aber das ist selten. System-Administratoren haben täglich mit diesen Ports zu tun.

Registered Ports 1024 bis 49151 (#0400-#BFFF)

Diese Ports können auf Antrag registriert werden und sind dann ausschließlich für den Antragsteller reserviert.

Dynamic Ports 49152 bis 65535 (#C000-#FFFF)

Wenn ein Programm mehrere Kanäle gleichzeitig öffnen will, kann es beim Betriebssystem weitere Ports beantragen. Dieses vergibt dann Ports aus diesem Nummernbereich. Diese können anschließend von dem Programm über einen Well-known Port an die Gegenstelle übertragen werden, so dass beide Stellen informiert sind und die Software über mehrere Kanäle gleichzeitig kommunizieren kann.

Jeder dieser Kanäle kann über verschiedene Transport-Protokolle kommunizieren. Die beiden wichtigsten sollte man kennen, es sind UDP und TCP. Mit den anderen hat mit in der Regel selten zu tun (SCTP, TLS, DTLS).

UDP (User Datagram Protocol)

versendet Daten-Pakete, ohne sicher zu gehen, dass die Daten auch wirklich beim Ziel ankommen. Das ist beispielsweise dann sinnvoll, wenn Inhalte gestreamt werden, wie Audio- und Video-Dateien. Wenn da mal ein Byte verloren geht, ist das nicht weiter schlimm.

TCP

Tut dasselbe, stellt aber sicher, dass die Daten-Pakete am Ende vollständig und in der richtigen Reihenfolge ankommen. Dadurch ist die Übertragung ein wenig langsamer.

Dazu ist zu sagen, dass viele Programmierer Ihre Software gar nicht bei der IANA registriert haben, obwohl sich die dazu gehörende Software durchgesetzt hat. Man unterscheidet deshalb zwischen offiziellen und inoffiziellen Portbelegungen.

Es werden auch längst nicht alle well-known Ports genutzt, was schlicht daran liegt, dass sie nicht vergeben sind, oder dass die dazu gehörenden Programme nicht mehr im Umlauf sind. Es hat sich deshalb eingebürgert, mit verkürzten Listen zu arbeiten, auf denen nur jene Ports verzeichnet sind, die wirklich benötigt werden, das ist viel handlicher. Nachfolgend finden Sie jene Liste, die ich zum Nachschlagen verwende:

Auflistung Well-Known Ports