Bölüm 65: Veri Merkezi Ağları
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 9: Karşı Tarafta ve Dönüşte (Bölüm 65-70)
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
Okyanusu geçen istek bir binanın kapısından girdi. O binanın içini şimdiye kadar tek bir kutu gibi çizdim; perdeyi kaldırıyorum.
İçerideki ağ dışarıdakine benzemiyor. Tek bir isteği karşılamak için makineler yan odadaki komşularıyla konuşuyor. Bu ağ neye göre kuruluyor?
Rafın tepesindeki kutu oraya kabloyla kondu
Veri merkezi, on binlerce makineyi aynı çatı altında ve birbirine yakın çalıştıran bir tesistir. Bu yakınlık tesisin en temel tasarım kararı. Makineler birbirine bağımlı çalışıyor ve aralarındaki her metre gecikmeye yazılıyor.
Fiziksel birim raftır. Bir rafa kaç sunucu gireceğini güç, soğutma ve 42 birimlik yükseklik belirliyor; tipik bir rafta 20 ile 40 sunucu durur. Bir rafı kalabalık bir mahalle gibi düşünebilirsin. Bu mahallenin ağa açılan kapısı tepedeki top-of-rack switch’tir, kısaca ToR. Adı yerinden geliyor: rafın üstü. Altındaki sunuculara 25 Gbit/s ile 400 Gbit/s arasında Ethernet bağlantılarıyla iner.
Kutuyu tepeye koymanın sebebi kabloda. 42 birimlik bir kabinet 44,45 mm’lik kırk iki dilim, yani yaklaşık 1,87 metre yükselir. Doğrudan bağlantı bakır kablosu ise 1 ile 7 metre arasında satılır. Tepeden inen 3 metrelik pasif bir kablo kabinetin her sunucusuna yetişiyor; 7 metrelik olanı bile komşu sıraya geçemiyor. Switch’in neden ortada değil de tepede durduğunu bu iki sayı açıklıyor. Hız arttıkça bakırın boyu da kısalıyor: 55. bölümdeki skin effect yüzünden 400 Gbit/s’te pasif kablo birkaç metrede kalıyor.
28. bölümdeki yapısal kablolamanın yatay ve dikey dağıtımı tanıdık; veri merkezinde o dikey dağıtımın tamamı tek bir kabinetin içine sığıyor.
O kablonun kendisi de bu tesise özgüdür: 55. bölümde gördüğün DAC. Fiberdeki SFP+ modülünün aynısını takar ama içindeki pahalı lazerleri bırakır. İki ucundaki modüllerle birlikte sabit boyda satılır; ucundan kesip uzatamazsın. 10 Gbit/s’lik sürümünün adı 10GSFP+Cu; IEEE 802.3’te değil, üreticilerin ortak belgelerinde (multi-source agreement, MSA) tanımlı.

Bir portun dörde bölündüğü de oluyor. Tek bir QSFP+ portu ya 40 Gbit/s’lik tek bir interface olur ya da dört bağımsız 10 Gbit/s interface’e ayrılır. Sebebi şeritlerdir. 40 Gbit/s sinyalinin her şeridi zaten tek başına 10 Gbit/s standardının aynısıdır. Ayırmayı bir ucu tek, öbür ucu dört modüllü breakout kablosu yapar. Bugün aynı hile 400 Gbit/s’lik bir portu dört 100 Gbit/s’e bölüyor.
Üç kat neden ikiye indi
Rafların üstündeki düzen uzun süre üç katlıydı. Her toplama switch’i altındaki yaklaşık on altı ToR switch’i topluyordu. Her çekirdek switch’i de yaklaşık on altı toplama switch’ini topluyordu. Dışarıya çıkış sınır router’larından oluyordu.
Bu miras kampüs ağından geldi: çekirdek, dağıtım ve erişim. Kampüsün sert kuralı da beraberinde geldi. En alttaki switch’ler yalnızca dağıtım katmanına bağlanır, birbirine bağlanmaz. Yatay yollar açmak dokuyu karmaşık bir örgüye çevirir.
Modern doku iki katlıdır. Aşağıda aynı ToR switch’ler duruyor; iki katlı düzende onların adı leaf (yaprak) oluyor. Yukarıda ise yalnızca leaf’leri birbirine bağlayan spine (omurga) switch’leri var. Kaybolan kat, gecikmenin ve karmaşıklığın büyük kısmını da götürüyor. Fikir yeni değil: 39. bölümde Charles Clos’un 1953’te telefon santralleri için kurduğu çok katlı dokuyu görmüştün; leaf-spine onun Ethernet’teki hâli.
Kazancı saymak kolay. İki katlı dokuda en uzun yol leaf, spine, leaf eder: üç switch. Üç katlı hiyerarşide aynı yol erişim, toplama, çekirdek, toplama, erişim eder: beş switch. Üstelik leaf-spine’da bu sayı her sunucu çifti için aynıdır.
Bağlantı derecesi de küçük kalmıyor. Facebook’un (bugün Meta) 2019’da tanıttığı F16 dokusunda her leaf on altı doku switch’ine bağlanır. Her doku switch’i de on altı spine switch’ine bağlıdır. Leaf tek bir üst kata değil, on altı ayrı kutuya birden asılıdır.
Bütün bunların sebebi trafiğin yön değiştirmesidir. Bir sayfa isteği içeride onlarca servise dağılıyor ve o servisler birbirini çağırıyor. Baskın akış dışarıya inen dikey trafik olmaktan çıkıp raflar arasında yatay akan doğu-batı trafiğine dönüşüyor. Yerleştirme de bu yüzden bir ağ kararıdır. İlişkili servisler ve veriler aynı rafa ya da komşu rafa konur. Üst kata çıkan yük böyle azalır.
Dikeyde kalan kısım sınır router’larından binayı terk ediyor. 64. bölümde ağlar internet değişim noktalarında birbirine dokunuyordu; bu tesisin dış kapısı da oraya açılıyor.
- bölümde bir router’ın içindeki anahtarlama dokusunu açmıştık; burada aynı fikir kutu ölçeğinden bina ölçeğine büyütülmüş durumda.
Aynı çift arasında altı yol açık
Zengin ara bağlantının iki ayrı kazancı var. Raflar arası throughput artıyor, çünkü aynı iki raf arasında birden çok routing yolu var. İkincisi yedekliliktir: o yolların ortak hiçbir bağlantısı yoktur. Bir spine ya da bir kablo ölünce trafik komşu yola kayıyor.
Yol sayısını spine sayısı belirler. Leaf’inde altı upstream bağlantısı taşıyan bir dokuda altı spine vardır. Her leaf hepsine birden bağlıdır. İki leaf arasında da altı eşit maliyetli yol açık kalır (43. bölümdeki ECMP). Trafik bu yollara flow flow dağıtılır: switch 49. bölümdeki five-tuple’ın özetini alır ve aynı flow’u hep aynı yola koyar, böylece bir flow’un paketleri sırasını kaybetmez.
Dokunun büyüklüğünü spine’ın port sayısı belirler. 32 portlu spine’lar 32 leaf taşır. Her leaf’te 48 sunucu portu varsa doku 1.536 sunucuya çıkar.
Leaf ile spine katlarının nasıl örüldüğünü görelim:
- Her leaf her spine'a bağlı. Şemada doku üçe küçültüldü: üç spine, üç leaf. Leaf yalnızca sunucuları taşır, spine yalnızca leaf'leri bağlar. İki leaf arasında yatay kablo yoktur.
- A ile C arasında ilk yol. Soldaki leaf'ten çıkan trafik ortadaki spine'a çıkıyor ve sağdaki leaf'e iniyor. Uçtan uca üç switch geçiliyor ve bu sayı her leaf çifti için aynı.
- Aynı çift arasında üç yol. Diğer iki spine da aynı iki leaf'e bağlı olduğundan üç eşit maliyetli yol var. Yolların ortak hiçbir bağlantısı yok; gerçek dokuda sayıları spine sayısı kadar.
- Ortadaki spine ölüyor. Bir kutu ya da bir kablo ölünce o spine'dan geçen bütün bağlantılar birden gider. Üçte bir kapasite kayboluyor, ama iki leaf arasındaki bağ kopmuyor.
- Trafik komşu yola kayıyor. Kalan yollardan biri devralıyor ve akış sürüyor. Spanning tree bu dokuda çalışsaydı yolların ikisi zaten kapalı olurdu ve tek yolun ölümü, yeni bir yol açılana kadar rafı ağdan koparırdı.
Yolların hepsinin aynı anda açık kalması kendiliğinden olmuyor. 27. bölümdeki spanning tree döngüyü şöyle kesiyordu: paralel bağlantılardan yalnızca biri etkin bırakılır, gerisi mantıksal olarak kapanır. Veri merkezinde bu, satın alınan kapasitenin çoğunu ölü tutmak demektir. Klasik kaçış yolu network layer’a çıkmaktır. Router’lar spanning tree çalıştırmaz ve paralel bağlantıların hepsini birden etkin tutar. Büyük veri merkezleri bu yüzden içeride de 45. bölümdeki BGP’yi konuşuyor: RFC 7938 her leaf’e ve spine’a ayrı bir otonom sistem numarası verip dokuyu internetin küçük bir kopyası gibi yönetmeyi anlatıyor.
İkinci yol bağlantıları birleştirmektir. IEEE 802.1AX bağlantı toplama standardı paralel bağlantıları tek bir sanal kanal gibi kullanır. Gigabit bağlantılar 2, 4 ve 8 gigabit/s kanallara toplanır. 10 gigabit bağlantılarda tavan 80 gigabit/s olur. Standart önce 802.3ad adıyla yayımlanmıştı. Toplama tek bir flow’u hızlandırmaz: aynı özet hilesiyle her flow tek bir bağlantıya düşer ve kazanç ancak çok sayıda flow olduğunda görünür.
Aynı numaranın dayanıklılık sürümü de var (multi-chassis link aggregation, MLAG). Sunucu aynı sıradaki iki ayrı switch’e birden bağlanır. İki kutunun üstündeki yazılım ona tek switch gibi görünür. Sunucu standart bağlantı toplama yaptığını sanır. Bir port, hatta bütün bir switch ölse bile ağdan kopmaz.
Darboğaz nereye kurulur, kayıp nasıl karşılanır
Bir leaf’in iki yüzü vardır. Aşağı yüzünde 48 sunucu portu duruyor; her biri 100 Gbit/s ise downstream 4.800 Gbit/s eder. Üst yüzünde altı upstream bağlantısı var; her biri 400 Gbit/s ise toplam 2.400 Gbit/s eder. Oran iki katına bir. Bu kasıtlı bir eksikliktir ve adı aşırı aboneliktir.
Aynı leaf’i bloklamayan yapmak zor sayılmaz. Yukarıya 400 Gbit/s’lik on iki bağlantı koyarsın ve iki yön eşitlenir. Bedeli altı ek porttur: hem leaf’te hem spine’da. Bloklamayan tasarımın tanımı da budur: bütün portların aynı anda azami başarımda çalışabilmesi. Yüzlerce yüksek hızlı portta bunu sağlamak pahalıya patlar.
Aşırı aboneliği ayakta tutan gözlem şudur: Ethernet bağlantıları ortalamada düşük hızda çalışır, aralara yüksek hızlı patlamalar serpiştirilir. Bütün sunucular aynı anda tam hızda konuşursa yukarıda her birine ancak %50 düşer. Switch’in kendi iç dokusu yine de bloklamayan üretilir. Darboğaz kutunun içinde aranmaz, upstream’e kasten bırakılır.
Darboğazın yeri bilindiği için kayıp da başka türlü karşılanıyor. 40. bölümde tampon dolduğunda etkin kuyruk yönetiminin iki kolu vardı: düşürme ve işaretleme. Veri merkezi ikinci kolu seçiyor. Tıkanıklık denetimi açık tıkanıklık bildirimi (ECN) üzerine kuruluyor ve bu ailenin adları DCTCP ile DCQCN; atlama atlama geri baskı üzerinde de deneme yapılıyor.
Sebebi veri merkezine özgü bir kullanımda. RoCE (RDMA over Converged Ethernet) ile uzak doğrudan bellek erişimi (RDMA) Ethernet üzerinde taşınır: bir makine karşı makinenin belleğine işletim sistemini araya sokmadan yazar. RoCE kaybı TCP kadar ustaca onaramaz ve tek bir kayıp paket çok pahalıya mal olur.
En sert fren data link layer’dadır. PAUSE frame’i karşı tarafa bir süre susmasını söyler ve o süre quanta biriminde ölçülür.
hedef 01-80-C2-00-00-01 PAUSE için ayrılmış multicast adresi
tip 0x8808 MAC denetim frame'i
işlem 0x0001 PAUSE
süre 0 - 65.535 quanta her quanta 512 bit süresiAdres 48 bitliktir. 802.1D uyumlu bir switch onu diğer portlara iletmez; frame’in kendi içinde işleneceğini anlar. PAUSE yalnızca çift yönlü çalışan istasyonlardan gönderilir. Sürenin karşılığı bağlantı hızına bağlıdır: 100 Gbit/s’te bir quanta 5,12 ns, azami duraklama 335,5 µs olur. Aynı istek 10 Gbit/s’te 3,36 ms tutar; hız düştükçe aynı quanta sayısı daha uzun bir sessizliğe karşılık gelir.
Veri merkezinde kullanılan ise bu frenin sınıf sınıf çalışan sürümü: PFC (priority flow control, 802.1Qbb) yalnızca RoCE’nin öncelik sınıfını durdurup öbür trafiği akıtıyor. Bedeli de ünlü: bir switch’teki duraklama komşularına zincirleme yayılıp dokunun bir bölümünü kilitleyebiliyor. Yapay zekâ kümeleri bu sınırları yeniden zorluyor. Haziran 2025’te yayımlanan Ultra Ethernet belirtimi, bir aktarımın paketlerini tek yol yerine bütün yollara serpiştiriyor ve sırayı alıcıda topluyor.
Bir de frame boyu var. 20. bölümde gördüğün jumbo frame desteği switch’lerin veri sayfalarında 9.000 baytın biraz üstüne, örneğin 9.216 bayta kadar yazar. İnternetin tamamı ise 1.500 baytlık standart sınırla çalışır. Aradaki oran altı kat, yani aynı veri için başlık işleme sayısı o kadar seyreliyor. Jumbo frame de yalnızca iki ucunu senin yönettiğin bir küme içinde işe yarar.
Özet
- Top-of-rack switch: rafın tepesindeki kutu oraya bakır kablonun bir ile yedi metrelik boyu yüzünden konur.
- Leaf-spine: iki katlı doku üç katlı hiyerarşinin yerini aldı ve iki sunucu arasındaki mesafeyi her çift için üç switch’e sabitledi.
- Doğu-batı trafiği: veri merkezinde baskın akış raflar arasında yatay akar, bu yüzden ilişkili servisler bilerek komşu raflara yerleştirilir.
- Çok yol, tek flow: ECMP ve bağlantı toplama trafiği flow flow dağıtır; tek bir flow her zaman tek bir yolda kalır.
- Aşırı abonelik: downstream ile upstream arasındaki oran kasten eşitlenmez, çünkü bağlantılar ortalamada düşük hızda çalışıp aralara patlama serpiştirir.
- Kayıpsız taşıma: tıkanıklık işaretlemeyle bildirilir ve gerektiğinde PAUSE ya da PFC frame’i bağı doğrudan durdurur.
Doku kuruldu, yol seçildi ve paket rafın içindeki sunucuya kadar geldi. Peki üstüne katman katman sarılmış bu zarfı o makine nasıl açıp okuyacak?
66. bölüme devam et: Encapsulation Çözme