Ana içeriğe geç

Bölüm 35: Hareketlilik ve Aktarma

11 dakikalık okumaGüncelleme:

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 5: Havada ve Evde (Bölüm 30-36)

Tüm bölümler
  1. Giriş
  2. Adres Çubuğundan İsteğe
  3. Paket Anahtarlamalı Yol
  4. İsimden Adrese
  5. DNS Kayıtları
  6. Önbellek, Tazelik ve Güven
  7. Port Numarası ve Soket
  8. Bağlantısız Taşıma: UDP
  9. Üç Adımlı El Sıkışma
  10. Simetrik Şifreleme
  11. Açık Anahtarlı Kriptografi
  12. TLS El Sıkışması
  13. Sertifika Zinciri
  14. HTTP Mesajının Anatomisi
  15. Durum, Çerez ve Oturum
  16. HTTP/2'den HTTP/3'e
  17. İçerik Dağıtım Ağları
  18. Diğer Uygulama Protokolleri
  19. Katmanlı Mimari
  20. Hizmet ve Protokol
  21. Encapsulation ve Başlıklar
  22. Paket Yakalama ve Çözümleme
  23. Ağ Interface Kartı
  24. Fiziksel Adresleme
  25. Hata Sezme ve CRC
  26. Adres Çözümleme: ARP
  27. Ortam Erişimi: CSMA/CD
  28. Switch'ler
  29. Ağ Topolojileri
  30. Sanal Yerel Ağlar
  31. Kablosuz Erişim: 802.11
  32. Radyo Kanalı ve Kapasite
  33. Kablosuz Ağ Güvenliği
  34. Hücresel Ağlar
  35. Spektrum ve Kuşaklar
  36. Hareketlilik ve Aktarma
  37. Adres Kiralama: DHCP
  38. Adresin Anatomisi
  39. Adres Tükenmesi ve IPv6
  40. Router Mimarisi
  41. Kuyruk Yönetimi
  42. Cihaz Yapılandırma
  43. Routing Protokolleri
  44. Kontrol Düzlemi ve SDN
  45. Ağ İzleme ve Yönetimi
  46. Alanlar Arası Routing
  47. Adres Çevirisi
  48. Ara Kutular
  49. Tünelleme ve IPsec
  50. Firewall'lar
  51. Ağ Saldırıları
  52. Operatör ve Metro Ağları
  53. Bitten Sinyale
  54. Sembol Hızı ve Kanal Kapasitesi
  55. Multiplexing Teknikleri
  56. İletim Ortamları
  57. Bakır Kablo Sonlandırma
  58. Fiber Sonlandırma
  59. Fiber Optik İletim
  60. Bakır Erişim Ağı: DSL
  61. DSL'de Hız ve Mesafe
  62. Pasif Optik Ağlar
  63. Kablo Erişim Ağları
  64. Kablo Modem ve CMTS
  65. Denizaltı Kabloları
  66. Veri Merkezi Ağları
  67. Encapsulation Çözme
  68. Güvenilir Aktarım
  69. Tıkanıklık Denetimi
  70. Trafik Çözümleme
  71. Gecikme Bütçesi
  72. Soket Programlama
  73. Eşten Eşe ve Protokol Tasarımı
  74. Uyarlanır Video Akışı
  75. Gerçek Zamanlı Ses ve Görüntü
  76. Kablosuz Sensör Ağlarının Mimarisi
  77. Sensör Ağlarında Ortam Erişimi
  78. Sensör Ağlarında Yönlendirme ve IP
  79. Zaman Eşitleme ve Konum Bulma
  80. Sensör Ağı Uygulamaları
  81. Mobil Kablosuz Sensör Ağları
  82. Son Söz

Otobüs kalkıyor ve sayfayı yeni açtın. Birkaç yüz metre sonra bağlandığın hücre değişecek, ama isteğin kopmayacak.

Kopmamasının sebebi şans değil. Hücreler arasında el değiştirmek yönetilen bir iş. Peki o devri kim yönetiyor?

Yer değiştirmek adresi neden bozuyor?

Hareketlilik tek bir durum adı taşımıyor; dört kademeli bir yelpaze oluşturuyor ve her kademenin bedeli farklı.

kademene oluyorzorluk
yerinde duruyorsunhiçbir şey değişmiyoryok
kapanıp başka ağda açılıyorsuntaşınacak oturum yokdüşük
aynı sağlayıcının hücreleri arasında geziyorsunaçık oturum taşınıyororta
sağlayıcı ağları arasında geçiyorsunoturum ve kimlik birlikte taşınıyoryüksek

Yelpazenin kolay ucunda ayakta tutulacak bir şey yok. Cihaz yeni yerde sıfırdan bağlanıyor. Zorluk oturum açıkken yer değiştirmekten doğuyor. Tablonun hiç kapsamadığı bir durum da var: ortada ne baz istasyonunun ne access point’in olduğu, her cihazın hem uç hem router olduğu ağlar. Onlara 80. bölümde döneceğiz.

Kökü de adreste. Her IP adresi iki parça taşıyor: birinci parça hangi ağda olduğunu, ikinci parça o ağın neresinde olduğunu söylüyor; ayrıntısını 37. bölümde açacağız. Adres yer bilgisi taşıdığı için yer değiştiren, adresini de değiştirmek zorunda kalıyor.

Bu tek başına felaket sayılmaz. Felaket, üstteki katmanın o adrese yaslanmasıyla başlıyor. 6. bölümde gördüğümüz gibi bir TCP bağlantısı soket four-tuple’ıyla tanınıyordu: kaynak IP, kaynak portu, hedef IP, hedef portu. Four-tuple’ın herhangi bir üyesi değişirse alıcı gelen segmenti aynı sokete yönlendiremiyor. Bağlantı kopmuş sayılıyor.

Somut bir vakaya bakalım. Tarayıcın 203.0.113.9:51820 adresinden 192.0.2.30:443 sunucusuna bağlandı. Başka bir alt ağa geçtiğin anda cihaza 198.51.100.7 düşüyor. Four-tuple’ın ilk üyesi değişti, kalan üçü aynı kaldı. Sunucudaki tabloda bu yeni four-tuple’ın karşılığı yok. Gelen segment bir sokete değil, bir RST yanıtına gidiyor.

Buradan yalnızca iki çıkış var. Ya ağ değişikliği gizler ve üst katman adresin değiştiğini hiç görmez, ya da bağlantı adresle tanınmaktan vazgeçer. Hücresel ağ birinci yolu seçti, QUIC ikinciyi.

Aktarmayı kim başlatıyor?

Aktarma (handover), cihazın ağa bağlanma noktasının değişmesi. Cihaza giden veri flow’u, yani aynı konuşmaya ait paketlerin akışı, kaynak baz istasyonundan hedef baz istasyonuna aktarılıyor. Gerekçesi her zaman zayıflayan sinyal olmuyor. İkinci gerekçe yük: hedef daha az cihaz ve daha az trafik taşıyorsa karar onun lehine çıkabiliyor.

Bir hücresel baz istasyonu kulesinin tepesi: dikdörtgen panel antenler farklı yönlere bakacak biçimde direğe dizilmiş. Her panelin baktığı yön ayrı bir hücre demek; yürürken bağlantın bu panellerden biriyle diğeri arasında devrediliyor.

Kararı veren de cihaz değil. Hâlâ bağlı olduğun kaynak baz istasyonu hedefi seçiyor ve ona bir Handover Request iletisi gönderiyor. Cihazın işi ölçmek. Ölçtüğü şey 33. bölümdeki CQI değil: CQI hangi modülasyonun seçileceğini söylüyordu. Aktarma için cihaz kendi hücresinin ve komşularının referans sinyali gücünü (RSRP) ölçüp raporluyor.

Rapor da basamaklı: LTE’de RSRP -140 ile -44 dBm arasında, 1 dB’lik adımlarla 98 seviyeye bölünüyor. Ölçmenin bir de bedeli var. Başka frekanstaki bir komşuyu ölçmek için cihaz kendi hücresini kısa aralıklarla dinlemeyi bırakıyor; şebeke bu ölçüm boşluklarını önceden planlıyor ve o sırada cihaza veri göndermiyor.

Gelen rapor tek başına aktarmayı başlatmaya yetmiyor. Cihaz komşu hücreyi kendi hücresinden bir tık iyi buldu diye karar tetiklenmiyor; komşunun belirgin biçimde iyi olması ve bu üstünlüğün bir süre devam etmesi aranıyor. 3GPP bu kurala A3 olayı diyor. Aradaki paya histerezis, beklenen süreye time-to-trigger deniyor. İkisi olmasa iki hücrenin sınırında duran bir telefon aralarında gidip gelirdi ve her gidiş gelişte yeni bir aktarma yükü doğardı; sahadaki adı ping-pong aktarma.

Hedef baz istasyonu, cihaz daha oraya geçmeden radyo zaman dilimlerini ayırıyor ve cihazın yeni hücrede kullanacağı ayarları taşıyan bir Handover Request Acknowledge ile yanıt veriyor. Yer önce hazırlanıyor, cihaz sonra taşınıyor.

Sıranın her adımının bir adı var. Ölçüm raporu, aktarma isteği ve isteğin onayı; ardından cihaza giden RRC yeniden yapılandırma iletisi. Cihazı asıl yerinden oynatan ileti bu. Cihaz yeni istasyona tutununca bir yeniden yapılandırma tamam iletisi dönüyor. Hedef de kaynağa aktarmanın başarılı olduğunu bildiriyor.

Asıl incelik kaynak tarafta. Kaynak baz istasyonu cihaza doğrudan göndermeyi bıraktığı anda elindeki datagramları atmıyor; onları hedefe iletiyor, hedef de radyo kanalından cihaza ulaştırıyor. Cihaz iki istasyon arasında havadayken hedef o veriyi tamponda bekletiyor. Kaybı önleyen şey bu ileri aktarım (data forwarding).

Cihaz açısından iş burada bitmiş sayılıyor. Yeni istasyondan gönderebildiği anda aktarma tamamlanmış görünüyor. Oysa çekirdek tarafındaki yol hâlâ eski istasyona bakıyor.

Devrin hangi adımda kimin elinde olduğunu izleyelim:

Bir aktarmanın sırası: ölçümden çekirdekteki yol değişikliğine
cihazUEkaynakbaz istasyonuhedefbaz istasyonuçekirdekUPF ve SMFölçüm raporu · RSRPHandover RequestRequest Ack · yer ayrıldıayrıl ve hedefe tutunbiriken datagramlarkesinti yalnızca ayrıl-tutun aralığındatünelin ucu değişirtamamlandı, serbest bırak
Ölçüm raporu gider. Cihaz kendi hücresinin ve komşularının referans sinyali gücünü (RSRP) ölçüp kaynak baz istasyonuna raporluyor. Karar bu ölçümle besleniyor; modülasyonu seçen CQI bu işe karışmıyor.
  1. Ölçüm raporu gider. Cihaz kendi hücresinin ve komşularının referans sinyali gücünü (RSRP) ölçüp kaynak baz istasyonuna raporluyor. Karar bu ölçümle besleniyor; modülasyonu seçen CQI bu işe karışmıyor.
  2. Kaynak hedefi seçer. Kararı cihaz vermiyor. Hâlâ bağlı olunan kaynak baz istasyonu hedefi seçiyor ve ona bir Handover Request iletisi gönderiyor.
  3. Hedef yeri hazırlar. Hedef, cihaz daha gelmeden radyo zaman dilimlerini ayırıyor ve cihazın yeni hücrede kullanacağı ayarları taşıyan bir Handover Request Acknowledge ile yanıt veriyor.
  4. Cihaz el değiştirir. Cihaz kaynaktan ayrılıp hedefe tutunuyor. Kaynak elindeki datagramları atmıyor, hedefe iletiyor; hedef de cihaz gelene kadar onları tamponda bekletiyor.
  5. Çekirdek yolu değiştirir. Radyo tarafı bitince tünelin ucu yeni baz istasyonuna çevriliyor. Hedef tamamlandığını bildirince kaynak taraf ayırdığı radyo kaynaklarını serbest bırakıyor.

Bu sıranın ne kadar sık tekrarlandığını hücrenin boyutu belirliyor. Yukarı bantlar kapsamayı daraltıyordu; hücre küçüldükçe aynı yolda daha çok aktarma oluyor. 300 m yarıçaplı, yani 600 m çaplı bir hücreyi 5 km/sa hızla yürüyen biri 432 saniyede, yani 7,2 dakikada kat ediyor. Aynı hücre 100 km/sa giden bir araç için 21,6 saniyeye iniyor.

Bağlantı koparak mı devrediliyor, kopmadan mı?

Aktarmanın nasıl yapıldığının iki klasik cevabı var ve aralarındaki fark tek bir sözcükte: sıra.

Sert aktarma (break-before-make) önce eski bağı bırakır, sonra yenisini kurar. Arada kısa bir boşluk oluşur. Basit, ucuz ve tek bir radyo yeter: cihaz aynı anda iki hücreyle konuşmak zorunda değil. Bedeli o boşluk.

Soft handover (make-before-break) tersini yapar: yeni bağ kurulmadan eskisi bırakılmaz. Geçiş süresince cihaz iki hücreyle birden konuşur ve aynı veriyi iki yoldan alır. Boşluk yoktur; karşılığında şebeke aynı veriyi iki hücreden göndermek için iki kat kaynak ayırır. Farklı frekanslardaki iki hücreyi aynı anda dinlemek cihaza iki ayrı radyo zinciri gerektirirdi. 3G’nin kod bölmeli tasarımında ise komşu hücreler aynı frekansı kullandığı için tek alıcı iki hücrenin sinyalini birleştirebiliyordu; soft handover orada ucuzdu.

LTE ve 5G sert aktarmaya döndü, ama boşluğu neredeyse görünmez kılarak. Hazırlığın tamamı kesinti başlamadan önce yapılıyor:

  1. Cihaz komşu hücrelerin sinyal gücünü sürekli ölçüp kaynak baz istasyonuna raporluyor.
  2. Kaynak, hedef baz istasyonuyla doğrudan konuşup yer ayırtıyor. İki baz istasyonu arasındaki bu interface’in adı LTE’de X2, 5G’de Xn; trafik çekirdek ağa hiç uğramıyor.
  3. Kaynak, cihaza “şu hücreye geç” komutunu yolluyor.
  4. Cihaz yeni hücreye bağlanırken, kaynakta biriken paketler hedefe tünellenerek aktarılıyor. Böylece geçiş anında sırada bekleyen veri kaybolmuyor.

Kalan kesinti tipik olarak on milisaniyeler mertebesinde ve bir görüşmede duyulmuyor. Ama hâlâ sıfır değil. Üstelik en kritik anda, sinyal zayıfken, o komutun cihaza ulaşması gerekiyor. 3GPP’nin Release 16’sı buna iki cevap getirdi. Koşullu aktarmada şebeke hedefi ve tetikleyici koşulu önceden cihaza veriyor; cihaz koşul sağlandığında komut beklemeden kendisi geçiyor ve karar anındaki gidiş-dönüş ortadan kalkıyor. İkinci cevap soft handover’ın bir akrabası: cihaz yeni hücreye bağlanırken eskisinden veri almayı sürdürüyor ve kesinti sıfıra iniyor (DAPS). Bedeli yine iki bağlantıyı aynı anda taşıyabilen bir cihaz.

Çekirdek neden yerinde duruyor?

Radyo tarafı değişirken sabit duran bir taraf var. Cihazın her veri oturumuna bir UPF atanıyordu; o UPF cihazla internet arasında röle gibi çalışıyor ve trafiği N3 interface’inde tünelliyordu. İnternetin gördüğü sabit nokta orası.

Aktarmada değişen şey de cihazın adresi değil, o tünelin ucu. Radyo tarafı bittikten sonra SMF, UPF’ye tünelin ucunu yeni hedef baz istasyonu olacak biçimde değiştirmesini söylüyor. Hedef, aktarmanın tamamlandığını kaynağa bildirince kaynak taraf ayırdığı radyo kaynaklarını serbest bırakıyor.

Çekirdek yarısının da kendi ileti sırası var. Hedef istasyon çekirdeğe bir yol değiştirme isteği yolluyor, çekirdek PDU oturumunu güncelliyor ve isteği onaylıyor. Eski yola en sonda bir veri sonu işareti düşüyor. O işaretten sonra o tünelden veri gelmiyor. Kaynak istasyona giden son ileti cihaz bağlamını kapatıyor.

Adres vererek bakınca daha keskin. Cihazın adresi 203.0.113.9, UPF’nin adresi 198.51.100.5, kaynak baz istasyonu 198.51.100.20 ve hedef istasyon 198.51.100.21. İnternetteki gönderen 192.0.2.30 olsun. İki zarfı yan yana koyalım:

önce   dış zarf: 198.51.100.5 -> 198.51.100.20   iç zarf: 192.0.2.30 -> 203.0.113.9
sonra  dış zarf: 198.51.100.5 -> 198.51.100.21   iç zarf: 192.0.2.30 -> 203.0.113.9

İç zarfta tek bir bayt bile oynamıyor. Gönderen tarafta bu devri gösteren hiçbir iz yok.

Tünelin ucu neden hep aynı kutuda kalıyor? Çünkü UPF yalnızca röle değil. Politika uygulaması, yasal dinleme, trafik kullanım ölçümü ve hizmet kalitesi denetimi de orada yürüyor. Bunların hepsi flow’un tamamını tek noktadan görmeyi istiyor. Çapayı oynatmak, bu dört işi birden taşımak demek olurdu.

Zaman çizgisi bu yüzden iki yarıya bölünüyor: önce radyo erişim ağındaki ayrılma ve tutunma, sonra çekirdekteki yol değiştirme. Cihaz için kesinti yalnızca ilk yarıdaki ayrıl-tutun aralığı.

Cihazın nerede olduğunu AMF takip ediyor: sen hücre değiştirirken ağa tutunmanın ve erişim yetkinin sürmesinin kaydını o tutuyor. Bir operatörde tek bir çekirdek ağ çok sayıda radyo erişim ağına hizmet ediyor.

Yelpazenin en zor ucunda sağlayıcı da değişiyor. Hücresel dünyada kimliğin bir kullanıcı adı taşımıyor, bir abonelik taşıyor: parasını ödediğin bir ev ağın var ve seni asıl tanıyan orası. 33. bölümde karşılaştırmayı ev tarafı yapıyor ve ziyaret edilen ağa yalnızca anchor key gönderiliyordu. 5G’nin getirdiği fark tam burada: 4G’de aynı karşılaştırma ziyaret edilen ağın kendisinde yapılıyordu.

Dolaşımda trafiğin nereden internete çıktığı da çapa fikrinin bir sonucu. Varsayılan düzende trafik ziyaret edilen ağdan ev ağındaki UPF’ye kadar tünelleniyor ve internete oradan çıkıyor (home routing). Yurt dışında dolaşımdayken IP adresinin hâlâ Türkiye’de görünmesinin ve bazı yerli hizmetlerin çalışmayı sürdürmesinin sebebi bu.

Wi-Fi aynı sorunu neden ucuza çözüyor?

Hücresel tarafın bunca iş yapmasının sebebi, şehir ölçeğinde binlerce baz istasyonu arasında dolaşırken adresi sabit tutmak zorunda olması. 802.11 ise dolaşımı tek bir alt ağın içinde, data link layer’da ele alıyor. Üst katmanlar olan bitenden habersiz kalıyor.

30. bölümde gördüğümüz genişletilmiş hizmet kümesinin içinde access point değiştirirken IP adresi değişmiyor; komşuya geçmek ilişkilendirmeyi ve anahtarları yenilemek demek. Asıl yavaşlık kimlik doğrulamada: kurumsal ağda her geçişte 802.1X’i baştan koşturmak yüzlerce milisaniye sürebilir. Dolaşımı hızlandıran üç ek çalışma grubunun kendi tarihi var: 802.11k-2008 komşu ölçümünü, 802.11r-2008 önceden hazırlanmış anahtarlarla hızlı yeniden kimlik doğrulamayı, 802.11v-2011 ise ağın cihaza aday access point önermesini getirdi.

Hücreselden bir farkı daha var: Wi-Fi’da geçme kararını ağ değil cihaz veriyor. “Yapışkan istemci” denen dert buradan çıkıyor; cihaz yakındaki güçlü access point’e geçmek yerine uzaktaki zayıf sinyale tutunmayı sürdürebiliyor. 802.11k ve 802.11v kararı cihazın elinden almıyor, yalnızca ona bilgi veriyor.

Bu iddiayı kendi makinende birkaç komutla doğrulayabilirsin. Windows’ta netsh wlan show interfaces, Linux’ta iw dev wlan0 link bağlı olduğun access point’i yazıyor:

    SSID                   : kampus-ag
    AP BSSID               : 00:00:5e:00:53:0b

Binanın öbür ucuna yürü ve komutu tekrarla. SSID satırı aynı, BSSID satırı başka. ipconfig ya da ip addr ile baktığında IPv4 adresin de değişmemiş olacak.

Ucuzluğun sınırı da burada. Alt ağın kenarını geçtiğin anda adresin değişiyor ve data link layer’ın hilesi bitiyor.

Adres değişince bağlantı neden ölmüyor?

İkinci çıkış yolu bağlantıyı adresten koparmak. 15. bölümde QUIC bağlantıyı four-tuple’la değil bir bağlantı kimliğiyle tanıyordu ve buna bağlantı göçü deniyordu. Kimliğin birincil işi, alt katmanlardaki adres değişikliklerinin paketleri yanlış uca göndermesini engellemek.

Kimliğin bir de boyu var. QUIC sürüm 1’de connection ID en çok 20 bayt tutuyor. Daha uzununu gören uç paketi düşürmek zorunda.

Değişikliklerin hepsi kasıtlı da değil. NAT yeniden bağlama, 46. bölümde göreceğimiz adres çeviren kutunun flow’a yeni bir çıkış portu ya da yeni bir çıkış adresi vermesiyle oluyor. Uç, karşı tarafın adresinde herhangi bir değişiklik sezerse path validation yapmak zorunda.

Path validation, yeni adresten gelen paketlerin sahte kaynak taşımadığını sınıyor. Gönderen, tür kodu 0x1a olan PATH_CHALLENGE frame’inin 8 baytlık veri alanına 64 bitlik rastgele bir değer koyuyor. Alıcı aynı veriyi taşıyan bir PATH_RESPONSE üretmek zorunda. Datagram ayrıca en az 1.200 bayta genişletiliyor, böylece yeni yolun bu boyutu taşıyabildiği de sınanmış oluyor. Gerçek yük datagramın %0,67’si, kalanı dolgu.

Göç serbest de değil. El sıkışma doğrulanmadan göç başlatılamıyor ve başlatma sorumluluğu istemcide. Sunucu, bir istemci adresinden yoklama dışı paket görmeden o adrese yoklama dışı paket göndermiyor. Bu sınama tek yönü kanıtlıyor; ters yönü karşı taraf kendi başına yapıyor.

Doğrulama bitince uç, tıkanıklık denetleyicisini ve RTT kestiricisini yeni yol için başlangıç değerlerine sıfırlamak zorunda. Tek istisna yalnızca portun değiştiği durum; o genelde NAT yeniden bağlamasıdır ve eski durum korunabiliyor. Bir kural daha var. Uç, birden fazla yerel adresten gönderirken aynı connection ID’yi yeniden kullanamıyor. Sebep gizlilik: sabit bir kimlik, pasif bir gözlemcinin iki ayrı ağdaki etkinliği aynı kişiye bağlamasına izin verirdi.

DerinleşmeMobil IP yirmi yıl uğraştı, QUIC nasıl bu kadar ucuza çözdü?

Network layer’ının bu soruya verdiği eski cevabın adı mobil IP; ilk hâli 1996’da RFC 2002 olarak yayımlandı ve çekirdek fikri iki adres. Ev adresi, düğüm internete nereden bağlanırsa bağlansın değişmiyor. Ziyaret adresi ise düğümün o an bulunduğu yeri gösteriyor. Üst katman ev adresini görüyor, ağ ziyaret adresini kullanıyor.

Bunu yürütmek için ağda iki yeni rol gerekiyordu. Ev aracısı (home agent), düğümün ev ağındaki bir router; düğüm evden uzaktayken datagramları ona tünelleyerek ulaştırıyor. Yabancı aracı (foreign agent) ise ziyaret edilen ağdaki router ve kayıtlı düğüme routing hizmeti veriyor. İkisi de altyapı demek: çözümün çalışması için yolun her iki ucundaki router’ların bu işi bilmesi gerekiyor.

Bedeli yolda da ödeniyor. Karşı taraftan gelen her paket önce ev aracısına, oradan düğüme gidiyor; düğüm sunucuyla aynı şehirde olsa bile trafik ev ağına uğrayıp dönüyor. Adı üçgen routing. Hücreselin UPF çapası da aslında aynı fikrin akrabası: sabit bir çapa ve ona giden bir tünel. Farkı, çapanın operatörün kendi ağında durması ve internetteki hiçbir router’ın bir şey bilmesinin gerekmemesi.

QUIC’in kolaylığı zekâsından değil, durumun nerede durduğundan geliyor. Bağlantı durumu uçlarda; ağdaki hiçbir kutunun bir şey bilmesi gerekmiyor. Üstelik QUIC’te güvenilirlik, tıkanıklık denetimi, kimlik doğrulama ve şifreleme durumu tek bir gidiş-dönüşte kuruluyor. Yani bağlantıyı yeniden kurmanın bedeli zaten bir gidiş-dönüş; bağlantı göçü o bedeli de ödememeyi sağlıyor.

Özet

  • Hareketlilik bir yelpaze: kapalı cihazı taşımak bedava, açık oturumu taşımak pahalı; pahalı olanın kökü adresin yer bilgisi taşımasıdır.
  • Aktarmayı kaynak yönetir: hedefi seçen ve isteği gönderen kaynak baz istasyonudur, cihaz komşuların sinyal gücünü ölçüp raporlar. Wi-Fi’da ise karar cihazındır.
  • Yer önce hazırlanır: hedef radyo dilimlerini cihaz gelmeden ayırır ve kaynak biriken datagramları atmak yerine hedefe iletir.
  • Çekirdek yerinde durur: aktarmada değişen şey UPF’ye giden tünelin ucudur, cihazın adresi değil.
  • Connection ID adresin yerini alır: QUIC bağlantıyı four-tuple’la tanımadığı için adres değişse de bağlantı yaşar, ama yeni yol önce doğrulanır.

Yer değiştirirken bağlantının neden ayakta kaldığını artık iki ayrı katmanda izleyebiliyorsun. İkisinin de dayandığı şey aynı: cihazın elinde bir adres olması. Telsiz de olsan telli de olsan bağlandın; peki bağlanır bağlanmaz aldığın o adresi sana kim verdi?

36. bölüme devam et: Adres Kiralama: DHCP