Veri İletiminde Hata Kontrol Yöntemleri Doç.Dr.Yalçın ÇEBİ DEÜ Bilgisayar Mühendisliği Bölümü
Parite Denetimi (Parity Check) En basit yöntemdir. Veri içindeki “1”lerin toplam sayısının tek veya çift olmasına dayanır. İki türlü parite denetimi vardır: Tek Parite Çift Parite Veri bitlerinin sonuna eklenir. Veriyi gönderen ve alan taraflar bu denetim için anlaşmalıdır.
Tek parite Veri bitleri 01001100 olsun (8 bit) Veri içinde 1’lerin sayısı 3’dür. 3 tek sayıdır. Parite bitinin değeri “0” olmalıdır. Parite biti veri bitlerinin sonuna eklenir. 010011000
Çift parite Veri bitleri 01001100 olsun (8 bit) Veri içinde 1’lerin sayısı 3’dür. 3 tek sayıdır. Parite bitinin değeri “1” olmalıdır. Parite biti veri bitlerinin sonuna eklenir. 010011001
Duyarlılık Veri bitleri içinde bir bit değiştiğinde hata yakalanabilir. İki bit değiştiğinde hata yakalanamaz. 0100110010001100 1’lerin sayısı tek Hata yok varsayılır.
Toplamların Denetimi (Checksum) (1) Veriyi oluşturan karakterler, kullanıcının isteğine bağlı olarak gruplandırılır. Bu gruplar 16’lık tabandaki sayılar olarak ele alınır. Bu sayıların toplamı bulunur. Bu toplam verinin sonuna eklenir.
Toplamların Denetimi (Checksum) (2) Veri gönderilir. Veriyi alan taraf, aynı veri üzerinde aynı işlemleri yapar. Elde ettiği sonucu gelen değer ile karşılaştırır. İki değer aynı ise, veri hatasız iletilmiştir.
Yöntem Kalitesi Bu yöntemde de bazı hatalar yakalanamaz. Veri hattındaki sorunlardan dolayı, sürekli aynı bitler bozulabilir. Hatalı verilerle de aynı sonuç elde edilebilir.
Çevrimli Fazlalık Sınaması (CRC: Cyclic Redundancy Check) Bu yöntem esas olarak donanıma dayanır. Yazılımsal olarak da gerçekleştirilir. Donanımsal olarak daha hızlı çalışmaktadır. XOR kapısı ve Kaydırma Yazmaçı (Shift Register) birlikte kullanılır
CRC donanımı XOR Kapısı: İki veri girmektedir. Yalnızca verilerden herhangi birisi “doğru” olduğunda çıktı “doğru” olmaktadır.
Kaydırma Yazmaçı Kaydırma Yazmaçı, kendisine gelen her bit’e karşılık, içinde bulunan bitlerden bir tanesini sonuç olarak verir. Yazmaçın ön değerleri 0 veya 1 olabilir. Tasarımcı istediği tür yazmaçı temin edebilir.
CRC oluşturma Tasarımcı istediği büyüklükte bir CRC oluşturabilir. İstediği şekilde KY ve XOR kapısını biraraya getirebilir. Örnek: 16 bit’lik CRC kodu oluşturan yapı.
CRC örneği 4+7+5 bitlik yazmaçlar kullanılmıştır. Verinin her bit’inin işleme girmesi ile yazmaçlardaki değerler değişir. Verinin tüm bitleri işleme girdikten sonra yazmaçların içindeki değer CRC değeridir. Bu değer veri paketinin sonuna eklenerek alıcıya gönderilir.
Farklar Parity Check: Karakterlerin gönderiminde kullanılır. Checksum: Veri paketlerinin gönderiminde kullanılır. CRC: Veri paketlerinin gönderiminde kullanılır.
Yazılımsal CRC Gönderilecek veri paketi, n adet bite sahip ise, n’inci dereceden bir polinom olarak düşünülür. Bu polinomun katsayıları, her bir veri bitidir. Bu polinom, x^p ileçarpıldıktan sonra üreteç polinomuna bölünür. Kalan bölümündeki polinom CRC kodudur. Her iki kod, birlikte alıcıya gönderilir. Alıcı benzer işlemleri yaparak denetimi sağlar.
Veri Paketleri
Çerçeve (Frame) Bilgisayar ağında veri çerçeveler şeklinde iletilir. Çerçeve büyüklüğü, ağda kullanılan teknolojiye bağlıdır. Ethernet’de çerçeve 46-1500 byte arasında olabilir
Başlık (Header) Her çerçevenin içinde bulunmaktadır. Hedef (Alıcı) Adresi (Destination Address) Kaynak Adres (Source Address) Çerçeve Türü Veri Hata Denetim Kodu bulunmaktadır.
Başlık bilgileri (1) Başlıktan hemen önce, 64 bitten oluşan bir senkronizasyon sinyali gönderilir. Daha sonra çerçeve gönderilir. Hedef adres 6 byte’dır (48 bit). Görsellik açısından Hexadecimal olarak gösterilir. 00:aa:0b:cc:b2:a3
Başlık bilgileri (2) Gönderenin adresi de aynı şekilde çerçeve içinde bulunur. Daha sonra bu çerçevenin türüne ait kod gönderilir. Bu tür, o çerçevenin hangi ağ türünde olduğunu belirtir.
Bazı Çerçeve Türleri
Tür Belirtme Şekli Eğer başlık içinde tür belirtilmeyecek ise, tür bilgisi veri bölümün başında belirtilir. Bunu için ayrı bir başlık bilgi paketi kullanılır.
Ethernet
Ethernet’in Genel Çalışması Klasik ethernet, veri yolu (BUS) yapısını kullanır. Birçok bilgisayar tek bir ortam üzerinden bilgilerini göndermeye çalışır. Veriyi gönderenin gönderdiği elektrik sinyali, tüm hat boyunca iletilir. Hatta bağlı olan tüm bilgisayarlar bu sinyali alırlar
Ethernet’te Veri Gönderimi Ethernet üzerindeki bilgisayarlar veri göndermek isteyince Hatta taşıyıcı sinyal olup olmadığını denetlerler (Carrier Sense) Birçok bilgisayar aynı hatta bağlıdır (Multiple Access) Hatta taşıyıcı sinyal belirlemezlerse veri gönderirler.
Verilerin Çarpışması (Collision) Eğer bir’den fazla sayıda bilgisayar aynı anda veri göndermeye kalkarsa, gönderilen elektrik sinyalleri girişime uğrar. Veri gönderilemez. Bilgisayarların bu durumda, her veri gönderiminden sonra çarpışma olup olmadığını denetlemeleri gerekir (Collision Detect) Tüm mekanizmaya: Carrier Sense Multiple Access-Collision Detection (CSMA-CD) adı verilir.
Çarpışma Olduğunda Çarpışmayı belrirleyen bilgisayarlar; 0< t <= d aralığında bir t rasgele zamanı kadar beklerler. Daha sonra yeniden hattı denetlerler. Hat boş ise veriyi gönderirler. Hatta yeniden çarpışma oluşmuş ise bekleme zamanını 0<t<=2d yaparlar ve yeniden veriyi gönderirler. Yine çarpışma olursa, bekleme zamanını 2’nin katları kadar artırırlar. Bu mekanizmaya Üstel Geri Çekilme (Exponential Back-Off) denir.
Çarpışma Sonsuz mu? Ethernet’te her kablo türü için izin verilen bilgisayar adedi vardır. Bu adet aşılırsa çarpışma sonucu bekleme süresi uzar ve sonsuza gider. Veri iletimi imkansız hale gelir. Sınırlar aşılmamalıdır. 4 HUB/Repeater, 5 bölüm (segment)
KablosuzAğlarda CSMA-CA Burada CD mekanizması yerine CA mekanizması vardır. Kablosuz iletim yapmak isteyen aygıtlar, birbirlerine frekans tahsis ederler. Böylece çarpışma ortadan kaldırılmış olur (Collision Avodience).
AĞ ARAYÜZ KARTLARI VE BİLGİ ALIMI
Ağdaki Adresleme Bilgisayar ağlarında bilgiler, Ağ Arayüz Kartı adresleri kullanılarak gönderilir ve alınır. Ağ Arayüz Kartı adresleri Fiziksel Adres (Physical Address) Donanım Adresi (Hardware Address) Ortam Bağlantı Adresi (Media Access Address) Ağ arayüz kartı, bir paket gönderirken, gönderenin adresini de o paketin içine koyar.
Ağ Arayüz Kartının Adresi Kullanımı Ağ Arayüz Kartı, bağlanılan ortamla tüm bilgi alışverişini sağlar. Tüm çerçevelerin gönderim ve alım işlemleri sırasında bilgisayarın işlemcisi (Merkezi İşlem Birimi: MİB; Central Processing Unit:CPU) kullanılmaz. Ağ Arayüz Kartı, işlemciden bağımsız olarak hareket eder. Her kartın üzerinde kendi işlemcisi vardır.
AAK-MİB İlişkisi Ağ Arayüz Kartı, bağlandığı ortamda bulunan her çerçeveyi açar. Çerçevenin içindeki alıcı adresi kendi adresi ile Eş ise bu çerçeveyi işlemciye gönderir. Değil ise herhangi bir işlem yapmaz. Bu işlem, eğer gelen paket o fiziksel adrese ait değil ise, işlemciyi etkilemez.
Adresleme Yöntemleri Statik (Static): Kart adresi, donanım üreticisi tarafından tanımlanır ve değiştirilemez. Biçimlendirilebilir (Configurable): Müşteri kendi gereksinimlerine göre karta adres verebilir. Dinamik (Dynamic): Her bilgisayarın ilk açılışında kendisine otomatik olarak bir adres atanması prensibine dayanır. Her bilgisayar, açıldığında rasgele sayılar dener, Bu sayılardan herhangi birisi o anda ağda kullanımda değil ise, o sayıyı kendisine adres olarak alır.
Yayınlama (Broadcasting) Radyo ve televizyon yayınları ile aynı prensip söz konusudur. Bir bilgisayar bir paket gönderdiğinde, o paket, ağdaki tüm bilgisayarlar için alınabilir olur. Bilgisayar ağlarında, her ağ protokolü için bir yayınlama adresi tanımlanmaktadır. Ağ Kartı, kendi adresi ile yayın adresini tanır konumdadır. Ağ Kartı, kendi adresine ve yayın adresine gönderilen tüm çerçeveleri doğrudan kabul eder.
Çoğa Gönderim (Multicast) Adresleme şemasının geliştirlmesi ile oluşturulmuştur. Bilgisayarda bulunan bir uygulama çoğa gönderilmiş bir bilgiyi almak isterse, kullanılacak adresi ağ kartına bildirir. Ağ kartı kendisine bildirilen adresi, şartsız kabul edilecek adres listesine ekler. Bu adrese gönderilen tüm çerçeveleri kabul eder.
Ağ Çözümleyicileri (Network Analyzers) Ağ çözümleyicileri, bilgisayar ağlarının yönetim ve denetimi için kullanılan yazılımlardır. Bu yazılımlar, ağ trafiğini görüntülemek ve denetlemek için kullanılırlar. Ağ üzerindeki her paketin ağ arayüz kartı tarafından kabul edilmesini sağlamak için ayrım gözetmeme (promiscuous) konumuna getirilmelidir. Bunun için değişik komutlar bulunmaktadır. Farklı firmalar tarafından Ağ Çözümleme yazılımları üretilmektedir.
Ağ Genişletme Donanımları
Tekrarlayıcı (Repeater) Ağların genişletilmesinde kullanılırlar Fiziksel katmanda (ISO 1) çalışırlar. Kendilerine gelen elektrik sinyallerini güçlendirerek,bağlı oldukları diğer uçlara gönderirler.
Aktarıcı (Hub) Tekrarlayıcılarla aynı özelliğe sahiptirler. Kendilerine gelen sinyalleri bağlı oldukları tüm uçlara gönderirler. Fiziksel olarak yıldız yapısında olsalar da, mantıksal olarak veriyolu (bus) yapısında çalışırlar.
Köprü (Bridge) (1) İki ağı birbirine bağlamak için kullanılırlar. Veri İletim Katmanında (ISO 2) çalışırlar. Kendilerine gelen çerçeveleri inceleyerek içlerinde bulunan adreslere göre hareket ederler. Üzerlerinde yazılım bulunmaktadır.
Köprü (Bridge) (2) Bir ağda bulunan bilgisayarın gönderdiği bilginin, gerekmiyor ise, diğer ağa gitmesini engeller. Ağları birbirinden ayırır. Her ağ için bir liste oluşturur. Listeler el ile de oluşturulabilir.
Anahtar (Switch) Bir anahtar, her bir ucuna farklı bilgisayarların bağlanabildiği bir aygıttır. Her ağda bir bilgisayarın bulunduğu köprülerle birbirine bağlı bir ağ grubuna benzer. Aynı anda n/2 adet bilgisayar birbiri ile haberleşebilir. (n: uç sayısı)
Sayısal İletim
Seslerin Aktarımı Normal kulağın algıladığı ve müzik aletleri ile üretilen her tür ses, verilerde oldğu gibi, örnekseldir. Bu sesin bilgisayara aktarılması ve sayısal olarak ifade edilmesi için: Belirli aralıklarla örnekler alınır, Örnekler incelenir, Bir ölçek belirlenir, Bu ölçeğe göre seslerin sayısal karşılığı belirlenir. Örneklem sıklığı (yatay eksen –zaman) ara değerlerdeki seslerin alınabilme özelliğini etkiler. Her bir örneğin değerlendirildiği ölçek (düşey eksen- şiddet) ise seslerin niteliğini etkilemektedir.
Sayısal (Digital) ve Örneksel (Analogous) Ses Çizgi: Örneksel Değerler; Dörtgen: Sayısal Değerler 0, 1, 2, 2, 1, 1, 1, 1, 2, 2, 5, 5, 5, 2, 2, 5, 7, 7, 5, 3, 2, 5
Örnekleme Sıklığı Daha sık aralıklarla ses örneği alındığında, örneksel bir sistemde daha kaliteli ses elde edilebilmektedir. Alınan sesin sayısal sistemde de daha kaliteli hale gelebilmesi, ancak her bir ses örneğini gösteren sayısal değerlerin daha sık aralıklarla belirlenmesi ile mümkün olabilecektir. Düşey eksenin 8 yerine, 16, 32, 64 gibi aralıklara bölünmesi sonucunda, her bir zaman diliminde alınan ses örneği, daha ayrıntılı bir sayısal değerle gösterilecek, böylece ses kalitesi artırılmış olacaktır. Klasik telefon hatlarında 1 saniyede 8,000 ses örneği alınabilmekte, böylece her 125 s’de bir ses örneği alınmış olmaktadır. Bu ses örneği 8 bitlik (0-255 arasında) bir sayısal değer ile gösterilmekte ve ses sayısal hale dönüştürülmektedir. Kullanılan yöntem PCM (Pulse Code Modulation) olarak adlandırılmaktadır.
Sayısal Devreler Sayısal devreler, telefon sağlayıcılardan kiralanır. Uzun mesafelere bilgi taşıma amaçlı olabilir. Özel amaçlı bir donanıma gereksinim vardır. Veri Hizmet Ünitesi (Data Service Unit) Kanal Hizmet Ünitesi (Channel Service Unit)
Telefon Standartları Amerika ve Avrupa’da farklı standartlar vardır. Japonya kendi standardını oluşturmuştur. Ses devresi sayısına bağlı olarak kapasite artmaktadır. Her ses devresi 64 kbit veri taşır ( 8,000 örnek x 8 bit) T: Amerika; E: Avrupa standardı
Yüksek Kapasiteli Devreler Yüksek kapasiteler için yeni standartlar bulunmaktadır. Synchronous Transport Signal (STS) Optical Carrier (OC)
ISDN Integrated Services Digital Network B, B ve D olmak üzere üç veri kanalına sahiptir. B kanalları veri, D kanalı kontrol sinyallarini taşır. Basic Rate Interface (BRI): 2B +D Primary Rate Interface (PRI): 23B + D
Sayısal Abone Hattı (Digital Subscriber Line) xDSL olarak kullanılır. Birçok değişik türü vardır. ADSL (Asymmetric DSL), ev kullanıcıları için tasarlanmıştır. ADSL de veri gönderme ve alma hızları farklıdır. İnternetin yapısına uygundur.
Diğer DSL Türleri Symmetric DSL High-Rate DSL Very-high bit rate DSL
Kablo Modem Kablo TV sistemi üzerinden çalışmaktadır. Yerel ağ gibi davranır.