210 likes | 500 Views
Referat von Markus Hertel. TCP/IP. TCP/IP Inhalt. Allgemeines Referenzmodell TCP – Header Verbindungsaufbau Verbindungsabbau Datenübertragung Ports. TCP/IP Allgemeines. TCP/IP – Protokollfamilie umfasst etwa 500 Protokolle
E N D
Referat von Markus Hertel TCP/IP
TCP/IPInhalt • Allgemeines • Referenzmodell • TCP – Header • Verbindungsaufbau • Verbindungsabbau • Datenübertragung • Ports
TCP/IPAllgemeines • TCP/IP – Protokollfamilie umfasst etwa 500 Protokolle • 1970 von der DARPA (Defense Advanced Research Projects Agency) entwickelt • 1981 standardisiert – RFC 793 • Regelt die Verbindung zwischen Computern in einem Netzwerk • TCP ist Bestandteil aller modernen Betriebssysteme z.B.:(Windows – wsock32.dll Linux – Kernel) • Verbindungsorientertes Protokoll-Verbindungsaufbau-Datenaustausch-Verbindungsabbau
TCP/IPAllgemeines • Kommunikation über virtuellen Kanal (Socket) mit Hilfevon IP-Adressen und Portnummern • Schutz vor Datenverlust bei der Übertragung
TCP/IPTCP-Header • Source Port ( 2 Byte ) • Destination Port ( 2 Byte ) • Sequenznummer ( 4 Byte ) - Verbindungsaufbau - Nummerieren der Segmente • Quittiernummer ( 4 Byte ) • Headerlänge ( 4 Bit ) - Anzahl von 32-Bit-Blöcken • Reserviert ( 6 Bit )- immer Null
TCP/IPTCP-Header • Steuerflags ( 6 Bit )- URG (Dringlichkeit) sofortige Bearbeitung z.B. „Strg + C“ Telnet- ACK (Verbindungsaufbau & Empfangsbestätigung)- PSH (ohne Puffernutzung)- RST (Reset)- SYN (Verbindungsaufbau)- FIN (Verbindungsabbau) • Window ( 2 Byte )- Anzahl der zu empfangenen Bytes
TCP/IPTCP-Header • Prüfsumme ( 2 Byte )- generiert aus Header und Nutzdaten • Urgent Pointer ( 2 Byte )- zeigt auf die „Urgent“-Daten • Zusatzinformationen- Vielfaches von 32 Bit- z.B. Länge der Nutzdaten
3 Wege Handshake TCP/IPVerbindungsaufbau Sequenznummer (Client)Steuerflag SYN = 1 1 Sequenznummer (Server) Quittiernummer = (Sequenznummer Client + 1)Steuerflag SYN = 1 Steuerflag ACK = 1 2 Server Client Sequenznummer = (Sequenznummer Client +1)Quittiernummer = (Sequenznummer Server + 1)Steuerflag ACK = 1 3
TCP/IPVerbindungsaufbau 1 Anfrage Quellport: Hex. 8106 = Dez. 33030 Zielport: Hex. 0050 = Dez. 80 (http) Sequenznr.: Hex. 2686E27D Quittiernr: Hex. 00000000 Headergr.: Hex. A = Dez. 10 (10 x 32 Bit = 40 Byte) Res. + Flags: Hex. 002 = Bin. 000000 000010 Window: Hex. 16D0 Checksum: Hex. 4C91 UrgentPTR: Hex. 0000
TCP/IPVerbindungsaufbau 2 Antwort & Bestätigung Quellport: Hex. 0050 = Dez. 80 (http) Zielport: Hex. 8106 = Dez. 33030 Sequenznr.: Hex. 293BCEC4 Quittiernr: Hex. 2686E27E Headergr.: Hex. 6 = Dez. 6 (6 x 32 Bit = 24 Byte) Res. + Flags: Hex. 012 = Bin. 000000 010010 Window: Hex. 1FFE Checksum: Hex. 1FE8 UrgentPTR: Hex. 0000
TCP/IPVerbindungsaufbau 3 Bestätigung Quellport: Hex. 8106 = Dez. 33030 Zielport: Hex. 0050 = Dez. 80 (http) Sequenznr.: Hex. 2686E27E Quittiernr: Hex. 293BCEC5 Headergr.: Hex. 5 = Dez. 5 (5 x 32 Bit = 20 Byte) Res. + Flags: Hex. 010 = Bin. 000000 010000 Window: Hex. 16D0 Checksum: Hex. 40A3 UrgentPTR: Hex. 0000
TCP/IPVerbindungsabbau • Ähnliches Prinzip wie beim Aufbau der Verbindung • Nutzt statt SYN-Flag das FIN-Flag
Segmentierung der Daten TCP/IPDatenübertragung - Segmentierung TCP-Segmentgröße = 1500 Byte TCP-Nutzdaten: 1500 Byte – 20 Byte (TCP-Header) – 20 Byte (IP-Header) = 1460 Byte
Server: Sequenznummer: Eigene Sequenznummer Quittiernummer: Sequenznummer (Client) + Nutzdatengröße (bleibt konstant) Nutzdaten Client: (Bestätigung – nur Header) Sequenznummer: Sequenznummer + Nutzdatengröße (bleibt konstant) Quittiernummer: Sequenznummer (Server) + Nutzdatengröße . . . . TCP/IPDatenübertragung
TCP/IPPorts • Jedem Dienst ist ein Port zugeordnet (http – 80, ftp – 21, Telnet - 23, SSH – 22) • Portreichweite 1 – 1023 fest zugeordnet1024 – 49151 reservierte Portnummern49152 – 65535 zur dynamischen und privaten Nutzung
Quellenangaben: http://de.wikipedia.org/wiki/Transmission_Control_Protocol http://tools.ietf.org/html/rfc793 http://www.elektronik-kompendium.de/sites/net/0812271.htm TCP/IP Grundlagen – Gerhard Lienemann Cisco Networking Academy Program – Ciscso Press TCP/IP