Ana içeriğe geç

Bölüm 27:Kablosuz Erişim: 802.11

7 dakikalık okumaGüncelleme:

Ağlar'a “Sen”i Katmak yazısının parçası: adres çubuğuna yazdığın tek bir isteğin peşinden bakırla fiberin fiziğine kadar inen uzun bir teknik yolculuk.

Tüm bölümler
  1. Giriş
  2. Adres Çubuğundan İsteğe
  3. Paket Anahtarlamalı Yol
  4. İsimden Adrese
  5. Önbellek, Tazelik ve Güven
  6. Port Numarası ve Soket
  7. Bağlantısız Taşıma: UDP
  8. Üç Adımlı El Sıkışma
  9. Simetrik Şifreleme
  10. Açık Anahtarlı Kriptografi
  11. TLS El Sıkışması
  12. Sertifika Zinciri
  13. HTTP Mesajının Anatomisi
  14. Durum, Çerez ve Oturum
  15. HTTP/2'den HTTP/3'e
  16. İçerik Dağıtım Ağları
  17. Diğer Uygulama Protokolleri
  18. Katmanlı Mimari
  19. Kapsülleme ve Başlıklar
  20. Paket Yakalama ve Çözümleme
  21. Ağ Arayüz Kartı
  22. Fiziksel Adresleme
  23. Hata Sezme ve CRC
  24. Adres Çözümleme: ARP
  25. Anahtarlama ve Ortam Erişimi
  26. Ağ Topolojileri
  27. Sanal Yerel Ağlar
  28. Kablosuz Erişim: 802.11
  29. Radyo Kanalı ve Kapasite
  30. Kablosuz Ağ Güvenliği
  31. Hücresel Ağlar
  32. Spektrum ve Kuşaklar
  33. Hareketlilik ve Aktarma
  34. Adres Kiralama: DHCP
  35. Adresin Anatomisi
  36. Adres Tükenmesi ve IPv6
  37. Yönlendirici Mimarisi
  38. Kuyruk Yönetimi
  39. Cihaz Yapılandırma
  40. Yönlendirme Protokolleri
  41. Kontrol Düzlemi ve SDN
  42. Ağ İzleme ve Yönetimi
  43. Alanlar Arası Yönlendirme
  44. Adres Çevirisi
  45. Ara Kutular
  46. Tünelleme ve IPsec
  47. Güvenlik Duvarları
  48. Operatör ve Metro Ağları
  49. Bitten Sinyale
  50. Çoklama Teknikleri
  51. İletim Ortamları
  52. Kablo Sonlandırma
  53. Fiber Optik İletim
  54. Bakır Erişim Ağı: DSL
  55. Pasif Optik Ağlar
  56. Kablo Erişim Ağları
  57. Denizaltı Kabloları
  58. Veri Merkezi Ağları
  59. Kapsülleme Çözme
  60. Güvenilir Aktarım
  61. Tıkanıklık Denetimi
  62. Trafik Çözümleme
  63. Gecikme Bütçesi
  64. Son Söz

Dizüstünü toplayıp bahçeye çıktın. Çerçeve hâlâ aynı çerçeve, taşıdığı istek hâlâ aynı istek. Değişen tek şey şu: onu artık bakır bir tel değil, aradaki boşluk taşıyor.

Boşluğun da kuralı var. Ama kabloda işleyen kural burada yürümüyor: kimsenin çarpışmayı göremediği bir ortamda çarpışma nasıl önlenir?

Kablo yoksa hangi kural değişiyor?

Metal kablo elektrik akımı taşır. Havadaki taşıyıcı ise belirli bir frekanstaki elektromanyetik dalga.

Kablosuz LAN sıfırdan bir ağ da değildir. Var olan LAN teknolojisinin fiziksel katmanı ve bağ katmanının bir kısmı kablosuzlaştırılmıştır. IP ve üstü hiç değişmez. Değişen yalnızca 802.11’in MAC katmanı ile onun fiziksel katmanıdır. Yani kapsülleme merdiveninin en alt basamağı sökülüp yerine yenisi takılıyor, üstündeki basamaklar aynen kalıyor.

Bu sınır standardın kendi kapsamında da yazılı. IEEE 802 ailesinin tamamı yalnızca iki katmanı düzenler: bağ katmanı ile fiziksel katman. Ailede 802.3 CSMA/CD’ye ayrılmış, 802.11 kablosuz ağa. IEEE bu işe 1997’de başladı; ilk sürüm 2,4 GHz’de 2 Mbit/s için tasarlanmıştı. O gün bu hız bir DSL bağlantısıyla aynı mertebedeydi.

Kablosuz, ortamı paylaşan yayın bağlantılarının en saf örneği. Paylaşılan ortamın temel kuralı tek cümleyle yazılır: göndermeden önce hattı dinle, boşsa gönder, doluysa boşalmasını bekle. Bu kuralın adı CSMA.

Dinlemek tek başına yetmiyor. Birkaç makine aynı anda hattı boş görüp aynı anda gönderebilir. Üstelik çarpışma göndericinin başına gelen bir şey de değildir. Alıcının aynı anda iki ya da daha fazla sinyali üst üste almasıdır.

Anahtar her kabloyu ayrı bir collision domain’e çeviriyordu; paylaşılan kabloda ise CSMA/CD göndericiye kendi çarpışmasını sezdiriyordu. Telsizde o adım yok. Bir gönderici aynı anda hem gönderip hem dinleyemiyorsa çarpışmayı kendisi göremez, göremediğini de ortasında kesemez.

Ethernet CSMA/CD kullanır, 802.11 ise CSMA/CA. Biri çarpışmayı sezer, öteki ondan kaçınır.

Duymadığın komşu seni nasıl bozuyor?

Havada sinyal gittikçe zayıflar. Bu zayıflamanın adı yol kaybı: elektromanyetik dalganın vericiden alıcıya giderken güç yoğunluğunun düşmesi. Düşüşün hızı ortama bağlı. Yol kaybı üssü boş uzayda 2, şehir içinde 2,7 ile 3,5 arasında, bina içinde 3 ile 6 arasında. Duvarlar sinyali mesafeden daha hızlı yiyor.

Şimdi bir evi düşün. Telefon mutfakta, dizüstü balkonda, access point ikisinin ortasındaki koridorda. Mutfaktaki telefon balkondaki dizüstünü hiç duymuyor; arada iki duvar var ve mesafe yol kaybını büyütüyor. İkisi de kanalı dinlediğinde boş buluyor, çünkü kendi açılarından kanal gerçekten boş. Ama iki sinyal koridordaki access point’te üst üste biniyor. Bu duruma gizli terminal deniyor.

Kanalı boş sanmanın iki sebebi var. Karşı tarafın sinyali sana henüz ulaşmamıştır. Ya da sönümlenme yüzünden hiç ulaşmıyordur.

Koordinasyon için ayrı bir bant da yok. Kanalın nasıl paylaşılacağına dair anlaşma, paylaşılan kanalın kendisinden yapılmak zorunda. Dalganın kendi davranışını, yani yol kaybının hesabını burada kasten bırakıyorum.

Sıranı nasıl bekliyorsun?

802.11 göndericisi kanalı bir kerede boş görmekle yetinmez. DIFS adı verilen bir süre boyunca kesintisiz boş görmek zorundadır. Kanal o süre boyunca sessizse çerçevenin tamamı gönderilir. Gönderim yarıda kesilmez.

Alıcı çerçeveyi sağlam aldıysa SIFS kadar bekler ve bir ACK döner. Bu onay gizli terminal yüzünden zorunlu; gönderici çerçevesinin vardığını başka türlü bilemez.

Kanal doluysa gönderici hemen sıraya girmez. Rastgele bir geri çekilme sayacı başlatır. Sayaç yalnızca kanal boşken geri sayar. Kanal dolduğunda durur, boşalınca kaldığı yerden devam eder. Sıfıra indiğinde gönderim yapılır. Böylece sırasını bekleyen cezalandırılmaz.

ACK gelmezse gönderici çarpışma varsayar. Geri çekilme aralığını ikiye katlar ve baştan dener. Pencerenin üst sınırı fiziksel katmana göre 200 ms mertebesine kadar çıkabiliyor. Burada kabul edilmiş bir körlük var. 802.11’de kayıp ile çarpışma aynı belirtiyi verir ve ikisi birbirinden ayrılamaz.

Gizli terminali asıl çözen mekanizma rezervasyon. Gönderici önce küçük bir RTS paketiyle kanalı ayırtır. Access point CTS ile cevap verir ve bu cevabı yayın olarak gönderir. CTS’i duyan herkes, gönderici hariç, kendi gönderimini erteler. Balkondaki dizüstü mutfaktaki telefonu duymuyordu ama koridordaki access point’i duyuyor.

RTS ve CTS’in içinde, ardından gelecek gönderimin ne kadar süreceği yazılıdır. Susma süresi bir tahmin değil, ilan edilmiş bir sayıdır. RTS paketleri de çarpışabilir; kısa oldukları için kaybedilen zaman küçük kalır.

Veri çerçevesi gidip ACK döndüğünde cihaz çerçeveyi kendi kuyruğundan siler. Erişim noktası çerçeveyi ancak ondan sonra yönlendiriciye iletir.

Kanalı dinlemekten onaya kadar giden sırayı adım adım izleyelim:

Bir gönderimin CSMA/CA ile işleyen sırası
zamangönderenerişimnoktasıkanalı dinleDIFS boyuncageri çekilmesayaç donarRTSCTSveri çerçevesiACKACK gelmezsepencere ikiye katlanır
Kanal DIFS boyunca dinleniyor. Gönderici kanalı bir anlığına boş görmekle yetinmez; DIFS süresince kesintisiz boş görmek zorundadır. Bu süre dolmadan hiçbir çerçeve havaya çıkmaz.
  1. Kanal DIFS boyunca dinleniyor. Gönderici kanalı bir anlığına boş görmekle yetinmez; DIFS süresince kesintisiz boş görmek zorundadır. Bu süre dolmadan hiçbir çerçeve havaya çıkmaz.
  2. Kanal doluysa sayaç donuyor. Gönderici hemen sıraya girmez, rastgele bir geri çekilme sayacı başlatır. Sayaç yalnızca kanal boşken geri sayar; kanal dolduğunda durur ve boşalınca kaldığı yerden devam eder.
  3. RTS kanalı ayırtıyor. Gönderici küçük bir RTS paketi yollar. Erişim noktası CTS ile cevap verir ve bu cevabı yayın olarak gönderir; CTS duyan herkes, gönderici dışında, kendi gönderimini erteler.
  4. Veri çerçevesi havaya çıkıyor. RTS ve CTS içinde ilan edilen süre boyunca kanal bu gönderime ayrılmıştır. Çerçevenin tamamı gönderilir ve gönderim yarıda kesilmez.
  5. SIFS kadar sonra ACK dönüyor. Alıcı çerçeveyi sağlam aldıysa SIFS kadar bekleyip onay yollar. ACK gelmezse gönderici çarpışma varsayar, geri çekilme aralığını ikiye katlar ve baştan dener.

Ağa ilk adım nasıl atılıyor?

Bütün bunlar cihaz ağa çoktan girmişken olup bitiyor; girmenin kendisi ayrı bir iş. Access point’le kurulan ilk bağlantı tek başına internet demek değildir. Üstünde kimlik doğrulama ve DHCP çalışır; tam erişim ancak ondan sonra gelir.

Ağı bulmanın iki yolu var. Pasif yolda cihaz kanalları dinler ve ağın varlığını ilan eden beacon çerçevelerini toplar. Aktif yolda cihaz kendisi bir yoklama isteği yayınlar, menzildeki access point’lerin hepsi yoklama cevabı gönderir. Uygulamada ikisi birden kullanılır.

Seçim yapıldıktan sonra cihaz seçtiği access point’e bir ilişkilendirme isteği yollar ve karşılığında ilişkilendirme cevabı alır. Bu aşamada henüz hiçbir kimlik ya da parola alışverişi yok. Sorulan tek şey, konuşup konuşamayacakları.

Kablosuz ağlar iki yapıda kurulur. Access point olmadan kurulanına ad-hoc kipi denir, teknik adı IBSS. Access point üzerinden yürüyene altyapı kipi denir, teknik adı temel hizmet kümesi. Evdeki modem ile ona bağlı cihazlar bir BSS. Aynı alt ağda aynı SSID’yi taşıyan birden çok BSS birleşince genişletilmiş hizmet kümesi çıkar ortaya.

Altyapı kipinde istemciler birbirleriyle doğrudan konuştuklarını sanır. Bütün paketler erişim noktasından geçer; access point kablosuz tarafta bir hub gibi davranır. Tek bir anahtar, VLAN etiketiyle birbirini hiç görmeyen ağları taşıyabiliyordu; burada tersi oluyor ve tek bir erişim noktası herkesi aynı ortama basıyor.

İlişkilendirme bittiğinde artık havaya çerçeve koyabilirsin. O çerçevenin zarfı Ethernet’inkinden geniş duruyor. İçinde dört adres alanı var ve her biri 6 bayt.

çerçeve denetimi   2 bayt        sürüm, tür, alt tür, sekiz bayrak
süre               2 bayt        RTS/CTS ile ayrılan gönderim zamanı
adres 1            6 bayt        çerçeveyi alacak taraf
adres 2            6 bayt        çerçeveyi havaya koyan taraf
adres 3            6 bayt        access point'in bağlı olduğu yönlendirici arayüzü
sıra denetimi      2 bayt        çerçeve sıra numarası
adres 4            6 bayt        yalnızca ad hoc kipinde
yük                0-2312 bayt   IP datagramı
CRC                4 bayt        bozulma denetimi

Üçüncü adres bu listenin kilidi. Kabloda iki MAC adresi alanı yetiyordu; havada üçüncüsü gerekir, çünkü çerçevenin kablolu tarafta nereye çıkacağı da yazılmak zorunda.

Çerçeve denetim alanı bit bit bölünmüştür: 2 bitlik protokol sürümü, 2 bitlik tür, 4 bitlik alt tür, ve ardından birer bitlik sekiz bayrak. Tür alanı üç değer alır: 0 yönetim, 1 denetim, 2 veri. Wi-Fi’da veri çerçevesi türlerden yalnızca biri. Alt tür alanı beacon ile ACK’i birbirinden ayırır. Denetim ve yönetim çerçeveleri ağın kendi işleyişini taşır ve okura hiç görünmez.

Zarfın bedelini hesaplayalım. Dört adres birden kullanıldığında başlık ve CRC toplam 34 bayt tutar, altyapı kipinde dördüncü adres boş kaldığı için 28 bayt; Ethernet’in sabit zarfı ise 18 bayt. Aradaki fark on bayt ve bunun altı baytı doğrudan üçüncü adres alanından geliyor. En büyük yük 2.312 bayt olduğuna göre en büyük çerçeve 2.346 bayt eder. Zarfın payı yüzde bir buçuk civarında kalır.

Peki bu çerçeve hangi frekansta gidiyor? 2,4 GHz bandı ülkeye göre 11 ile 14 arasında kanala bölünmüştür ve bu sayı teknik değil düzenleyici bir karardır. 20 MHz genişliğinde birbiriyle örtüşmeyen kanal sayısı ise yalnızca üç. Aynı apartmanda dördüncü bir access point açıldığı anda birinin kanalı zorunlu olarak bir başkasıyla örtüşür. Aynı lisanssız ISM bandında mikrodalga fırın, bebek telsizi, Bluetooth kulaklık ve garaj kapısı kumandası da çalışır; girişim bu bandın doğal hâli.

2,4 GHz bandının kanal haritası: on dört kanalın 22 MHz genişliğindeki spektrum eğrileri üst üste biniyor; birbirine değmeyen üçlü olarak 1, 6 ve 11 ayrı renkle işaretli. Örtüşmeyen kanal sayısının neden üç olduğunu gösteriyor.

Havadaki çerçeveyi ağa dahil olmayan herhangi bir kablosuz cihaz da dinleyebilir; ortam paylaşıldığı için izleme riski baştan var. Altyapı kipinde iletişimin şifrelenmesinin sebebi bu. WEP’ten WPA2’ye, oradan 2018’de gelen WPA3’e uzanan mirasın nasıl işlediğini iki durak sonra açacağız.

Bağlandığın ağın künyesini kendi makinende görebilirsin. Linux’ta iw dev wlan0 link bağlı olduğun BSSID’yi, SSID’yi, frekansı ve sinyal gücünü basar. iw dev wlan0 scan ise beacon ve yoklama cevaplarından toplanan ağ listesini verir. Windows’ta aynı işi netsh wlan show interfaces ve netsh wlan show networks mode=bssid görür.

$ iw dev wlan0 link
Connected to 00:00:5e:00:53:0b (on wlan0)
        SSID: kat3-koridor
        freq: 2437
        signal: -58 dBm

İlk satırdaki adres, havaya koyduğun çerçevelerin birinci adres alanına yazdığın değerdir.

Özet

Peki, ne öğrendik?

  • Değişen tek şey ortam: kablosuz LAN yeni bir ağ kurmaz, var olan LAN’ın fiziksel katmanını ve MAC’inin bir kısmını kablosuzlaştırır.
  • Çarpışma alıcıda olur: gönderici aynı anda gönderip dinleyemediği için kendi çarpışmasını göremez, ve gizli terminal bu körlüğü kalıcı hâle getirir.
  • CSMA/CA beklemeyi kurala bağlar: DIFS boyunca dinlemek, donan bir geri çekilme sayacı ve SIFS sonrasında dönen ACK, çarpışma sezmenin yerini alır.
  • RTS/CTS bir rezervasyondur: susulacak süre kanalın üstünden ilan edilir, çünkü koordinasyon için ayrılmış başka bir bant yoktur.
  • Dört adres zarfı genişletir: altyapı kipinde 28 bayta çıkan zarfın farkı, çerçevenin kablolu tarafta nereye çıkacağını taşıyan üçüncü adresten gelir.

Kanalın boşalmasını bekledin, sıranı aldın, çerçeveyi havaya bıraktın ve onayını geri aldın. Sıra kanalın kendisinde: oraya tam olarak kaç bit sığıyor, ve bunu ne belirliyor?

28. bölüme devam et: Radyo Kanalı ve Kapasite