8 Aralık 2013 Pazar

Network coding Nedir?


        İnternette Network coding hakkında türkçe kaynak olmaması ve bu alanda çok az bilgi bulunması nedeniyle yaptığım çokça genel birazcık özel araştırma raporunu sizlerle paylaşıyorum :)

         Doğrusal network kodlama, bir networkün verimliliğini ve ölçeklenebilirliğini artırmak için kullanılan bir tekniktir. Ayrıca network üzerindeki gizliliğin korunmasında da etkilidir. (Sızma işlemleri, gözetleme işlemleri, saldırı işlemleri vb.) Bu yöntemle basit network sistemindeki bir bilgi paketini doğrudan göndermek yerine, birkaç paketi bir fonksiyonun içine saklayarak gönderime hazır hale getirilir. Bu sayede paketler hem şifrelenmiş yani gizlenmiş hem de tek gönderimde birden fazla paket iletildiği için esneklik ve hız artmıştır. Alıcı ise iletim hattından gelen, paketlerin saklandığı bu fonksiyonun tersini alarak paketleri okur. Bu yöntem bir networkdeki maksimum veri akışını sağlamak için kullanılabilir. Fonksiyon içine paket yerleştirme işlemi encoding bu fonksiyonun açılıp paketlerin çıkarılması ise decoding olarak adlandırılır.
            Lineer (doğrusal) kodlamanın multicast adı verilen bir veya daha fazla kaynağa sahip çoklu gönderim problemlerinde yeterli olduğu kanıtlanmıştır. Fakat lineer kodlama doğrusallığın daha genel tanımlarında yeterli ve etkili değildir. Örneğin Convolutional code (dijital video, mobil haberleşme uydu haberleşmesi gibi alanlarda kullanılan bir çeşit hata hata düzeltme kodu) ve Filter bank (sinyal işlemede filter bank, band geçiren süzgeçlerden oluşan bir dizidir. Giriş sinyalini, her biri tek bir frekans alt bandı taşıyan komponentlere ayırır. ) işlemlerinde yeterli değildir.

             Doğrusal (lineer) network kodlamada, bir grup P fonksiyonu (node olarak geçer) S kaynak kodundan K alıcı fonksiyonuna gönderilecek olanlara dahil edilir. Her bir node, önceki alınan paketlerin lineer kombinasyonları olan yeni paketler üretir. Bunun için her birini sınırlı sayıdaki katsayılardan seçilmiş olan katsayılarla çarpar. Her bir indegree (doğrudan birbiriyle iletişimde olabilen-komşu) alınan mesajın lineer kombinasyonlarından bir X mesajı üretir. X mesajı, sınırlı sayıda katsayı ile çarpılmış olan daha önce alınmış M mesajlarının toplamına eşittir. Sink nodes adı verilen alıcılar, bu network olarak kodlanmış mesajları alır ve bir matrisin içinde biriktirir. Bu matris, gauss eleme yöntemi uygulanarak çözümlendiğinde orijinal mesajlar ln (logaritma görünümünde) ortaya çıkmış olur.   
            Bu işlemi daha rahat anlayabilmek için kelebek network örneğini inceleyebiliriz. Buna göre A ve B adında iki adet veri bulunmaktadır. Üstte duran bu iki veri kaynaktan, altta bulunan iki alıcı node a gönderilmek isteniyor. Her bir hat aynı anda sadece 1 veri taşıyabiliyor. (birim zamanda 1 bit olarak düşünülebilir) fakat amacımız A ve B bilgilerinin ikisini de alttaki her iki kullanıcıya aynı anda iletebilmek. Bunun için eski yöntemlerde A verisini orda hat ve sol hat üzerinden soldaki alıcıya gönderdiğimizde A verisini 2 kez yollarken B yi yollayamıyorduk. Yine aynı sorun sağdaki hat için de geçerli. Bu sorunu çözmek için basit bir kodlama ile, sol alttaki kaynağa sol hattan A verisini yollarken orta hattan A+B verisi bir fonksiyon yardımı ile yollanabilir. A+B değeri tek bir veri gibi davranacağı için iletimde bir sorun teşkil etmez. Sonuçta sol altta bulunan alıcı, A ve A+B değerlerini alır. Basit bi encoding işleminde A+B değerinden A değerini çıkartarak fonksiyonu çözer ve B değerini de elde etmiş olur. Aynı işlem sağ taraftaki hat içi de geçerlidir.

     Bazı uygulama alanları şunlardır:
     ·     Forward error correction ve automatic repeat request adı verien hata düzeltme-kontrol metodlarına alternatif olarak kullanılabilir. (normal ve wireless networkler için)
     ·     Dinleme, veri çalma, saldırı, verilere hasar verme, veri yok etme gibi eylemlere karşı ağların (networkün) korunmasını sağlar.
     ·     Dijital dosya dağıtımı ve kullanıcıdan kullanıcıya dosya paylaşımı.
     ·     Dağınık depolama
     ·     Kablosuz veri aktarımında verim artışı
     ·     Kablosuz sensör ağlarında çift yönlü düşük enerji aktarımı
     ·     Çoklu yayınlarda (Çoklu kaynaktan çoklu alıcıya) ağ kapasitesinin artırılması. (üstte anlatılan kelebek ağı örneği)
     ·     Uzaysal sensör ağlarında gecikme ve buffer (tampon- engel) etkilerinin azaltılması

·           ·  Ağ bant genişliğinin artırılması ve kablosuz ağlarda tek noktadan yapılan yayınlarda tekrar tekrar gönderilen paket sayısının azaltılması.

Hiç yorum yok:

Yorum Gönder