Rechnernetze und Organisation - IAIK

Werbung
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Rechnernetze und Organisation
Rechnernetze und Organisation
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
WAN
RNO
VO11_wan
1
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Übersicht
Rechnernetze und Organisation
Motivation
Internet
Domain-Name Service
IP-Adressen
IP-Protokoll
UDP-Protokoll
TCP-Protokoll
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
2
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Motivation
WAN
Router ISP-2
LAN
Switch
Router
WAN
Rechnernetze und Organisation
ISP-1
Internet Service
Provider
Firmennetzwerk
Webstore
Internet-Service
Router ISP-3
Internet
Service-2
Internet-Service
Wie gelangen Daten durch das Internet?
Wie wird sichergestellt, dass Daten verlässlich
ankommen?
Wie organisiert sich das Internet?
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
3
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Was ist das Internet?
Was ist das Internet?
–
Wer organisiert das Internet?
Ein globaler Verbund von
Netzwerken
– IP-Adress-Verwaltung:
• Top-Level Domains: Verisign
• In Österreich: NIC.at
Wem gehört das Internet?
–
Den Betreibern der einzelnen
Teilnetzwerke
– Internet-Standards
Rechnernetze und Organisation
Was ist ein Intranet?
–
Firmen-internes Netzwerk das
Internet-Technologie (IP, TCP) nützt.
• IETF.org: Internet Engineering Task Force
• RFCs: Requests for comments
(Dokumente)
– ~ 4000 Dokumente
• W3C.org: World-wide web
WAN
Router ISP-2
LAN
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
Switch
Router
WAN
ISP-1
Internet Service
Provider
Firmennetzwerk
Router ISP-3
Internet
RNO
Webstore
Internet-Service
Service-2
Internet-Service
VO11_wan
4
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Internet Services
Rechnernetze und Organisation
World Wide Web:
HTTP, HTTPS
Email:
SMTP, POP, IMAP
Chat:
IRC
Filetransfer:
FTP
Remote Login:
Telnet, SSH
Audio- und Video-Streaming:
VoIP, H323
Online-Spiele
File-Sharing:
BitTorrent
Domain-Name Service:
DNS
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
5
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Domain-Name Service (DNS)
Auflösung von Host-Namen
–
In IP-Adressen
•
–
Z:\>nslookup www.iaik.tugraz.at
Sind für Paket-Routing notwendig
Host-Namen sind nur für Bequemlichkeit
•
Werden durch DNS in IP-Adresse aufgelöst
Hierarchisches Namensschema
–
3.
DNS-Server
Rechnernetze und Organisation
DNS cache
.at, .com, .org
Länder
Funktion
2.
Domain
•
tugraz.at
Sub-Domain
•
–
www.iaik.tugraz.at
129.27.142.20
Rekursiver Suchalgorithmus
Caching von Anfrageergebnissen
–
–
–
Name:
Address:
Top-level Domain
•
–
ns.iaik.tu-graz.ac.at
129.27.142.23
DNS: Verteilte Datenbank
•
•
–
Server:
Address:
Client
iaik.tugraz.at
Host
•
DNS cache
www.iaik.tugraz.at
► Weder Name noch IP-Adresse sagen
was über Standort des Computers aus.
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
1.
VO11_wan
6
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
IP-Adress-Bereiche
Netze: Klasse, Netzwerk, Host
–
–
Class A: 1.H.H.H – 127.H.H.H
Class B: 128.N.H.H – 191.N.H.H
•
–
Besondere IP-Adressen
–
•
•
zB. TU Graz: 129.27.
–
Class C: 192.N.N.X – 223.N.N.X
Rechnernetze und Organisation
–
Unterteilung eines Netzwerkes in
logische Netzwerke
Netmasks legen Broadcast-Domains
fest
•
IP=129.27.142.23,
NetMask=255.255.255.128
–
•
–
•
Von 129.27.142.0
Bis 129.27.142.127
7 (32-25) untere Bits
Host X.X.X.1 ist meist das Gateway
IP-Adresse X.X.X.255 ist für
Broadcasts
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
128-Bit Adressen statt 32-Bit
Adressen
RNO
Sollte IP-Adressmangel beheben
Seit 1999 verfügbar
•
•
„255.255.255.128“ = „/25“
»
•
•
–
–
Zwei Notationen für Netmasks üblich
Eigener Rechner
Loop-Back Device
IPv6: Nachfolger von IPv4
Von Broadcast folgende IPAdressen angesprochen:
»
»
Private Netze
Sind nicht routbar
127.0.0.1: Localhost
•
•
Subnetze
–
10.0.0.0, 192.168.0.0
Bisher kaum verbreitet
Network-Adress-Translation (NAT)
für IPv4
–
–
Bremst Verbreitung von IPv6
Neuerungen
•
•
•
Schnelleres Routing
Multicast-Fähigkeit
Integrierte Sicherheit (IPsec)
VO11_wan
7
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
IP Protokoll
Internet Protokoll (IP)
– Routet Daten-Pakete durch Internet
• Globale Zustellung von Daten-Paketen
– Benötigt eindeutige Netzwerkadresse
• 32-Bit IP-Adresse
Rechnernetze und Organisation
– Pakete werden einzeln geroutet
• Kein Verbindungsaufbau vorab
– Unabhängig von Übertragungstechnologie
• Ethernet, Wlan, ATM, ...
• Data-Link-Layer hat i.A. andere Adressierung
– IP ist kein verlässliches Service („best effort delivery“)
•
•
•
•
Paketverlust kann auftreten
Reihenfolge der Pakete kann geändert sein
Paketdaten können verändert sein
Verlässlichkeit wird durch TCP sichergestellt
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
8
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
IP-Datagram (IP-Paket)
Rechnernetze und Organisation
• 20 Byte bis 65535 Bytes
– Identification, Flags, Fragment Offset
• Zur Erkennung von Fragmenten
– Time to Live
• Anzahl möglicher Routing-Hops
– Protokoll: 1 ICMP, 6 TCP, 17 UDP
– Quell- und Zieladresse (32 Bit)
– Header-Prüfsumme: 16-Bit Summe
31
16
Big-Endian Darstellung von Wörtern
Version: 4 (IPv4)
Header Length: in 32-Bit Wörtern
Type of Service: für Quality-of-Sevices
Total Length: Head + Data in Bytes
0
–
–
–
–
–
15
Header: 13 Felder (20-60 Byte)
Head
0 Vers. er
Länge
Service
Länge
32
Idendifikat.
Flags Frag. Offset
64
Time to
Protokoll
live
Header
Prüfsumme
96
Quelladresse
128
Zieladresse
160
Optionen
160
/
192
Daten
Data
– Maximale Größe: ~ 64 kB
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
9
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
ICMP-Protokoll
Internet Control Message Protocoll (ICMP)
– Fehlerbenachrichtigung
• Melden von Routing-Problemen
– Z.B. bei Ablauf der Time-to-Live (TTL)
»
Router benachrichtigt Sender von Paket-Verlust
– Konfiguration von Routern
– ICMP setzt auf IP auf
Rechnernetze und Organisation
• ICMP-Nachrichten können verloren gehen
ICMP-Tools
Z:\>ping www.iaik.at
– Ping
• Zum „Anpingen“
von Hosts
– Echo-Request
– Ist der Computer
am Netz?
– Traceroute
• Feststellen des
Routing-Wegs
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
Pinging www.iaik.at [129.27.142.20] with 32 bytes of data:
Reply
Reply
Reply
Reply
from
from
from
from
129.27.142.20:
129.27.142.20:
129.27.142.20:
129.27.142.20:
bytes=32
bytes=32
bytes=32
bytes=32
time<1ms
time<1ms
time=1ms
time=1ms
TTL=127
TTL=127
TTL=127
TTL=127
Ping statistics for 129.27.142.20:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
RNO
VO11_wan
10
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
UDP Protokoll
•
–
–
•
•
•
•
Nicht für kritische Anwendungen
geeignet
„Unreliable datagram protocol“
–
UDP ca. 20% des Internet-Verkehrs
–
8 + #Daten-Bytes
Prüfsumme
–
Paketverlust nicht tragisch
Voice over IP (VoIP)
Computerspiele
Für Pseudoheader
0
Quell-Port
Ziel-Port
32
Länge
CheckSum
64
DNS, SNMP, DHCP
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
Quell-Port = 0: keine Antwort erwartet
Länge des UDP-Pakets
–
•
Für latenz-kritische Anwendungen
•
–
•
Für Video- und Audio-Streaming
•
•
Quell- und Ziel-Port
–
Schnell
Temporär genutzt
Paket-Header
•
Verwendung
–
0:
reserviert
1-1023: benannte Ports
1024-49151: registrierte Ports
49152-65535: ephemeral Ports
–
Wenig Overhead
•
Ports (16-Bit)
0
Rechnernetze und Organisation
•
–
Kein Verbindungsaufbau nötig
Versendet Datagramme
Keine Fehlerkontrolle
•
–
–
RNO
31
Nicht verbindungsorientiert
15
–
UDP-Paket
16
User Datagram Protocol (UDP)
Daten
VO11_wan
11
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP
Transmission Control Protocol
(TCP)
–
1. Aufbau einer Verbindung
– Sender sendet erneut
Host-to-Host Verbindung
2. Nützen der Verbindung
•
• Falls ACK ausbleibt
• Nach Ablauf eines Timeout
Austausch von Paketen
Rechnernetze und Organisation
3. Abbau der Verbindung
–
Garantierte Datenverbindung
•
•
Fehlerkontrolle
Fehlerkorrektur
–
–
–
Erneutes Senden von Daten
Größer als bei IP
TCP segmentiert große Daten
TCP rund 75% des InternetVerkehrs
•
– Timeout-Periode von RoundTrip-Time abhängig
– TCP-Zustände
• Verbindungsorientierung
Paketgröße
•
•
– Empfänger bestätigt
• Vollständigen Paketempfang
• Acknowledge (ACK)
Verbindungsorientiert
–
Protokoll
– Benötigt Zustände (States)
• Zustände
– LISTEN, SYN-SENT, SYNRECEIVED, ESTABLISHED,
FIN-WAIT-1, FIN-WAIT-2,
CLOSE-WAIT, CLOSING,
LAST-ACK, TIME-WAIT,
CLOSED
WWW und Email baut auf
TCP auf
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
12
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP-Verbindung
Verbindungsaufbau
– 3-fach Handshake
Client
Server
socket()
socket()
1. Client sendet SYN zu Server
2. Server antwortet mit SYN-ACK
3. Client schickt ACK
•
Rechnernetze und Organisation
Client und Server tauschen
Sequenznummern aus
Datenverbindung
•
Jedes Byte Daten erhöht Sequenznummer
•
•
bind()
Legt Reihenfolge der Pakete fest
Empfänger schickt ACK
•
listen()
accept()
mit Sequenznummer
send()
Verbindungsabbau
•
connect()
receive()
4-fach Handshake
•
FIN und ACK in beide Richtungen
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
close()
close()
VO11_wan
13
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP-Paket
0
– Sequenz-Nummer
• Fortlaufende Nummer für Segmente
• Zum Ordnen empfangener Segmente
– Data Offset
Rechnernetze und Organisation
• Länge des TCP-Headers
• SYN, ACK, RESET, FIN, ...
– Window
• Gewünschte Antwortlänge
– Prüfsumme
• Einfach: 16-Bit Summe (kein CRC)
• Header und Payload
31
Ziel-Port
32
Sequenznummer
64
Acknowledge-Nummer
96
– Flags
Quell-Port
Data
Offset
• IP-Adressen stehen im IP-Paket-Header
16
0
– Quell- und Ziel-Port
15
Header: 11 Datenfelder
Reserv Flags
Window
128
Prüfsumme Urg. Pointer
160
Optional
160
/
192
Daten
Data
– Eigentliche Daten
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
14
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP in IP in Ethernet
Kapselung der Pakete in Payload
– Header und Daten
• Von höherem Protokoll
• Werden Payload
HTTP
Header
Payload
– Von darunter liegendem Protokoll
TCP
Paket
– Protokoll-Stacks
Rechnernetze und Organisation
• Kapseln Pakete
• Software-Layer
IP
Paket
Ethernet
Frame
Header
Header
Header
Payload
Payload
Payload
► „Umgedrehte“ Reihenfolge: Höchstes Protokoll am
tiefsten vergraben.
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
15
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP Ports
TCP Ports (16-Bit)
– Identifizieren unterschiedliche Service
• Die auf TCP basieren
Port 1-255: „Well-known ports“
Rechnernetze und Organisation
–
–
–
–
FTP:
Telnet:
SMTP:
HTTP:
Port 21
Port 23
Port 25
Port 80
(File Transport Protocol)
(unsicheres Remote-Login)
(Send-Mail Transport Protocol)
(Hyper-Text Tranport Protocol)
Port 256-1023: „Registered ports“
– Unix-Services: NFS, LDAP
Port 1024 - : unprivilegierte Ports
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
telnet www.iaik.tugraz.at 80
GET /index.php HTTP/1.1
Host: www.iaik.tugraz.at
VO11_wan
16
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
TCP/IP Stack
Mehrere ProtokollLayer
Rechnernetze und Organisation
– Abarbeitung in
mehreren Schritten
– Stack-artiger
Software-Aufbau
• Unterste Schicht
– Datenübertragung
Client
Router
Server
TCP
TCP
IP
Ether
• Oberste Schicht
– Sichere Verbindung
LL
PL
Network1
– Jede Schicht hat
eigene Interfaces
IP
IP
LL
PL
LL
PL
IP
Ether
LL
PL
Network2
• TCP: Winsock
• Ethernet: NDIS (Network Driver Interface Specification)
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
17
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Internet-Socket
Socket
– i.A. ist ein Socket eine Betriebssystem-Schnittstelle
– Meist Bezeichnung für Netzwerk-Schnittstelle eines OS
Stream-Socket, Datagram-Socket
– Eigentlich sind Sockets für beliebige Protokolle
• In der Praxis meist nur für TCP und UDP genützt
Rechnernetze und Organisation
– Hosts über IP-Adresse, Protokoll und Port-Nummer definiert
– Stream-Socket: Verbindungsorientiert (TCP)
– Datagram-Socket: einzelne Nachricht (UDP)
Server-Socket
– Annahme von Requests
vieler Clients
• Ableitung eines
neuen Sockets
– Neuer Socket für Kom– munikation mit Client
– Original-Socket für
weitere Requests
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
»
// Serversocket mit bestimmter Portnummer erstellen
ServerSocket theServerSocket = new ServerSocket(port);
while(true) {
// auf Anfragen warten
Socket clientSocket = theServerSocket.accept();
//InputStream-Objekt öffnen
InputStream input = clientSocket.getInputStream();
// Daten lesen
int data = input.read();
// Verbindung schließen
clientSocket.close();
}
Von anderen Clients
RNO
VO11_wan
18
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Router
Netzwerk-zu-Netzwerk Verbindung
– Verbindet Mehrere Netzwerk-Interfaces
• U.U. andere Netzwerk-Technologie
– Ethernet
– ATM
• Kann PC mit mehreren Netzwerkkarten sein
– Meist Spezial-Hardware
»
wegen Geschwindigkeit
Rechnernetze und Organisation
– Arbeitet auf IP-Ebene (Layer 3: Network)
• Weiterleiten von IP-Paketen
Foto © Cisco
– Aufgrund der Zieladresse des Pakets
• Gegensatz zu Switch (auf Layer 2: Data Link)
– Switch verbindet Hosts innerhalb eines LANs
– Einige Switches besitzen auch Routing-Funktionalität
»
Layer 2/3 Switches
– Router haben eine eigene IP-Adresse
• Gateway für Netzwerk
Foto © 3Com
– Routing-Tabelle
• Speichert Routen zu anderen Netzwerken
• Entsteht teilweise durch Kommunikation mit anderen Routern
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
19
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Internet-Anbindung der TU Graz
Austrian Academic Computer Network (ACONET)
– Österreichische Wissenschaftsnetz
– Nationales Backbone-Netz
• für Forschung, Bildung und Kultur
– Verbindung Graz – Wien
Rechnernetze und Organisation
• 2 1-Gigabit Ethernet Leitungen
• Router in Graz: ZID der TU Graz
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
Grafik © aconet
RNO
VO11_wan
20
IAIK – Institut für Angewandte Informationsverarbeitung und Kommunikationstechnologie
Zusammenfassung
TCP/IP
– Bildet Technisches Rückgrat des Internets
– Selbe Technik auch für Intranets verwendet
– Internet-Protokoll (IP)
• Routet Datenpakete durch das Netzwerk
Rechnernetze und Organisation
– Transmission Control Protocol (TCP)
• Sorgt für verlässliche Verbindungen
Literatur:
– Rob Williams, „Computer Systems Architecture“,
Addision-Wesley, 2001: Kapitel 15.
Dr. Johannes
Professor
HorstWolkerstorfer
Cerjak, 19.12.2005
RNO
VO11_wan
21
Herunterladen