Netzwerktechnologien 3 VO

Ähnliche Dokumente
Netzwerktechnologien 3 VO

Kapitel 3 Transportschicht

Themen. Transportschicht. Internet TCP/UDP. Stefan Szalowski Rechnernetze Transportschicht

Rechnernetze Übung 11

Rechnernetze Übung 11. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2012

Kapitel 3 Transportschicht

TCP/UDP. Transport Layer

15 Transportschicht (Schicht 4)

Transportschicht ÜBERBLICK

Netzwerktechnologien 3 VO

Computernetzwerke Der Top-Down-Ansatz

Router 1 Router 2 Router 3

Die Transportprotokolle UDP und TCP

UDP User Datagramm Protokoll

11. Foliensatz Betriebssysteme und Rechnernetze

TCP/IP-Protokollfamilie

Transportschicht (Schicht 4) des Internet

Informations- und Kommunikationssysteme

Chapter 11 TCP. CCNA 1 version 3.0 Wolfgang Riggert,, FH Flensburg auf der Grundlage von

Domain Name Service (DNS)

Netzwerktechnologien 3 VO

FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)

Netzwerk-Programmierung. Netzwerke.

Netzwerk-Programmierung. Netzwerke. Alexander Sczyrba Michael Beckstette.

Lehrveranstaltung Rechnernetze Einschub für das Labor

KAPITEL 3. Transportschicht. 3.1 Dienste und Prinzipien auf der Transportschicht

7 Transportprotokolle

TCP. Transmission Control Protocol

James F. Kurose Keith W. Ross. Computernetze. Ein Top-Down-Ansatz mit Schwerpunkt Internet. ein Imprint der Pearson Education Deutschland GmbH

1. Netzwerkprogrammierung für mobile Geräte

Netzwerke. Netzwerk-Programmierung. Sven Hartmeier.

Kommunikationsnetze 1. TCP/IP-Netze 1.2 TCP. University of Applied Sciences. Kommunikationsnetze. 1. TCP/IP-Netze 1.

Netzwerktechnologien 3 VO

Vorlesung SS 2001: Sicherheit in offenen Netzen

TCP/UDP PROF. DR. M. FÖLLER NORD INSTITUT EMBEDDED AND MOBILE COMPUTING

Rechnerkommunikation III

UDP-, MTU- und IP- Fragmentierung

Themen. Dienste der Transportschicht. 3-Wege-Handshake. TCP-Protokoll-Header. Real-Time-Protocol

Klausurvorbereitung. 8. Juli 2015

Charakteristische Fragestellungen der Schicht 4

Verteilte Systeme - Java Networking (Sockets) -

1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells.

Internetanwendungstechnik. TCP/IP- und OSI-Referenzmodell. Gero Mühl

Bei Aufbau der Verbindung initialisiert der Sender das Überlastfenster auf die

Technische Informa/k II

Netzwerktechnologien 3 VO

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker

Transmission Control Protocol (TCP)

Überblick. Daten- kommunikation

Internetanwendungstechnik. Transportschicht. Gero Mühl

Rechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P)

Netzwerk-Programmierung in C

TCP/IP Grundlagen verfasst von wintools4free.dl.am visit:

Electronic Business Winter 2010/2011 VWA Aachen. Computernetzwerke und das Internet ( )

Network Address Translation (NAT) Prof. B. Plattner

Adressierung eines Kommunikationspartners in der TCP/IP-Familie

TCP-Verbindungen und Datenfluss

2.3 Applikationen. Protokolle: TCP/IP. Telnet, FTP, Rlogin. Carsten Köhn

Computerforensik. Prof. Dr. Silke Draber Fachhochschule Bonn Rhein Sieg. Vorlesung SS Einführung in TCP/IP

Softwarepraktikum Sommersemester 2007

Das Internet-Protocol. Aufteilung von Octets. IP-Adressformat. Class-A Netzwerke. Konventionen für Hostadressen

Vernetzte Systeme. Übungsstunde Adrian Schüpbach 30. Juni 2006

Java und Netzwerkkommunikation

Network Address Translation (NAT) Warum eine Übersetzung von Adressen?

Grundlagen TCP/IP. C3D2 Chaostreff Dresden. Sven Klemm

Angewandte IT-Sicherheit Vorlesung im Herbstsemester 2006/2007 Prof. F. Freiling

Netzwerkprotokolle. Physikalische Verbindungsebene Datenübertragungsebene

Internetprotokoll TCP / IP

Rechnernetze I. Rechnernetze I. 2 Protokolle und Protokollhierharchie SS 2014

Netzwerktechnologien 3 VO

Das ISO/OSI Referenzmodell Internet (TCP/IP) Referenzmodell. Standard Elemente Schichten im ISO/OSI Referenzmodell.

Layer 4: Transport Layer

Networking. Motivation Grundlagen von Sockets Klasse Socket Klasse ServerSocket Exceptions Klasse URL

Verteilte Systeme - 1. Übung

Einführung. haben, um die Buchstabenkombination LOG zu übermitteln. Von den gleichzeitig telefonierenden Technikern werden die Worte. Hast du das L?

Die Transportprotokolle: Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Die Socket-Schnittstelle

KN Das Internet

IP-Adressen und Ports

Praktikum zur Vorlesung Datenkommunikation. Teil I

Beispiel TCP-/IP-Datenübertragung

Vorlesung: Netzwerke (TK) WS 2011/12 Kapitel 1 Vorbereitung für Praktikum Session 03

Überblick. Daten- kommunikation

Transportprotokolle im TCP/IP- Referenzmodell

Kapitel 4: Design von Client/Server-Software. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes

Basisinformationstechnologie II Sommersemester 2011 Rechnerkommunikation II April 2011

Transportschicht. Einleitung Transmission Control Protocol, RFC793. Transportschicht

Client/Server-Systeme

Netzwerke und Ihre Protokolle

9. Foliensatz Computernetze

Einführung. Internet vs. WWW

Systeme II 10. Woche Transportschicht. Christian Schindelhauer Technische Fakultät Rechnernetze und Telematik Albert-Ludwigs-Universität Freiburg

Rechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 7.

Übung - Mit Wireshark eine UDP-DNS-Aufzeichnung untersuchen

Client/Server-Systeme

Netzwerkgrundlagen. OSI-Modell. Layer 1 Physikal Layer. Layer 2 Data Link Layer. Layer 3 Network Layer

LAN & Internet. Grundlagen Netzwerke LAN-2. Saarpfalz-Gymnasium. Router. Router LAN-3. Router. Kommunikation in Rechnernetzen

Wie organisiert ihr Euer menschliches «Netzwerk» für folgende Aufgaben? an alle an ein bestimmtes an ein bestimmtes an alle an ein bestimmtes

Abschlussklausur. Computernetze. Bewertung: 16. Mai Name: Vorname: Matrikelnummer:

Transkript:

Netzwerktechnologien 3 VO Univ.-Prof. Dr. Helmut Hlavacs helmut.hlavacs@univie.ac.at Dr. Ivan Gojmerac gojmerac@ftw.at Bachelorstudium Medieninformatik SS 2012

Kapitel 3 Transportschicht 3.1 Dienste der Transportschicht 3.2 Multiplexing und Demultiplexing 3.3 Verbindungsloser Transport: UDP 3.4 Grundlagen der zuverlässigen Datenübertragung 3.5 Verbindungsorientierter Transport: TCP 3.6 Grundlagen der Überlastkontrolle 3.7 TCP-Überlastkontrolle

3.1 Dienste der Transportschicht Stellen logische Kommunikation zwischen Anwendungsprozessen auf verschiedenen Hosts zur Verfügung Transportprotokolle laufen auf Endsystemen Sender: teilt Anwendungsnachrichten in Segmente auf und gibt diese an die Netzwerkschicht weiter Empfänger: fügt Segmente wieder zu Anwendungsnachrichten zusammen, gibt diese an die Anwendungsschicht weiter Es existieren verschiedene Transportschichtprotokolle Internet: TCP und UDP

3.1 Unterschied: Transport- und Netzwerkschicht Netzwerkschicht: logische Kommunikation zwischen Hosts Transportschicht: logische Kommunikation zwischen Prozessen verwendet und erweitert die Dienste der Netzwerkschicht Analogie: Briefzustellung an mehrere Bewohner des selben Hauses 12 Kinder senden Briefe an 12 andere Kinder. Prozess = Kind Anwendungsnachricht = Brief in einem Umschlag Host = Haus Transportprotokolle = Namen der Kinder (z.b. Anne und Bill ) Netzwerkprotokoll = Postdienst

3.1 Transportprotokolle im Internet Zuverlässige, reihenfolgeerhaltende Auslieferung (TCP) Überlastkontrolle Flusskontrolle Verbindungsmanagement Unzuverlässige Datenübertragung ohne Reihenfolgeerhaltung: UDP Minimale Erweiterung der Best-Effort - Funktionalität von IP Dienste, die nicht zur Verfügung stehen: Garantien bezüglich Bandbreite oder Verzögerung

3.2 Multiplexing und Demultiplexing Multiplexing beim Sender: Daten von mehreren Sockets einsammeln, Daten mit einem Header versehen (der später für das Demultiplexing verwendet wird). Demultiplexing beim Empfänger: Empfangene Segmente am richtigen Socket abliefern.

3.2.1 Demultiplexing Analogie: Briefzustellung an mehrere Bewohner des selben Hauses Bill erhält einen Stapel Briefe vom Briefträger und gibt jeden davon dem Kind, dessen Name auf dem Brief steht. Host empfängt IP-Datagramme Jedes Datagramm hat eine Absender-IP-Adresse und eine Empfänger-IP-Adresse Jedes Datagramm beinhaltet ein Transportschichtsegment Jedes Segment hat eine Absender- und eine Empfänger-Portnummer Hosts nutzen IP-Adressen und Portnummern, um Segmente an den richtigen Socket weiterzuleiten TCP/UDP Segmentformat

3.2.1 Verbindungsloses Demultiplexing (UDP) Sockets mit Portnummer anlegen: DatagramSocket mysocket1 = new DatagramSocket(12534); DatagramSocket mysocket2 = new DatagramSocket(12535); UDP-Socket wird durch ein 2-Tupel identifiziert: (Empfänger-IP-Adresse, Empfänger-Portnummer) Wenn ein Host ein UDP-Segment empfängt: 1. Lese Empfänger-Portnummer 2. Das UDP-Segment wird an den UDP-Socket mit dieser Portnummer weitergeleitet IP-Datagramme mit anderer Absender-IP-Adresse oder anderer Absender- Portnummer werden an denselben Socket ausgeliefert

3.2.1 Verbindungsloses Demultiplexing DatagramSocket serversocket = new DatagramSocket(46428); Quellport ist der Port, an den geantwortet werden soll

3.2.2 Verbindungsorientiertes Demultiplexing (TCP) TCP-Socket wird durch ein 4-Tupel identifiziert: Absender-IP-Addresse Absender-Portnummer Empfänger-IP-Adresse Empfänger-Portnummer Empfänger nutzt alle vier Werte, um den richtigen TCP-Socket zu identifizieren Server kann viele TCP-Sockets gleichzeitig offen haben: Jeder Socket wird durch sein eigenes 4-Tupel identifiziert Webserver haben verschiedene Sockets für jeden einzelnen Client Bei nichtpersistentem HTTP wird jede Anfrage über einen eigenen Socket beantwortet (dieser wird nach jeder Anfrage wieder geschlossen)

3.2.2 Verbindungsorientiertes Demultiplexing (TCP)

3.3 Verbindungsloser Transport: UDP Minimales Internet-Transportprotokoll Best-Effort -Dienst, UDP-Segmente können: verloren gehen in der falschen Reihenfolge an die Anwendung ausgeliefert werden Verbindungslos: kein Handshake zum Verbindungsaufbau jedes UDP-Segment wird unabhängig von allen anderen behandelt Warum gibt es UDP? Kein Verbindungsaufbau (der zu Verzögerungen führen kann) Einfach: kein Verbindungszustand im Sender oder Empfänger Kleiner Header Keine Überlastkontrolle: UDP kann so schnell wie von der Anwendung gewünscht senden

3.3 Verbindungsloser Transport: UDP Häufig für Anwendungen im Bereich Multimedia-Streaming eingesetzt Verlusttolerant Mindestrate Andere Einsatzgebiete DNS SNMP Zuverlässiger Datentransfer über UDP: Zuverlässigkeit auf der Anwendungsschicht implementieren Anwendungsspezifische Fehlerkorrektur! Länge (in Byte) des UPD-Segments, inklusive Header UDP Segmentformat

3.3.1 Fehlerkorrekturmechanismus: UDP Prüfsumme Ziel: Fehler im übertragenen Segment erkennen (z.b. verfälschte Bits) Sender: Betrachte Segment als Folge von 16-Bit-Integer-Werten Prüfsumme: Addition (1er-Komplement-Summe) dieser Werte Sender legt das invertierte Resultat im UDP-Prüfsummenfeld ab Empfänger: Berechne die Prüfsumme des empfangenen Segments inkl. des Prüfsummenfeldes Sind im Resultat alle Bits 1? NEIN Fehler erkannt JA Kein Fehler erkannt

3.3.1 Fehlerkorrekturmechanismus: UDP Prüfsumme Zahlen werden addiert und ein Übertrag aus der höchsten Stelle wird zum Resultat an der niedrigsten Stelle addiert. Beispiel: Addiere zwei 16-Bit-Integer-Werte. 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + Übertrag 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 Summe (mit Übertrag) Prüfsumme 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1