INFOKOMMUNIKÁCIÓS RENDSZEREK ÉS ALKALMAZÁSOK INTERNET Pašić Alija BME Távközlési és Médiainformatikai Tanszék MTA-BME Lendület Jövő Internet Kutatócsoport 2 Az Internet napjainkban
3 ALAPFOGALMAK Internet architektúra TCP/IP protokoll hierarchia Beágyazódás 4 Az Internet Forrás: Kurose, James F., and Keith W. Ross. Computer ing: a top-down approach (6th edition), 2013
5 Internet - Szolgáltatások Kommunikációs infrastruktúra Elosztott alkalmazások megjelenését teszi lehetővé: Web, email, játékok, e- kereskedelem, fájl megosztás Alkalmazások számára nyújtott kommunikációs szolgáltatás: Kapcsolat nélküli megbízhatatlan Kapcsolat-orientált megbízható router számítógép szerver mobil lokális regionális céges hálózat 6 Internet - Építőkövek több millió számítási kapacitás összeköttetése: host = végberendezés futó hálózati alkalmazások kommunikációs linkek Optika, réz, rádió, műhold Adatátviteli sebesség = sávszélesség routerek: csomagokat (adat darabkákat) továbbítanak router számítógép szerver mobil lokális regionális céges hálózat
7 Internet - Építőkövek protokollok vezérlik az üzenetek küldését és fogadását Pl., TCP, IP, HTTP, FTP, PPP Internet: hálózatok hálózata Lazán hierarchikus a telefonhálózathoz képest Publikus Internet vs privát intranet Internet szabványok RFC: Request for comments IETF: Internet Engineering Task Force router számítógép szerver mobil lokális regionális céges hálózat 8 Internet A hálózat széle (edge) Végkészülékek közötti kommunikációs módok Végkészülék (host): Alkalmazásokat futtat pl. Web, email a hálózat szélén Kliens/szerver modell: A kliens host kéri és fogadja a mindig on-line szerver szolgáltatásait pl. Web böngésző/szerver; email kliens/szerver Peer-to-peer modell: minimális (vagy nincs) szerver kommunikációs Pl. Skype
9 Internet A hálózat belseje (core) Gerinchálózat Összekötött routerek szövevényes hálózata az alap kérdés: hogyan továbbítsuk az adatot a hálózaton keresztül? áramkörkapcsolás: hívásonként hozzárendelt áramkör csomagkapcsolás: az adatot feldarabolva küldjük át a hálózaton 10 Internet IP routerek Útvonalválasztók
11 Internet - Protokollok a protokoll meghatározza az üzenetek formáját, küldésének és vételének sorrendjét a kommunikációs entitások között, azok átvitelekor és vételekor végrehajtandó operációkat Emberi protokollok: mennyi az idő? szeretnék kérdezni valamit kezdeményezés meghatározott üzenetek valamilyen válaszreakció az üzenet vételekor Hálózati protokollok: Emberek helyett gépek Minden kommunikációt az Interneten protokollok vezérelnek 12 Protokollok
13 INTERNET Hálózatok hálózata 14 A hálózatok hálózata Lokális hálózatok kialakulása után felmerült, az igény és az öltet, hogy ezeket a hálózatokat össze kéne kötni. 1972-1983: Intering hálózatok összekapcsolása Vint Cerf and Bob Kahn intering alapelvei: Minimalizmus, autonómia nem szükséges a hálózatok összekapcsolásához a hálózat belső működését megváltoztatni, Gyakorlatilag a mai Internet architektúráját határozták meg.
15 Internet Hálózatok hálózata Csomagok több hálózaton haladnak keresztül (tracert) Tier 3 Tier-2 Tier-2 Tier 1 NAP Tier 1 Tier-2 Tier 1 Tier-2 Tier-2 16 Internet Autonóm rendszerek (AS) AS hierarchia AS - azonos elv szerint működő eszközök, közös felügyeiet (-Internet Service Provider) Minden azonos szintű AS egyenlő, de vannak AS-ek, melyek egyenlőbbek Különböző szerepű AS-ek: content, transit, eyeball Forrás: http://asrank.caida.org
17 Internet Autonóm rendszerek (AS) AS-ek közötti útvonalválasztás path-vektor alapon (Border Gateway Protocol) Útválasztási preferencia (routing policy): egy AS-AS szintű üzleti stratégiájának leképezése útválasztási szabályokra A bonyolult útválasztási preferenciák kifejezéséhez hatékony útválasztási protokoll szükséges (BGP) Két AS tipikusan vagy tranzit vagy peer kapcsolatot hoz létre tranzit: globális internet-hozzáférés pénzért peer: ingyen adatcsere a két szolgáltató és azok összes előfizetője között 18 Internet Tier 1 -k Hierarchiában legfelső hálózatok (Tier1) Lazán hierarchikus középpontban: Tier-1 s (Internet Service Provider) (pl., MCI, Sprint, AT&T, Cable and Wireless), nemzeti/nemzetközi lefedettség Egymást egyenlőnek tekintik Tier-1 szolgáltatók társ (peer) összekötteté seket valósítanak meg (privát) Tier 1 NAP Tier 1 Tier 1 Tier-1 szolgáltatók publikus hálózat hozzáférési pontokon (NAPs) is kapcsolódhatnak
19 Internet Tier 1 -k Legnagyobb AS-ek és az őket felügyelő -k Egy több AS-t is felügyelhet Forrás: http://asrank.caida.org 20 Internet Tier 1 -k Sprint amerikai gerinchálózata Seattle Tacoma DS3 (45 Mbps) OC3 (155 Mbps) OC12 (622 Mbps) OC48 (2.4 Gbps) Stockton San Jose Cheyenne Kansas City Chicago Roachdale New York Pennsauken Relay Wash. DC Anaheim Fort Worth Atlanta Orlando
Internet Tier 2 -k Kisebb (gyakran regionális) -k Egy vagy több tier-1 -hez kapcsolódnak, esetleg más tier-2 -khez 21 Tier-2 -k Tier-2 fizetnek a tier-1 -knek, hogy hozzáférjenek az Internet többi részéhez (tranzit) tier-2 vásárlója (customer) a tier-1 szolgáltatónak Tier-2 (provider) Tier 1 Tier 1 Tier-2 NAP Tier 1 Tier-2 Tier-2 -k privát módon egymás között is összeköttetés létesíthetnek (peer), vagy a NAP-pal is Tier-2 Internet Tier 3 -k Helyi és Tier 3 -k Utolsó hop ( hozzáférési ) hálózat (a végpontokhoz legközelebb) Helyi és tier- 3 -k vásárlói magasabb tier -knek, hogy összekacsolják őket az Internet többi részével (tranzit) Tier 3 Tier 1 Tier-2 Tier-2 Tier 1 Tier-2 NAP Tier 1 Tier-2 22 Tier-2
23 Megoldandó problémák Jövő Internet kutatásoknak többek között ezekre kell választ adniuk Best effort rendszer: http://www.cnet.com/news/how-pakistan-knocked-youtube-offlineand-how-to-make-sure-it-never-happens-again/ Skálázhatósági problémák: http://index.hu/tech/2014/08/15/megint_betelt_az_internet/ Folyamatos fenyegetések: http://index.hu/tudomany/2014/08/18/a_capak_megtamadtak_az_in ternetet/ 24 Internet Protokollok Egyszerű SMTP (Simple Mail Transfer Protokol) protokoll S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: <alice@crepes.fr> S: 250 alice@crepes.fr... Sender ok C: RCPT TO: <bob@hamburger.edu> S: 250 bob@hamburger.edu... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C:. S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection
25 Régeges reprezentáció Hálózatot rétegesen szokták reprezentálni (Protokoll hierarchia vagy OSI modell) Miért jó, komplex folyamatokat így reprezentálni? Repülőút példája. Forrás: Kurose, James F., and Keith W. Ross. Computer ing: a top-down approach (6th edition), 2013 26 Régeges reprezentáció Forrás: Kurose, James F., and Keith W. Ross. Computer ing: a top-down approach (6th edition), 2013
27 Internet Protokoll hierarchia Miért réteges szerkezet? Komplex rendszerek kezelése: explicit struktúra könnyebbé teszi a komplex rendszer alkotóelemeinek azonosítását, azok közötti kapcsolatok felderítését Érvek a réteges referencia modell mellett Modularizáció megkönnyíti a karbantartást, illetve a rendszer frissítését A réteg szolgáltatásának (annak implementációjának) megváltozása nem észrevehető a rendszer többi eleme számára (pl. szekrény fiókja kicserélhető a szekrény kicserélése nélkül) Pl.: egy eljárás megváltoztatása nincs hatással a rendszer többi részére alkalmazási szállítási hálózati adatkapcs. fizikai 28 Internet Protokoll hierarchia TCP/IP protocol stack Alkalmazási réteg: hálózati alkalmazások támogatása FTP, SMTP, HTTP Szállítási réteg: végpont-végpont közötti adatátvitel TCP, UDP Hálózati réteg: üzenetek továbbítása a forrás és cél routerek között IP, útvonalválasztó algoritmusok Adatkapcsolati réteg: adatok továbbítása szomszédos hálózati elemek között PPP, Ethernet Fizikai réteg: a bitek a vezetéken, moduláció alkalmazási szállítási hálózati adatkapcs. fizikai
Internet Beágyazódás Encapsulation Minden réteg hozzáadja a saját fejlécét üzenet szegmens H t csomag H n H t keret H l H n H t M M M M alkalmazási transzport hálózati adatkapcsolati fizikai forráscsomópont 29 H l H n H t M adatkapcs H l H n H t fizikai M kapcsoló H t H n H t H l H n H t M M M M célcsomópont alkalmazási transzport hálózati adatkapcsolati fizikai H n H t H l H n H t M M hálózati adatkapcs fizikai H n H t H l H n H t M M IP útvonalválasztó 30 alkalmazási szállítási hálózati adatkapcs. fizikai ALKALMAZÁSI RÉTEG Folyamatok kommunikációja Transzport követelmények a szállítási réteg felé Domain Name System
31 Hálózati alkalmazások Programok készítése Különböző végberendezéseken futnak Hálózaton keresztül kommunikálnak Pl.: Web szerver szoftver kommunikál a böngészővel Maghálózat nem futtat felhasználói alkalmazás kódot A végberendezéseken történő alkalmazás fejlesztés gyors fejlődést és elterjedést tesz lehetővé. application transport application transport application transport Hálózati kommunikáció Folyamatok (process) kommunikálnak Folyamat: végberendezésen futó program Azonos végberendezésen belül két folyamat egymással közvetlenül kommunikál (az operációs rendszer által meghatározott módon). Különböző végberendezéseken futó folyamatok üzenetekkel kommunikálnak Kliens folyamatok kezdeményezik a kommunikációt. Szerver folyamatok 32 várják, hogy kapcsolódjanak hozzájuk. Peer-to-peer architektúra Az alkalmazások mind szerver, mind kliens folyamatokat futtatnak
33 Hálózati kommunikáció Csatlakozókon (socket) keresztül, port szám alapján A folyamatok a socketeken keresztül küldenek / fogadnak üzeneteket Socket ajtó analógia A küldő folyamat az ajtón keresztül kilöki az üzenetet A küldő folyamat függ az ajtó túloldalán lévő szállítási folyamattól, amely eljuttatja az üzenetet a fogadó folyamatához De honnan tudja, hol van az a másik folyamat? Végkészülék vagy szerver process socket TCP bufferekkel, változók Alkalmazás fejlesztő vezérli Internet Operációs rendszer vezérli Végkészülék vagy szerver process socket TCP bufferekkel, változók IP cím azonosítja a hosztot, a port szám azonosítja a hoszton belül a folyamatot! Pl. HTTP: 80, SMTP: 25, SSH: 22 34 Domain Name System (DNS) IP cím és nevek közötti hozzárendelésért felelős Internet hoszt, router azonosító: IP cím (jelenleg 32 bit, de IPv6 már 128 bit hosszú) a csomagok címzésére használjuk Név: www.lendulet.tmit.bme.hu az emberek által használt azonosító Domain Name System: Név / IP cím fordítás A végberendezés, routerek, név szerverek kommunikálnak annak érdekében, hogy feloldják a neveket Maghálózati funkció, de alkalmazási rétegben implementálva (tartsuk a komplexitást a hálózat szélein!) További szolgáltatások: Végberendezések alternatív néven történő hivatkozása (aliasing), e-mail szerverek altervatív néven történő hivatkozása, terhelés megosztás, stb. Elosztott adatbázis (név szerverek) a különböző neveknek megfelelő hierarchiába rendezve Nem centralizált, mert: single point of failure, a forgalom intenzitás nagy lenne, karbantarthatóság egyszerűen nem skálázódna!
35 Domain Name System (DNS) Elosztott, hierarchikus adatbázis Root DNS Servers com DNS servers org DNS servers edu DNS servers yahoo.com DNS servers amazon.com DNS servers pbs.org DNS servers poly.edu umass.edu DNS serversdns servers A kliens a www.lendulet.tmit.bme.hu címet keresi (első ötlet) Megkérdez egy root szervert, hogy hol találja a.hu DNS szervert Megkérdezi a.hu szervert, hogy hol találja a bme.hu DNS szervert Megkérdezi a bme.hu szervert, hogy hol találja a tmit.bme.hu DNS szervert Végül megkérdezi a tmit.bme.hu szervert, hogy mi a lendulet.tmit.bme.hu szerver gép IP címe Domain Name System (DNS) Helyi név szerverek (a végberendezés hálózatában!) Nem tartoznak szigorúan a hierarhiához Minden (Internet szolgáltató) van (akárcsak cégeknek, egyetemeknek, stb.) Más néven ők az elsődleges név szerverek default name server Amikor egy végberendezés címfeloldást kér a DNS rendszertől, akkor a kérését a helyi DNS szervernek küldi Továbbító pontként (proxy) viselkedik, és továbbítja a kérést a hierarchiába 36
Domain Name System (DNS) Hiteles (szerver hálózatában!) és top level domain név szerverek Authoritative (hiteles) DNS szerverek: Cégek DNS szerverei Hiteles végberendezés IP cím megfeleltetéseket tartalmazza a cég web, e-mail, stb. szervereinek Mind az adott cég, mind pedig a hálózat szolgáltató nyújthatja Top-level domain (TLD) szerverek A com, org, net, edu, etc, és minden top-level ország domain nevéért felelősek, pl.: uk, fr, ca, jp. Network solutions tartja karban a com TLD szervereket Educause az edu TLD szervereket Stb. 37 Domain Name System (DNS) Root név szerverek e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 17 other locations) b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA a Verisign, Dulles, VA c Cogent, Herndon, VA (also Los Angeles) d U Maryland College Park, MD k RIPE London (also Amsterdam, Frankfurt) g US DoD Vienna, VA h ARL Aberdeen, MD i Autonomica, Stockholm (plus 3 other locations) j Verisign, ( 11 locations) m WIDE Tokyo 38 világszerte 13 root szerver A végberendezés a helyi név szervert keresi, a helyi név szerverek pedig kapcsolatba lépnek a root szerverrel, ha nem tudnak egy nevet feloldani Root név szerver: Felkeresi a hiteles név szervert ha a megfeleltetést nem ismeri Elkéri a címfeloldást (rekurzív lekérdezés) Visszaküldi a megfeleltetés a helyi név szervernek
DNS példa - iteratív lekérdezés (hogy van ez) A cis.poly.edu a gaia.cs.umass.edu IP címét szeretné tudni root DNS szerver 39 helyi DNS szerver dns.poly.edu 1 2 8 3 4 5 7 TLD DNS szerver 6 A megkérdezett szerver a következő megkérdezendő szerver nevét adja vissza Nem ismerem azt a címet, de kérdezd őt Kérő végberendezés cis.poly.edu authoritative DNS szerver dns.cs.umass.edu gaia.cs.umass.edu DNS példa rekurzív lekérdezés A cis.poly.edu a gaia.cs.umass.edu IP címét szeretné tudni root DNS server 40 2 3 DNS server dns.poly.edu 7 6 5 4 TLD DNS server A névfeloldást a megkérdezett név szerverre bízza 1 8 requesting host cis.poly.edu authoritative DNS server dns.cs.umass.edu gaia.cs.umass.edu
Hálózati kommunikáció Transzport (szállítási) réteg szolgáltatás követelmények Adatvesztés Néhány alkalmazás (pl. audio) bizonyos veszteséget képes tolerálni Más alkalmazások (pl. fájl átvitel) 100% megbízható átvitelt kíván Időzítés Néhány alkalmazás (pl. Internet telefónia, interaktív játékok) kis késleltetés igényelnek, hogy hatékonyak legyenek Sávszélesség A multimédia alkalmazások számára minimális sávszélességet kell biztosítanunk, hogy élvezhetőek legyenek Más elasztikus alkalmazások a rendelkezésükre álló sávszélességet használják Alkalmazás példák: Web/e-mail: adatvesztés nem lehet, nincs időzítés követelmény, elasztikus Valós idejű audio/video: vesztés tűrő, max. kb. 100 msec késleltetés engedhető meg, kb. 1 MBps minimális sávszélesség szükséges 41 42 alkalmazási szállítási hálózati adatkapcs. fizikai SZÁLLÍTÁSI RÉTEG Szállítási réteg feladatai TCP kapcsolatfelépítés
43 Szállítási réteg feladatai Logikai kommunikációt valósít meg a különböző végberendezésken futó alkalmazás folyamatok között Szállítási protokollok a végberendezéseken futnak Adó oldal: feldarabolja az alkalmazás üzeneteit szegmensekbe, és átadja a hálózati rétegnek Vevő oldal: újra összeállítja a szegmenseket üzenetekké, és átadja az alkalmazás rétegnek Több különböző szállítási rétegbeli protokoll az Interneten (a szállítási követelményeknek megfelelően): TCP és UDP application transport application transport 44 Szállítási réteg által nyújtott szolgáltatások TCP (Transmission Control Protocol) és UDP (User Datagram Protocol) UDP (datagram) szolgáltatás: Megbízhatatlan adattovábbítás a küldő és fogadó folyamatok között NEM biztosít: kapcsolat felépítést, megbízhatóságot, folyamvezérlést, torlódás vezérlést, időzítést, vagy sávszélesség garanciát Akkor minek is? Gyors, állapotmentes, kis szegmens fejléc, olyan gyorsan önti az adatokat, ahogy tudja TCP szolgáltatás: Megbízható átvitel a küldő és fogadó folyamatok között Kapcsolat orientált: kapcsolat felépítés szükséges a kliens és szerver folyamatok között Folyam vezérlés (flow control): a küldő nem fogja elárasztani a vevőt Torlódás vezérlés (congestion control): visszafogja az adót, ha a hálózat túlterhelt NEM biztosít: időzítés, minimális sávszélesség garancia
TCP kapcsolat menedzsment Háromutas kézfogás (three-way handshake) 1. lépés: a kliens SYN szegmenst küld a szervernek inicializálja a sorszámot (SEQ) nem tartalmaz adatot 2. lépés: szerver megkapja a SYN szegmenst, SYN/ACK szegmenssel válaszol szerver lefoglalja a buffert inicializájla a szerver oldali sorszámot (SEQ) 3. lépés: kliens megkapja a SYN/ACK szegmenst, ACK szegmenssel válaszol adatot tartalmazhat Kliens SYN SEQ # 1,000 Window 8,760 bytes Max segment 1,460 bytes SYN(ACK) 45 Szerver SEQ # 3,000 ACK # 1,001 Window 8,760 bytes Max segment 1,460 bytes ACK # 3001 ACK 46 alkalmazási szállítási hálózati adatkapcs. fizikai HÁLÓZATI RÉTEG Hálózati réteg feladatai IP címek felépítése, csomagtovábbítási döntés Útvonalválasztó algoritmusok szerepe
47 Hálózati réteg feladatai Logikai kommunikáció az adó gép és a vevő végberendezése között Adó oldal: beágyazza a szegmenst csomagokba Vevő oldal: átadja az összeállított szegmenseket a szállítási rétegnek Hálózati réteg protokollok minden végberendezésbe és útvonalválasztóban IP útvonalválasztók (router) megvizsgálják minden áthaladó IP csomag fejlécét!!! Skálázódási gondokhoz vezethet application transport application transport 48 Hálózati réteg Az IP homokóra Hálózati szinten egyetlen protokoll Csak egy protokoll az Internet szinten (Internet Protocol, IP) Megbízhatatlan kommunikációs szolgáltatás ( best effort ) Telefon hálózat: buta terminálok, intelligens hálózat Internet: buta hálózat, intelligens terminálok (Vint Cerf és Bob Kahn alapelvei) IP cím a végpontokat azonosítja 152.66.244.224 = lendulet.tmit.bme.hu DNS címfordítás a név-cím párok feloldásra
IP címek felépítése Interfészek azonosítása IPv4 cím: 32-bit hosszú router/végberendezés interfész azonosító interfész: a router / végberendezés és a fizikai link közötti kapcsolat Egy routernek tipikusan több interfésze van A hosztnak átlalában egy interfész Minden interfész saját IP címmel rendelkezik 223.1.1.1 49 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 50 IP címek felépítése Alhálózat azonosítása (prefix) IP cím: Alhálózati rész (prefix) (nagy helyiértékű bitek) Végberendezés rész (alacsony helyiértékű bitek) Mi az az alhálózat? Készülék interfészek azonos alhálózati résszel az IP címben Fizikailag képesek egymást elérni routerek közbeiktatása nélkül Az alhálózatok meghatározásához válasszuk le az interfészeket a routerektől, melyek izolált szigeteket hoznak létre. Minden sziget egy alhálózat lesz. 223.1.1.0/24 223.1.2.0/24 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.2.2 223.1.1.3 223.1.3.27 subnet 223.1.3.1 223.1.3.2 223.1.3.0/24 Három alhálózatból álló hálózat Alhálózati maszk (pl.: /24): az IP cím alhálózati részének hosszát határozza meg
Útvonalválasztás és csomagtovábbítás Csomagtovábbítás (forwarding): a csomagot a router megfelelő bemenetéről a megfelelő kimenetére továbbítja Lokális továbbítási tábla (forwarding information base, FIB) alapján Útvonalválasztás (routing): a csomagok adótól vevőig való útját határozza meg Cél: minimális költségű útvonal megtalálása, ahol a költség Hop-ok száma Link adminisztratív költsége vagy fizikai hossza Megbízhatóság Késleltetés Üzleti érdekek alapján (policy routing) Útvonalválasztó algoritmus Lokális továbbítási tábla Fejléc érték Kimenő link 0100 0101 0111 1001 Fejlécben lévő érték 0111 3 2 2 1 3 2 1 51 52 Útvonalválasztó algoritmusok osztályozása Statikus vagy dinamikus statikus: kézi bejegyzések, sosem frissül automatikusan dinamikus: a routerek megosztják a hálózati topológiára vonatkozó információt (továbbítási tábla automatikus készítése ezek alapján) Elosztott vagy központosított elosztott: a routerek topológialeírókat cserélnek és egyenként állítanak FIBet központosított: dedikált szerver (routeszerver, SDN controller) állítja a FIBeket Egyutas vagy többutas single path: minden célállomáshoz egy utat ismer a router multi-path: több út van letárolva egy-egy célállomáshoz Egyszintű vagy hierarchikus flat: globális tudás, minden router ismer mindenkit a hálózatban hierarchikus: ha a cél hálózaton kívül, routerek az alapértelmezet átjáróhoz továbbítódnak Hop-by-hop vagy forrás útvonalválasztás hop-by-hop: a routerek csak arról döntenek melyik legyen a következő hop Source routing: a teljes útvonalat a forrás határozza meg Intra- vagy inter-domain Inter-domain: tartományok (AS-ek) közötti Intra-domain: tartományon belüli
53 Útvonalválasztó algoritmusok osztályozása Internet: dinamikus, elosztott, egyutas, hierarchikus Út-vektor alapú vagy link-állapot alapú Link-állapot alapú minden router teljes hálózati képet lát, ebben futtat Dijkstra algoritmust tartományon belül legrövidebb út (Internet intra-domain routing) Út-vektor nincs globális topológia információ, csak adott cél felé vezető (pl. legrövidebb) úton melyik a következő interfész tartományok közötti útvonalválasztás (Internet inter-domain routing) Dinamikus elosztott útvonalválasztás menete Szomszédos routerek felfedezik egymást A routerek megosztják egymás közt a topológiával vagy a lehetséges útvonalakkal kapcsolatos információikat (routing state) A hálózatleíró információkat a szomszédos routerek folyamatosan frissítik (így egy elosztott routing state adatbázist fenntartva) Minden router minden általa ismert prefixre kiválasztja a legjobb útvonalat A legjobb útvonal next-hop-ját letölti a FIBbe 54 IP továbbítási (forwarding) döntés Longest prefix match Találd meg a célcímre leghosszabban illeszkedő prefixet Küldd ki az adott prefixhez bejegyzett interfészen (útvonalválasztó algoritmus segítségével meghatározva) Prefix fa adatstruktúra (gyors keresést és jó tömöríthetőséget biztosít) Prefix hossza 32 24 8 Leghosszabban illeszkedő prefix 65.0.0.0/8 128.9.176.0/24 128.9.16.0/21 128.9.172.0/21 128.9.0.0/16 142.12.0.0/19 0.0.0.0/0 Default router bejegyzés 0 128.9.16.14 2 32-1
55 alkalmazási szállítási hálózati adatkapcs. fizikai ADATKAPCSOLATI RÉTEG Adatkapcsolati réteg feladatai, szolgáltatások Címfeloldás (Address Resolution Protocol) 56 Adatkapcsolati réteg feladatai Az adatkapcsolati réteg feladata, hogy a kereteket továbbítsa szomszédos csomópontok között Keretekbe ágyazza a csomagokat Modellezési terminológia: Végberendezések és routerek csomópontok A kommunikációs csatornák (linkek) melyek szomszédos csomópontokat kötnek össze az útvonal mentén Vezetékes, vezetéknélküli, LAN, stb. link
Adatkapcsolati réteg által nyújtott szolgáltatások Keretezés, link hozzáférés Beágyazza a csomagot a keretbe, fejlécet (farok részt) ad hozzá Közeghozzáférés (osztott közeg esetén) MAC címeket alkalmazza a keret fejlécben a forrás és cél azonosítására (nem az IP címet!) Megbízható átvitel szomszédos csomópontok között Szállítási réteghez hasonlóan Ritkán alkalmazzák kis vesztésű linkeken (optika, csavart érpár) Vezetéknélküli linkek: nagy vesztési arány Folyam vezérlés Megfelelő adási távolság szomszédos adó és vevő csomópontok között Hiba detektálás Hibák keletkezhetnek zaj, illetve jel torzulás miatt A vevő detektálja, ha hiba történt, értesíti az adót, hogy adja újra Hiba javítás A vevő azonosítja és javítja a hibás bite(ke)t Half-duplex és full-duplex Half-duplex átvitel esetén is mindkét végpont adhat, de nem azonos időben 57 Adatkapcsolati réteg Ethernet (MAC) címek MAC (vagy LAN vagy fizikai vagy Ethernet) cím: Keretek továbbítása egy interfésztől egy másik fizikai összeköttetésben (azonos alhálózatban) lévő interfészhez 48 bites MAC cím (a legtöbb LAN esetén) az adapter ROM-ba égetve 58 71-65-F7-2B-08-53 LAN (vezetékes v. vezeték nélküli) 1A-2F-BB-76-09-AD 58-23-D7-FA-20-B0 Broadcast cím = FF-FF-FF-FF-FF-FF = adapter, a LAN-on minden adapternek egyedi LAN címe 0C-C4-11-6F-E3-98
Address Resolution Protocol (ARP) Hogyan határozzuk meg a vevő MAC címét, ha csak az IP címét ismerjük? Minden IP csomópont (végberendezés, router) a LAN-on rendelkezik ARP táblával ARP tábla: IP/MAC cím párok néhány LAN csphoz < IP address; MAC address; TTL> TTL (Time To Live): lejárati idő A kommunikálni akar B-vel B címe nincs az ARP táblában Broadcast ARP kérés B IP címével Cél MAC cím= FF-FF-FF-FF-FF-FF, mindenki megkapja a LAN-on 237.196.7.23 B válaszol a saját MAC címével A-nak 71-65-F7-2B-08-53 237.196.7.88 LAN 59 237.196.7.78 1A-2F-BB-76-09-AD 237.196.7.14 58-23-D7-FA-20-B0 0C-C4-11-6F-E3-98 Border Gateway Protocol (BGP) Policy (üzleti preferencia) alapú útvonalválasztás 60 BGP Frissítések vétele Az attribútum Értékek alapján BGP Frissítések hirdetése Bemeneti policyk alkalmazása Legjobb út kiválasztása Legjobb út tábla Kimeneti policyk alkalmazása Utak szűrése & Attribútumok állítása Legjobb utakhoz Tartozó tábla Bejegyzések mentése IP Továbbítási tábla Utak szűrése & Attribútumok állítása