Was ist der Sinn von Ports?

8 Antworten

Zunächst: Was sind Ports (im Sinne von TCP/UDP)?

Ein Port (im Sinne von TCP/UDP) ist technisch betrachtet nichts anderes als eine 16-Bit Zahl, die sich im TCP/UDP-Header eines Ethernet-IP-Frames befindet. Durch diese Zahl kann der TCP/UDP-Stack des Betriebssystems das eingehende Paket einem von bis zu 65534 Sockets zuordnen.

Was ist nun der Sinn des ganzen?

Vereinfacht gesagt: Dadurch können mehrere Verbindungen gleichzeitig über die selbe IP-Adresse laufen statt nur exakt eine einzige.

---------------------------------

Etwas bildlicher formuliert: Die IP-Adresse ist ein Haus. Die Ports bezeichnen die Bewohner des Hauses.

Ohne das Konzept der Ports würde der Postbote auf seiner Tour einen Haufen Briefe bei dem Haus abliefern, die alle mit nichts anderem als der Adresse des Hauses beschriftete wären. Die Bewohner müssten dann den Haufen durchkramen und am Inhalt des Briefes zuordnen, an wen der Brief am Ende gehen soll. (bestenfall ein ordentliches Chaos)

Mit dem Konzept hätte jeder Brief zusätzlich den Namen (oder auch die Wohnungsnummer) des Hausbewohners auf dem Umschlag stehen. Dadurch ist es erheblich einfacher, einem Bewohner gezielt einen Brief zukommen zu lassen, statt darauf zu hoffen, dass er ihn evtl. zufälligerweise erwischt.

der Port = hafen. der port ist die ortsangabe einer seite, adresse etc. wohin du geleitet wirst

Eine Netzwerk Karte eines Computers bekommt mittels des TCP/IP-Protokolls eine IP.
Nun kann an einem Ende nur ein Dienst (zB Webserver) auf ein Protokoll lauschen.
Damit nun ein Webserver mehrere Dienste auf einem Computer und mit einem Kabel anbieten kann, braucht es, trotz nur einer IP mehrere Enden.
Ports realisieren das. So kann ein Webserver eine Seite mit http und die gleiche Seite mit https anbieten und dem Admin noch SSH-Zugang ermöglichen. Auf der gleichen Kiste kann auch noch eine Datenbank und ein Mailserver liegen, jeder von aussen erreichbare Dienst bekommt einfach einen eigenen port.
Damit die Nutzer nicht ständig an sowas denken müssen, gibt es viele Stadardports. Für http zum Beispiel 80, für https 443 usw.
So musst du eben nicht auf gutefrage.net:80 gehen.

Damit dein PC weiß zu welcher Anwendung (die über das Internet Daten empfängt) die empfangenen Daten weiterleiten soll, gibt es Ports.

Weil stell dir vor:

3 Anwendungen kommunizieren über das Internet. Jetzt kriegt der PC auf seine IP 3 Antwortdatenpakete. Woher soll er wissen welches Paket welcher Anwendung zugeordnet wird?

Antwort: Die Anwendungen lauschen auf jeweils einen eigenen Port und die Antwortdatenpakete schicken eben diese an den jeweiligen Port wo es ankommen soll.

Der Primäre Sinn von Ports ist es, dass eine Anwendung X genau weiß, wie sie einen Dienst Y erreicht, da er einen standardisierten Port Z verwendet.