Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
Rodina protokol�TCP/IPv. 2.2
Rodina protokol� TCP/IP, verze 2.2
Ji�í Peterka, 2005
Katedra softwarového inženýrství,Matematicko-fyzikální fakulta,Univerzita Karlova, Praha
�ást 6: IP sm�rování
J.Peterka, MFF UK, 2005 2
Rodina protokol�TCP/IPv. 2.2 Co je sm�rování (routing)?
• striktn� vzato:– volba sm�ru pro další p�edání
paketu/datagramu• ve skute�nosti to zahrnuje:
– výpo�et optimální cesty• je to kombinatorický problém hledání
nejkratší cesty v grafu• výsledkem jsou "podklady pro volbu
sm�ru"
– uchovávání sm�rovacích informací("podklad�")
• vedení sm�rovacích tabulek
– p�edávání paket� (forwarding)• používání výsledk� výpo�t�
("podklad�")
– udržování sm�rovacích informací
• co všechno s tím dále souvisí?– celková koncepce sm�rování– celková koncepce internetu
• katenetový model• které uzly se ú�astní• historický vývoj
– p�ímé a nep�ímé sm�rování– metody optimalizace
sm�rovacích tabulek– �ešení sm�rování v opravdu
velkých systémech• autonomní systémy
– sm�rovací politiky– …..
J.Peterka, MFF UK, 2005 3
Rodina protokol�TCP/IPv. 2.2 Celková koncepce sm�rování
• statické sm�rování– obsah sm�rovacích tabulek má statický
charakter a nem�ní se• vyžaduje to ru�ní konfiguraci sm�rova��
(jejich sm�rovacích tabulek)– což je pracné a náchylné k chybám
• nereaguje to na zm�ny v síti– dostupnost n�jaké sít� není závislá na stavu
spojení
• používá se jen výjime�n�:– pro definování tzv. implicitních cest
• default route– pro zavedení sm�r� které nejsou inzerovány
• nap�íklad v rámci firewall�– pro implementaci speciálních sm�rovacích
politik• kdy je zám�rem reagovat na sm�rovací
informace jinak než obvykle– jako obrana proti nekorektním sm�rovacím
informacím– …..
• dynamické sm�rování– obsah sm�rovacích tabulek má dynamický
charakter a m�ní se• �asto je základ konfigurace vytvá�en
staticky, ru�ní konfigurací sm�rova��– nap�. implicitní cesty
• ostatní údaje se pr�b�žn� aktualizují
• existují dv� základní varianty dynamického sm�rování
– vector-distance routing• sousední sm�rova�e si p�edávají celé své
sm�rovací tabulky (obsahující "vzdálenostnívektory")
• je h��e škálovatelné a mén� stabilní, p�estáváse používat
– link-state routing• sm�rova�e si p�edávají jen údaje o
pr�chodnosti cest k soused�m• lépe škálovatelné, používá se ….
J.Peterka, MFF UK, 2005 4
Rodina protokol�TCP/IPv. 2.2 P�ipomenutí: koncepce internetu
• internet je budován na principu katenetu– je soustavou vzájemn� propojených
sítí– jednotlivé sít� jsou odd�leny
sm�rova�i
• "p�edávání" paket� (forwarding):– má na starosti protokol IP
• aktualizaci sm�rovacích informací, výpo�ty cest:– zajiš�ují specializované protokoly
jako RIP, OSPF, ..
p�edstava katenetu
skute�ná sí�
= IP sí�
= IP Router (sm�rova�)
J.Peterka, MFF UK, 2005 5
Rodina protokol�TCP/IPv. 2.2
P�ipomenutí: hostitelské po�íta�e vs. sm�rova�e
• TCP/IP p�edpokládá, dva typy uzl� v síti:– hostitelské po�íta�e (host computers)
• tj. koncové uzly, nap�. servery, pracovnístanice, PC, r�zná za�ízení (tiskárny, …)
• jsou p�ipojeny jen do jedné IP sít� (majíjen jednu sí�ovou adresu)
– sm�rova�e (IP Routers)• jsou p�ipojeny nejmén� do dvou IP sítí• zajiš�ují "p�estup" (sm�rování)
• teze:
– oba typy uzl� by se nem�ly prolínat
• sm�rova�e by nem�ly plnit další funkce• hostitelské po�íta�e by nem�ly fungovat
jako sm�rova�e– v podob� tzv. multihomed-hosts, kdy jsou
p�ipojeny do více sítí sou�asn�
= sm�rova�
+ + + =hostitelsképo�íta�e(hosts)
= multihomed host
IP sí� IP sí�
IP sí�
IP sí� IP sí�
J.Peterka, MFF UK, 2005 6
Rodina protokol�TCP/IPv. 2.2 P�ímé a nep�ímé doru�ování
• p�ímé doru�ování:– odesilatel a p�íjemce se nachází ve
stejné IP síti• pozná se podle toho, že mají stejnou
sí�ovou �ást své IP adresy– odpadá rozhodování o volb� sm�ru, o
doru�ení se dokáže postarat linkovávrstva (vrstva sí�ového rozhraní)
• odesilatel pošle datagram "p�ímo" koncovému p�íjemci
• nep�ímé doru�ování– odesilatel a p�íjemce se nachází v
r�zných IP sítích– odesilatel musí ur�it nejvhodn�jší
odchozí sm�r (resp. sm�rova� ležící v tomto sm�ru)
• odesilatel pošle datagramu sm�rova�ive zvoleném odchozím sm�ru
IP sí� IP sí�
p�ímé doru�ení
nep�ímé doru�ení
sm�rova�
J.Peterka, MFF UK, 2005 7
Rodina protokol�TCP/IPv. 2.2 P�edstava p�ímého doru�ování
• odesilatel rozd�lí cílovou adresu na jejísí�ovou �ást a relativní �ást
– použije d�lení, platné pro jeho vlastní sí�• masku sít�, CIDR prefix, event. vyjde z
t�ídy adresy– získá sí�ovou �ást adresy p�íjemce
• pokud se sí�ová �ást adresy p�íjemce shoduje se sí�ovou �ástí vlastní adresy, jde o p�ímé doru�ování
• odesilatel p�evede IP adresu p�íjemce na jeho linkovou adresu
– provede "Address Resolution", nap�. pomocí protokolu ARP
– získá linkovou adresu XX• odesilatel (jeho sí�ová vrstva) p�edá
datagram vrstv� sí�ového rozhraní s požadavkem na doru�ení na adresu XX
IP sí�(192.168.0)
p�ímé doru�ení
192.168.0.1 192.168.0.3
192.168.0.3
adresa p�íjemce
192.168.0 + 3
192.168.0
=
sí�ová �ást adresy
odesilatele
+-IP datagram
addressresolution
linkový rámec
xx
odesilatel
p�íjemce
J.Peterka, MFF UK, 2005 8
Rodina protokol�TCP/IPv. 2.2 P�edstava nep�ímého doru�ování
• porovnáním sí�ových �ástíadres odesilatel zjistí, že se p�íjemce nachází v jiné síti
• odesilatel se "podívá" do svésm�rovací tabulky a podle nízvolí odchozí sm�r
– sm�rova� v odchozímsm�ru
• odešle datagram zvolenému sm�rova�i
– již se jedná o p�ímédoru�ení
IP sí�(192.168.0)
nep�ímé doru�ení
192.168.0.1 192.168.1.3
192.168.1.3adresa p�íjemce
192.168.1 + 3
192.168.0
=
sí�ová �ást adresy
odesilatele
+-
192.168.0.2
volba odchozího sm�ruvolba odchozího sm�ru
p�es sm�rova� 192.168.0.2
IP sí�(192.168.1)
p�ímé doru�ováníp�ímé doru�ování
192.168.1 192.168.0.2
pro sí�
…….
sm�rovací tabulkaposílej p�es
p�edchozí p�ípad
J.Peterka, MFF UK, 2005 9
Rodina protokol�TCP/IPv. 2.2 P�edstava sm�rovacích tabulek
• ve sm�rovací tabulce se nenacházíúplná cesta k cíli, ale pouze "next hop"– adresa nejbližšího sm�rova�e
• prefix v adrese cílové sít� odpovídámasce – "CIDR prefix" vyjad�uje po�et
jedni�kových bitu masky
IP sí�(192.168.0)
IP sí�(192.168.1)
IP sí�(192.168.2)
IP sí�(192.168.3)
IP sí�(192.168.4)
IP sí�(192.168.5)
IP sí�(192.168.6)
IP sí�(192.168.7)
192.168.0.4192.168.7/24
192.168.0.4192.168.6/24
192.168.0.4192.168.5/24
192.168.0.4192.168.4/24
192.168.0.5192.168.3/24
192.168.0.4192.168.2/24
192.168.0.3192.168.1/24
sm�ruj p�ímo192.168.0/24
posílej p�escílová sí�/prefix
192.168.0.3
192.168.0.5192.168.0.4
sm�rovací tabulka uzlujsou to adresy nejbližšího p�eskoku
(next hop)
J.Peterka, MFF UK, 2005 10
Rodina protokol�TCP/IPv. 2.2
Optimalizace sm�rovacích tabulek(agregace položek)
IP sí�(192.168.0)
IP sí�(192.168.1)
IP sí�(192.168.2)
IP sí�(192.168.3)
IP sí�(192.168.4)
IP sí�(192.168.5)
IP sí�(192.168.6)
IP sí�(192.168.7)
192.168.0.4192.168.7/24
192.168.0.4192.168.6/24
192.168.0.4192.168.5/24
192.168.0.4192.168.4/24
192.168.0.5192.168.3/24
192.168.0.4192.168.2/24
192.168.0.3192.168.1/24
sm�ruj p�ímo192.168.0/24
posílej p�escílová sí�/prefix
192.168.0.3
192.168.0.5192.168.0.4
sm�rovací tabulka uzlu • celou skupinu sítí lze slou�it (agregovat) do v�tšího CIDR bloku
192.168.0.4192.168.4/22192.168.0.5192.168.3/24
192.168.0.4192.168.2/24
192.168.0.3192.168.1/24
sm�ruj p�ímo192.168.0/24
posílej p�escílová sí�/prefix
192.168.00000100192.168.00000101192.168.00000110192.168.00000111
192.168.000001xx22 bit�24 bit�
J.Peterka, MFF UK, 2005 11
Rodina protokol�TCP/IPv. 2.2
Optimalizace sm�rovacích tabulek(implicitní cesty – default route)
IP sí�(192.168.0)
IP sí�(192.168.1)
IP sí�(192.168.2)
IP sí�(192.168.3)
IP sí�(192.168.4)
IP sí�(192.168.5)
IP sí�(192.168.6)
IP sí�(192.168.7)
192.168.0.3
192.168.0.5192.168.0.4
sm�rovací tabulka uzlu• v p�ípad� stromovité topologie lze
definovat implicitní cestu (default route), vedoucí "nahoru"
192.168.0.4všechno ostatní
192.168.0.5192.168.3/24
192.168.0.3192.168.1/24
doru� p�ímo192.168.0/24
posílej p�escílová sí�/prefix192.168.0.4192.168.4/22192.168.0.5192.168.3/24
192.168.0.4192.168.2/24
192.168.0.3192.168.1/24
doru� p�ímo192.168.0/24
posílej p�escílová sí�/prefix
IP sí�(192.168.0)
IP sí�(192.168.1)
IP sí�(192.168.3)
192.168.0.4
192.168.0.5 192.168.0.3
J.Peterka, MFF UK, 2005 12
Rodina protokol�TCP/IPv. 2.2 Host-specific route
• pomocí masky (prefixu) lze do sm�rovacích tabulek zavést i specifickésm�rovací informace, týkající se jednotlivých uzl�– tzv. host-specific route
• lze to využít p�i redundantním p�ipojenínap�íklad pro odlišné sm�rování dat sm��ujících k n�jakému serveru
IP sí�(192.168.0)
IP sí�(192.168.1)
IP sí�(192.168.2)
IP sí�(192.168.3)
IP sí�(192.168.4)
IP sí�(192.168.5)
IP sí�(192.168.6)
192.168.0.3192.168.6.99/32
192.168.0.4192.168.6/24
….….
192.168.0.5192.168.3/24
192.168.0.4192.168.2/24
192.168.0.3192.168.1/24
doru� p�ímo192.168.0/24
posílej p�escílová sí�/prefix
192.168.0.3
192.168.0.5192.168.0.4
sm�rovací tabulka uzlu
192.168.6.99
"host-specific route" k uzlu 192.168.6.99"host-specific route" k uzlu 192.168.6.99
J.Peterka, MFF UK, 2005 13
Rodina protokol�TCP/IPv. 2.2 Pravidla sm�rování
• "host-specific route" by m�ly být používány jen výjime�n�– velmi zv�tšují objemy
sm�rovacích tabulek– musí se vyhodnocovat jako první
• snaha je rozhodovat p�i sm�rovánípodle p�íslušnosti cílového uzlu k ur�ité síti– pak posta�uje menší po�et
položek sm�rovacích tabulek• agregace položek pomáhá
snižovat objem sm�rovacích tabulek– pomáhá i používání "default
route" • default route odpovídá prefixu 0
• pravidlo pro prohledávánísm�rovacích tabulek:– postupuj od nejvíce konkrétního k
nejmén� konkrétnímu– tedy: nejprve hledej položku s
nejv�tším prefixem, postupuj k menším prefix�m
192.168.0.1x/0 (ostatní)
192.168.0.4192.168.4/22
192.168.0.5192.168.3/24
192.168.0.3192.168.6.99/32
posílej p�escílová sí�/prefix
p�íklad:
host-specific route
default route
postup prohledávání
J.Peterka, MFF UK, 2005 14
Rodina protokol�TCP/IPv. 2.2 Základní algoritmus sm�rování
• vezmi Id (“plnou” IP adresu p�íjemce), a zjisti zda se p�íjemce nachází ve stejné síti jako ty …– pokud ano, použij p�ímé doru�ování. Jinak ....
• za�ni prohledávat sm�rovací tabulku postupn� podle velikosti prefixu – pokud se hodnota v prefixu práv� prohledávané položky shoduje se
stejnolehlou �ástí Id (p�íslušným po�tem vyšších bit�), doru�uj nep�ímo dle této položky. Jinak pokra�uj další položkou, pokud existuje ...
• existuje-li implicitní cesta (default route)– použij tuto cestu. Jinak ...
• skon�i chybou– generuj ICMP zprávu "Destination Unreachable"
J.Peterka, MFF UK, 2005 15
Rodina protokol�TCP/IPv. 2.2
Role hostitelských po�íta�� a sm�rova��
• sm�rova�e:– ú�astní se všech �inností v
rámci sm�rování• v�etn� aktualizace
sm�rovacích informací
• hostitelské po�íta�e:– také musí volit sm�r p�enosu
paketu– vedou si sm�rovací informace ve
svých sm�rovacích tabulkách • a využívají je – aplikují
základní algoritmus sm�rování– ale neú�astní se aktualizace
sm�rovacích informací !!!
IP protokolIP protokol
sm�rova�hostitelskýpo�íta�IP sí�
když se hostitelský po�íta� "chová špatn�",sm�rova� jej "pou�í" (poskytne mu správné
sm�rovací informace)
když se hostitelský po�íta� "chová špatn�",sm�rova� jej "pou�í" (poskytne mu správné
sm�rovací informace)
J.Peterka, MFF UK, 2005 16
Rodina protokol�TCP/IPv. 2.2 P�íklad
• "na po�átku" musí každý hostitelský po�íta� znát alespo� jeden sm�rova� "vedoucíven" ze sít� ve které se nachází
– nech� host A zná sm�rova� X (ale nikoli sm�rova� Y)• pot�ebuje-li host A poslat n�co hostu B, pozná že jde o nep�ímé doru�ování a pošle to
sm�rova�i X• sm�rova� X pozná, že neleží na nejvhodn�jší cest� mezi hostem A a hostem B
– upozorní hosta A na vhodn�jší (kratší) cestu – na existenci sm�rova�e Y
IP sí�
IP sí�
IP sí�host A
host B
host Csm�rova� X
sm�rova� Y
od A pro B
J.Peterka, MFF UK, 2005 17
Rodina protokol�TCP/IPv. 2.2 ICMP Redirect
• sm�rova� X se postará o správné doru�ení IP datagramu k uzlu B– sám pošle data Sm�rova�i Y, ten se postará o doru�ení
• sm�rova� X pošle hostu A zprávu "ICMP Redirect" ve smyslu:– "datagramy pro uzel B p�íšt� posílej p�es sm�rova� Y"– host A by se m�l pou�it
• m�l by si zanést sm�rova� Y do své sm�rovací tabulky a p�íšt� jej použít
IP sí�
IP sí�
IP sí�host A
host B
host Csm�rova� X
sm�rova� Y
od A pro B
ICMP Redirect:pro B posílej p�es Y
J.Peterka, MFF UK, 2005 18
Rodina protokol�TCP/IPv. 2.2
IP header plus 64 bit� p�vodních dat zahozeného datagramu
IP adresa sm�rova�e
TYPE = 5
ICMP Redirect
• Jde o hlášení od sm�rova�e, že existuje lepší cesta pro doru�ení IP datagramu a vede p�es jiný sm�rova�– jeho IP adresa je uvedena
• CODE=0: zm�� sm�rování pro sí�, 1: zm�� sm�rování pro uzel• CODE=2: zm�� sm�rování pro sí� pro daný typ služby, 3: dtto, uzel&služba
• odesilatel (hostitelský po�íta�) by m�l zareagovat zanesením nového sm�rova�e do své sm�rovací tabulky– pokud tak neu�iní, nesprávn� oslovený sm�rova� má právo jej znovu upozornit,
ale nesmí jej odmítnout (musí vždy p�edat data správným sm�rem)
CODE = 0-3 CHECKSUM
0 8 16 31
J.Peterka, MFF UK, 2005 19
Rodina protokol�TCP/IPv. 2.2
nepoužito (nastaveno na 0)
TYPE = 10
ICMP Router Solicitation
• jde o "dotaz do pléna": jaké jsou tady sm�rova�e? – ICMP zpráva je rozesílána pomocí IP broadcastu všem uzl�m dané sít�
• odpov�� p�ináší informaci o dostupných sm�rova�ích v síti– (z�ejm�) je brána první odpov�� která dorazí, eventuelní neúplnost je �ešena
pomocí ICMP Redirect• umož�uje to, aby hostitelské po�íta�e nemusely "na po�átku" znát žádný
sm�rova�• sm�rova�e odpovídají na dotazy
– ale samy také generují odpov�di (advertisement) v náhodném intervalu mezi 450 až 600 vte�inami
CODE = 0 CHECKSUM
0 8 16 31
J.Peterka, MFF UK, 2005 20
Rodina protokol�TCP/IPv. 2.2
adresa sm�rova�e, preferenceadresa sm�rova�e, preference
po�et položek délka položky
TYPE = 9
ICMP Router Advertisement
• jde o odpov�� na Router Solicitation, nebo o samostatn�generovanou "reklamu" (advertisement)
• preference umož�ují p�íjemci stanovit, p�es který sm�rova�vede implicitní cesta (default route)– životnost �íká, jak dlouho má být záznam o sm�rova�i ponechán ve
sm�rovací tabulce p�íjemce
CODE = 0
životnost položek
CHECKSUM
0 8 16 31
J.Peterka, MFF UK, 2005 21
Rodina protokol�TCP/IPv. 2.2 Aktualizace sm�rovacích informací
• základní problém:– jak zajistit rychlou a správnou
reakci na zm�ny, tak aby s tím nebyla spojena p�íliš velká režie
• navíc: jak to ud�lat v rozsahu dnešního Internetu?
• je t�eba pr�b�žn� ší�it aktualiza�níinformace– ze kterých se pr�b�žn�
vypo�ítávají údaje (next hop) ve sm�rovacích tabulkách
– lze to �ešit na principu "vectordistance" nebo "link state"
• �ešení tohoto problému se m�nilo s vývojem Internetu– hlavn� v d�sledku jeho zv�tšování
• zpo�átku:– Internet byl malý, existovaly
centrální sm�rova�e s úplnou informací
• pozd�ji:– vznikla 2-úrov�ová struktura
• core smrova�e s úplnou informací• non-core sm�rova�e s neúplnou
informací
• ješt� pozd�ji– došlo k "dekompozici" Internetu
• vzniku tzv. autonomních systém�(AS), které v sob� lokalizujídetailní sm�rovací informace a neší�í je mimo sebe
J.Peterka, MFF UK, 2005 22
Rodina protokol�TCP/IPv. 2.2 Sm�rování v ranném Internetu
• existovala soustava tzv. core gateways(centrálních sm�rova��), nacházejících se v páte�ní �ásti Internetu
– tyto core gateways m�ly úplnou informaci o celé topologii Internetu
– byly centráln� spravovány (pov��enou organizací)
• ostatní sm�rova�e byly "non-coregateways"
– pracovali s neúplnou informací o topologii Internetu
• "znaly" jen sít� "pod sebou", provoz do ostatních sítí sm�rovaly p�es implicitnícesty do core gateways
– inzerovaly existenci "svých" sítí (sítí "pod sebou") sm�rem ke core gateways
A
B
C
D E
F G
páte� Internetu (ARPANET, NSFNET)
C o r e B u i ld e r 9 0 0 0Co re B u ild e r 9 0 0 0
C o r e B u i ld e r 9 0 0 0Co re B u ild e r 9 0 0 0
C o r e B u i ld e r 9 0 0 0Co re B u ild e r 9 0 0 0
non-coregateway
coregateway
zná pouze cestu k sítím D,E, F a G, ostatní posílá p�es default route
J.Peterka, MFF UK, 2005 23
Rodina protokol�TCP/IPv. 2.2 Sm�rování v ranném Internetu
• pro vzájemnou komunikaci centrálních sm�rova�� ("core gateways") byl vytvo�en protokol GGP– Gateway-to-Gateway Protocol
• pro komunikaci mezi centrálními a "ostatními" (vn�jšími) sm�rova�i byl vytvo�en protokol EGP– Exterior Gateway Protocol
• terminologie: – p�vodn� se IP sm�rova��m �íkalo "IP
Gateways"• proto GGP a EGP
• problém tohoto �ešení:– nebylo dostate�n� škálovatelné
A
B
páte� Internetu (ARPANET, NSFNET)
C o r e B u i ld e r 9 0 0 0Co re B u ild e r 9 0 0 0
C
D E
F G
C o r e B u i ld e r 9 0 0 0Co re B u ild e r 9 0 0 0
GGP
EGP EGP
J.Peterka, MFF UK, 2005 24
Rodina protokol�TCP/IPv. 2.2 Další vývoj – autonomní systémy
• s r�stem Internetu se �ešení s “coregateways” stalo neúnosné– úplná informace o celé topologii
Internetu je p�íliš velká, režie na distribuci této informace mezi všemi “core gateways” neúnosná
• “core gateways” nešlo donekone�na “nafukovat”– muselo se najít jiné �ešení
• souvislost: – Internet p�ešel do komer�ní sféry,
"sm�rovací politika" jednotlivých �ástí Internetu již nemusela být stejná
• bylo t�eba vyhov�t individuálním požadavk�m jednotlivých provider�m, požadavk�m na peering, ….
• princip "jiného �ešení"– "dekompozice" Internetu z
hlediska sm�rování– detailní ("úplná") sm�rovací
informace nebude ší�ena po celém Internetu
• resp. po páte�ní �ásti– ale z�stane lokalizována v
ur�itých oblastech• bude ší�ena pouze uvnit� t�chto
oblastí, ne mimo n�– tyto oblasti budou ší�it kolem
sebe pouze mnohem "menší" informace o dostupnosti
• jde o tzv. autonomní systémy
J.Peterka, MFF UK, 2005 25
Rodina protokol�TCP/IPv. 2.2 P�edstava autonomního systému
• autonomní systém "navenek" neinformuje o své vnit�ní struktu�e– ani o detailních sm�rovacích informací
• je "autonomní" v tom smyslu, že si m�že sám stanovit svou vlastní sm�rovacípolitiku– v�etn� toho, jakým zp�sobem je uvnit�
AS �ešena aktualizace sm�rovacích informací
• navenek autonomní systém zve�ej�uje pouze informace o dostupnosti– ve smyslu:
• AS1: "uvnit� mne se nachází sít� A až B"• AS2: "uvnit� mne se nachází sít� C až G"
A
B
C
D E
F G
páte�ní �ásti Internetu
autonomní systémAS1
autonomní systémAS2
je to typicky "intervalová informace" (od-do), tvo�enározsahem IP adres (resp. CIDR blok� náležejících do AS)
je to typicky "intervalová informace" (od-do), tvo�enározsahem IP adres (resp. CIDR blok� náležejících do AS)
J.Peterka, MFF UK, 2005 26
Rodina protokol�TCP/IPv. 2.2 P�edstava autonomního systému
• každý autonomní systém má ur�itý (malý) po�et vstupních/výstupních bod�– skrz tyto body se propojují s ostatními
autonomními systémy– skrz tyto body si vym��ují informace o
dostupnosti (o svém obsahu)• a také testují svou vzájemnou existenci
• p�vodn� musela být struktura autonomních systém� striktn� stromovitá– dnes již nemusí– každý AS si m�že sám zvolit, jak
("kudy") chce komunikovat s jinými autonomními systémy
• díky tomu je možný peering – p�ímépropojení autonomních systém�, obcházející implicitní propojení p�es páte�ní �ástiAS4
AS1
AS2
AS3
J.Peterka, MFF UK, 2005 27
Rodina protokol�TCP/IPv. 2.2 Dnešní struktura Internetu
NA
P
NA
Pvzájemn� alternativní páte�ní sít�
komunikace p�i neexistenci peeringu
komunikace p�i existenci
peeringu
autonomní systém(sí� providera)
autonomní systém(sí� upstream
providera)
J.Peterka, MFF UK, 2005 28
Rodina protokol�TCP/IPv. 2.2 Exterior Gateway Protocols
• mezi autonomními systém musí probíhat vým�na informací– o dostupnosti, existenci, "navazování
vzájemných vztah�", …)• k tomu jsou zapot�ebí vhodné protokoly• d�íve se používal protokol EGP (Exterior
Gateway Protocol)– byl šit na míru “centralizovanému
Internetu”, s jediným páte�ním autonomním systémem
– nep�ipoušt�l nic jiného než stromovitou strukturu
– nedokázal využít více alternativních “páte�ních AS”
• dnes je "Exterior Gateway Protocols" generické ozna�ení pro všechny protokoly, které zajiš�ují komunikaci mezi AS
• dnes se používá modern�jší protokol BGP (Border Gateway Protocol)
– napravuje nedostatky EGP– p�ipouští obecné propojení
autonomních systém�• ne pouze "do stromu"
– umož�uje stanovit r�zná kritéria p�i volb� mezi alternativními sm�ry
• správce AS m�že stanovit priority. nap�íklad v závislosti na rychlosti, kapacit� linek, spolehlivosti atd.
– podporuje CIDR– dnes verze BGP-4
J.Peterka, MFF UK, 2005 29
Rodina protokol�TCP/IPv. 2.2 IGP – Interior Gateway Protocols
• p�ipomenutí: uvnit� sebe sama si každý autonomní systém m�že �ešit sm�rování tak jak uzná za vhodné– m�že aplikovat vlastní sm�rovací
politiku– týká se to hlavn� aktualizace
sm�rovacích informací
• existuje více alternativních protokol�, které lze použít pro aktualizaci sm�rovacích informací uvnit� AS– obecn� jsou ozna�ovány jako
IGP (Interior Gateway Protocols)
• p�íklady protokol� IGP:– RIP (Routing Information
Protocol)• pracuje na principu "vector
distance"• vyvinut firmou Xerox ve
st�edisku PARC, použit mnoha firmami, používal se již v p�vodním ARPANETu
• vhodný pro malé až st�ednísít�, ne pro velké
– OSPF (Open Shortest PathFirst)
• pracuje na principu "linkstate"
• vhodný i pro v�tší sít� (v�tšíautonomní systémy)
J.Peterka, MFF UK, 2005 30
Rodina protokol�TCP/IPv. 2.2 RIP – Routing Information Protocol
• je typu vector-distance – uzly si vym��ují aktualizace tvo�ené
sm�rovým vektorem a jeho ohodnocením (vzdáleností k cíli)
• metrika je pevná, a to po�et p�eskok�!!• aktualizace (updaty):
– se vysílají každých 30 sekund• když do 180 sekund nep�ijde update od
n�jakého konkrétního (sousedního) routeru, jsou všechny cesty vedoucí p�es tento router ozna�eny jako nekone�n� dlouhé.
• po dalších 120 sekundách jsou odstran�ny z tabulky (nastoupí jakýsi garbage collector).
• výpo�et cest je distribuovaný– každý po�ítá kousek
– algoritmus probíhá trvale, nikdy nekon�í!!!
– každý je závislý na ostatních, chyba jednoho ovliv�uje druhé
• aktualizace (updaty): – posílají se jen k p�ímým soused�m (router�m)
• každý uzel se od svých soused� dozvídájen o dostupnosti cílových sítí (a metrice), ne o dalším routování za svými sousedy (nevidí dál než ke svým soused�m)
• nemá informace o celé topologii!!!– obsahují údaje o dostupnosti ostatních uzl� z
daného uzlu (s jakou cenou)• v zásad� jde o obsah celé sm�rovací tabulky
– alternativní cesty nejsou uvažovány, jsou zahazovány (tj. cesty se stejným ohodnocením)
• aby se zabránilo oscilacím, RIP aktualizuje n�jakou už existující cestu pouze takovou, která má nižší metriku!!! (nesta�í stejná)!!!
J.Peterka, MFF UK, 2005 31
Rodina protokol�TCP/IPv. 2.2 Protocol RIP
Zpráva RIP-u obsahuje:– pole Command, obsahuje bu� výzvu k zaslání routovacích
informací, nebo odpov�� na tuto výzvu. – pole Address Family (= 2 pro RIP)– pole "vzdálenost" musí obsahovat �íslo od 1 do 15, zatímco 16 je
považována za nekone�no.
Command Version (1) 0Address Family (=2) 0
IP adresa cílové sít�00
„vzdálenost do sít�“
až 25x
0 15 31
J.Peterka, MFF UK, 2005 32
Rodina protokol�TCP/IPv. 2.2 Protocol RIP – p�edstava fungování
• RIP je v TCP/IP je implementován jako aplikace (na aplika�ní úrovni)– jako démon "routed"– b�ží nad UDP– sedí na portu 520 (well-known
portu)– velikost každého RIP paketu je
max. 512 byt�
• výhoda:– je to jednoduché, nemusí se
konfigurovat• sta�í spustit démona routed, ten
již nastaví sm�rovací tabulky fyzická v.
linková v.
transportní v.
routed
sí�ová v.
sm�rovací.tabulky
fyzická v.
linková v.
transportní v.
routed
sí�ová v.
sm�rovací.tabulky
port 520
J.Peterka, MFF UK, 2005 33
Rodina protokol�TCP/IPv. 2.2 RIP2, RIPng
• v roce 1993 byl p�vodní RIP updatován– na verzi RIP-2
• nové vlastnosti/schopnosti:– podpora IP adres s maskami a CIDR– "Next Hop Specification"
• v RIP záznamu je explicitn� uvedena IP adresa sm�rova�e, p�es který vede spojení do cílové sít�
– zvyšuje efektivnost – umož�uje sm�rovat provoz i p�es
sm�rova�e, které nepodporují RIP
– autentizace• ochrana proti útok�m skrze falešné
RIP zprávy– "Route Tag"
• další informace o inzerované cest�
– použití multicastu pro rozesílání zpráv (RIP Response)
• zasílají se na adresu 224.0.0.9, která je vyhrazena pro RIP
• všechny uzly "v dosahu" musípodporovat multicast
• RIP-2 m�že koexistovat s RIP-1 – RIOP-2 vkládá svá nová data
do nevyužitých �ástí zpráv RIP-1
• v roce 1997 byl RIP upraven i pro IPv6– RIPng, RIPv6
• umož�uje používat IP adresy verze 6
• má jiný formát zpráv
J.Peterka, MFF UK, 2005 34
Rodina protokol�TCP/IPv. 2.2 Protokol OSPF (Open SPF)
• je "otev�enou verzí staršího protokolu SPF (Shortest Path First)– jeho specifickace jsou ve�ejn�
p�ístupné, pochází od IETF• je typu link-state
– každý uzel testuje dostupnost svých soused�
• stav linky– každý uzel sestavuje "link state
paket", ve kterém uvede údaje o dostupnosti svých soused�
• stav linky a její ohodnocení– tyto pakety jsou rozesílány všem
uzl�m v síti/soustav� sítí• sta�í ale jen p�i zm�n� n�jakého údaje
!!!!• jinak pro osv�žení každých 30 minut
• všechny uzly v síti mají úplnou informaci o jednotlivých spojích a mohou si vypo�ítat optimální cesty– každý po�ítá "za sebe", chybou ovlivní
jen sebe sama
• OSPF podporuje alternativní cesty– umož�uje definovat r�zné cesty pro
r�zné druhy provozu– podporuje load balancing
• OSPF podporuje další "dekompozici"– umož�uje rozd�lení sít� na menší
"areas", které jsou analogickéautonomním systém� v tom, že jejich topologie není ší�ena mimo danou "area"
• minimalizuje to objemy aktualiza�ních informací
J.Peterka, MFF UK, 2005 35
Rodina protokol�TCP/IPv. 2.2 Protokol OSPF – oblasti
• jde o vlastnost, která zv�tšuje "dosah" OSPF– umož�uje v�tší škálovatelnost, tj. realizovat AS
• celý autonomní systém se rozd�lí na (disjunktní) oblasti– jedna se prohlásí za páte�ní (backbone)
• sm�rova�e v oblastech se rozd�lí na – interní
• zajiš�ují sm�rování v rámci oblasti, mají stejné informace (navzájem)– páte�ní (Backbone)
• zajiš�ují sm�rování v rámci páte�ní oblasti– na rozhraní (Area Border)
• pat�í sou�asn� do oblasti i do páte�e, vym��ují informace mezi nimi– hrani�ní (Boundary)
• v páte�ní oblasti, vym��ují sm�rovací informace s jinými AS
J.Peterka, MFF UK, 2005 36
Rodina protokol�TCP/IPv. 2.2 P�íklad: hierarchické OSPF
J.Peterka, MFF UK, 2005 37
Rodina protokol�TCP/IPv. 2.2 Fungování OSPF
• každý OSPF sm�rova� si udržuje:– databázi p�ímých soused�
• každý ji má jinou• udržuje aktuální pomocí HELLO
paket�, které pravideln� posílá svým soused�m
– každých 10 sekund
– každý sm�rova� si udržuje "topologickou databázi"
• databázi s údaji o topologii celé sít�• všichni (v oblasti) by ji m�li mít
stejnou• pomocí této databáze po�ítá "nejkratší"
cesty– sm�rovací tabulky
• používají se pro samotné sm�rování IP paket�
• komunikace mezi OSPF sm�rova�i probíhá pomocíOSPF paket�– vkládají se p�ímo do IP paket�
• Protocol No. 89– existuje 5 druh� zpráv:
• Hello• Database Description• Link State Request• Link State Update• Link State Acknowledgement
J.Peterka, MFF UK, 2005 38
Rodina protokol�TCP/IPv. 2.2 Fungování OSPF
• "nový" sm�rova�:– nejprve zjistí, jaké má sousedy
• �eší se jinak v prost�edí s broadcastem, bez broadcastu a na dvoubodových spojích
– s každým sousedem si synchronizuje svou topologickou databázi
• pomocí p�íkaz�– Database Description– Link State Request– Link State Acknowledgement
– po úsp�šné synchronizaci oba sm�rova�eve dvojici "ohlásí sv�tu své sousedství"
• pomocí broadcastu oba rozešlou všem ostatním sm�rova��m v síti tzv. LSA (Link State Advertisement)
– informaci o existenci spojení (vazby, hrany) mezi nimi
– pomocí p�íkaz� Link State Update
• "již fungující" sm�rova�– trvale monitoruje dostupnost svých
p�ímých soused�• pomocí HELLO paket�, každých 10
sekund– pokud není zm�na:
• každých 30 minut opakuje všem své"sousedství"
– rozesílá LSA s údaji o dostupnosti souseda, pomocí broadcastu
– pokud je zm�na• okamžit� informuje o zm�n� pomocí
LSA (Link State Advertisement)– OSPF p�íkaz "Link State Update"
• LSA se ší�í jako inteligentníbroadcast– fakticky jako záplava (záplavové
sm�rování), s eliminací duplicitních paket�