Veri İletişimi Data Communications Suat ÖZDEMİR Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü 12. Çoklu Erişim
Çoklu Erişim İletişimde bulunan uç noktalar arasında her zaman atanmış bir kanal bulunmayabilir Cep telefonu Data link katmanı 2 alt katmandan oluşur Atanmış kanal varsa alttaki katman kullanılmaz IEEE LAN Logical Link Layer (LLC) ve Medium Access Layer (MAC)
Çoklu Erişim Çoklu ortam erişim protokolleri 3 ana kategoriye ayrılır
Rastgele Erişim Rastgele erişim yada yarışma metotlarında bütün düğümler eşittir. Hiçbir düğüm bir diğerini kontrol etmez yada öncelik sağlamaz İletim ortamının boş yada dolu olmasına göre her düğüm kendi kararını verir İki nedenden dolayı rastgele adı verilmiştir Gönderme işlemi için her hangi bir zamanlama mekanizması yoktur Hangi düğümün göndereceğini belirleyen kural yoktur, düğümler iletim ortamı için yarışırlar Yarışma tabanlı metot olarak da bilinir
Rastgele Erişim Hiçbir düğüm diğerine karşı üstün değildir Birden çok düğüm aynı anda iletim ortamını kullanırsa erişim çatışması yani çakışma olur ve frameler tekrar gönderilmek zorundadır Erişim çatışmalarını (çakışmaları) engellemek ya da oluştuğu zaman çözmek için aşağıdaki sorular cevaplamalıdır Düğüm ortama ne zaman erişebilir Ortam meşgulse ne yapılabilir Düğüm iletimin başarılı yada başarısız olduğunu nasıl anlayabilir Erişim çatışması varsa düğüm ne yapar
ALOHA Rastgele erişim metotları ALOHA adlı protokolden türetilmişlerdir ALOHA çoklu erişim sağlayan basit bir protokoldür ALOHA daha sonra iletişimden önce iletim ortamının dinlenmesi işlemi ile geliştirilmiştir Buna carrier sense multiple access adı verilir Daha sonra carrier sense multiple access with collision detection (CSMA/CD) ve carrier sense multiple access with collision avoidance (CSMA/CA) protokolleri ortaya çıkmıştır
ALOHA En eski rastgele ortam erişimi protokolü olan ALOHA 1970 lerde University of Hawaii de geliştirilmiştir. Kablosuz LAN için geliştirilmiştir Tüm paylaşımlı ortamlarda kullanılabilir Paylaşımlı ortamlarda birden fazla düğüm iletişim yaparken çakışma olma olasılığı her zaman vardır
Pure ALOHA Orjinal ALOHA protokolü Pure ALOHA olarak bilinir Bir düğüm frame i olduğu zaman gönderir Paylaşımlı kanal olduğu için çakışma olabilir
Pure ALOHA Şekilde iletim ortamını kullanmak için yarışan 4 düğüm vardır. Her düğüm 2 frame gönderir, iletim ortamında 8 frame vardır Çakışmalar olur ve sadece 2 frame hedefe ulaşabilir: Frame 1.1 ve Frame 3.2 Kanal üzerinde aynı anda farklı frame lerden birer bit bile olsa çakışma vardır ve frame ler bozulur Bozulan framelerin tekrar gönderilmesi gerekir
Pure ALOHA Pure ALOHA alıcıdan gönderilen ACK ları kullanır Bir frame gönderildiğinde alıcıdan ACK beklenir Belli bir zaman aralığında alıcıdan ACK gelmezse, gönderici frame in ya da ACK nın çakıştığını kabul eder ve frame i yeniden gönderir Eğer tüm düğümler frame lerini aynı anda tekrar gönderirse yeniden çakışma olur Pure ALOHA her düğümün yeniden gönderim yapmadan önce rastgele bir zaman dilimi beklemesini gerektirir Rastgelelik tekrar çakışma olma olasılığını azaltır Bu zaman dilimi Back-off time (T B ) olarak adlandırılır
Pure ALOHA Pure ALOHA nın kanalda tıkanıklığı önlemek için ikinci bir metodu vardır Belli sayıdaki (K max ) frame tekrar gönderiminden sonra düğüm gönderme işlemini bırakmalı ve sonra tekrar denemelidir
Pure ALOHA T B formülü uygulamaya göre değişir En çok kullanılan binary exponential back-off
Pure ALOHA - Örnek Kablosuz bir ALOHA ağında düğümler birbirlerinden 600 km mesafe uzaklıktadır. Sinyal hızı 3 10 8 m/s olduğuna göre maximum propagation time Tp = (600 10 5 ) / (3 10 8 ) = 2 ms. olur. Değişik K değerleri için T B yi hesaplayalım K=1. Düğüm {0,1} aralığında rastgele bir sayı üretir. Bu durumda T B ya 0 ms (0 2) yada 2 ms (1 2) olur. K=2. Aralık {0,1,2,3} dır. Üretilen rastgele sayıya göre T B 0, 2, 4, yada 6 ms olabilir. K=3. Aralık {0,1,2,3,4,5,6,7} dır. Üretilen rastgele sayıya göre T B 0, 2, 4,6,...14 ms olabilir. K > 10 ise genelde değeri K=10 olarak alınır
Pure ALOHA Çakışmanın olabileceği vulnerable time (hassas zaman) tanımlanabilir Her düğüm sabit uzunlukta frame ler gönderir Her frame in gönderme süresi T fr dir Şekilde A düğümü için vulnerable time gösterilmiştir
Pure ALOHA A düğümü t zamanında bir frame gönderir B düğümüde t-t fr zaman aralığında bir frame göndermiş olsun A ve B nin frameleri arasında bir çakışma olacaktır C düğümü de t+t fr zaman aralığında bir frame göndersin A ve C nin frameleri arasında da bir çakışma olacaktır Bu durumda pure ALOHA da vulnerable time frame iletim zamanın iki katıdır Pure ALOHA vulnerable time = 2 x T fr
Pure ALOHA - Örnek Bir pure ALOHA ağı 200 kbps lik bir kanala 200-bit lik frame ler gönderiyor. Çakışma olmaması için gerekli olan zaman nedir? Ortalama frame (transmission time) iletim zamanı T fr =200 bits/200 kbps=1 ms. Vulnerable time = 2 x 1 ms =2 ms.
Pure ALOHA Throughput analizi G bir frame iletim zamanı içinde sistem tarafından üretilen ortalama frame sayısı Pure ALOHA da ortalama başarılı iletim sayısı S = G x e -2G dir G=1/2 için maximum throughput S max =0.184. 2 frame iletim zamanı içinde 1 frame üretilirse, bu framelerden %18.4 ü başarılı olarak hedefe ulaşır.
Pure ALOHA - Örnek Bir pure ALOHA ağı 200 kbps lik bir kanala 200-bit lik frame ler gönderiyor. Aşağıdaki sistem (bütün düğümler tarafından üretilen) frame üretim değerleri için throughput nedir. a) 1000 frames per second b) 500 frames per second c) 250 frames per second
Pure ALOHA - Örnek Frame transmission time=200/200 kbps=1 ms. a) 1000 frames per second=1 frame per millisecond. G=1 ve S=G e 2G = 0.135 (%13.5). Throughput = 1000 0.135=135 frames. 1000 frame den sadece 135 tanesi hedefe ulaşır b) 500 frames per second = 1/2 frame per millisecond. G=1/2 ve S=G e 2G = 0.184 (%18.4). Throughput = 500 0.184 = 92 frame. 500 frame den sadece 92 tanesi hedefe ulaşır c) 250 frames per second = 1/4 frame per millisecond. G=1/4 ve S=G e 2G = 0.152 (%15.2). Throughput = 250 0.152 = 32 frame. 250 frame den sadece 32 tanesi hedefe ulaşır
Slotted ALOHA Pure ALOHA nın vulnerable time ı 2 x T fr. Düğümün ne zaman göndereceğini belirleyen bir kural olmamasındandır Bir frame gönderildikten az önce yada az sonra başka bir frame gönderilmiş olabilir Slotted ALOHA pure ALOHA nın verimliliğini artırmak için ortaya çıkmıştır. Slotted ALOHA zamanı T fr slotlarına bölünür ve düğümler bir slot un başında frame göndermeye zorlanır. Şekil slotted ALOHAdaki frame çakışmalarını gösterir
Slotted ALOHA
Slotted ALOHA Bir düğüm sadece slot başında frame gönderebilir Bu anı kaçırırsa bir sonraki slot ı beklemek zorundadır İki düğüm aynı slot ın başında göndermeye başlarsa çakışma olur Ancak vulnerable time yarıya düşer (T fr )
Slotted ALOHA
Slotted ALOHA Throughput analizi G bir frame iletim zamanı içinde sistem tarafından üretilen ortalama frame sayısı Slotted ALOHA da ortalama başarılı iletim sayısı S = G x e -G dir G=1 için maximum throughput S max =0.368. 1 frame iletim zamanı içinde 1 frame üretilirse, bu framelerden %36.8 i başarılı olarak hedefe ulaşır.
Slotted ALOHA -Örnek Bir slotted ALOHA ağı 200 kbps lik bir kanala 200-bit lik frame ler gönderiyor. Aşağıdaki sistem (bütün düğümler tarafından üretilen) frame üretim değerleri için throughput nedir. a) 1000 frames per second b) 500 frames per second c) 250 frames per second
Slotted ALOHA -Örnek Frame transmission time=200/200 kbps=1 ms. a) 1000 frames per second=1 frame per millisecond. G=1 ve S=G e G = 0.368 (%36.8). Throughput = 1000 0.368=368 frames. 1000 frame den sadece 368 tanesi hedefe ulaşır b) 500 frames per second = 1/2 frame per millisecond. G=1/2 ve S=G e G = 0.303 (%30.3). Throughput = 500 0.303 = 151 frame. 500 frame den sadece 151 tanesi hedefe ulaşır c) 250 frames per second = 1/4 frame per millisecond. G=1/4 ve S=G e G = 0.195 (%19.5). Throughput = 250 0.195 = 49 frame. 250 frame den sadece 49 tanesi hedefe ulaşır
Carrier Sense Multiple Access (CSMA) Çakışma olasılığını azaltmak ve performansı artırmak için CSMA protokolü geliştirilmiştir. Her düğüm kullanmadan önce iletim ortamını dinlerse çakışma olasılığı düşer CSMA de "sense before transmit" yada "listen before talk prensibine dayanır CSMA çakışma olasılığını düşürür ancak önleyemez Şekilde CSMA in time-space modeli verilmiştir.
Carrier Sense Multiple Access (CSMA)
Carrier Sense Multiple Access (CSMA) Çakışma ihtimali propagation delay nedeniyle hala vardır Bir düğüm frame gönderdiği zaman, ilk bitin diğer tüm düğümlere ulaşması için geçen zaman (çok kısa) Diğer düğümler ancak o zaman iletim ortamının dolu olduğunu anlar Bir başka düğüm bu kısa aralıkta frame göndermeye başlayabilir t 1 anında B düğümü iletim ortamını boş bulur ve göndermeye başlar t 2 (t 2 > t 1 ) anında C düğümü iletim ortamını boş bulur çünkü B düğümünün gönderdiği frame in ilk biti C ye henüz ulaşmamıştır C düğümü de göndermeye başlar İki sinyal çakışır ve frame ler bozulur
Carrier Sense Multiple Access (CSMA) CSMA için vulnerable time propagation time T p ye eşittir. Bu aralıkta bir başka düğümde frame gönderirse çakışma olur Şekilde worst case senaryo verilmiştir. A düğümü t1 anında D düğümüne frame gönderir Gri alan vulnerable time i gösterir
Carrier Sense Multiple Access (CSMA) Persistence Methods / ısrar metotları Ortamı meşgul yada boş bulan bir düğümün yapması gerekenler için 3 metot geliştirilmiştir. 1-persistent metot nonpersistent metot p-persistent metot Şekilde kanal dolu olduğunda 3 metodunda nasıl çalıştığı gösterilmiştir
Carrier Sense Multiple Access (CSMA) 1-Persistent oldukça basit bir metottur Ortam sürekli dinlenir Bir düğüm iletim ortamını boş bulur bulmaz 1 olasılıkla frame gönderir Çakışma olma olasılığı oldukça yüksektir İki düğüm aynı kanalı boş bulup frame gönderebilir Ethernet protokolü bu metodu kullanır
Carrier Sense Multiple Access (CSMA) Nonpersistent metotta iletim ortamı boşsa düğüm frame i hemen gönderir Eğer iletim ortamı doluysa rastgele bir zaman dilimi bekler ve iletim ortamını dinler Nonpersistent yaklaşım çakışma olasılığını azaltılır İki düğümün eşit zaman dilimi kadar bekleyip aynı anda gönderme olasılığı azdır Ancak verimlilik boş geçen bekleme zamanlarından dolayı düşüktür
Carrier Sense Multiple Access (CSMA) p-persistent metot kanal maximum propagation time a eşit yada büyük zaman dilimlerine (slot) ayrılmışsa kullanılabilir p-persistent yaklaşım iki yaklaşımın avantajlarını birleştirir Çakışma olasılığını düşürür ve verimi artırır İletim ortamı boş bulunduğunda şu işlemler yapılır 1. p olasılıkla düğüm frame i gönderir 2. q = 1 p olasılıkla düğüm bir sonraki slot ın başlangıç zamanını bekler ve iletim ortamını tekrar dinler a. Eğer iletim ortamı boş ise 1. basamağa gidilir b. Eğer iletim ortamı dolu ise, çakışma olduğunu varsayar ve backoff yapar
Carrier Sense Multiple Access (CSMA)
Carrier Sense Multiple Access with Collision Detection (CSMA/CD) CSMA çakışma olma durumundan sonrası için bir prosedür tanımlamaz CSMA/CD çakışma sonrasını düşünür Frame başarısız olmuşsa tekrar gönderilir Çakışan ilk bitin durumuna göre hareket edilir Çakışma anlaşıldığı anda gönderim durdurulur Şekilde C t 3 anında A t 4 anında göndermeyi bırakır
CSMA/CD
CSMA/CD Frame boyutu için bir üst sınıra ihtiyaç vardır Son bit gönderilene kadar çakışma tespit edilmelidir Aksi takdirde frame de çakışma olduğu tespit edilemez Frame iletim zamanı T fr maximum propagation zamanı T p nin en az 2 katı olmalıdır
CSMA/CD
CSMA/CD - Örnek CSMA/CD kullanan bir ağın 10 Mbps bantgenişliği var. Eğer maximum propagation time 25.6 μs ise en küçük frame boyutu nedir? Frame transmission time T fr = 2 T p = 51.2 μs. Worst case de, bir düğüm çakışmayı tespit edebilmek için 51.2 μs transmit etmelidir. Frame in en küçük boyutu 10 Mbps 51.2 μs = 512 bits yada 64 byte olur. (The minimum size of the frame for Standard Ethernet.)
CSMA/CD
CSMA/CD Çakışma enerji seviyesindeki değişim ile anlaşılır
Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) CSMA/CD nin ana fikri bir istasyonun gönderim yaparken aynı zamanda dinleyebilmesidir Kablosuz ortamda sinyal seviyesi ile çakışmanın tespiti zordur Enerji gönderim sırasında kaybolur Çakışmanın engellenmesi gerekir CSMA/CA bu amaç için geliştirilmiştir
CSMA/CA Interframe space (IFS), yarışma penceresi ve ACK Kanal boş bile olsa IFS kadar beklenir IFS sonunda kanal boş ise yine contention window kadar beklenir IFS öncelik planlaması için kullanılabilir.
CSMA/CA