Internet și rețele

Rutarea pachetelor: traceroute, routere și protocolul BGP

Cum aleg pachetele de date drumul prin internet: salturi între routere, tabele de rutare, sisteme autonome, BGP și cum citești un traceroute.

De Publicația LumeaTehnologiei5 min de citit
Nod rutier circular văzut de sus noaptea, cu drumuri luminate și trafic între cartiere
Cuprins 5 secțiuni

Rutarea pachetelor este felul în care internetul decide pe unde merg datele tale între dispozitivul tău și un server aflat poate la mii de kilometri distanță. Nu există o hartă unică și nici un dispecer central: fiecare router din drum se uită doar la adresa de destinație, alege cel mai potrivit vecin și predă pachetul mai departe. Din sute de asemenea decizii luate în câteva zeci de milisecunde rezultă drumul complet.

Merită înțeles cum funcționează, pentru că explică de ce un site se încarcă repede din România și greu din altă țară, de ce apar pene regionale și ce îți arată comanda traceroute atunci când ceva nu merge.

Ce este un router și ce este un salt?

Un router este un echipament care primește pachete pe o interfață și le trimite mai departe pe alta, în funcție de adresa de destinație. Fiecare trecere printr-un router se numește salt (hop). Un pachet de la tine la un server din altă țară poate face între zece și douăzeci de salturi, trecând prin rețeaua furnizorului tău, prin rețele de tranzit și prin cea a găzduitorului.

Un router nu cunoaște drumul complet. Știe doar ce vecini are și prin care dintre ei se poate ajunge la fiecare grup de adrese. De aici vine și numele de tabel de rutare: o listă de intervale de adrese și de vecini către care se trimite fiecare.

Cum se aleg intrările din tabel

Când există mai multe intrări potrivite, routerul o alege pe cea mai specifică, adică pe cea care descrie cel mai mic interval de adrese care include destinația. Dacă există o egalitate, intră în joc preferințele configurate de administrator: costul, numărul de salturi, relațiile comerciale cu vecinii. Pentru cum arată și cum sunt grupate adresele, vezi articolul despre adresele IP.

Cum se înțeleg rețelele între ele?

Internetul este format din zeci de mii de rețele independente, numite sisteme autonome (AS), fiecare cu un număr propriu. Un furnizor de internet, o companie mare sau o rețea de livrare de conținut poate fi un astfel de sistem autonom. Ele schimbă între ele informații despre ce adrese pot ajunge prin ele, folosind BGP (Border Gateway Protocol).

BGP nu caută neapărat drumul cel mai scurt sau cel mai rapid. Alege în funcție de politici și de relații comerciale. Două tipuri de relații contează în mod deosebit:

  • tranzit: o rețea plătește alta ca să-i ducă traficul oriunde pe internet;
  • peering: două rețele schimbă trafic direct între ele, de obicei fără plată, pentru că amândouă câștigă economisind tranzit.

Multe țări au puncte de schimb de trafic (internet exchange), unde furnizorii se conectează direct. Asta face ca o pagină dintr-o rețea locală să se încarce mult mai repede decât dacă ar face ocolul prin altă țară.

Atenție: BGP se bazează în mare parte pe încredere între operatori. Un anunț greșit sau rău intenționat poate redirecționa traficul unei rețele spre alta. Cazurile acestea sunt cunoscute în domeniu și se limitează tot mai mult prin validarea cu certificate a anunțurilor.

Cum citești un traceroute?

Traceroute este o comandă care îți arată lista routerelor prin care trece un pachet până la o destinație. Pe Windows se scrie tracert nume-site, iar pe Linux și macOS traceroute nume-site.

Funcționează printr-un truc: fiecare pachet are un câmp numit TTL (time to live), un contor care scade cu o unitate la fiecare router. Când ajunge la zero, routerul aruncă pachetul și anunță expeditorul. Programul trimite pachete cu TTL 1, apoi 2, apoi 3 și așa mai departe, și notează cine răspunde de fiecare dată. Așa reconstruiește drumul.

Coloană din rezultatCe reprezintă
Numărul de pe prima pozițieNumărul saltului
Trei valori în milisecundeTimpul de răspuns pentru trei încercări
Nume sau adresăRouterul care a răspuns la acel salt
AsteriscNiciun răspuns primit în intervalul de așteptare
Rack de server cu cabluri de rețea conectate și lumini albastre, văzut de aproape

Cum interpretezi rezultatul

Un asterisc într-un salt din mijloc nu înseamnă automat o problemă. Multe routere sunt configurate să nu răspundă la acest tip de pachete, dar să transmită fără probleme traficul real. Contează dacă toate salturile de după el dau asteriscuri, adică dacă drumul se oprește.

Un salt cu timp mare în mijlocul listei, urmat de salturi cu timpi normali, e de obicei o ciudățenie a routerului respectiv, nu o problemă reală. Un semnal clar apare când timpul crește brusc și rămâne mare la toate salturile următoare: acolo este o legătură lentă sau o distanță fizică mare, de exemplu un cablu transoceanic. Despre acestea citești în articolul despre cablurile submarine.

Ce schimbă rutarea pentru experiența ta?

Drumul ales influențează direct latența și stabilitatea. Două site-uri aflate în aceeași țară pot fi la distanțe de rețea foarte diferite, în funcție de peering-ul furnizorului tău. De aceea un abonament cu aceeași viteză poate merge excelent către un serviciu și mediocru către altul. Diferența dintre viteză și întârziere este explicată în articolul despre latență și lățime de bandă.

Rețelele de livrare a conținutului ocolesc o parte din problemă: mută copiile conținutului aproape de utilizatori, deci pachetele fac mai puține salturi. Mecanismul este în articolul despre CDN. Pentru perspectiva întregului lanț, vezi și ghidul despre cum funcționează internetul.

Ce poți face dacă un drum este prost

Ca utilizator obișnuit ai puține pârghii, dar niște lucruri funcționează:

  • repornește routerul și verifică dacă problema este doar la un serviciu sau la toate;
  • rulează traceroute către mai multe destinații ca să vezi dacă întârzierea apare mereu în același loc;
  • notează rezultatele și trimite-le furnizorului, care poate cere o corecție de la rețeaua de tranzit.

Pe aceeași temă, citește și inteligența artificială explicată: ghid detaliat pe înțeles.

Întrebări frecvente

Același pachet merge mereu pe același drum?

Nu neapărat. Drumul se poate schimba în funcție de încărcare, de pene și de politicile operatorilor. Pachetele aceleiași conexiuni merg totuși, de obicei, pe același traseu.

Ce înseamnă un asterisc în traceroute?

Că routerul respectiv nu a răspuns în timp util la pachetul de test. Adesea este doar o setare de securitate, iar traficul real trece fără probleme.

Cine controlează BGP-ul?

Nimeni central. Fiecare operator își administrează propriile anunțuri, iar numerele sistemelor autonome sunt alocate de organizații regionale de înregistrare.

Rutarea afectează viteza de descărcare?

Da, dacă drumul are salturi lente sau congestionate. Lățimea de bandă a abonamentului nu ajută dacă un tronson din drum este supraîncărcat.

Pot alege eu drumul pachetelor?

Nu direct. Un VPN schimbă punctul prin care ieși pe internet, dar nu controlezi salturile dintre acel punct și destinație.

↑