Miért tanulunk a számítógép hálózatokról?
Számítógép hálózatok
Ezek mérnöki csodák! ִSkálázhatók, réteges protokollok, rengeteg alcím – elég lesz majd megtanulni
Ott vannak mindenütt körülöttünk!
Bevezetés és áttekintés
ִA mindennap használatos dolog technológiájának a magvát és a héját megérteni – egy izgalmas dolog
Átalakították a világot! ִMár a mi életünk során is kapitális társadalmi változásokat hozott magával.
Mennyit tudunk már róluk ?
Mennyit tudunk már arról, hogy mi történik, amikor egy hálózati alkalmazást használunk? Milyen elvárásaink vannak, hogy mit fogunk tanulni ezen az órán?
Internet: Példa Click -> az oldal letöltése Az oldal jöhet a helyi és a távoli számítógépről link: http://www.cnn.com Specifikáljuk - protocol (http) - location (www.cnn.com)
Internet: Az erıforrás megkeresése www.cnn.com a számítógép (és, alapértelmezésként az azon a számítógépen lévő állomány) neve A számítógépen futó alkalmazás egy hierarchikus címtárszolgáltatást (Domain Name System ) használ, hogy lefordítsa az ember számára olvasható címet IPcímmé
com cnn.com? cnn.com? host
IP = a.b.c.d
Internet: Kapcsolat A (http) protokoll létrehoz egy kapcsolatot (egy másik protokoll, a TCP révén) a munkaállomásunk és a cnn.com között, hogy átvigye az oldalt A kapcsolat egy bájt-sorozatként, hibamentesen viszi át az oldalt: flow control + error control
local IP = a.b.c.d
cnn.com
Host
connect OK
get page page; close
1
Internet: Végpont – végpont A bájtsorozat végpontvégpont között sok vonalon és kapcsolóponton halad keresztül: routing (+ addressing) Ez az adatfolyamot mindkét végpont szabályozza: a hibás és hiányzó bájtok újraküldése; adatfolyam vezérlés
Internet: Port címek end-to-end pacing and error control
CNN.COM
routing HOST
ִa cél nyugtákat (ACKs) küld ִA forrás ellenőrzi a veszteségeket
Internet: Csomagok A hálózat csomagokba csoportosított bájtokat szállít A csomagok “önhordozók” és a forgalomirányítók dolgozzák fel őket egymás után
Amikor egy szegmens a célba érkezik, az operációs rendszer a cél portcímet használja annak megállapítására, hogy melyik alkalmazáshoz továbbítsa. Ezt hívják demultiplexálásnak. A végponti munkaállomás aggódik a hibákért, a cél pedig nyugtatgatja:
Internet: Bitek A | B | # , CRC | bytes
CNN.COM: A
HOST: B
Minden egyes csomóponti készülék a kereteket bitsorozatokként továbbítja Ezek az eszközök nem törődnek a bitek jelentésével
C
B: to C 01011...011...110
01011...011...110
Transmitter
Physical Medium
Receiver
Optical Copper Wireless
Internet: Megjegyzendı kulcs-pontok A feladatok elhatárolása ִBiteket küld a vonalon: transmitter/receiver [órajel, modulálás,…] ִKereteket küld a csomópontok között [kertezés, hibafelismerés,…] ִCsomagokat küld a legjobb útvonalon [címzés, routing] ִSzegmenseket küld végponttól végpontig [torlódások észlelése, a hibás és hiányzó szermensek újraküldése, nyugták, időzítés lejárta]
ִA név alapján megtalálja a cél IP-címet
[DNS]
Skálázhatóság ִA forgalomirányítók nem ismerik a teljes elérési utat ִA nevek és címek hierarchikus szervezésűek
Internet : hogyan végzi a következıket: Címzés ? Forgalomirányítás ? Megbízható átvitel ? Együttműködés ? Erőforrás menedzselés ? Szolgáltatás minőség ?
2
Az Internet kulcskoncepciói
Protokoll
Protokoll Rétegezett architektúra Csomagkapcsolás Elosztott, decentralizált vezérlés Nyílt rendszer (Open system)
Amennyiben két egyed kommunikálni kíván egymással, akkor meg kell állapodniuk a kicserélendő üzenetek várható sorrendjében és jelentésében. Kérniük kell egy időbeli ütemezést is
Protokoll
Rétegezett architektúra
A protokoll határozza meg az egymással kommunikáló egyedek között kölcsönösen átküldött üzenetek formátumát és sorrendjét, továbbá azt is, hogy milyen tevékenységeket kell elvégezni akkor, amikor egy üzenetet fogadnak vagy továbbítanak.
Az ember képes arra, hogy a protokollfeldolgozása során nagyfokú komplexitást kezeljen. ִBizonytalanul definiált protokoll kezelése. ִSok protokollt egyszerre.
Hogyan képesek a számítógépek komplex protokollok kezelésére? ִPontosan specifikált protokollok szükségesek. ִA komplikált feladatokat rétegekre dekomponálja, és ezek mindegyikének jól definiált feladata van.
Rétegezett architektúra A részekre bontás tervezése: a bonyolult problémákat kisebb, jobban menedzselhető problémákra bontja. Moduláris tervezés: könnyen kiterjeszthető/módosítható. Implementálás: pontosan kezelendők a rétegek közötti illesztések.
Rétegezett architektúra Hálózat
felhasználók Alkalmazási
Szállítási
Internet
Hálózat-elérési
Web, e-mail, file transfer, ... Végponttól végpontig terjedő átvitel, Megbízható átvitel, sorrendbe állítás, QOS, ... A legjobb útvonal kiválasztása ... Pont-pont kapcsolat, LANok,...
3
TCP/IP protokoll készlet Hálózat
Az utas induló-állomása
felhasználók HTTP, SMTP, FTP, TELNET, DNS, …
Alkalmazási
TCP, UDP.
Szállítási
IP
Internet
Hálózat-elérési
Légiforgalom
Pont-pont kapcsolatok, LANok,...
Jegy (vásárlás)
Jegy (panasz)
Csomag (beadás)
Csomag (átvétel)
Kapu (beszállás)
Kapu (érkezés)
Kifutó (felszállás)
Kifutó (leszállás) Repülőgép irányítás
Protokoll készlet X felhasználó
Az utas cél-állomása
Protokoll beágyazás Y felhasználó
X felhasználó
“Hello”
Y felhasználó
e-mail kliens
SMTP
e-mail szerver
adat
“Hello”
adat
TCP fej
TCP
TCP fej
TCP fej
“Hello”
TCP fej
IP fej
IP fej
“Hello”
IP fej
Ethernet fej driver/kártya
Ethernet fej driver/ kártya
“Hello”
Ethernet fej driver/ kártya
IP fej Ethernet fej driver/kártya
IP IEEE 802.3 szabvány Pl. elektromos jelek
Protokoll interfészek X felhasználó
Y felhasználó
e-mail client
TCP fej
A beágyazási folyamat
e-mail server s = open_socket(); socket_write(s, buffer); A
TCP fej
IP fej
IP fej
Ethernet fej driver/kártya
Ethernet fej driver/ kártya
4
Csomagkapcsolás
Egy kis internet
A csomagok tartalmazzák a cél-címet A csomagnak nincsen előre elhatározott útvonala Minden közbülső csomóponti eszköz a csomagot egyre közelebb kapcsolja a céljához
W w,e5 Scenario: Az A adatot küld a B-nek
b,e4
B
V R r3 r1,e1
r2,e2
a,e3 A
Protokoll készlet: csomag-továbbítás A állomás
Elosztott, decentralizált vezérlés B állomás
Router R
Router W
HTTP
HTTP
TCP
TCP
IP ethernet
IP ethernet link
IP link ethernet
IP ethernet
Ahol csak lehet, dekomponáljuk a problémákat Példák: ִA világon sehol sincsen egy központi IP-cím adatbázis - Domain Name System ִA világon sehol sincsen egy központi forgalomirányítási táblázat – Hierarchikus hálózatok hálózata – a forgalomirányítást kis autonóm rendszerekben végzik
Mindez lényeges a skálázhatóság szempontjából
Nyílt rendszer (Open System)
Internet szabványosítási folyamat
Az alapvető Internet protokollokat nyílt szabványként publikálták A szabványok ingyenesen és készen elérhetők Ideális tanulási témák
Internet Draft - bárki RFC - at discretion of RFC Editor Internet Standard Maturity Levels ִProposed - IESG ִDraft - 2 independent, implementations ִSzabvány
5
Az Internetet hogyan is “governed”? “We reject kings, presidents, and voting. We believe in rough consensus and running code” Internet Engineering Task Force (IETF) Working groups Internet Engineering Steering Group (IESG) Internet Assigned Numbers Authority (IANA)
Vége
6