online-wissen > IT-Berufe > LF7: Vernetzte IT-Systeme > OSI4-Layer > TCP

TCP

  • Transmission Control Protocol
  • übernimmt die Kontrollfunktionen
  • verbindungsorientiert, Aufbau einer virtuellen Verbindung
  • Verbindungsaufbau (Three-Handshake)
    • Client: SYN-Paket (markiert den Verbindungsaufbau)
    • Server: ACK-Paket (markiert die Bereitschaft, Server sendet SYN + ACK – Paket)
    • Client: ACK-Paket (Empfangsbestätigung)
  • Verbindungsabbau: FIN statt SYN
  • während der Verbindung: Vollständigkeitskontrolle
  • Portnummer = Identifikationsnummer einer TCP/IP-Anwendung innerhalb des Betriebssystems
    • 1 – 1024: well-known-Ports; sind für Server bestimmt
    • 1025-65636: Client
  • Retransmission: Der Empfänger eines Paketes bestätigt dies mit einem Bestätigungspaket (ACK = Ackknowledge), das die Sequenznummer und Nutzdatenlänge zusammensetzt. Beim Senden eines Paketes startet ein Timer innerhalb dessen das ACK-Paket ankommen muss. Wenn der Paket-Timer ausläuft ohne Empfang eines ACK, sendet der Sender das Paket erneut.
  • Socket: Kombination IP-Adresse:Portnummer; Zuordnung der Pakete verschiedener Netzwerkaktivitäten zu den jeweiligen Prozessen
    • = Software-Modul zur Kommunikation (bidirektionaler Datenaustausch)
    • Computer – Netzwerk, zwischen Prozessen
    • Verbindungsstelle (Identifikation durch Adressinformationen, z.B. IP + Port)
    • Stream (TCP) vs. Datagram (UDP) Sockets: Zeichen-Datenstrom vs. einzelne Nachrichten
    • Aufbau
      • Client: Socket erstellen, Server verbinden, Datenaustausch, Server trennen, Socket schließen
      • Server: Socket erstellen, Bindung an Port (z.B. beim Bootvorgang); Warten auf Anfragen und Anfrage akzeptieren (Bildung eines Client-Socket-Paars auf dem Server; s. Client: Server verbinden(), Datenaustausch, Client-Socket schließen und wieder Warten auf Anfragen
  • UDP: verbindungsloses Protokoll (Alternative zu TCP) ohne Fehlerkorrektur. Wird bei Broadcasts, DNS und VoIP verwendet.
  • Header:
    • 16 Quellport
    • 16 Zielport
    • 32 Sequence-Number: Identifikation einzelner Pakete (z.B. zur Bestätigung)
    • 32 Acknowledge-Number
    • Offset: Kopflänge als Vielfaches von 32; Maximallänge: 32*4Byte
    • URG, ACK, PSH, RST (Reset bewirkt das sofortige Aufheben der TCP-Verbindung), SYN (Synchronisation signalisiert den Wunsch für einen Verbindungsaufbau (3-Wege-Handshake), FIN (Signalisiert, dass der Sendende zum Beenden der Verbindung bereit ist)
    • Windowssize darüber wird ausgemacht, wie viele Daten der Sender denden kann bis ein ACK zu erwarten ist
    • Prüfsumme enthält eine Prüfsumme welche die Integrität des Header sicherstellt
    • Urgent-Pointer indiziert ggf. das Ende der Dringlichkeitsdaten und den Anfang der Nutzdaten
    • Options (Headerextensions; enthält ggf. header optionne), Padding ergänzt ggf. die options mit einem fullmuster um ein vielfaches von 32 zu erreichen
    • Data