Netzwerktechnik http://kohnlehome.de/netz/tcp-udp.pdf
TCP - UDP
Portnummern
0 - 1023 Well Known Ports Server applications System Ports
1024 - 49151 Registered Ports user processes or applications, clients User Ports
49152 - 65535 Dynamic Ports client applications Private Ports
Offizielle Liste: iana.org/assignments/port-numbers
Beispiele f¨ ur Well Known Ports
Portnummer Protokoll Anwendung
20, 21 TCP FTP
22 TCP SSH
23 TCP Telnet
25 TCP SMTP
53 UDP, TCP DNS
67, 68 UDP DHCP
69 UDP TFTP
80 TCP HTTP
110 TCP POP3
143 TCP IMAP
161, 162 UDP SNMP
443 TCP HTTPS
UDP VoiceOverIP UDP Streaming Video
UDP
• No connection establishment: connectionless
• wenig Overhead: 8 Byte Header
UDP-Header
RFC 768
0 7 8 15 16 23 24 31
+---+---+---+---+
| Source | Destination |
| Port | Port |
+---+---+---+---+
| | |
| Length | Checksum |
+---+---+---+---+
Franz Kohnle Seite 1 von 3 19. Februar 2020
Netzwerktechnik http://kohnlehome.de/netz/tcp-udp.pdf
TCP
TCP-Header
RFC 793
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Port | Destination Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Acknowledgment Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data | |U|A|P|R|S|F| |
| Offset| Reserved |R|C|S|S|Y|I| Window |
| | |G|K|H|T|N|N| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | Urgent Pointer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ordered Delivery (Segment Reassembly)
Empf¨anger ordnet Segmente anhand der Sequence-Number
Connection Establishment (Three-Way-Handshake)
Connection-oriented: Verbindungsaufbau: Austausch der initial sequence number
: Client : Server
SYN, Seq = 23
SYN, ACK, Seq = 98, Ack = 24 ACK, Seq = 24, Ack = 99
Session Termination
Beenden der Verbindung
: A : B
FIN ACK
FIN ACK
Franz Kohnle Seite 2 von 3 19. Februar 2020
Netzwerktechnik http://kohnlehome.de/netz/tcp-udp.pdf
Reliability (Zuverl¨ assigkeit)
Zuverl¨assigkeit: acknowledgements (receiver), timer + retransmission (sender) Verlorengegangene Segmente werden nochmal gesendet.
: Sender : Empf¨anger
Daten 1 Timer starten
Daten 2 Daten 3 ACK 4 ACK rechtzeitig
Daten 4 Timer neu starten
Daten 5 Daten 6 ACK 7 ACK rechtzeitig
Daten 7 Timer neu starten
X X X Daten 8 X X X
kommt nicht an Daten 9
X X X ACK 10 X X X
ACK kommt nicht an ACK wird nicht gesendet
Daten 7 Timer abgelaufen, Retransmission
Daten 8 Daten 9 ACK 10
Flow Control
Flusskontrolle, Stauvermeidung: sliding windows
• TCP-Window-Size: Anzahl der Bytes, die empfangen werden, bevor ACK geschickt werden muss.
• MSS (Maximum Segment Size): Payload eines TCP-Segments maximal 1460 Byte
• Ethernet MTU (Maximum Transmission Unit): Payload eines Ethernet-Frames maximal 1500 Byte
Error Checking Overhead
20 Byte Header, Three-way-handshake, ACK
Franz Kohnle Seite 3 von 3 19. Februar 2020