Stratul este responsabil pentru rutarea în rețea. Introducere în rutarea IP. Exemplu de creare a unei rute statice

Esența, obiectivele și metodele de rutare. Sarcina de rutare este de a selecta o rută pentru transmiterea pachetelor de la expeditor la destinatar. Ea are sens. rețele, unde nu este doar necesar, ci și

se poate alege un traseu optim sau acceptabil. Este despre; în primul rând, despre rețelele cu topologie arbitrară (mesh), în; care implementează comutarea de pachete. Cu toate acestea, în rețelele moderne cu topologie mixtă (star-ring, star-bus, multi-segment), problema alegerii unei rute pentru transmiterea cadrelor este de fapt confruntă și rezolvată, pentru care se folosesc mijloace adecvate, de exemplu, routere.

În rețelele virtuale, problema de rutare la transmiterea unui mesaj împărțit în pachete se rezolvă singura dată când se stabilește o conexiune virtuală între expeditor și destinatar. În rețelele de datagrame, unde datele sunt transmise sub formă de datagrame, rutarea este efectuată pe bază de pachet.

Selectarea rutelor în nodurile de comunicație TCS se face în conformitate cu algoritmul (metoda) de rutare implementat.

Un algoritm de rutare este o regulă pentru atribuirea liniei de comunicație de ieșire a unui nod de comunicație TCS dat pentru a transmite un pachet, pe baza informațiilor conținute în antetul pachetului (adresaexpeditor și destinatar și informații despre încărcarea acestui nod (lungimea cozilor de pachete) și,Pot fi. TCS în general.

Principalele obiective ale rutarii sunt de a oferi

întârzierea minimă a unui pachet în timpul transmiterii acestuia de la expeditor la destinatar;

capacitatea maximă a rețelei, care se realizează, în special, prin nivelarea sarcinii pe liniile de comunicație TCS;

protecția maximă a pachetului de amenințări la adresa securității informațiilor conținute în acesta;

fiabilitatea livrării pachetului către destinatar;

costul minim al transmiterii unui pachet către destinatar. Se disting următoarele metode de rutare.

Dirijare centralizată implementate de obicei în rețele cu control centralizat. Alegerea rutei pentru fiecare pachet se efectuează în centrul de control al rețelei, iar nodurile rețelei de comunicații doar percep și implementează rezultatele rezolvării problemei de rutare. Acest control de rutare este vulnerabil la defecțiunile nodului central și nu este foarte flexibil.

Distribuit rutarea (descentralizată) se realizează în principal în rețele cu control descentralizat. Funcțiile de control al rutării sunt distribuite între nodurile de rețea care au mijloacele adecvate pentru aceasta. Rutarea distribuită este mai complexă decât rutarea centralizată, dar este mai flexibilă.

Amestecat rutarea se caracterizează prin faptul că implementează principiile de rutare centralizată și distribuită într-un anumit raport, care include, de exemplu, rutarea adaptivă hibridă (vezi mai jos).

Problema de rutare în rețele este rezolvată cu condiția ca de topologia rețelei să depindă cea mai scurtă rută care asigură transmisia pachetelor în timp minim: capacitatea liniilor de comunicație, sarcina pe linia de comunicație. Topologia rețelei se modifică ca urmare a defecțiunilor nodurilor și liniilor de comunicație și, parțial, odată cu dezvoltarea TCS (conectarea nodurilor noi și a liniilor de comunicație). Debitul liniilor de comunicație este determinat de tipul de mediu de transmisie și depinde de nivelul de zgomot și de parametrii echipamentului care deservește linia. Cel mai dinamic factor este sarcina pe liniile de comunicație,

schimbându-se destul de repede și într-o direcție greu de prevăzut.

Pentru a selecta ruta optimă, fiecare nod de comunicație trebuie să aibă informații despre starea TCS în ansamblu a tuturor celorlalte noduri și linii de comunicație. Datele despre topologia actuală a rețelei și capacitatea liniei de comunicație sunt furnizate nodurilor fără dificultate. Cu toate acestea, există nu este o modalitate de a prezice cu exactitate starea de sarcină în rețea.De aceea, atunci când se rezolvă o problemă de rutare, se pot folosi date despre starea încărcăturii, care întârzie (datorită vitezei finite de transmitere a informațiilor) în raport cu momentul luarea unei decizii asupra direcției de transmitere a pachetelor. În consecință, în toate cazurile, algoritmii de rutare sunt executați în condiții de incertitudine a stărilor actuale și viitoare ale TCS.

Eficacitatea algoritmilor de rutare este evaluată de următorii indicatori:

Momentul de livrare a coletelor către destinatar;

Sarcina rețelei, care, la implementarea acestui algoritm, este creată de fluxurile de pachete distribuite pe linii și noduri de rețea. Sarcina este cuantificată prin lungimea cozilor de pachete din noduri;

Costul resurselor în nodurile de comunicație (timpul de funcționare al calculatorului de comunicații, capacitatea de memorie). Factori care reduc eficiența algoritmilor de rutare:

Transferarea unui pachet la un centru de comunicații sub sarcină mare; " "

Transmiterea unui pachet într-o direcție care nu are ca rezultat un timp minim de livrare;

Crearea sarcinii suplimentare în rețea prin transmiterea informațiilor de serviciu necesare implementării algoritmului. :-

Metode de rutare. Există trei tipuri de rutare - simplă, fixă ​​și adaptivă. Diferența fundamentală dintre ele este gradul în care modificările topologiei și încărcarea rețelei sunt luate în considerare atunci când se rezolvă problema de selecție a rutei.

Dirijare simplă diferă prin aceea că, la alegerea unei rute, nu sunt luate în considerare nici modificările în topologia rețelei, nici modificările stării acesteia (încărcare). Nu asigură transmisie direcționată de pachete și are o eficiență scăzută. Avantajele sale sunt ușurința de implementare a algoritmului de rutare și asigurarea funcționării stabile a rețelei în cazul defecțiunii elementelor sale individuale. Din acest tip, rutarea aleatorie și avalanșă au primit câteva aplicații practice.

Dirijare aleatorie caracterizată prin faptul că o direcție liberă selectată aleatoriu este selectată pentru transmisia pachetelor de la nodul de comunicație. Pachetul „rătăcește” prin rețea și, cu o probabilitate limitată, ajunge vreodată la destinatar. Desigur, acest lucru nu asigură nici timpul optim de livrare a pachetelor, nici utilizarea eficientă a lățimii de bandă a rețelei.

Traseul avalanșelor(sau completarea tuturor direcțiilor de ieșire libere cu pachete) implică transmiterea unui pachet de la un nod de-a lungul tuturor liniilor de ieșire libere. Deoarece acest lucru se întâmplă la fiecare nod, are loc multiplicarea pachetelor, ceea ce degradează dramatic utilizarea lățimii de bandă a rețelei. O reducere semnificativă a acestui dezavantaj se realizează prin distrugerea duplicatelor (copiilor) pachetului la fiecare nod și redirecționarea unui singur pachet de-a lungul rutei. Principalul avantaj al acestei metode este timpul optim garantat pentru livrarea pachetului către destinatar, deoarece dintre toate direcțiile în care este transmis pachetul, cel puțin una oferă un astfel de timp. Metoda poate fi utilizată în rețelele descărcate atunci când cerințele pentru minimizarea timpului și a fiabilității livrării pachetelor sunt destul de mari.

Rutare fixă caracterizată prin faptul că la alegerea unei rute se iau în considerare modificările topologiei rețelei și nu se iau în considerare modificările încărcării acesteia. Pentru fiecare nod de destinație, direcția de transmisie este selectată dintr-un tabel de rute (director), care determină cele mai scurte căi. Directoarele sunt compilate în centrul de gestionare a rețelei. Ele sunt compilate din nou atunci când topologia rețelei se modifică. Lipsa adaptării la modificările de încărcare duce la întârzieri în pachetele de rețea. Există rute fixe cu o singură cale și cu mai multe căi. Prima este construită pe baza unei singure căi pentru transmiterea pachetelor între doi abonați, care este asociată cu instabilitatea la eșecuri și supraîncărcări, iar a doua se bazează pe mai multe căi posibile între doi abonați, din care este selectată calea cea mai preferată. Rutarea fixă ​​este utilizată în rețelele cu o topologie ușor în schimbare și fluxuri de pachete stabilite. "."

Rutarea adaptivă diferă prin faptul că deciziile privind direcția transmisiei pachetelor sunt luate ținând cont de modificările atât în ​​topologie, cât și în sarcina rețelei. Există mai multe modificări ale rutare adaptivă, care diferă în ceea ce privește informațiile utilizate atunci când alegeți o rută. Modificări precum rutarea adaptivă locală, distribuită, centralizată și hibridă au devenit larg răspândite.

Adaptativ local rutarea se bazează pe utilizarea informațiilor disponibile într-un nod dat și include: un tabel de rute, care determină toate direcțiile de transmisie a pachetelor de la acest nod; date despre starea liniilor de comunicație de ieșire (funcționează sau nu); lungimea cozii de pachete care așteaptă să fie transmise. Informațiile despre starea altor noduri de comunicare nu sunt utilizate. Tabelul de rute determină cele mai scurte rute care asigură livrarea pachetului către destinatar în timp minim. Avantajul acestei metode este că decizia de selecție a rutei este luată folosind cele mai recente date de stare a nodului. Dezavantajul metodei este că este „miopic”, deoarece ruta este selectată fără a ține cont de starea globală a întregii rețele. Prin urmare, există întotdeauna pericolul ca un pachet să fie transmis de-a lungul unei rute supraîncărcate.

Distribuit Adaptive Routing se bazează pe utilizarea informațiilor specificate pentru rutarea locală și a datelor primite de la nodurile rețelei vecine. La fiecare nod se formează un tabel de rute (director) către toate nodurile destinație; unde sunt indicate rutele cu latență minimă a pachetelor. Înainte ca rețeaua să înceapă să funcționeze, acest timp este estimat pe baza topologiei rețelei. În timpul funcționării rețelei, nodurile schimbă periodic așa-numitele tabele de întârziere cu nodurile învecinate, care indică încărcarea (lungimea cozii de pachete) a nodului. După schimbul tabelelor de întârzieri, fiecare -nod recalculează întârzierile și ajustează rutele ținând cont de datele primite și de lungimea cozilor din nodul însuși. Tabelele de latență pot fi schimbate nu numai periodic, ci și asincron în cazul unor schimbări bruște în încărcarea sau topologia rețelei. Luarea în considerare a stării nodurilor învecinate la alegerea unei rute crește semnificativ eficiența algoritmilor de rutare, dar acest lucru se realizează în detrimentul creșterii încărcăturii rețelei cu informații despre serviciu. În plus, informațiile despre schimbările în starea nodurilor se propagă relativ lent în rețea, astfel încât selecția rutei se face pe baza unor date oarecum învechite.

Rutare adaptivă centralizată caracterizată prin faptul că sarcina de rutare pentru fiecare nod de rețea este rezolvată în centrul de rutare (RC). Fiecare nod generează periodic un mesaj despre starea sa (lungimea cozilor și operabilitatea liniilor de comunicație) și îl transmite către CM. Pe baza acestor date, un tabel de rute este compilat în CM pentru fiecare nod. Desigur, transmiterea mesajelor către CM, formarea și distribuirea tabelelor de rute - toate acestea sunt asociate cu întârzieri, prin urmare, cu o pierdere a eficacității acestei metode, în special cu o ondulație mare de sarcină în rețea. În plus, există pericolul pierderii controlului rețelei în cazul în care CM eșuează.

Rutare adaptivă hibridă se bazează pe utilizarea tabelelor de rute trimise de CM către nodurile rețelei, în combinație cu o analiză a lungimii cozilor din noduri. În consecință, aici sunt implementate principiile de rutare centralizată și locală. Rutarea hibridă compensează neajunsurile de rutare centralizată (rutele formate de centru sunt oarecum depășite) și locale (metoda „miopiei”) și le percepe avantajele: rutele centrului corespund stării globale a rețelei și ținând cont de starea curentă a nodului asigură rezolvarea în timp util a problemei.

  • Gazda este dispozitivul final care acționează ca expeditor sau receptor de date. Dar destinatarul final nu trebuie confundat cu dispozitivele intermediare care primesc și date pentru transport ulterioar.
  • Masca de rețea este o secvență de biți care indică porțiunea adresei care este adresa rețelei. Cele din mască de rețea trebuie să fie consecutive și să înceapă cu bitul cel mai semnificativ.
  • Metric - calitatea traseului. O valoare mai mică este mai bună.
  • Distanța administrativă este gradul de încredere în sursa rutei. Conceptul este folosit de Cisco Systems.
  • Internetwork este o combinație de două sau mai multe rețele cu principii comune de rutare. Cel mai frapant exemplu este Internetul.
  • Un sistem autonom (AS) este o rețea aflată sub controlul unui singur operator, de obicei un furnizor împreună cu rețelele sale sau o rețea a unei companii mari. Fiecare AS are un număr unic.

Introducere

Pentru a citi acest articol, trebuie să înțelegeți modelul de rețea OSI. Pentru a face acest lucru, este recomandat să citiți articolul „Modele de rețea OSI și TCP/IP”.

Aceia dintre voi care sunteți online de câteva zile probabil cunosc deja conceptul de „gateway implicit”. Sau poate ați auzit chiar despre rute, la care se face referire adesea în jargonul „rute” (din limba engleză). Și, de altfel, pronunția mai corectă a cuvântului este „rădăcină” sau „raut”. Aceste concepte au devenit o parte integrantă a experienței noastre pe Internet. Dar internetul joacă un rol uriaș în lumea modernă. Cum este de fapt el? Internetul este o rețea globală. Analogii săi mai primitivi pot fi găsiți în orice companie mare care se respectă care își creează propriile rețele cu multe servere și, la rândul lor, oferă utilizatorilor acces la o varietate de resurse. În acest fel, au fost create un număr mare de rețele.

După cum știți, un computer poate comunica doar cu gazdele din rețeaua sa. Pentru aceasta se folosește protocolul ARP, care convertește o adresă de rețea într-una fizică. Dar ce se întâmplă dacă destinatarul nostru dorit se află pe partea opusă a globului și într-o altă rețea? Cum îi aflăm adresa fizică și va ajunge cadrul de rețea la el? Deci procesul de rutare rezolvă această problemă.

Informații inițiale și superficiale

Deci, ce este rutarea? Rutarea este procesul de alegere a rutei pe care ar trebui să o parcurgă un pachet. Dispozitivul care face această alegere se numește router. Routerele funcționează la nivelul 3 al modelului OSI. Folosind numai adresa de rețea pentru a selecta o rută, eliminând adresa gazdei. Pentru a extrage o adresă de rețea dintr-o adresă IP, se folosește o mască de rețea. Dar nu vei fi mulțumit doar cu formulările formale. Prin urmare, ne vom uita mai profund.

Mai întâi, să vedem ce este un traseu. Un traseu este o direcție. Deși mulți sunt obișnuiți să-și imagineze întreaga cale parcursă de un pachet simultan, înfățișând-o ca o secvență de muchii ale unui grafic (reprezentând rețeaua în mod logic), din punctul de vedere al unui router individual, acest lucru este puțin diferit. Fiecare router poate spune la ce interfață sau la ce ruter următor să trimită pachetul, specificând astfel direcția de mișcare. Colectând aceste direcții în secvență, obținem întregul traseu.

Routerele decid asupra unei rute în funcție de tabelul lor de rutare. Acesta este un tabel care conține maparea unei adrese de rețea la o rută.

Astfel, mașinile client trimit date unui destinatar dintr-o altă rețea printr-un router. La rândul său, se uită la adresa rețelei în care se află destinatarul, o compară cu tabelul său de rutare și decide să aleagă o rută pentru fiecare pachet sau renunță la pachet. Din nou aici sunt momente pe care este indicat să le mesteci.

În primul rând, cum trimite mașina client pachete către router și cum înțelege că pachetul este destinat pentru rutare? Pentru a face acest lucru, pachetele sunt trimise cu adresa fizică a routerului (mai precis, la al doilea nivel sunt destinate routerului), dar adresa de rețea a destinatarului. Astfel, cadrul de rețea este destinat ruterului, deci este primit și decapsulat într-un pachet. Dar la nivel de rețea, pachetul nu este destinat lui. În această etapă, începe rutarea. După cum am menționat mai sus, are loc la nivel de rețea și nu depășește el.

Următoarea acțiune care ne interesează este procesul de comparare a adresei de rețea. Deci, având în vedere tabelul de rutare, trebuie să alegem cea mai bună rută. Există două până la trei etape pentru aceasta. În primul rând, adresa de rețea este comparată pentru cea mai mare similitudine. Dacă există mai multe astfel de rute, atunci sunt selectate rutele cu cea mai mică distanță administrativă. Și în final, dintre cele rămase, este selectată ruta cu cea mai mică metrică. Distanța administrativă este gradul de încredere într-o sursă. Acest concept este folosit de Cisco Systems și îl vom reaminti atunci când luăm în considerare rutarea dinamică. Routerele care au o singură sursă de rute dinamice sau care efectuează doar rutare statică compară numai adresele de rețea și valorile. Apropo, fiecare computer are și un tabel de rutare, iar atunci când doriți să solicitați o pagină de pe Internet, computerul efectuează acțiuni similare pentru a selecta o rută.

Se poate întâmpla ca în tabelul de rutare să existe mai multe rute bune. În acest caz, nu există instrucțiuni clare despre ce să faceți. Routerele hardware Cisco efectuează echilibrarea sarcinii între aceste rute prin intercalarea pachetelor.

Este destul de comun să vezi că rețeaua de destinație nu este în tabel, dar există o rețea care o acoperă (cu alte cuvinte, este o superrețea). Dar dacă rețeaua conține gama de adrese ale rețelei de care avem nevoie, atunci și destinatarul se află acolo. Folosind acest principiu, puteți înlocui mai multe subrețele cu o singură superrețea, dar numai dacă au aceleași rute. În acest caz, compararea adresei de rețea pentru cea mai mare similitudine înseamnă că cea mai bună rută va fi considerată ruta a cărei adresă de rețea are o potrivire mai mare de biți cu adresa rețelei de destinație. Cum se utilizează acest lucru poate fi văzut folosind un exemplu:

Să avem trei rute în rețea 10.0.1.0/24, 10.0.2.0/24 și 10.0.3.0/24. Mai mult, rutele către prima și a treia rețea sunt aceleași. În acest caz, puteți reduce numărul de intrări în tabelul de rutare, accelerând astfel procesul de găsire a celei mai bune rute. Pentru a face acest lucru, vom combina primul și al treilea traseu, după care rămân doar două trasee. Mai mult, ne putem uni cu orice rețea de acoperire, de exemplu, 10.0.0.0/8. Rutarea va continua să funcționeze corect, deoarece pentru rețeaua 10.0.2.0/24 va fi selectată ruta cu cea mai mare potrivire (mai precis completă) la adresa rețelei, iar pentru adresele rămase din 10.0.0.0/8 va fi o rută generalizată. selectat. După cum ați observat deja, routerul începe să trimită pachete către rețele inexistente (din cauza rețelei 10.0.0.0/8) și, deși astfel de pachete vor fi aruncate mai departe, acest lucru va ocupa resurse de router, așa că poate fi o abordare proastă. . Agregarea rutelor se numește agregare de prefix sau rezumare a rutei.

Există doar două tipuri de rutare: statică și dinamică.

Rutare statica

Cu rutarea statică, rutele sunt introduse manual de administrator pe fiecare router și nu se modifică în timpul funcționării. De asemenea, uneori, rutarea statică include rute ale căror modificări pot fi prezise. De exemplu, schimbarea rutelor în funcție de program sau de ziua săptămânii.

De asemenea, merită menționate și interfețele de ieșire. Când ridicați o interfață de rețea și configurați un protocol de nivel de rețea pe aceasta, ruta către rețeaua în care se află această interfață este introdusă automat în tabelul de rutare. Astfel de rețele în care se află routerul sunt numite conectate direct. Iar rutele de pe ele sunt specificate numai de interfața de ieșire și au cea mai mare prioritate. La urma urmei, de ce să căutăm soluții dacă suntem deja în această rețea și putem trimite direct pachetul către destinatar?

Rutele rămase sunt specificate de adresa următorului router. Astfel, pachetul va trece prin routere până ajunge la unul care are o rețea de destinație conectată direct.

Dirijare dinamică

Rutarea dinamică se realizează prin protocoale de rutare dinamică. Cu ajutorul lor, routerul își construiește și își actualizează tabelul de rutare.

Ei spun că o rețea a convergit atunci când orice router poate ajunge la orice rețea. În caz contrar, pot apărea probleme de rețea, cum ar fi pierderea pachetelor și buclele de rutare. Rutarea asimetrică este cea în care există o rută într-o singură direcție.

Protocoalele de rutare dinamică sunt împărțite în externe și interne. Iar cele interne, la rândul lor, se bazează pe protocoale vectoriale de distanță și pe protocoale de stare a legăturii.

Protocoalele interne sunt folosite în rețele de diferite dimensiuni pentru a automatiza și în mod fiabil procesul de rutare. Protocoalele externe sunt folosite pentru a lucra între sisteme autonome, de ex. în rețele foarte mari, cum ar fi Internetul.

Diferența dintre protocoalele vector distanță și protocoalele de stare a legăturii este destul de semnificativă. Protocoalele de stare a legăturilor au apărut mai târziu, când rețelele de clasă au devenit un lucru din trecut. Principiul lor principal este de a stoca starea tuturor canalelor de rețea. Ei construiesc un fel de hartă a rețelei și determină în mod independent cele mai bune rute. O caracteristică distinctivă este, de asemenea, că actualizările sunt trimise numai atunci când topologia se schimbă și numai către acele routere pentru care informațiile vor fi relevante.

Protocoalele vector de distanță necesită ca toate routerele să funcționeze corect și împreună, deoarece funcționează pe direcția și metrica pe care le primesc de la routerele învecinate. Astfel, după ce a primit o rută, routerul își crește metrica și o trimite altor vecini. De aici provine numele protocoalelor: distanță (metrică) și vector (direcție). Printre reprezentanți se numără protocolul EIGRP, care are o serie de avantaje și unele asemănări cu protocoalele de stare a legăturii.

Dintre protocoalele de rutare externe, putem remarca protocolul BGP, pe care se sprijină Internetul. Este un protocol de stare a căii. Aceasta înseamnă că funcționează pe cele mai bune căi, care sunt date de lista de sisteme autonome (AS) prin care trebuie să treacă pachetul. De regulă, numărul de AS-uri dintr-o cale nu este mare, iar calea care conține un număr mai mic de AS-uri este considerată mai bună. Pentru a se asigura că o rută este o rută de rezervă, folosesc viclenia și își repetă numărul AS de mai multe ori pe parcurs, crescând astfel lungimea. Când pachetul ajunge la AS dorit, rutarea internă are efect.

Mai multe protocoale de rutare pot rula simultan pe un singur router. De asemenea, pot face publicitate pentru aceleași rețele. Să ne imaginăm că există o rețea în care fiecare router este conectat la toate celelalte (această topologie se numește full mesh). Astfel, putem intra în aceeași rețea în moduri diferite. Dar să rulăm diferite protocoale de rutare pe o astfel de rețea, de exemplu RIP și EIGRP. Să alegem pentru a lua în considerare un router pe care rulează ambele protocoale. Problema este că metrica din protocolul RIP poate lua o valoare de la 1 la 15, în timp ce în EIGRP ia valori destul de impresionante. Dacă verificați valoarea, atunci rețelele promovate prin protocolul RIP vor fi considerate cu prioritate mai mare. Se pare că valorile diferitelor protocoale nu pot fi comparate. Și după cum știți, EIGRP construiește rute mai bune, așa că este nevoie de un pas intermediar în compararea rutelor. Cisco folosește conceptul de distanță administrativă pentru aceasta. Fiecărui protocol i se atribuie o valoare unică care determină gradul de încredere, iar cu cât este mai mic, cu atât protocolul este mai preferabil. Prin urmare, înainte de a compara valorile, selectăm un singur protocol pentru fiecare rețea. Dar valoarea distanței administrative pentru protocol poate fi modificată pe routerele Cisco, dar această modificare rămâne valabilă doar în cadrul routerului.

Concluzie

Routerele sunt o parte cheie a oricărei rețele de internet. Putem concluziona că există două sarcini principale pe care le rezolvă routerele:

  1. Găsirea celui mai bun traseu
  2. Trimiterea unui pachet pe această rută

Rutarea a făcut posibilă combinarea rețelelor separate într-o singură rețea globală. Unde fiecare membru al rețelei are acces la toate resursele. Putem vorbi despre trei principii de rutare:

  1. Fiecare router ia propria decizie. Nu precizează de unde au fost obținute informațiile despre rute.
  2. Dacă un router are o tabelă de rutare completă, aceasta nu înseamnă că o au și celelalte. Puteți da multe motive și exemple atunci când rețeaua nu converge. În unele cazuri, acest lucru poate duce la pierderea datelor și în unele cazuri poate duce la bucle de rutare. De aceea este important să configurați corect și complet rutele statice pe routere și/sau să selectați și să configurați corect un protocol de rutare dinamică.
  3. Existența unui traseu unic nu garantează existența unui traseu de întoarcere. În termeni simpli, un pachet poate ajunge la destinatar, dar este posibil să nu existe o cale de întoarcere pentru pachetul de răspuns. Acest lucru este cauzat de caracterul incomplet al tabelului de rutare pe un router pe parcurs.

-----
Mai ales pentru site
Copierea materialului numai cu permisiunea autorului
(c) anul 2009

Adrese IP pentru rețelele locale

Toate adresele utilizate pe Internet, așa cum am spus deja, trebuie să fie înregistrate la IANA, ceea ce le garantează unicitatea la scară globală. Se numesc astfel de adrese real, sau adrese IP publice.

Pentru rețelele locale care nu sunt conectate la Internet, înregistrarea adreselor IP desigur nu este necesară, așa că, în principiu, orice posibile adrese pot fi folosite aici. Cu toate acestea, pentru a evita posibilele conflicte atunci când o astfel de rețea este conectată ulterior la Internet, RFC 1918 recomandă utilizarea numai a următoarelor intervale de așa-numitele adrese IP private(aceste adrese nu există pe Internet și nu este posibil să le folosiți acolo):

□ 10.0.0.0–10.255.255.255;

□ 172.16.0.0–172.31.255.255;

□ 192.168.0.0–192.168.255.255.

După cum sa menționat deja, pentru a interacționa corect cu alte computere și rețele, fiecare computer determină care adrese IP aparțin rețelei sale locale și care aparțin rețelelor de la distanță. Dacă se dovedește că adresa IP a computerului de destinație aparține rețelei locale, pachetul este trimis direct la computerul de destinație, dar dacă este adresa unei rețele de la distanță, atunci pachetul este trimis la adresa implicită. poarta de acces.

Să aruncăm o privire mai atentă asupra acestui proces. Să luăm un computer cu următorii parametri de protocol IP:

□ adresa IP – 192.168.5.200;

□ masca de subrețea – 255.255.255.0;

□ gateway principal – 192.168.5.1.

Când protocolul IP pornește pe computer, acesta rulează o operațiune logică și între propria sa adresă IP și masca de subrețea, ca urmare, toți biții ai adresei IP corespunzători biților zero ai măștii de subrețea devin, de asemenea, zero:

□ Adresă IP în format de 32 de biți –

11000000 10101000 00000101 11001000;

□ mască de subrețea –

11111111 11111111 11111111 00000000;

□ identificatorul rețelei –

11000000 10101000 00000101 00000000.

Această operațiune simplă permite computerului să determine propriul identificator de rețea(în exemplul nostru – 192.168.5.0).

Acum să presupunem că computerul trebuie să trimită un pachet IP la adresa 192.168.5.15. Pentru a decide cum să facă acest lucru, computerul o face o operație logică și cu adresa IP a computerului de destinație și propria masca de subrețea. Este ușor de înțeles că rezultatul ID-ul rețelei de destinație se va potrivi cu identificatorul rețelei proprii a computerului expeditor. Deci, computerul nostru va determina că computerul de destinație se află în aceeași rețea cu acesta și va efectua următoarele operațiuni:

□ folosind protocolul ARP, se va determina o adresă MAC fizică corespunzătoare adresei IP a computerului de destinație;



□ folosind protocoale de legătură și de nivel fizic, informațiile necesare vor fi trimise la această adresă MAC.

Acum să vedem ce se schimbă dacă pachetul trebuie trimis la 192.168.10.20. Computerul va efectua o procedură similară pentru a determina ID-ul rețelei de destinație. Rezultatul va fi adresa 192.168.10.0, care nu se potrivește cu ID-ul de rețea al computerului care trimite. Acest lucru va stabili că computerul de destinație se află într-o rețea la distanță, iar algoritmul acțiunilor computerului care trimite se va schimba:

□ adresa MAC va fi determinată nu a computerului de destinație, ci a routerului;

□ folosind protocoale de legătură și de nivel fizic, informațiile necesare vor fi trimise către router prin această adresă MAC.

În ciuda faptului că pachetul IP în acest caz nu este livrat direct la destinație, protocolul IP de pe computerul expeditor consideră sarcina sa finalizată (rețineți că atunci când trimitem o scrisoare o aruncăm doar în cutia poștală). Soarta ulterioară a pachetului IP depinde de configurația corectă a routerelor care conectează rețelele 192.168.5.0 și 192.168.10.0.

Apropo, în acest exemplu este ușor de demonstrat cât de important este configurarea corectă a măștii de subrețea în parametrii de adresare IP. Să specificăm greșit o mască de subrețea egală cu 255.255.0.0 pentru computerul 192.168.5.200. În acest caz, atunci când încercăm să trimitem un pachet la adresa 192.168.10.20, computerul nostru va considera că computerul de destinație se află pe propria sa rețea (la urma urmei, identificatorii de rețea cu o astfel de mască sunt aceiași!), și va încercați să trimiteți singur pachetul.

Ca urmare, acest pachet nu va ajunge la router și nu va fi livrat la destinație.

Pentru a înțelege cum funcționează routerele, să analizăm mai întâi tabel de rute, care este construit la încărcarea protocolului IP de către un computer obișnuit, de exemplu, cu sistemul de operare Windows XP (Fig. 8.1).

Orez. 8.1. Tabel de rute în Windows XP

După cum puteți vedea cu ușurință, în tabel sunt definite mai multe rute cu parametri diferiți. Trebuie să citiți fiecare astfel de intrare din tabelul de rutare, după cum urmează:

Pentru a livra un pachet într-o rețea cu o adresă din câmp Adresă de rețea si o masca din campul Network mask, ai nevoie de ea din interfata cu adresa IP din camp Interfață trimiteți un pachet la adresa IP din câmp Adresa gateway-ului, iar „costul” unei astfel de livrări va fi egal cu numărul din câmp Metrici.

Rețineți că parametrii Adresă de rețeaȘi Mască de rețeaîmpreună stabilesc intervalul tuturor adreselor IP permise într-o anumită rețea. De exemplu, 127.0.0.0 și 255.0.0.0, așa cum am spus, înseamnă orice adresă IP de la 127.0.0.1 la 127.255.255.254. De asemenea, să ne amintim că adresa IP 127.0.0.1 se numește „adresă stub” - pachetele trimise la această adresă trebuie procesate de computerul însuși. În plus, masca 255.255.255.255 înseamnă o rețea cu o singură adresă IP, iar combinația 0.0.0.0 înseamnă orice adresă nespecificată sau mască de subrețea.

Apoi, prima linie din tabelul de rutare înseamnă exact ceea ce face computerul atunci când trebuie să trimită un pachet către o telecomandă, adică necunoscut pentru acesta din tabelul de rutare, rețea - de la interfața sa pachetul este trimis la adresa IP a router.

Al doilea rând al tabelului face ca computerul să trimită către el însuși (și să răspundă la) toate pachetele trimise la orice adresă IP în intervalul 127.0.0.1 - 127.255.255.254.

A treia linie definește modul de trimitere a pachetelor către computerele din rețeaua locală (la adrese în intervalul 192.168.5.1 - 192.168.5.254). Aici puteți vedea clar că computerul însuși trebuie să facă acest lucru - adresa gateway-ului este propria sa adresă IP 192.168.5.200.

Același lucru (al cincilea, al șaselea și al șaptelea rând din tabel) trebuie făcut în cazul în care pachetele sunt trimise la adresa de difuzare a subrețelei (192.168.5.255), la adrese multicast (224.0.0.0) sau la adresa de difuzare locală. (255.255.255.255).

A patra linie înseamnă că pachetele trimise la adresa IP 192.168.5.200 (atenție la mască!) trebuie procesate chiar de computer.

Tabelul de rutare al unui computer cu două adaptoare de rețea, pe care îl vom folosi ca router pentru a conecta două segmente ale unei rețele mici (Fig. 8.2), va arăta ceva mai complicat.

Orez. 8.2. Conectarea în rețea folosind un router(e) și un tabel de rutare a computerului R 1(b)

În acest tabel au apărut mai multe rânduri suplimentare, indicând rutele către ambele rețele - 192.168.5.0 și 192.168.10.0. Rețineți că toate astfel de rute vor fi construite automat de computer.

Pentru a stabili după aceasta schimbul de pachete IP între rețele, trebuie să faceți următoarele:

□ activați rutarea pe computer R 1 – Acest lucru se poate face, de exemplu, prin configurarea serviciului de rutare și acces la distanță care este inclus cu sistemul de operare Windows Server 2003;

□ pe toate computerele din rețea N 1 parametru Poarta principala trebuie setat egal cu adresa IP a interfeței routerului conectat la această rețea, adică egal cu 192.168.5.1 și pe computerele din rețea N 2 – egal cu 192.168.10.1.

Astfel, un router este un dispozitiv software și hardware cu mai multe interfețe de rețea pe care rulează serviciu de rutare.

Să ne complicăm rețeaua adăugând un al doilea router și o rețea N 3 cu adresa 192.168.15.0 (Fig. 8.3).

Într-o astfel de rețea, configurarea rutării devine mai complicată. Problema este că, deși routerul R 1„știe” cum să trimită pachete prin rețea N 1Și N 2, ruta către rețea N 3 el nu are. La rândul său, routerul R 2 nu există nicio rută către rețeaua N 1. Aceasta înseamnă că schimbul de pachete IP între rețele N 1Și N 3 va fi imposibil.

Rezolvarea acestei probleme într-o rețea atât de mică este destul de simplă - trebuie să adăugați intrările necesare la tabelele de router R 1Și R2. Pentru a face acest lucru pe router R 1 Tot ce trebuie să faceți este să rulați o comandă care direcționează toate pachetele destinate rețelei 192.168.15.0 la 192.168.10.254 (adică către un al doilea router care poate livra deja aceste pachete la destinație; tasta P este folosită aici pentru a face acest lucru traseu permanent):

RUTA -P ADD 192.168.15.0

MASCA 255.255.255.0 192.168.10.254

Este obișnuit să selectați fie prima, fie ultima adresă posibilă într-o anumită rețea IP ca adresă IP a routerului.

Comandă similară pe router R 2 ar trebui sa arate asa:

RUTA -P ADD 192.168.5.0

MASCA 255.255.255.0 192.168.10.1 După aceasta, se va stabili interacțiunea în rețeaua noastră.

În rețelele mari care conțin un număr mare de subrețele conectate între ele, specificarea manuală a rutelor de livrare a pachetelor pe toate routerele este destul de plictisitoare. În plus, astfel de rute sunt static, Aceasta înseamnă că de fiecare dată când configurația rețelei se schimbă, va trebui depusă multă muncă pentru a reconstrui sistemul de rutare IP.

Pentru a evita acest lucru, pur și simplu configurați routerele astfel încât acestea au schimbat între ei informații despre rute.În acest scop, rețelele locale folosesc protocoale precum RIP (Routing Information Protocol)Și OSPF (Open Shortest Path First). Protocolul RIP este mai ușor de configurat decât OSPF, dar folosește mesaje difuzate pentru a face schimb de informații, ceea ce încarcă semnificativ rețeaua. Prin urmare, RIP este de obicei folosit în rețele relativ mici. Protocolul OSPF funcționează mai eficient, dar este mai greu de configurat, așa că utilizarea lui este recomandată pentru rețelele corporative mari.

Sau poarta de acces, este un nod de rețea cu mai multe interfețe IP (conținând propria adresă MAC și adresă IP) conectate la diferite rețele IP, care, pe baza rezolvării problemei de rutare, redirecționează datagramele de la o rețea la alta pentru livrare de la expeditor către destinatar.

Sunt fie computere specializate, fie computere cu mai multe interfețe IP, a căror funcționare este controlată de un software special.

Rutare în rețele IP

Rutarea este utilizată pentru a primi un pachet de la un dispozitiv și a-l redirecționa prin rețea către un alt dispozitiv prin alte rețele. Dacă nu există routere în rețea, atunci rutarea nu este acceptată. Routerele direcţionează (redirecţionează) traficul către toate reţelele care alcătuiesc reţeaua.

Pentru a ruta un pachet, routerul trebuie să aibă următoarele informații:

  • Adresa de destinatie
  • Un router din apropiere de la care poate afla despre rețelele de la distanță
  • Căile disponibile către toate rețelele de la distanță
  • Cea mai bună cale către fiecare rețea la distanță
  • Metode de întreținere și verificare a informațiilor de rutare

Routerul află despre rețelele de la distanță de la routerele vecine sau de la administratorul de rețea. Routerul construiește apoi un tabel de rutare care descrie cum să găsești rețele de la distanță.

Dacă rețeaua este conectată direct la router, acesta știe deja cum să direcționeze pachetul către acea rețea. Dacă rețeaua nu este conectată direct, routerul trebuie să învețe (învăța) căile de acces la rețeaua de la distanță utilizând rutarea statică (administratorul introduce manual locația tuturor rețelelor în tabelul de rutare) sau folosind rutarea dinamică.

Rutarea dinamică este un proces de protocol de rutare care determină modul în care un dispozitiv comunică cu routerele vecine. Routerul va actualiza informațiile despre fiecare rețea pe care o învață. Dacă apare o modificare în rețea, protocolul de rutare dinamică informează automat toate ruterele despre modificare. Dacă se utilizează rutarea statică, administratorul de sistem va trebui să actualizeze tabelele de rutare pe toate dispozitivele.

Rutarea IP este un proces simplu care este același pe rețele de orice dimensiune. De exemplu, figura arată procesul de interacțiune pas cu pas între gazda A și gazda B pe o altă rețea. În exemplu, utilizatorul gazdei A solicită adresa IP a gazdei B prin ping. Operațiunile ulterioare nu sunt atât de simple, așa că să le vedem mai detaliat:

  • La linia de comandă, utilizatorul introduce ping 172.16.20.2. Pe gazda A, un pachet este generat folosind protocoale de nivel de rețea și ICMP.

  • IP apelează ARP pentru a afla rețeaua de destinație pentru pachet, uitându-se la adresa IP și masca de subrețea a gazdei A. Aceasta este o solicitare către gazda de la distanță, de exemplu. pachetul nu este destinat unei gazde din rețeaua locală, așa că pachetul trebuie redirecționat către router pentru a fi redirecționat către rețeaua la distanță dorită.
  • Pentru ca gazda A să trimită un pachet către router, gazda trebuie să cunoască adresa hardware a interfeței routerului conectată la rețeaua locală. Stratul de rețea transmite pachetul și adresa de destinație hardware la stratul de legătură de date pentru a fi încadrat și redirecționat către gazda locală. Pentru a obține o adresă hardware, gazda caută locația destinației în propria memorie, numită cache ARP.
  • Dacă adresa IP nu a fost încă atinsă și nu este prezentă în memoria cache ARP, gazda trimite o difuzare ARP pentru a căuta adresa hardware la adresa IP 172.16.10.1. Acesta este motivul pentru care prima solicitare Ping va expira de obicei, dar celelalte patru solicitări vor reuși. Odată ce o adresă este stocată în cache, de obicei nu există timp de expirare.
  • Routerul răspunde și raportează adresa hardware a interfeței Ethernet conectată la rețeaua locală. Acum gazda are toate informațiile pentru a redirecționa pachetul către router prin rețeaua locală. Stratul de rețea transmite pachetul în jos pentru a genera o cerere de ecou ICMP (Ping) la nivelul de legătură de date, adăugând pachetul cu adresa hardware la care gazda ar trebui să trimită pachetul. Pachetul are adrese IP sursă și destinație împreună cu o indicație a tipului de pachet (ICMP) în câmpul de protocol de nivel de rețea.
  • Stratul de legătură de date formează un cadru care încapsulează pachetul împreună cu informațiile de control necesare pentru redirecționarea prin rețeaua locală. Aceste informații includ adresele hardware sursă și destinație, precum și valoarea din câmpul de tip stabilit de protocolul stratului de rețea (acesta va fi câmpul de tip, deoarece IP utilizează în mod implicit cadre Ethernet_II). Figura 3 prezintă un cadru generat la nivelul de legătură și transmis prin media locală. Figura 3 prezintă toate informațiile necesare pentru a comunica cu routerul: adrese hardware sursă și destinație, adrese IP sursă și destinație, date și suma de control CRC a cadrului aflată în câmpul FCS (Frame Check Sequence).
  • Stratul de legătură al gazdei A înaintează cadrul către stratul fizic. Acolo, zerourile și unurile sunt codificate într-un semnal digital și apoi transmise printr-o rețea fizică locală.

  • Semnalul ajunge la interfața Ethernet 0 a routerului, care este sincronizată cu preambulul semnalului digital pentru a prelua cadrul. După construirea cadrului, interfața routerului verifică CRC și, la sfârșitul recepționării cadrului, compară valoarea primită cu conținutul câmpului FCS. În plus, verifică procesul de transfer pentru fragmentarea media și conflicte.
  • Adresa hardware de destinație este verificată. Deoarece se potrivește cu adresa routerului, câmpul de tip cadru este analizat pentru a determina ce trebuie făcut în continuare cu acest pachet de date. Câmpul tip specifică protocolul IP, astfel încât routerul transmite pachetul procesului de protocol IP care rulează pe router. Cadrul este șters. Pachetul original (generat de gazda A) este plasat în buffer-ul routerului.
  • Protocolul IP analizează adresa IP de destinație din pachet pentru a determina dacă pachetul este destinat ruterului însuși. Deoarece adresa IP de destinație este 172.16.20.2, routerul stabilește din tabelul său de rutare că rețeaua 172.16.20.0 este conectată direct la interfața Ethernet 1.
  • Routerul redirecționează pachetul de la buffer la interfața Ethernet 1. Routerul trebuie să-l încadreze pentru a redirecționa pachetul către gazda destinație. Routerul își verifică mai întâi memoria cache ARP pentru a determina dacă adresa hardware a fost deja rezolvată în timpul interacțiunilor anterioare cu rețeaua dată. Dacă adresa nu se află în memoria cache ARP, routerul trimite o solicitare de difuzare ARP către interfața Ethernet 1 pentru a căuta adresa hardware pentru adresa IP 172.16.20.2.
  • Gazda B răspunde cu adresa hardware a adaptorului său de rețea la cererea ARP. Interfața Ethernet 1 a routerului are acum tot ce are nevoie pentru a redirecționa pachetul la destinația finală. Figura prezintă un cadru generat de router și transmis prin rețeaua fizică locală.

Cadrul generat de interfața Ethernet 1 a routerului are o adresă hardware sursă de la interfața Ethernet 1 și o adresă hardware de destinație pentru adaptorul de rețea gazdă B. Este important de reținut că, în ciuda modificărilor în adresele hardware sursă și destinație, pe fiecare router interfața care a trimis pachetul, adresele IP sursa și destinația nu se schimbă niciodată. Pachetul nu este modificat in niciun fel, dar ramele sunt schimbate.

  • Gazda B primește cadrul și verifică CRC. Dacă verificarea are succes, cadrul este eliminat și pachetul este transferat la protocolul IP. Acesta analizează adresa IP de destinație. Deoarece adresa IP de destinație este aceeași cu adresa setată în Host B, protocolul IP examinează câmpul de protocol pentru a determina destinația pachetului.
  • Pachetul nostru conține o cerere de ecou ICMP, astfel încât Gazda B generează un nou răspuns de ecou ICMP cu o adresă IP sursă egală cu Gazda B și o adresă IP de destinație egală cu Gazda A. Procesul începe din nou, dar în direcția opusă. Cu toate acestea, adresele hardware ale tuturor dispozitivelor de-a lungul căii pachetului sunt deja cunoscute, astfel încât toate dispozitivele vor putea obține adresele hardware ale interfețelor din propriile cache ARP.

În rețelele mari, procesul este similar, dar pachetul va trebui să parcurgă mai mulți hop pe drumul către gazda destinație.

Tabelele de rutare

În stiva TCP/IP, routerele și nodurile finale iau decizii cu privire la cui să transmită un pachet pentru a-l livra cu succes la nodul destinație, pe baza așa-numitelor tabele de rutare.

Tabelul este un exemplu tipic de tabel de rute care utilizează adrese IP de rețea pentru rețeaua prezentată în figură.

Tabel de rutare pentru routerul 2

Tabelul prezintă un tabel de rutare cu mai multe rute, deoarece conține două rute către rețeaua 116.0.0.0. În cazul construcției unui tabel de rutare cu o singură rută, este necesar să specificați o singură cale către rețeaua 116.0.0.0 pe baza valorii celei mai mici ale metricii.

După cum puteți vedea cu ușurință, în tabel sunt definite mai multe rute cu parametri diferiți. Trebuie să citiți fiecare astfel de intrare din tabelul de rutare, după cum urmează:

Pentru a livra un pachet în rețea cu o adresă din câmpul Network Address și o mască din câmpul Network Mask, trebuie să trimiteți un pachet de la interfață cu adresa IP din câmpul Interface la adresa IP din câmpul Gateway Address , iar „costul” unei astfel de livrări va fi egal cu numărul din câmpul Metrics.

În acest tabel, coloana „Destination Network Address” indică adresele tuturor rețelelor către care acest router poate transmite pachete. Stiva TCP/IP adoptă așa-numita abordare one-hop pentru optimizarea rutei de redirecționare a pachetelor (rutarea hop-ul următor) - fiecare router și nod final participă la alegerea unui singur pas de transmisie a pachetelor. Prin urmare, fiecare linie a tabelului de rutare nu indică întreaga rută ca o secvență de adrese IP ale routerelor prin care trebuie să treacă pachetul, ci doar o singură adresă IP - adresa următorului router către care trebuie transmis pachetul. Împreună cu pachetul, responsabilitatea pentru alegerea următorului hop de rutare este transferată următorului router. Abordarea cu un singur salt a rutare înseamnă o soluție distribuită la problema de selecție a rutei. Aceasta elimină restricția privind numărul maxim de routere de tranzit de-a lungul căii pachetului.

Pentru a trimite un pachet către următorul router, este necesară cunoașterea adresei sale locale, dar în stiva TCP/IP, se obișnuiește să se utilizeze numai adrese IP în tabelele de rutare pentru a păstra formatul lor universal, independent de tipul de rețele de pe Internet. Pentru a găsi o adresă locală de la o adresă IP cunoscută, trebuie să utilizați protocolul ARP.

Rutarea cu un singur salt are un alt avantaj - vă permite să reduceți dimensiunea tabelelor de rutare în nodurile finale și routere prin utilizarea așa-numitei rute implicite (0.0.0.0), care ocupă de obicei ultima linie din tabelul de rutare, deoarece numărul rețelei de destinație. Dacă există o astfel de intrare în tabelul de rutare, atunci toate pachetele cu numere de rețea care nu sunt în tabelul de rutare sunt trimise către routerul specificat în linia implicită. Prin urmare, ruterele stochează adesea informații limitate despre rețelele de Internet în tabelele lor, redirecționând pachete pentru alte rețele către portul și routerul implicit. Se presupune că routerul implicit transmite pachetul către coloana vertebrală, iar routerele conectate la coloana vertebrală au cunoștințe complete despre compoziția Internetului.

În plus față de ruta implicită, pot exista două tipuri de intrări speciale în tabelul de rutare - o intrare despre o rută specifică gazdei și o intrare despre adresele rețelelor conectate direct la porturile routerului.

O rută specifică gazdei conține o adresă IP completă în loc de un număr de rețea, adică o adresă care are informații diferite de zero nu numai în câmpul numărul de rețea, ci și în câmpul numărul gazdei. Se presupune că pentru un astfel de nod final ruta ar trebui să fie aleasă diferit față de toate celelalte noduri din rețeaua căreia îi aparține. În cazul în care tabelul conține înregistrări diferite despre redirecționarea pachetelor pentru întreaga rețea N și nodul său individual având adresa N,D, când sosește un pachet adresat nodului N,D, routerul va acorda preferință înregistrării pt. N,D.

Intrările din tabelul de rutare legate de rețelele conectate direct la router conțin zerouri („conectate”) în câmpul „Metrici”.

Algoritmi de rutare

Cerințe de bază pentru algoritmii de rutare:

  • precizie;
  • simplitate;
  • fiabilitate;
  • stabilitate;
  • justiţie;
  • optimitatea.

Există diverși algoritmi pentru construirea de tabele pentru rutarea cu un singur salt. Ele pot fi împărțite în trei clase:

  • algoritmi simpli de rutare;
  • algoritmi de rutare fix;
  • algoritmi adaptivi de rutare.

Indiferent de algoritmul folosit pentru a construi tabelul de rutare, rezultatul muncii lor are un singur format. Datorită acestui fapt, în aceeași rețea, noduri diferite pot construi tabele de rutare conform propriilor algoritmi și apoi pot face schimb de date lipsă între ele, deoarece formatele acestor tabele sunt fixe. Prin urmare, un router care utilizează un algoritm de rutare adaptiv poate furniza un nod final folosind un algoritm de rutare fix cu informații despre calea către o rețea despre care nodul final nu știe nimic.

Dirijare ușoară

Aceasta este o metodă de rutare care nu se modifică atunci când se modifică topologia și starea rețelei de transmisie a datelor (DTN).

Rutarea simplă este asigurată de diverși algoritmi, tipici dintre care sunt următorii:

  • Rutarea aleatorie este transmiterea unui mesaj de la un nod în orice direcție aleasă aleatoriu, cu excepția direcțiilor în care mesajul a fost primit de nod.
  • Flooding routing este transmiterea unui mesaj de la un nod în toate direcțiile, cu excepția direcției în care mesajul a ajuns la nod. Această rutare garantează un timp scurt de livrare a pachetelor, în detrimentul degradării debitului.
  • Rutare bazată pe experiența anterioară - fiecare pachet are un contor pentru numărul de noduri trecute, în fiecare nod de comunicație se analizează contorul și se reține ruta care corespunde valorii minime a contorului. Acest algoritm vă permite să vă adaptați la schimbările în topologia rețelei, dar procesul de adaptare este lent și ineficient.

În general, rutarea simplă nu asigură transmisie direcțională a pachetelor și are o eficiență scăzută. Principalul său avantaj este de a asigura funcționarea stabilă a rețelei în cazul defecțiunii diferitelor părți ale rețelei.

Rutare fixă

Acest algoritm este utilizat în rețelele cu o topologie de conexiune simplă și se bazează pe compilarea manuală a unui tabel de rutare de către administratorul de rețea. Algoritmul funcționează adesea eficient și pentru coloana vertebrală a rețelelor mari, deoarece coloana vertebrală în sine poate avea o structură simplă cu cele mai bune căi evidente pentru ca pachetele să le urmeze către subrețelele atașate la coloana vertebrală; se disting următorii algoritmi:

  • Rutarea fixă ​​cu o singură cale este atunci când se stabilește o singură cale între doi abonați. O rețea cu o astfel de rutare este instabilă la defecțiuni și supraîncărcări.
  • Rutare fixă ​​cu mai multe căi - pot fi stabilite mai multe căi posibile și este introdusă o regulă de selecție a căilor. Eficiența unei astfel de direcționări scade pe măsură ce sarcina crește. Dacă vreo linie de comunicație eșuează, este necesară schimbarea tabelului de rutare; pentru aceasta, în fiecare nod de comunicație sunt stocate mai multe tabele.

Rutare adaptivă

Acesta este principalul tip de algoritmi de rutare utilizate de routere în rețelele moderne cu topologii complexe. Rutarea adaptivă se bazează pe faptul că ruterele schimbă periodic informații topologice speciale despre rețelele disponibile pe Internet, precum și despre conexiunile dintre routere. De obicei, nu se ține cont doar de topologia legăturilor, ci și de capacitatea și starea acestora.

Protocoalele adaptive permit tuturor ruterelor să colecteze informații despre topologia conexiunilor din rețea, procesând rapid toate modificările în configurația conexiunii. Aceste protocoale sunt distribuite în natură, ceea ce se exprimă în faptul că nu există routere dedicate în rețea care să colecteze și să rezumă informații topologice: această muncă este distribuită între toate routerele, se disting următorii algoritmi:

  • Rutare adaptivă locală - fiecare nod conține informații despre starea legăturii, lungimea cozii și tabelul de rutare.
  • Rutarea adaptivă globală se bazează pe utilizarea informațiilor primite de la nodurile învecinate. Pentru a face acest lucru, fiecare nod conține un tabel de rutare, care indică timpul de tranzit al mesajelor. Pe baza informațiilor primite de la nodurile vecine, valoarea tabelului este recalculată ținând cont de lungimea cozii din nodul însuși.
  • Rutare adaptivă centralizată - există un nod central care colectează informații despre starea rețelei. Acest centru generează pachete de control care conțin tabele de rutare și le trimite către nodurile de comunicație.
  • Rutarea adaptivă hibridă se bazează pe utilizarea unui tabel trimis periodic de către centru și pe analiza lungimii cozii de la nodul însuși.

Indicatori de algoritm (metrici)

Tabelele de rutare conțin informații pe care programele de comutare le folosesc pentru a selecta cea mai bună rută. Ce caracterizează construcția tabelelor de rutare? Care este natura informațiilor pe care le conțin? Această secțiune despre metrica algoritmului încearcă să răspundă la întrebarea cum un algoritm determină dacă o rută este preferabilă altuia.

Algoritmii de rutare folosesc multe valori diferite. Algoritmii complecși de rutare se pot baza pe mai multe valori atunci când selectează o rută, combinându-le astfel încât rezultatul să fie o măsură hibridă. Următoarele sunt valorile utilizate în algoritmii de rutare:

  • Lungimea traseului.
  • Fiabilitate.
  • Întârziere.
  • Lățimea de bandă.

Lungimea traseului.

Lungimea rutei este cea mai comună măsură de rutare. Unele protocoale de rutare permit administratorilor de rețea să atribuie prețuri arbitrare fiecărei legături de rețea. În acest caz, lungimea căii este suma costurilor asociate fiecărui canal care a fost parcurs. Alte protocoale de rutare definesc un „număr de hop”, o măsură care descrie numărul de călătorii pe care un pachet trebuie să le facă pe drumul său de la sursă la destinație prin elementele de agregare a rețelei (cum ar fi routerele).

Fiabilitate.

Fiabilitatea, în contextul algoritmilor de rutare, se referă la fiabilitatea fiecărei legături din rețea (descrisă de obicei în termeni de raport bit-eroare). Unele legături de rețea pot eșua mai des decât altele. Eșecurile unor legături de rețea pot fi rezolvate mai ușor sau mai rapid decât eșecurile altor legături. La atribuirea evaluărilor de fiabilitate, pot fi luați în considerare orice factor de fiabilitate. Evaluările de fiabilitate sunt de obicei atribuite canalelor de rețea de către administratori. De regulă, acestea sunt valori digitale arbitrare.

Întârziere.

Latența de rutare se referă în mod obișnuit la durata de timp necesară unui pachet pentru a călători de la sursă la destinație printr-o rețea de internet. Latența depinde de mulți factori, inclusiv lățimea de bandă a legăturilor intermediare din rețea, cozile de la portul fiecărui router de-a lungul căii pachetului, congestia rețelei pe toate legăturile intermediare din rețea și distanța fizică pe care trebuie să parcurgă pachetul. . Deoarece există un conglomerat de mai multe variabile importante, latența este cea mai comună și utilă măsură.

Lățimea de bandă.

Lățimea de bandă se referă la capacitatea de trafic disponibilă a oricărei legături. Toate celelalte lucruri fiind egale, un canal Ethernet de 10 Mbps este de preferat oricărei linii închiriate cu o lățime de bandă de 64 KB/s. Deși lățimea de bandă este o estimare a capacității maxime realizabile a unei legături, rutele care trec prin legături cu lățime de bandă mai mare nu sunt neapărat mai bune decât rutele care trec prin legături mai lente.

Rutarea în rețelele TCP/IP are două semnificații:

    Procedura de căutare a unei adrese de rețea într-un tabel special pentru transmiterea unui pachet către nodul destinație.

    Procesul de construire a unui astfel de tabel

Rutarea există ca redirecționare a pachetelor IP și rutarea există ca management al tabelului de rutare.

Gazdele trimit pachete numai către gateway-uri care sunt conectate fizic la aceeași rețea.

Gazdele locale pot muta pachetele doar cu 1 salt către gazda destinație.

Fiecare gateway prin care trece un pachet ia o decizie cu privire la mișcarea lui analizând propriul tabel de rutare.

Tabelele de rutare sunt menținute în moduri statice, dinamice și combinate.

O rută statică este fixată în tabelul de rutare și nu se modifică pe durata întregii operațiuni a gazdei. O rută statică este utilizată într-o rețea locală relativ stabilă. Este ușor de gestionat și fiabil de utilizat, dar necesită ca personalul să cunoască topologia rețelei în momentul creării tabelului de rutare.

În rețelele cu topologii mai complexe, când apar gateway-uri suplimentare, când apar canale de comunicație suplimentare între gazde, debitul dintre canale este mare.

În cazul rutării dinamice, un proces special (daemon) rulează constant pe gateway-urile corespunzătoare. Procesul menține și modifică tabelul de rutare. În plus, interacționează constant cu alte procese demon ale altor gateway-uri pentru a determina topologia rețelei și pentru a lua decizii cu privire la livrarea pachetelor către gazdele gateway-ului.

Rutare combinată. Pentru routere simple - rutare statica, pentru cele complexe - rutare dinamica.

Există 4 niveluri de complexitate care caracterizează procesul de gestionare a rutării într-o rețea:

    Nivelul 0. Fără rutare ca atare

    Numai rutare statică

    Rutare în principal statică cu actualizări periodice ale rutei care modifică tabelele de rutare statică (realizat folosind RIP)

    Dirijare dinamică

Rutare fixă

este una dintre metodele de rutare dinamică și este utilizată în rețelele cu o topologie de comunicație simplă. Rutarea fixă ​​are tabele cu o singură cale în care există o cale pentru fiecare destinație. în tabelele cu mai multe căi pentru fiecare destinație există mai multe căi alternative și trebuie să existe o regulă de selecție a căilor.

Algoritm simplu de rutare

    Dirijare aleatorie, unde pachetele sunt redirecționate în orice direcție aleatorie (una), alta decât direcția originală.

    Flood rutare - pachetele sunt transmise în toate direcțiile, cu excepția celui original

    Rutare bazată pe experiența anterioară. Această metodă de rutare dinamică funcționează pe baza pachetelor care trec prin acea rută.

Rutare adaptivă

Bazat pe????????????7

Principalul tip de algoritmi de rutare este utilizat în rețelele moderne cu topologii complexe. Algoritmii de acest tip se bazează pe schimbul periodic de informații despre rețelele disponibile pe Internet. Și, de asemenea, despre conexiunile între routere. În plus, algoritmii iau în considerare nu numai topologia de comunicare a gateway-urilor, ci și performanța și starea acestor conexiuni. Algoritmii adaptivi de rutare includ:

    Algoritmi vectoriali de distanta

    Algoritmi de stare de legătură

Algoritmi vectoriali de distanta

Fiecare router transmite și difuzează prin rețea un vector de distanțe față de el însuși către toate rețelele cunoscute de el. Distanța aici se referă la numărul de rute pe care trebuie să le parcurgă un pachet înainte de a ajunge în rețeaua corespunzătoare. După ce a primit un astfel de vector, un alt router își adaugă informațiile despre rețelele cunoscute și trimite, de asemenea, acest vector tuturor celorlalți.

Al doilea algoritm este asociat cu furnizarea fiecărui router cu informații pe baza cărora este construit un grafic precis al stării rețelei. Toate routerele funcționează pe baza acelorași grafice.

Comutarea în rețele

În procesul de dezvoltare a tehnologiilor informatice de rețea, au apărut 3 metode principale:

1. Comutarea circuitului

2. Comutarea mesajelor

3. Comutarea de pachete

Comutare circuit implică formarea unui canal fizic compozit din secțiuni individuale conectate secvenţial pentru transmisia de date între noduri. Canalele individuale sunt conectate între ele prin echipamente speciale (comutatoare), care pot stabili conexiuni între orice nod final al rețelei. Într-o rețea cu comutare de circuite, este întotdeauna necesar să se efectueze o procedură de configurare a conexiunii înainte de a transmite date și, în acest proces, să se creeze un circuit compus (comutat).

Comutarea mesajelor

Atunci când utilizați această metodă, echipamentele (numite comutatoare și realizate pe baza de PC-uri universale) vă permit să acumulați mesaje (buffer) și să le trimiteți în conformitate cu un anumit sistem de prioritate și principii de rutare către alte noduri de rețea.

Comutare de pachete

Se realizează prin împărțirea mesajului în pachete, adică elemente de mesaj echipate cu un antet și având o lungime maximă fixă, și transmiterea ulterioară a pachetelor de-a lungul unei rute determinate de nodurile rețelei.

Comutarea de pachete în rețelele de calculatoare este principala metodă de transmitere a datelor.

Predominanța comutării de pachete ca metodă principală în implementarea rețelelor de calculatoare se datorează următoarelor circumstanțe:

    Comutarea de pachete are ca rezultat întârzieri reduse în transmiterea datelor.

    Spre deosebire de comutarea circuitelor, care necesită ca toate liniile de comunicație din care este format canalul să aibă aceeași lățime de bandă. Metodele de comutare a mesajelor și a pachetelor permit transmiterea datelor prin linii de comunicație cu orice lățime de bandă.

    Prezentarea datelor în pachete creează condiții pentru multiplexarea fluxurilor de date (împărțirea timpului de funcționare a canalului pentru fluxuri de date multiple simultane).

    Lungimea scurtă a pachetelor de date vă permite să alocați mai puțină capacitate de memorie pentru stocarea intermediară (buffering) a datelor transmise.

Metode de comutare de pachete

În comutarea de pachete, mesajele transmise sunt împărțite în bucăți mai mici numite pachete, fiecare dintre ele având o lungime maximă specificată. Pachetele sunt furnizate cu informații de serviciu necesare pentru livrarea și transmisia pachetelor. Fiecare pachet este furnizat cu următoarele informații:

    Cod de început și de sfârșit de pachet;

    Adresele expeditorului și destinatarului;

    Numărul pachetelor de mesaje;

    Informații pentru controlul fiabilității la nodurile intermediare și la nodul destinație.

De obicei, multe pachete din același mesaj sunt transmise simultan. Receptorul, în conformitate cu antetele pachetelor, adună pachetele în mesajul original și trimite o confirmare către destinatar. În procesul de transmitere a pachetelor peste nodurile rețelei, datorită faptului că pachetele din nodurile intermediare nu se acumulează în întregime sub formă de mesaje (cerințe hardware pentru nodurile intermediare).

Cerințele hardware pentru nodurile intermediare sunt reduse dramatic. Dacă memoria RAM este plină, comutatoarele folosesc diverse mecanisme pentru a întârzia pachetele transmise în locurile în care sunt generate.

Comutarea de pachete impune 2 cerințe contradictorii:

    Reducerea latenței pachetelor în rețea datorită lungimii scurte a pachetului;

    Creșterea eficienței transmiterii informațiilor prin creșterea lungimii pachetului.

Pentru a rezolva aceste probleme, dimensiunea maximă a pachetului este stabilită pe baza a 3 factori:

    Distribuția lungimii pachetelor;

    Caracteristicile mediului de transmisie

    Costul transferului.

Procesul de transmitere a datelor într-o rețea de comutare de pachete este reprezentat ca următoarea secvență de operații:

    Mesajul introdus în rețea este împărțit în pachete care conțin adresa unui anumit punct al nodului destinatar, în nodul intermediar pachetul este stocat în RAM iar adresa acestui pachet este folosită pentru a determina canalul liniei de transmisie prin care pachetul trebuie transmis.

    Dacă acest canal de comunicație este liber (nu este ocupat cu transmiterea altor pachete), atunci pachetul este transmis imediat la nodul corespunzător.

    Dacă acel nod este și un nod intermediar, atunci aceeași operație se repetă și acolo.

    Dacă canalul de comunicație cu un nod vecin este ocupat, atunci pachetul poate fi stocat în RAM-ul comutatorului pentru o perioadă de timp până când canalul este eliberat.

    Pachetele stocate sunt puse în coadă în direcția de transmisie. De regulă, lungimea cozii nu depășește 3-4 pachete; dacă lungimea cozii este depășită, pachetele sunt șterse.

Există 2 metode de comutare de pachete:

    Datagrama.

    Metoda conexiunilor virtuale.

Termenul datagramă este folosit pentru a descrie un pachet autonom care călătorește printr-o rețea independent de alte pachete. Adică, pachetele pot fi livrate destinatarului prin diferite rute. Rutele, la rândul lor, sunt determinate de situația dinamică curentă din rețea la momentul actual. După ce a primit datagrama, nodul de comutare o înaintează către următorul nod, apropiindu-se cât mai mult posibil de destinatar. Când un nod adiacent confirmă primirea pachetului, nodul de comutare îl șterge din memoria sa; dacă nu este primită confirmarea, nodul de comutare trimite pachetul către un alt nod adiacent și așa mai departe până când pachetul este livrat cu o confirmare.

Toate nodurile din jurul nodului de comutare sunt clasificate în funcție de apropierea lor de comutator. În primul rând, pachetul este trimis la nodurile de rangul întâi, dacă nu are succes, la nodurile de rangul doi etc.

Procedura de distribuire a pachetelor se numește algoritm de rutare. Există algoritmi când nodurile adiacente către care va fi trimis pachetul sunt selectate aleatoriu. În consecință, fiecare datagramă călătorește pe o rută aleatorie.

Metoda virtuală - această metodă presupune stabilirea unei rute de transmisie pentru întregul mesaj de la expeditor la destinatar folosind un serviciu special de pachete de solicitare. Pentru un astfel de mesaj, este alocată o rută care, dacă destinatarul este de acord cu conexiunea, este atribuită pentru trecerea întregului set de pachete.

La implementarea acestei metode, este trimis mai întâi un pachet de servicii special numit cerere de apel.

Acest pachet, așa cum spune, prezintă întregul traseu pe care vor merge toate pachetele legate de acest apel.

Metoda se numește virtuală deoarece în acest caz calea fizică reală nu este comutată, dar se stabilește o conexiune logică între emițător și destinatar, adică este simulată o cale imaginară virtuală.

Avantajul metodei virtuale față de datagramă este ordonarea pachetelor. Dezavantajul este că de îndată ce se întâmplă ceva cu nodul intermediar, mesajul nu este livrat.

  • Serghei Savenkov

    un fel de recenzie „scurtă”... de parcă s-ar grăbi undeva