Bölüm 39: Router Mimarisi
Ağlar'a “Sen”i Katmak kitabının bir bölümü: adres çubuğuna yazdığın tek bir isteğin peşinden bakırla fiberin fiziğine inip karşı taraftan geri dönen uzun bir teknik yolculuk.
Kısım 6: Router'dan Router'a (Bölüm 37-44)
Tüm bölümler
- Giriş
- Adres Çubuğundan İsteğe
- Paket Anahtarlamalı Yol
- İsimden Adrese
- DNS Kayıtları
- Önbellek, Tazelik ve Güven
- Port Numarası ve Soket
- Bağlantısız Taşıma: UDP
- Üç Adımlı El Sıkışma
- Simetrik Şifreleme
- Açık Anahtarlı Kriptografi
- TLS El Sıkışması
- Sertifika Zinciri
- HTTP Mesajının Anatomisi
- Durum, Çerez ve Oturum
- HTTP/2'den HTTP/3'e
- İçerik Dağıtım Ağları
- Diğer Uygulama Protokolleri
- Katmanlı Mimari
- Hizmet ve Protokol
- Encapsulation ve Başlıklar
- Paket Yakalama ve Çözümleme
- Ağ Interface Kartı
- Fiziksel Adresleme
- Hata Sezme ve CRC
- Adres Çözümleme: ARP
- Ortam Erişimi: CSMA/CD
- Switch'ler
- Ağ Topolojileri
- Sanal Yerel Ağlar
- Kablosuz Erişim: 802.11
- Radyo Kanalı ve Kapasite
- Kablosuz Ağ Güvenliği
- Hücresel Ağlar
- Spektrum ve Kuşaklar
- Hareketlilik ve Aktarma
- Adres Kiralama: DHCP
- Adresin Anatomisi
- Adres Tükenmesi ve IPv6
- Router Mimarisi
- Kuyruk Yönetimi
- Cihaz Yapılandırma
- Routing Protokolleri
- Kontrol Düzlemi ve SDN
- Ağ İzleme ve Yönetimi
- Alanlar Arası Routing
- Adres Çevirisi
- Ara Kutular
- Tünelleme ve IPsec
- Firewall'lar
- Ağ Saldırıları
- Operatör ve Metro Ağları
- Bitten Sinyale
- Sembol Hızı ve Kanal Kapasitesi
- Multiplexing Teknikleri
- İletim Ortamları
- Bakır Kablo Sonlandırma
- Fiber Sonlandırma
- Fiber Optik İletim
- Bakır Erişim Ağı: DSL
- DSL'de Hız ve Mesafe
- Pasif Optik Ağlar
- Kablo Erişim Ağları
- Kablo Modem ve CMTS
- Denizaltı Kabloları
- Veri Merkezi Ağları
- Encapsulation Çözme
- Güvenilir Aktarım
- Tıkanıklık Denetimi
- Trafik Çözümleme
- Gecikme Bütçesi
- Soket Programlama
- Eşten Eşe ve Protokol Tasarımı
- Uyarlanır Video Akışı
- Gerçek Zamanlı Ses ve Görüntü
- Kablosuz Sensör Ağlarının Mimarisi
- Sensör Ağlarında Ortam Erişimi
- Sensör Ağlarında Yönlendirme ve IP
- Zaman Eşitleme ve Konum Bulma
- Sensör Ağı Uygulamaları
- Mobil Kablosuz Sensör Ağları
- Son Söz
Yolun tamamını bilen bir makine yok. Paketi alan router (yönlendirici) yalnızca bir sonraki adımı biliyor ve kararını o adımda veriyor.
Bu kutuyu şimdiye kadar kapalı tuttum. Kapağını açıyorum: içeride hedefi arayan bir tablo, portları birbirine bağlayan bir doku ve nanosaniyeyle ölçülen bir bütçe var. Karar bu kadar hızlı nasıl çıkıyor?
Router içeride kaç iş yapıyor?
Network layer’ın iki ayrı işi var. Tek bir paketi doğru kabloya itmeye iletme (forwarding), o kabloyu söyleyen tabloyu doldurmaya routing demiştim; ikisi kutunun içinde ayrı yerlerde yaşıyor. İletme her kutuda ayrı koşan veri düzleminin (data plane) işi, routing ağ çapında çalışan kontrol düzleminin (control plane). Bu bölümün konusu birincisi.
Kapağı kaldırdığında dört parça görüyorsun: giriş portları, yüksek hızlı bir anahtarlama dokusu (switch fabric), çıkış portları ve bir routing işlemcisi. Doku, giriş portlarını çıkış portlarına bağlayan iç ağdır.
Aradaki hız farkı altı basamak. İletme donanımda yapılır ve nanosaniye ölçeğinde çalışır; routing ile yönetim yazılımdır ve milisaniye ölçeğinde çalışır.
Nanosaniye ölçeği somut bir bütçe demek. En küçük Ethernet frame’inin telde 84 bayt yer kapladığını 22. bölümde görmüştük. 10 Gbit/s’lik bir hatta bu frame’lerden tam yükte saniyede yaklaşık 14,9 milyon tanesi geçiyor. Paket başına işlem bütçesi 67 ns; bugünkü 400 Gbit/s’lik bir portta 1,7 ns’ye iniyor. Giriş portunun hedefi işini hat hızında bitirmektir; yetişemezse tampon dolar ve paket düşer. Router’ın içindeki bütün tasarım baskısı bu tek cümleden çıkıyor.
Bütçenin içine sabit bir iş de giriyor. IPv4 başlığındaki alanları tek tek adlandırmıştım; TTL o başlığın 8 bitlik alanıydı. Datagram her router’dan geçtiğinde bu sayaç bir azalır, sıfırlandığında da atılır. Böylece hiçbir datagram sonsuza dek dolaşamaz. TTL her atlamada değiştiği için 16 bitlik başlık sağlaması da yenilenmek zorunda. Router onu baştan hesaplamaz; RFC 1624’teki artımlı yöntemle yalnızca değişen alanın farkını ekler. 38. bölümde IPv6’nın başlık sağlamasını tümden atmasının sebebi de bu iş yüküydü.
Tablodaki bir satır ne söylüyor?
Routing tablosundaki her satır dört şey taşır: ağ hedefi, alt ağ maskesi, bir sonraki durak ve çıkış interface’i. Ağ hedefi tek başına kullanılmaz; satırı bir öneke çeviren şey yanındaki maskedir.
Maske bir adresi ağ ve makine parçasına bölüyor, CIDR yazımı da önek uzunluğunu taşıyordu. Tablo aynı ayrımı kullanıyor: her hedef ağ için bir satır vardır, her hedef makine için değil. Datagram hedef ağa bağlı router’a ulaştığında dağıtımı o yapar.
Tablonun ilk satırlarını ise kimse yazmamıştır. Router’ın bir ağa fiziksel olarak bağlı interface’i varsa o ağa nasıl ulaşacağını zaten bilir; bunlara doğrudan bağlı yollar denir.
Aynı hedefe birden çok satır çıkarsa aradaki farkı metrik açar. Metrik bir yolun kullanım maliyetidir: RIP’te atlama sayısı, OSPF’te bağlantı hızından türetilen bir maliyet. Aynı kaynaktan gelen iki satırı en düşük metrik ayırır; farklı kaynaklardan gelenlerin nasıl elendiğini birazdan göreceğiz.
Bir de her adrese uyan bir satır var. Varsayılan yol, hedefi ve maskesi 0.0.0.0 olan satırla yazılır. Maskesi sıfır olduğu için hiçbir bit eşleşmesi aramaz; önek uzunluğu da sıfırdır. Makinenin varsayılan geçide neden yöneldiğini biliyorsun; ev router’ının tablosundaki karşılığı bu satır.
Aslında ortada iki tablo var ve adları ayrı. Routing protokollerinin öğrendiği her şeyin toplandığı, aday yolların yan yana durduğu tabloya RIB (Routing Information Base) deniyor. Karar verilip donanıma indirilen, iletmenin gerçekten baktığı sadeleşmiş kopyaya ise FIB (Forwarding Information Base). RIB yazılımda yaşıyor ve büyük olabilir; FIB donanımda duruyor ve her paket için nanosaniyeler içinde okunmak zorunda. 2. bölümde iletme tablosu (forwarding table) demiştim; ders kitaplarının bu adla anlattığı şey FIB’dir. Türkçede ikisine de çoğu zaman yönlendirme tablosu denir, ayrım RIB’in yazılımın öğrendiği, FIB’in donanımın okuduğu tablo olmasında.
Gerçek bir tablo çıktısında her satırın başında kaynağını söyleyen bir harf durur. C doğrudan bağlı, S elle yazılmış statik demektir. R ve O ise routing protokollerinden öğrenilmiş satırlardır. Bu satırların oraya nasıl geldiğini burada bırakıyorum; router’ların aynı haritada nasıl yakınsadığını 42. bölümde göreceğiz.
Gerçek bir tablo neye benziyor?
Şimdiye kadar tabloyu tarif ettim; artık bakma zamanı. Aşağıdaki çıktı bir kenar router’ın tablosu ve her satırı okumaya değer:
Gateway of last resort is 203.0.113.2 to network 0.0.0.0
S* 0.0.0.0/0 [1/0] via 203.0.113.2
10.0.0.0/16 is subnetted, 1 subnets
O 10.20.0.0 [110/65] via 203.0.113.2, 00:14:22, Serial0/0/0
192.0.2.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.0.2.0/24 is directly connected, GigabitEthernet0/0
L 192.0.2.1/32 is directly connected, GigabitEthernet0/0
S 198.51.100.0/24 [1/0] via 203.0.113.2
203.0.113.0/24 is variably subnetted, 2 subnets, 2 masks
C 203.0.113.0/30 is directly connected, Serial0/0/0
L 203.0.113.1/32 is directly connected, Serial0/0/0Baştaki harf satırın nereden geldiğini söylüyor:
| harf | kaynak | administrative distance |
|---|---|---|
C | doğrudan bağlı ağ | 0 |
L | interface’in kendi adresi, /32 yerel yol | 0 |
S | elle yazılmış statik yol | 1 |
O | OSPF ile öğrenilmiş | 110 |
R | RIP ile öğrenilmiş | 120 |
B | BGP ile öğrenilmiş | 20 / 200 |
Köşeli parantezin içindeki iki sayı da ayrı şeyler söylüyor: soldaki administrative distance, sağdaki metrik. İkisini karıştırmak yaygın bir hata. Administrative distance kaynaklar arasında seçim yapar: aynı ağa hem statik hem OSPF yol geldiyse statik kazanır, çünkü 1 < 110. Metrik ise aynı kaynağın iki yolu arasında seçim yapar. Uzaklık eşit değilse metriğe hiç bakılmaz. OSPF satırındaki 65 de bir toplam: seri hattın maliyeti 64, arkadaki Ethernet’inki 1. OSPF maliyeti bağlantı hızından hesaplıyor; yavaş hat pahalı.
S* satırındaki yıldız o yolun son çare geçidi olduğunu, yani hiçbir satır tutmazsa paketin oraya gideceğini işaretliyor.
L satırı ilk bakışta gereksiz görünüyor: 192.0.2.1/32 zaten 192.0.2.0/24 içinde. Ama ikisi farklı iş yapıyor. /24 satırı “bu ağa frame yazabilirim” derken, /32 satırı “bu adres benim, paketi yukarı ver” diyor. En uzun önek eşleşmesi ikisini kendiliğinden ayırıyor.
Aynı tablonun bir Linux router’daki hâli daha az süslü ama aynı bilgiyi taşıyor:
$ ip route
default via 203.0.113.2 dev eth1 proto static metric 100
192.0.2.0/24 dev eth0 proto kernel scope link src 192.0.2.1
198.51.100.0/24 via 203.0.113.2 dev eth1 proto static
203.0.113.0/30 dev eth1 proto kernel scope link src 203.0.113.1proto kernel doğrudan bağlıya, proto static elle yazılana karşılık geliyor. scope link ise “bu hedefe ulaşmak için bir sonraki durak yok, doğrudan komşu” demek; via yazmayan her satır böyle. Windows tarafında aynı tabloyu route print basar.
Bir sonraki durak da aranmak zorunda
Tablodaki via 203.0.113.2 satırına dikkatli bak: bir IP adresi yazıyor, bir interface değil. Router o paketi kabloya koyabilmek için hangi interface’ten çıkacağını bilmeli ve bunu ancak 203.0.113.2 adresini tabloda ikinci kez arayarak bulabilir. İşlemin adı özyinelemeli arama.
İkinci arama 203.0.113.0/30 satırına düşüyor, o satır Serial0/0/0 diyor, iş bitiyor. Zincirin doğrudan bağlı bir satırda bitmesi şart; bitmezse yol etkin değil sayılır ve tabloya hiç yazılmaz.
Bunun çok somut bir arıza karşılığı var. Statik bir yol yazdın, komutu kabul edildi, ama show ip route çıktısında satır görünmüyor. Sebebi neredeyse her zaman budur: yazdığın bir sonraki durak adresi, tabloda çözülemiyor. Satır yanlış değil, ulaşılamaz.
Zincirin son halkasında bir arama daha var ve o artık network layer’da değil. Çıkış interface’i ile bir sonraki durağın IP adresi belli; kabloya yazılacak frame’in hedef MAC adresi ise belli değil. Komşunun donanım adresini soran mekanizmayı 25. bölümde görmüştük. Tek bir paketin iletilmesi bu yüzden üç ayrı aramaya dayanıyor: hedef için önek eşleşmesi, bir sonraki durak için özyinelemeli arama ve komşu için adres çözümlemesi.
Gerçek router’lar bu üçünü her pakette yeniden yapmaz. FIB kurulurken özyineleme bir kez çözülür, komşunun MAC adresi de frame’e yazılacak hazır bir başlık olarak satıra iliştirilir. Paket başına tek bir arama kalır. RIB ile FIB’in ayrı tablolar olmasının asıl sebebi bu.
İki adres çifti, iki ayrı ömür
Üç aramanın sonucuna bir de paketin gözünden bakalım, çünkü ağ öğrenirken en çok karıştırılan yer burası.
Diyelim ki bir paket A’dan çıkıp iki router geçerek B’ye varıyor. Yolculuğun tamamında IP adresleri hiç değişmiyor: kaynak A, hedef B, ilk kabloda da son kabloda da. Değişen şey frame’in adresleri. Her kabloda frame baştan yazılıyor ve iki MAC alanı yalnızca o kablonun iki ucunu gösteriyor.
| kablo | kaynak MAC | hedef MAC | kaynak IP | hedef IP |
|---|---|---|---|---|
| A — Y1 | A | Y1 | A | B |
| Y1 — Y2 | Y1 | Y2 | A | B |
| Y2 — B | Y2 | B | A | B |
Sağdaki iki sütun sabit, soldaki iki sütun her satırda değişiyor. Sebebi katmanların iş bölümü: IP adresi yolculuğun iki ucunu adlandırıyor, MAC adresi ise yalnızca içinde bulunduğu kablonun iki ucunu. Frame bir kablonun ötesine geçemiyor, paket geçiyor.
Bunun iki somut sonucu var. Hedefin donanım adresini yol boyunca hiçbir router bilmiyor ve bilmesi de gerekmiyor; her biri yalnızca bir sonraki komşusununkini biliyor. İkincisi, B’ye varan frame’in kaynak MAC alanında A değil son router yazıyor; B, A’nın donanım adresini hiçbir zaman görmüyor.
Tablo yalnızca router’lara ait bir şey de değil. Az önce andığım default gateway, ev makinesinde de böyle bir tablonun ilk satırında duruyor.
Aynı adrese üç satır uyuyorsa hangisi kazanır?
Arama merkezde yapılmaz. İletme tablosunun bir kopyası her giriş portunda durur ve port, başlık alanlarına bakıp çıkış portunu kendi başına bulur. Buna merkezsiz anahtarlama denir. Merkezî tek bir arama birimi olsaydı bütün portların toplam yükünü aynı 67 ns’lik bütçenin içinde tek başına işlemek zorunda kalırdı. Darboğaz hesap değil, tabloya bakma hızıdır. Tabloyu her porta kopyalamak, tek bir birimi N kat hızlandırmaktan ucuza geliyor.

Giriş portundaki işin adı da bellidir: eşleştir ve uygula. Önce tabloda hedefe uyan satır bulunur, sonra o satırın söylediği eylem yapılır.
Eşleştirmenin kuralı kısa. Verilen bir hedef adres için tabloda bakarken, adrese uyan öneklerin en uzunu seçilir. Buna en uzun önek eşleşmesi deniyor ve birden çok satırın uyması normaldir. Kazanan, daha çok bit sabitleyen satırdır.
Dört satırlık bir tabloyla bakalım:
| önek | kapsadığı adres | çıkış interface’i |
|---|---|---|
| 203.0.113.0/24 | 256 | 1 |
| 203.0.113.128/25 | 128 | 2 |
| 203.0.113.160/27 | 32 | 3 |
| 0.0.0.0/0 | hepsi | 0 |
Hedef 203.0.113.170 gelsin. Üç özgül satır da uyar. Son oktet 170, ikili yazımla 10101010; /25 maskesiyle VE işleminin sonucu 128, /27 maskesiyle 160 çıkar ve ikisi de kendi satırının değeriyle tutar. En uzun önek /27 olduğu için paket üçüncü interface’e gider.
Hedef 203.0.113.140 için sonuç değişir: son oktet /27 maskesinden geçince 128 çıkar ve satırın 160’ıyla tutmaz, o yüzden kazanan /25 olur. 203.0.113.5 için geriye yalnızca /24 kalır. 198.51.100.7 için hiçbir özgül satır tutmaz ve varsayılan satır devreye girer.
Her ek önek biti kapsanan adres sayısını yarıya indiriyor. Tablo adres aralıklarıyla kurulsaydı, bir aralığın ortasındaki küçük bir kümeyi başka porta göndermek için aralığı parçalara bölmen gerekirdi. En uzun önek eşleşmesi bu bölmeyi gereksiz kılıyor. Özel durumu daha uzun bir önekle yazarsın; genel kural olduğu yerde kalır.
Bir adresin tablodaki hangi satırlara uyduğunu, hangisinin kazandığını izleyelim:
- Adres giriş portuna geliyor. Hedef 203.0.113.170. Karar yalnızca bu adresle tablodaki satırların karşılaştırılmasından çıkıyor; başka hiçbir alana bakılmıyor.
- İlk satır tutuyor. Adresin ilk üç okteti satırınkiyle aynı, yani /24 öneki eşleşiyor. Bu satır tek başına kalsaydı paket birinci interface'den çıkacaktı.
- İkinci satır da tutuyor. Son oktet 170, ikili yazımla 10101010. /25 maskesiyle VE işleminin sonucu 128 ve satırın kendi değeriyle aynı; aday sayısı ikiye çıkıyor.
- En uzun önek kazanıyor. 170 sayısının /27 maskesiyle VE sonucu 160 ve o satırla da tutuyor. Üç aday içinde en çok bit sabitleyen /27, karar onun.
- Karar çıkışa dönüşüyor. Paket üçüncü interface'e veriliyor. Alttaki varsayılan satır bu adrese de uyuyordu, ama uzunluğu sıfır olduğu için her yarışı kaybediyor.
Kural belli, ama bütçe hâlâ 67 ns. Tabloda binlerce satır var ve her biri için bir maskeleme, bir karşılaştırma gerekiyor. Bunları tek tek yapmak o bütçeye sığmıyor; sığdıran şey belleğin türü oluyor. En uzun önek eşleşmesi genellikle üçlü içerik adresli bellek (TCAM) ile yapılır. Sıradan bellekte adres verip içerik alırsın; burada içerik verip adres alırsın. Üçlü olmasının sebebi her bitin üç durum taşıyabilmesi: 0, 1 ve umursama. Maskenin donanımdaki karşılığı o üçüncü durum. Adresi verdiğinde bütün satırlar aynı anda karşılaştırılır ve cevap tek saat çevriminde çıkar.
Bunun bir bedeli var. Bütün satırları aynı anda karşılaştırabilmek için her satır kendi karşılaştırıcısını taşımak zorunda. Bu yüzden üçlü bellek sıradan bellekten pahalıdır ve her aramada daha çok güç harcar. Fatura satır başına yazılıyor: tablo büyüdükçe kutu da pahalılaşıyor. İnternetin tam tablosunu taşıyan büyük router’ların çoğu bu yüzden TCAM’i yalnızca bir kısım için kullanıyor, geri kalanını ağaç biçimli algoritmik aramalarla sıradan belleğe sığdırıyor.
Kuralın bir de sınırı var: geleneksel iletme yalnızca hedef adrese bakar, oysa karar başlıktaki başka alanlara da bağlanabilir. Bu genişlemeyi 43. bölümde, kontrol düzlemi kutudan söküldüğünde akış kurallarıyla birlikte açacağız.
Paketi çıkışa kim taşıyor?
Anahtarlama hızı, paketlerin girişlerden çıkışlara aktarılabildiği hızdır ve genellikle hat hızının katı olarak ölçülür. N girişli bir router’da istenen değer hat hızının N katıdır. Dokunun üç ana türü var.
Birincisi bellek üzerinden anahtarlama. İlk kuşak router’lar sıradan bilgisayarlardı; anahtarlama doğrudan işlemcinin denetimindeydi ve paket sistem belleğine kopyalanıyordu. Her datagram veri yolunu iki kez geçtiği için hızı bellek bant genişliği sınırlıyordu.
İkincisi ortak veri yolu üzerinden anahtarlama. Darboğaz yolun kendisidir: aynı anda tek paket geçebildiği için hız veri yolunun bant genişliğine takılır; buna yol çekişmesi denir. Örnek bir erişim router’ında bu tavan 32 Gbit/s’lik bir veri yoludur.
Üçüncüsü ara bağlantı ağı. Büyük bir switch, daha küçük switch’lerin birkaç aşamasından kurulur; çapraz çubuk ve Clos ağları bu aileye girer. Fikir de yeni değildir. Clos ağının adı, 1953’te bu düzeni telefon santralleri için öneren Bell Labs mühendisi Charles Clos’tan geliyor; aynı fikir sonra çok işlemcili bilgisayarlarda işlemcileri bağlamak için kullanıldı. Bugünkü veri merkezlerinin leaf-spine ağları da onun bina ölçeğindeki hâli.
Paralelliği kullanmanın bir bedeli var. Datagram girişte sabit uzunlukta hücrelere bölünür, hücreler dokudan geçirilir ve çıkışta yeniden birleştirilir. Doku değişken boyutlu paketi değil, eşit boyda parçaları taşıyor.
Ölçeklenmenin yolu ise dokuyu çoğaltmak. Örnek bir taşıyıcı router’ın temel birimi 8 anahtarlama düzlemi. Her düzlem üç aşamalı bir ara bağlantı ağı; toplam kapasite yüzlerce Tbit/s’ye çıkıyor.
Kuyruk kutunun neresinde oluşuyor?
Kuyruk kutunun içinde iki ayrı noktada birikebilir ve ikisinin sebebi ayrıdır.
Doku, giriş portlarının toplamından yavaşsa kuyruk giriş tarafında oluşur ve tampon taşarsa gecikme ile kayıp doğar. Bir de çıkış portu çekişmesi var: aynı çıkışa giden iki datagramdan yalnızca biri aktarılabilir, öbürü bekler.
Bekleyen paket kuyruğun önündeyse arkasındakileri de durdurur. Baş engellemesini 15. bölümde application layer’da görmüştün; burası aynı kusurun donanımdaki karşılığı. Öndeki paket başka bir çıkış için beklerken, arkasındakinin gideceği çıkış çoktan boşalmış olabilir. Yine de kımıldayamaz. Bugünkü büyük router’lar bunu her giriş portunda her çıkış için ayrı bir kuyruk tutarak çözüyor (virtual output queue); öndeki paket beklerken başka çıkışa gidenler kendi kuyruklarından akabiliyor.
Çıkış tarafındaki kuyruğun sebebi bunun tersi. Doku hattan hızlı çalışıyorsa datagramlar çıkış portuna, hattın iletim hızından daha hızlı gelir. Orada biriken şey bu hız farkının kendisi.
Tampon dolduğunda iş politikaya dönüşüyor. Hangi datagramın atılacağı bir düşürme politikasıdır. Hangi paketin sıradaki olarak gönderileceği ise ayrı bir zamanlama disiplinidir. İkisini de 40. bölümde açacağız.
2. bölümde gecikmenin dört bileşenini ayırmış, kuyruk gecikmesini tek başına bırakmıştık. Artık o kuyruğun fiziksel yerini biliyorsun. Paketin başına gelen şey yolun uzunluğu değil, bu kutunun içindeki doluluk.
Özet
- İletme yerel bir iştir: karar tek bir kutunun içinde, giriş portuna gelen datagramın hangi çıkışa verileceği sorusuyla sınırlıdır.
- Arama girişte yapılır: tablonun kopyası her giriş portunda durduğu için port, eşleştir ve uygula adımlarını merkeze sormadan yürütür.
- En uzun önek kazanır: aynı adrese birden çok satır uyabilir ve seçilen, daha çok bit sabitleyen satırdır; varsayılan satır sıfır bitle her yarışı kaybeder.
- Administrative distance ile metrik ayrı işler yapar: ilki hangi kaynağa güvenileceğini, ikincisi aynı kaynağın hangi yolunun kısa olduğunu seçer.
- Tek bir paket üç arama gerektirir: hedef için önek eşleşmesi, bir sonraki durak için özyinelemeli arama, komşunun donanım adresi için de adres çözümlemesi.
- IP sabit kalır, MAC her atlamada değişir: IP adresleri yolculuğun iki ucunu adlandırır, MAC adresleri ise yalnızca içinde bulunduğu kablonun iki ucunu.
- Doku hattan hızlı olmak zorundadır: N girişli bir kutuda istenen anahtarlama hızı hat hızının N katıdır ve bu hız ancak paralel bir iç ağla kurulur.
- Kuyruk kutunun içinde doğar: doku yavaşsa girişte, hat yavaşsa çıkışta birikir ve baş engellemesi boş bir çıkışı bile bekletebilir.
Router hedefi buldu, paketi doğru çıkışa verdi ve orada bir kuyruk buldu. Ama o kuyrukta bekleyen tek paket değil: aynı anda gelen bin paketten hangisinin önce çıkacağına hâlâ birileri karar veriyor. O kararı kim veriyor ve hangi ölçüye göre?
40. bölüme devam et: Kuyruk Yönetimi