Zum Inhalt springen

TCP mit einem Port auf zwei Anwendungen


Empfohlene Beiträge

Geschrieben

Hallo zusammen!

Folgende Frage tat sich mir gestern bzgl. des TCP-Protokolls auf:

Damit die Transportschicht Segmente den richtigen Anwendungsprozessen zuordnen kann, werden ja Quell- und Zielportnummer verwendet. Falls zwei Anwendungsprozesse zufällig die gleiche Quellportnummer zugewiesen bekommen, wird ja zusätzlich noch die Ziel- und Quelle IP-Adresse verwendet.

Dafür ist allerdings im Standard-TCP-Format kein Feld vorgesehen oder? Woher weiß TCP denn dann die Quell- und Ziel-IP-Adresse eines Segments?

:upps

liebe Grüße, sn3002

Geschrieben (bearbeitet)

Passiert eine Doppelvergabe überhaupt? Für die Funktion wird meist auf fertige Klassen zugegriffen. Und falls der Fehler aufgrund manueller Portbelegung passiert, könnte ich mir vorstellen, dass es die Aufgabe der Applikationen ist anhand der IPs zu entscheiden ob die Nutzdaten verwertet werden oder nicht. Das Betriebssystem schiebt einfach Beiden das Paket zu.

Der TCP/IP Stack hat damit nichts am Hut.

Lass mich aber gerne eines besseren belehren :-).

Bearbeitet von Capricious
Geschrieben

Wenn es TCP ist, dann hat der TCP/IP Stack etwas damit zu tun.

TCP hat eine Flusssteuerung, wo a) beim Verbindungsaufbau (3Way Handshake) und B) bei der Datenübertragung doppelte Antworten (SYN-ACK bzw. ACK) durch die enthaltene Sequenznummer bemerkt werden.

Bei UDP ist es dem TCP/IP Stack egal.

Geschrieben
Hallo zusammen!

Folgende Frage tat sich mir gestern bzgl. des TCP-Protokolls auf:

Damit die Transportschicht Segmente den richtigen Anwendungsprozessen zuordnen kann, werden ja Quell- und Zielportnummer verwendet. Falls zwei Anwendungsprozesse zufällig die gleiche Quellportnummer zugewiesen bekommen, wird ja zusätzlich noch die Ziel- und Quelle IP-Adresse verwendet.

Dafür ist allerdings im Standard-TCP-Format kein Feld vorgesehen oder? Woher weiß TCP denn dann die Quell- und Ziel-IP-Adresse eines Segments?

:upps

liebe Grüße, sn3002

Eine doppelte Vergabe bei TCP ist nicht möglich. Die TCP-Sockets werden vom OS verwaltet. Hier gilt das Prinzip wer zuerst kommt, malt zuerst. Sollte eine Anwendung versuchen einen belegten Quellport für einen TCP-Stream zu verwenden wird dies vom OS erkannt und der Quellport geändert. Der Quellport bleibt für die Zeit des Streams für eine Anwendung (Socket) reserviert.

Geschrieben

Na die Fragestellung ging vielleicht ein bischen in die falsche Richtung:

:upps:confused:

Folgendes Szenario nochmal:

Ein Webserver erhält auf Ziel-Port-Nr. 80 zwei Anfragen von zwei verschiedenen Hosts, die zufällig die gleiche Quell-Port-Nummer benutzen.

Wenn TCP nun diese Anfragen an die Anwendung (Webserver) weiterleitet, ist die Information von welcher IP-Adresse die Anfrage stammt schon weg.

Wie kann nun bei der Antwort die richtige Zuordnung auf TCP-Ebene erfolgen??

lg, sn3002

Geschrieben

Mir scheint, dass du das Prinzip des OSI-Modells noch nicht so ganz verstanden hast.

Der Client packt seine Pakete ineinander. Die Daten aus Schicht 7 ind Schicht 6, die Daten aus Schicht 6 in Schicht 5, u.s.w. bis auf Schicht 1 ein Paket mit den ganzen Daten der darüber liegenden Schichten gesendet wird. Auf der Gegenstelle wird dies dann wieder alles entpackt an entsprechender Stelle.

Da TCP auf IP aufsetzt, ist also bekannt, wo das Paket herkommt.

Wenn du dir dieses Bild einmal anschaust, dann siehst du, dass Schicht 3 z.B. alle Daten der Schicht 4 enthält plus die zusätzlichen Daten die in Schicht 3 dazukommen.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...