Ana içeriğe geç

Bölüm 53: Sembol Hızı ve Kanal Kapasitesi

10 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 8: Kabloda ve Camda (Bölüm 52-64)

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

Taşıyabilir; bugünkü hızlı hatların hepsi bunu yapıyor. Ama her sembole eklenen bit alıcının işini zorlaştırıyor ve bir noktada fizik izin vermiyor.

O noktayı ne belirliyor: kablonun bandı mı, gürültü mü, yoksa ikisi birden mi?

Bir sembol kaç bit taşır?

Hat kodlaması, veri bitlerinden sinyal elemanlarına yapılan eşlemedir. İyi bir kod yüksek frekans bileşenlerini azaltır, böylece daha az bant genişliği ister. Doğru akım bileşeninin olmaması da ayrıca istenir.

Buradan iki ayrı büyüklük çıkıyor. Modülasyon hızı baud ile ölçülür ve saniyedeki sinyal elemanı sayısını verir; birim adını telgraf mühendisi Émile Baudot’dan alıyor. Veri hızı ise saniyedeki bit sayısıdır. Bir sembol birden çok bit taşıyabiliyorsa veri hızı sembol hızının üstüne çıkar.

Blok kodlama ise ters yönde bir bedel öder. 4B/5B her 4 bitlik bloğu 5 bitlik bir koda çevirir, yani 100 Mbit/s’lik veri akışı hatta 125 Mbaud’a dönüşür. Yük %25 olur; asenkron serideki 8N1 ile aynı oran. Aynı iş Manchester ile yapılsaydı 200 Mbaud gerekirdi; şema sembol hızından %37,5 tasarruf ediyor.

5 bitle 32 desen üretebiliyorsun ve bunların 16’sını veriye ayırıyorsun.

Peki o 16’sı hangi ölçütle seçildi? Cevap önceki bölümdeki saat sorununa dayanıyor: hiçbir kod uzun bir sabit dizi üretmeyecek. Seçilen desenler ardışık sıfır sayısını üçle sınırlıyor ve sınır iki sembolün birleştiği yerde de bozulmuyor. Yani 4B/5B rastgele bir eşleme değil; saat kaybını tasarımla imkânsız kılan bir seçim. Yüzde 25’lik yükün karşılığında aldığın şey bu garanti.

Kalan desenlerin bir kısmı IDLE gibi denetim sembollerine ayrılıyor, geri kalanı geçersiz sayılıyor ve hatta görülürse hata olarak yakalanıyor. Bu yüzden bir Fast Ethernet hattı veri yokken bile susmaz; boşta da 125 Mbaud IDLE akıtır. Ağ kartının ışığı hiçbir şey yapmazken de yanıyorsa sebebi bu. 2010’da gelen Energy-Efficient Ethernet (802.3az) bu sürekli akışı, trafik yokken hattı kısa uykulara sokarak kesiyor.

100BASE-TX’in hat işaretlemesi MLT-3’tür. Sinyal artı, sıfır ve eksi olmak üzere üç seviyeden birinde durur. Seviye değişimi bir, değişmemesi sıfır demektir. Bir tam dalga dört sembol süresi aldığı için 125 Mbaud’luk akış kablodan yalnızca 31,25 MHz ister. Kazanç sembol hızında değil, frekanstadır. 100BASE-TX veriyi MLT-3’e vermeden önce bir de karıştırıcıdan (scrambler) geçiriyor: veri rastgeleleşiyor, yayılan enerji tek bir frekansta toplanmıyor ve geçiş yoğunluğu artıyor.

şemaeşlemeyüknerede
Manchester1 bit → 2 sembol%10010 Mbit/s Ethernet
4B/5B + MLT-34 bit → 5 sembol%25100BASE-TX
8B/10B8 bit → 10 bit%251000BASE-X (fiber)
64B/66B64 bit → 66 bit%3,12510 Gbit/s ve üstü fiber
64B/65B + PAM1664 bit → 65 bit%1,562510GBASE-T

Tabloya yukarıdan aşağı bakınca bir eğilim göreceksin: hız arttıkça blok kodlamanın bedeli küçülüyor. 8B/10B her 8 bitlik baytı 10 bitlik bir kod grubuna çeviriyor; IBM’de Widmer ile Franaszek 1983’te yayımladı. 10 bitle 1.024 desen yazılabiliyor. 256 veri baytının çoğu, bir ile sıfır sayısını dengede tutmak için iki ayrı desenle yazılıyor; bir düzine desen denetim karakterine ayrılıyor, geri kalanı geçersiz. 1000 Mbit/s’lik hat böylece 1.250 Mbaud’a çıkar. Kod grupları hem yeterli geçiş taşıyor hem de zaman içinde bir ile sıfır sayısını dengeliyor; sinyal yolunda birikimli bir yanlılık oluşmuyor. 64B/66B dengeyi ayrı bir tabloyla değil karıştırıcıyla sağlıyor ve her 64 bitlik bloğun önüne yalnızca iki bitlik bir eşzamanlama başlığı ekliyor.

1000BASE-T başka bir yoldan gider. Kodlaması 4D-PAM5: dört boyutlu kafes modülasyonu ile beş seviyeli darbe genliği modülasyonunun birleşimi. Her çifte sembol başına 2 bit koyuyor ve dört çifti aynı anda çalıştırıyor; 125 Mbaud ile 1000 Mbit/s’e ulaşıyor. Dikkat et, sembol hızı Fast Ethernet’in üstüne hiç çıkmıyor. Dahası her çift iki yönü aynı anda taşıyor: iki uç aynı telden aynı anda gönderiyor ve her alıcı, kendi gönderdiği sinyali duyduğu karışımdan çıkararak karşı tarafı ayırıyor (echo cancellation). Dört çiftin saati de ortak: uçlardan biri master olup saati belirliyor, öteki saatini ondan gelen sinyalden türetiyor.

10GBASE-T iki koldan birden çalışıyor. Önce 64 bitlik öbekleri 65 bitlik bloklara çeviriyor; blok kodlamanın yükü %25’ten %1,5625’e iniyor. Sonra 16 seviyeli darbe genliği modülasyonuyla sembol hızını 800 Mbaud’da tutuyor. Çift başına 2,5 Gbit/s ve sembol başına 3,125 bit düşüyor; kalan hataları LDPC denen güçlü bir hata düzeltme kodu temizliyor.

Fiberde hız çıktıkça aynı çare yeniden geldi. 50 Gbit/s ve üstündeki şeritler iki seviyeli NRZ yerine dört seviyeli PAM4 kullanıyor, yani sembol başına 2 bit. Bedeli, seviyeler sıklaştığı için gürültüye karşı daha dar bir marj; bu hızlarda hata düzeltme artık seçenek değil, zorunluluk.

Faturayı kablo ödüyor: 10GBASE-T’nin sinyali 400 MHz’e kadar uzanıyor. 500 MHz’e kadar tanımlı Cat6A bu yüzden 100 metreyi taşıyor; 250 MHz’e kadar tanımlı Cat6 ile erişebildiğin mesafe ise yaklaşık 55 metreye iniyor. Belirtilen en kötü durum bit hata oranı 10⁻¹²: ortalama her trilyon bitte en fazla bir hata.

Kanalın tavanını kim koyuyor?

Bant genişliği, hattın taşıyabildiği frekans aralığı demek. 2. bölümde bant genişliğini bir kapasite ölçüsü olarak kullanmıştık; buradaki tanımı onun fiziksel karşılığı olarak oku. Fourier’e göre her periyodik sinyali sinüslerin toplamı olarak yazabilirsin. Dar bantlı bir kanal ise o toplamın üst harmoniklerini kesiyor. Alınan şekil gönderilene benzemez.

Bir kare dalga ve onun yalnızca ilk beş ile ilk on beş harmonikle kurulmuş iki yaklaşımı üst üste çizilmiş. Harmonik sayısı azaldıkça kenarlar yuvarlanıp dalgalanıyor; dar bantlı bir kanalın sinyale yaptığı da budur.

Nyquist sınırı gürültüsüz bir kanal için tavanı çiziyor ve iki şeye bakıyor: kanalın bandı ile sembol başına kullanılan seviye sayısı. Bandı iki katına çıkarmak sinyal hızını da iki katına çıkarıyor; seviye sayısı ise hıza çok daha cimri katkı yapıyor.

4.000 Hz’lik kanalda seviye sayısıtaşınabilen hız
28.000 bit/s
416.000 bit/s
824.000 bit/s
1632.000 bit/s

Tablo iki oranı yan yana koyuyor. Seviye sayısını iki katına çıkarmak hıza her seferinde yalnızca 8.000 bit/s ekliyor: ikiden dörde geçmek hızı ikiye katlıyor, sekizden on altıya geçmek ise yalnızca üçte bir artırıyor. Getiri azalırken alıcının işi zorlaşıyor, çünkü seviyeler birbirine yaklaşıyor. Sınırı çizen şey de burada devreye giriyor: gürültü.

31. bölümde modülasyon derinliği gürültüyle sınırlanıyordu; aynı tavan bakır telde de geçerlidir. O tavanın adı Shannon sınırı ve iki büyüklüğe bakıyor: kanalın bandı, bir de sinyalin gürültüye göre ne kadar güçlü olduğu.

Aynı 4.000 Hz’lik kanalda, sinyal gürültünün yüz katıysa tavan yaklaşık 26.600 bit/s çıkıyor. Sekiz seviyeli işaretlemenin verdiği 24.000 bit/s bu tavanın altında kalıyor; on altı seviyenin istediği 32.000 bit/s ise duvara çarpıyor. Nyquist “kaç sembol geçirebilirim” sorusunu, Shannon “her sembole kaç bit yükleyebilirim” sorusunu cevaplıyor.

Asıl ders sayıda değil, iki büyüklüğün eşit güçte olmamasında. Sinyal-gürültü oranı aynı kaldığı sürece bandı iki katına çıkarmak kapasiteyi de iki katına çıkarıyor. Vericinin gücünü iki katına çıkarmak ise, sinyal zaten gürültünün epey üstündeyse, hertz başına yalnızca bir bit ekliyor; 20 dB’lik bir hatta bu, kapasiteyi yüzde 15 kadar artırıyor.

Bu tek gözlem, kablosuz kuşakların her seferinde daha geniş kanal peşinde koşmasını ve 34. bölümdeki spektrum ihalelerinin milyarlarca dolar tutmasını açıklıyor: bant doğrusal, güç logaritmik getiri veriyor.

İkinci gözlem şaşırtıcı. Sinyal gürültü kadar zayıf olsa bile kapasite sıfıra düşmüyor; hertz başına bir bit kalıyor. Sinyal gürültünün altına bile inebilir: GPS uydularının sinyali yeryüzüne gürültünün altında ulaşıyor ve alıcı onu, geniş bir banda yayılmış hâlde ve saniyede yalnızca 50 bitlik bir hızla dinleyerek çıkarıyor. Gürültü iletişimi imkânsız kılmıyor, yalnızca pahalılaştırıyor.

Shannon erişilebilir teorik tavandır. Beyaz gürültü varsayar; darbe gürültüsünü ve bozulmaları hesaba katmaz. Pratikte hep altında kalınır.

DerinleşmeShannon sınırının denklemi ve o 26.600 sayısı nereden çıkıyor?

Sınır tek satırda yazılıyor:

C = B × log₂(1 + S/N)

C saniyedeki bit, B hertz cinsinden bant genişliği, S/N ise sinyal gücünün gürültü gücüne oranı. Logaritmanın tabanının iki olması tesadüf değil: cevabı bit cinsinden istiyoruz ve bir bit, iki olasılık arasındaki tek bir seçim.

Hesaba girmeden önce bir birim tuzağı var. Veri sayfalarında sinyal-gürültü oranı hep desibelle verilir, formül ise düz oran ister. Çevirmek gerekiyor: 20 dB demek, sinyalin gürültünün yüz katı olması demek. Her 10 dB bir sıfır ekliyor: 10 dB on kat, 30 dB bin kat.

Şimdi 4.000 Hz’lik kanalı koy:

C = 4.000 × log₂(1 + 100) = 4.000 × 6,66 ≈ 26.600 bit/s

Ana metindeki gözlemler doğrudan denklemin şeklinden çıkıyor. B çarpan olarak dışarıda duruyor, yani S/N sabitken onu ikiye katlamak sonucu ikiye katlıyor. S/N ise logaritmanın içinde; onu ikiye katlamak sonuca yalnızca 4.000 × 1 ≈ 4.000 bit/s ekliyor.

Bir incelik daha var. Termal gürültünün gücü bantla birlikte büyüyor. Güç sabitken bandı açmak S/N’yi düşürüyor ve kapasite sonsuza değil, bir tavana yaklaşıyor. Bandın getirisi ancak güç de onunla birlikte artarsa doğrusal kalıyor.

Sınırın kendisi bir varış noktası da değil, bir sözdür: bu hızın altında kalan her hız için, hatayı istediğin kadar küçültecek bir kodlama vardır. Shannon 1948’de o kodlamanın nasıl bulunacağını söylemedi, yalnızca var olduğunu kanıtladı. Sonraki yarım yüzyılın hata düzeltme kodları o kanıtın peşinden gitti. 1993’te turbo kodlar geldi. Gallager’ın 1960’ta bulup unutulan LDPC kodları da 1990’ların ortasında yeniden keşfedildi ve sınıra desibelin kesirleri kadar yaklaştı. Bugün 10GBASE-T, Wi-Fi’ın yeni kuşakları, 5G’nin veri kanalları ve 62. bölümdeki DOCSIS 3.1 LDPC kullanıyor.

Termal gürültü iletkendeki elektronların rastgele hareketinden doğar. Hattın tabiatındadır ve ortadan kaldırılamaz. Gücü de bant genişliğiyle doğru orantılıdır: oda sıcaklığında hertz başına -174 dBm. Her alıcı tasarımı hesabına bu sayıyla başlıyor.

24. bölümde döngüsel artıklık denetimi ters dönmüş bir biti yakalıyordu; o bitin neden ters döndüğü buraya kalmıştı. Beş ayrı mekanizma sayılır: zayıflama, gecikme bozulması, yansıma, diyafoni ve gecikme oynaması. Bozulmanın miktarı sinyalin frekansına ve genliğine bağlıdır. Gecikme bozulması, farklı frekansların hatta farklı hızla ilerlemesinden doğuyor: bir bitin bileşenleri karşıya dağınık varıyor ve komşu bitin üstüne taşıyor (intersymbol interference).

Bir telden akan sinyal etrafında manyetik alan üretir. Komşu telde bu alan yeni bir sinyal indükler. Adı diyafoni (crosstalk); Türkçe kaynaklarda çapraz karışma da denir. Empedans uyumsuzluğunda ise sinyalin bir kısmı geri yansır ve hatta duran dalga oluşur. Sonlandırma bu yüzden süs değildir.

Zayıflama ve yükseltme logaritmik ölçekte, desibelle ölçülür. Güç için 10log, gerilim için 20log alınır. 3 dB iki kat, 20 dB yüz kat, 30 dB bin kat demektir. Kendi makinende bu katmanın uçlarını görebilirsin.

ethtool eth0                   # hız, çift yönlülük, port türü, desteklenen bağlantı kipleri
cat /sys/class/net/eth0/speed  # yalnızca hız, megabit cinsinden

Çıktıdaki hız ve port türü, kartın hangi hat kodlamasında anlaştığını dolaylı olarak söyler. Bakır ile fiber arasındaki fark orada görünür. Fiziksel katmandaki bir sorunun ilk izi de çoğu zaman ethtool -S eth0 sayaçlarında, sürücüye göre adı değişen CRC hatası satırlarında belirir.

Windows’ta aynı bilgiyi PowerShell veriyor. Benim dizüstü bilgisayarımdaki çıktı şöyle:

PS> Get-NetAdapter | Format-Table Name, LinkSpeed, MediaType

Name                       LinkSpeed  MediaType
----                       ---------  ---------
Wi-Fi                      433.3 Mbps Native 802.11
Bluetooth Ağ Bağlantısı    3 Mbps     802.3
Ethernet                   0 bps      802.3
vEthernet (Default Switch) 10 Gbps    802.3

Dört satır dört ayrı hikâye anlatıyor. Kablosuz kartın 433,3 Mbit/s’i 31. bölümdeki MCS tablosundan çıkan bir satır: tek akış, 80 MHz, 256-QAM, kısa koruma aralığı. Bluetooth’un 3 Mbit/s’i, EDR denen kipinin ham hızı. Kablosu takılı olmayan Ethernet kartı 0 bps diyor, çünkü karşısında anlaşacağı kimse yok. Sanal switch’e bağlı kartın 10 Gbit/s’i ise hiçbir telden geçmiyor; ortada hat kodu olmadığı için o sayı yalnızca bir etiket.

Özet

  • Baud ile bit ayrı büyüklüklerdir: baud saniyedeki sembolü, bit hızı saniyedeki biti sayar; sembol birden çok bit taşıdığında bit hızı baud’un üstüne çıkar.
  • Blok kodlama faturayı ucuzlatır: 4B/5B ve 8B/10B yükü dörtte bire, 64B/66B ve 64B/65B yüzde birkaça indirir; çok seviyeli işaretleme de sembol başına bit sayısını büyütür.
  • Nyquist sembolü, Shannon biti sınırlar: gürültüsüz kanalın tavanını bant ve seviye sayısı, gürültülü kanalınkini bant ve sinyal-gürültü oranı belirler.
  • Bant doğrusal, güç logaritmik getiri verir: bandı ikiye katlamak kapasiteyi ikiye katlar, gücü ikiye katlamak hertz başına yalnızca bir bit ekler.
  • Termal gürültü yok edilemez: hattın tabiatındadır, gücü bantla büyür ve her alıcı tasarımı hertz başına -174 dBm ile başlar.

Şu anda telde saniyede milyarlarca kez değişen bir gerilim var ve o gerilim tek bir konuşmayı taşıyor. Peki aynı telde aynı anda kaç konuşma birden gidebilir?

54. bölüme devam et: Multiplexing Teknikleri