ReŃele de calculatoare

Partea a 6-a

Sebastian Fuicu

1

Dirijarea pachetelor IP Protocoale de rutare

2

Dirijarea pachetelor IP
Principalele elemente ale procesului de dirijare sunt:

Fiecare pachet IP conŃine adresa IP a sursei şi a destinaŃiei. Adresa de reŃea din cadrul adresei IP identifică o singură reŃea fizică. Toate host-urile şi toate router-ele care au aceiaşi adresă de reŃea sunt conectate la aceiaşi reŃea fizică şi pot comunica direct, trimiŃându-şi unul altuia pachete. Fiecare reŃea care face parte din Internet are cel puŃin un router care este conectat şi la o altă reŃea fizică. El poate schimba pachete cu host-uri şi router-e din alte reŃele.

3

Dirijarea pachetelor IP
ModalităŃi de realizare a dirijării:

Un pachet este trimis de la sursă la destinaŃie traversând mai multe routere intermediare. Orice nod (host sau router) încearcă să determine dacă nodul destinaŃie se află în aceiaşi reŃea fizică în care se află şi el. - Pentru aceasta compară adresa de reŃea a destinaŃiei cu adresa de reŃea asociată interfeŃei sale de reŃea. - Daca cele două adrese coincid, atunci pachetul poate fi livrat în mod direct, deoarece destinaŃia se află în aceaşi reŃea. - Dacă nu coincid, pachetul va trebui să fie trimis către un router.

4

Dirijarea pachetelor IP
ModalităŃi de realizare a dirijării:

Dacă nodul care se află în posesia unui pachet este un router şi dispune de de mai multe interfeŃe de reŃea, va trebui să selecteze una dintre acele interfeŃe. Selectarea se face pe baza unei tabele de rutare care conŃine perechi de genul: <NetworkNumber, NextHop>

În cazul în care nici una dintre destinaŃii nu se regăseşte în listă, există un router predefinit căruia îi este trimis pachetul.

5

Dirijarea pachetelor IP
ModalităŃi de realizare a dirijării:

Tabela de rutare pentru R2

6

Dirijarea pachetelor IP

Pentru a obŃine o reŃea scalabilă trebuie redusă cât mai mult cantitatea de informaŃii ce trebuie stocată în fiecare nod. Cea mai simplă modalitate de a obŃine acest lucru este agregarea ierarhică. Protocolu lP introduce o ierarhie pe două nivele, cu reŃele pe primul nivel şi noduri pe al doilea. Agregarea presupune ca routerele să caute doar reŃeaua destinaŃie, indiferent de numărul host-urilor din acea reŃea.

7

Dirijarea pachetelor IP
Translatarea adreselor (ARP – Address Resolution Protocol)

Când un pachet IP trebuie trimis într-o reŃea fizică este nevoie de un mecanism de translatare a adresei IP a nodului destinaŃie în adresa de pe nivelul legătură de date a interfeŃei de reŃea a acelui nod. În cazul protocolului Ethernet, aceasta este adresa MAC. Scopul protocolului ARP este de a permite fiecărui host din reŃea să-şi construiască o tabelă de mapări între adresele IP şi adresele MAC. CondiŃia ca acest protocol să funcŃioneze este posibilitatea de a transmite mesaje de tip broadcast în acea reŃea.

8

Dirijarea pachetelor IP
Raportarea erorilor (ICMP – Internet Control Message Protocol)

IP este configurat să funcŃioneze totdeanuna cu un protocol adiŃional, numit ICMP, care defineşte o colecŃie de mesaje de eroare ce sunt transmise înapoi sursei pachetului atunci când un router sau un host nu poate să proceseze cu succes un pachet IP. Mesaje de eroare pot fi transmise atunci când: - destinaŃia nu a fost găsită - procesul de reasamblare nu s-a putut efectua - TTL a atins valoarea zero - checksum-ul header-ului a dat o valoare greşită, etc.

9

Dirijarea pachetelor IP
SubreŃele

ÎmpărŃirea în subreŃele încearcă să rezolve problema alocării ineficiente a claselor de adresă. Mecanismul prin care acelaşi număr de reŃea poate fi alocat mai multor reŃele fizice presupune configurarea tuturor nodurilor din fiecare reŃea printr-o mască de subreŃea. Masca de subreŃea permite introducerea unui număr de subreŃea, care va ocupa o parte din adresa host-ului. Masca de subreŃea introduce un nou nivel de ierarhizare în cadrul adreselor IP. Astfel, adresa IP poate fi considerată ca având acum 3 părŃi: - o parte de reŃea - o parte de subreŃea - o parte de host
10

Dirijarea pachetelor IP
SubreŃele

11

Dirijarea pachetelor IP
SubreŃele

12

Dirijarea pachetelor IP
SubreŃele

Sarcinile router-ului se schimbă şi ele odată cu introducerea subreŃelelor. Tabelele de rutare vor trebui să conŃină intrări de forma <SubnetNumber, SubnetMask, NextHop>

Pentru a găsi intrarea corectă în tabela de rutare, router-ul trebuie să realizeze operaŃia AND pe biŃi între adresa destinaŃie şi masca subreŃelei. Dacă rezultatul este egal cu SubnetNumber, atunci aceasta este intrarea corectă şi pachetul va fi transmis către NextHop.

13

Protocoale de rutare

Protocoalele de rutare sunt necesare pentru actualizarea tabelelor de rutare. Un sistem autonom este o regiune din Internet care este sub controlul administrativ al unei singure entităŃi. Ideea de bază a unui sistem autonom este de a oferi o modalitate suplimentară de a agrega ierarhic informaŃiile de rutare. Rezulă o rutare intradomeniu si o rutare interdomenii.

14

Protocoale de rutare

Există două tipuri de rutare: rutare statică si rutare dinamică. Doar al doilea tip de rutare, cea dinamică, implică existenŃa protocoalelor de rutare. Există trei mari categorii de algoritmi pentru rutarea dinamică: - protocoale de rutare cu vectori distanŃă - protocoale de rutare care folosesc starea legăturilor - protocoale mixte care le îmbină pe primele două metode

15

Protocoale de rutare
Rutarea statică

Este cea mai simplă metodă de rutare şi se realizează folosind rute predefinite, stabilirea acestor rute căzând în sarcina administratorului de reŃea. Atunci când topologia reŃelei se schimbă şi tabelele de rutare trebuie actualizate, aceasta făcându-se tot de către administratorul de reŃea. Rutarea statică funcŃionează foarte bine în cazul unor reŃele de dimensiuni reduse unde traficul este predictibil. De asemenea acest tip de rutare conduce şi la o alocare mai eficientă a resurselor: nu se ocupă din capacitatea de transport a reŃelei cu informaŃii de rutare, nu se încarcă procesoarele routerelor cu calcule pentru aflarea rutei optime şi nici nu necesită multă memorie.

16

Protocoale de rutare
Rutarea dinamică

Algoritmii de rutare dinamici îşi modifică deciziile de dirijare a traficului pentru a reflecta modificările din topologia reŃelei şi în unele cazuri şi pe cele de trafic. Aceşti algoritmi diferă prin: - locul de unde îşi iau informaŃia - momentul la care îşi schimbă rutele - metrica folosită.

Metrici folosite de către algoritmii de rutare - lungimea căii de transmisie - siguranŃa căii de transmisie - întârzierea - lăŃimea de bandă - încărcarea
17

Protocoale de rutare
Protocoale de rutare cu vectori distanŃă

Algoritmul de dirijare cu vectori distanŃă impune ca fiecare router să menŃină o tabelă care păstrează cea mai bună distanŃă cunoscută spre fiecare destinaŃie şi interfaŃa pe care trebuie trimise datele pentru a ajunge la acea destinaŃie. Denumirea de distanŃă nu trebuie înŃeleasă ca o distanŃă fizică între două noduri, ci o denumire generică, putând fi folosite oricare din metricile enumerate anterior. Pentru actualizarea tabelelor de rutare, routerele fac schimb de informaŃii care constau chiar în aceste tabele de rutare pe care fiecare router la transmite către celelalte routere. Fiecare intrare din tabelă conŃine o parte care indică interfaŃa de ieşire şi o estimare a distanŃei până la acea destinaŃie. În loc de distanŃă poate fi folosită şi altă metrică, ca de exemplu numărul de salturi sau numărul de pachete care aşteptă în cozi de-a lungul căii. Principalul dezavantaj al acestui tip de rutare este o convergenŃă mai lentă.

18

Protocoale de rutare
Protocoale de rutare bazate pe starea legăturilor

Protocoalele din această familie sunt protocoalele care folosesc vectori distanŃă.

mult

mai

complexe

decât

Aceste protocoale funcŃionează pe principiul că routerele fac schimb de informaŃii cuprinse sub denumirea generică de starea legăturilor, aceasta reprezentând, de fapt, informaŃii despre legături şi nodurile din subreŃea. Routerele care rulează un protocol bazat pe starea legăturilor nu vor trebui să facă schimb de tabele de rutare ca în cazul protocoalelor bazate pe vectori distanŃă, fiind suficient să transmită informaŃii despre nodurile adiacente şi metrica asociată fiecărei conexiuni. Cea mai potrivită comparaŃie a acestei familii de protocoale este comparaŃia cu un joc de puzzle. Fiecare router din reŃea generează o piesă din puzzle pe care o distribuie în întreaga reŃea prin inundare. În final, fiecare router din reŃea deŃine câte o copie a fiecărei piese de puzzle, reprezentând routerele din reŃea.

19

Protocoale de rutare
Protocoale de rutare interioare şi exterioare

Deoarece dimensiunea Internet-ului a crescut foarte mult, s-a ajuns la concluzia că un singur protocol de rutare nu ar fi putut face faŃă tuturor cerinŃelor şi de aceea s-a trecut la separarea Internet-ului în entităŃi numite sisteme autonome (autonomous systems - AS). Rutarea în interiorul unui AS se numeşte rutare interioară (interior routing), iar rutarea între sisteme autonome se numeşte rutare exterioară (exterior routing). Fiecare AS are libertatea de a-şi alege propriul protocol de rutare interioară, dar pentru rutarea exterioară este ales un protocol unic care să fie folosit de sistemele care fac legătura dintre AS-uri. .

20

Protocoale de rutare
Protocoale de rutare interioare şi exterioare

Cele mai populare protocoale de rutare interioară şi exterioară sunt redate în figura de mai jos:

RIP (Routing Information Protocol) OSPF (Open Shortest Path First) IGRP (Interior Gateway Routing Protocol) BGP (Border Gateway Protocol)
21

Protocoale de rutare
Protocoale de rutare interioare şi exterioare

RIP, IGRP şi OSPF sunt folosite pentru a actualiza tabelele routerelor din interioroul unui AS BGP este folosit pentru actualizarea tabelelor folosite de către routerele care fac legătura între AS-uri.

22

Sign up to vote on this title
UsefulNot useful