şükela:  tümü | bugün
  • teorik olmakla beraber pratikte de kullanım alanları bulmuş problem. (networking, tcp vs)

    problem şudur : aynı orduya mensup iki generalimiz var. bu arkadaşlar ve orduları ayrı ayrı yerlerde konuşlanmış. mesajlaşarak anlaşıyorlar ancak mesajlaşmada kullandıkları sistemde mesajın gönderilememe riski var (%10 diyelim). birinci general diğerine şöyle bir mesaj gönderiyor :

    mesaj text : hocam yarın sabah güneş doğarken ortak bir saldırı yapalım. mesajı aldığına dair teyit mesajını bekliyorum. teyit mesajını almazsam ben de saldırmayacağım.

    ikinci general mesajı alıyor ve kabul ve teyit mesajını gönderiyor. ancak o da mesajının gittiğinden emin olmak istiyor ve o da teyit mesajı istiyor. mesajı alamazsa saldırıya katılmayacağını da ekliyor.

    soru şu : kaç mesajlaşmadan sonra iki general de diğerinin de saldırı kararına uyacağına %100 emin olarak gönül rahatlığı ile saldıraya geçebilir.

    beğendiyseniz şunlar da ilginizi çekebilir :

    (bkz: iki kurşun problemi)
    (bkz: iki zarf problemi)
    (bkz: iki yumurta problemi)
    (bkz: iki zar problemi)
  • cidden kafa yoran problemdir.
    sonuc söyledir:

    haberci (ayni kisi dahi olsa) sürekli iki general arasinda gidip gelir. habire "mesajiniz onaylandi" bilgisini verir. istersinizki bu döngü bir yerde bitsin. soruda da bu istenmis zaten, nezaman biter bu mesaj trafigi ve iki taraf da emin olur diye.

    cevap: hicbir zaman.

    neden: her general son gönderdigi habercinin geri dönmesini bekler tam olarak emin olmak icin. e haberci bir tarafa son kez gidip onay mesajini verince, diger taraf dertlenir ne oldu acep verdimi mesaji diye. bu nedenle haberci sürekli iki taraf arasinda gidip gelmek zorundadir.

    yakalanirsa, is komple yas olur. iki tarafta haber alamaz ve emin olamaz.

    ps: ayrica bu mevzunun namümkün oldugu kanitini ilk paylasan grup icinde prof. dr. (bkz: eralp akkoyunlu) da vardir.

    bu bilgi wikipediden filan araklanmistir. isim benzerligi riski de vardir, söyle %10 gibi.
  • %10 gibi mesajın gitmeme ihtimali olan yerde cevap hiçbir zaman olması gerekir.
  • 3-5 mesaj sonra sikerim mesajını deyip her 2 generalin de saldırıya geçmesini beklerim şahsen.
    bu ne aq hadi önce sen kapat aşkım der gibi.
  • saldırı hiçbir zaman gerçekleşmez.

    - sistemde arıza olmasa bile sürekli birbirlerinden mesajı aldıklarına dair teyit mesajı isteyeceklerdir. sürekli isteyecek olmalarının sebebi ise %10. çünkü haberleşme ağı sakat. birbirlerine değil sisteme güvenmiyorlar.

    - sistemde arıza olduğu zaman ise birbirlerinden istedikleri teyit mesajı gelmeyeceğinden yine saldırı olmayacaktır.

    haberleşme sistemi mükemmel çalışsaydı bir mesaj sonra ikisi de sabahı bekleyecekti.
  • ermenilere soykırım uygulanırken subayların bireysel inisiyatifle hareket etmiş olmasının sebeplerinden biri de bu problemdir.

    kim uğraşacak teyitle falan, herkes bulduğunu öldürsün gibi.
  • garantileme ihtimali sıfır bence.
  • sürekli teyit isterlerse sabaha kadar mesajlaşırlar ve asla saldıramazlar. %10, %1 veya %99 ihtimalle mesajın gitmeme ihtimali sonucu değiştirmez. örneğin %99 ihtimalle gitmediğini varsayalım her seferinde ulan bu sefer kesin gitmemiştir mesajım diyeceklerdir. %1 ihtimalle gitmediğini varsayalım yok bu sefer de gitmeme ihtimali halen var diyeceklerdir.
  • teorik durumda bahsedildiği üzere, haber iletiminde herhangi bir hata/gitmeme ihtimalinin varlığında mutabakatla ilgili %100 emin olmak mümkün değil. ama pratikte mümkün.

    askeri protokoller farklılık gösterebilir ama hemen hemen eminim ki özü birçok durumda bilgisayar bilimlerinin alanına giren çözümlerinkiyle aynıdır. networking özelinde en yaygın çözümlerden biri three way handshake, veya üç yollu elsıkışma; özü şu:
    - 2 sefer karşılıklı olarak "alındı" yollamak, bunun başarılı mutabakat için yeterli olduğunu karşılıklı olarak varsaymak
    - bir zamanaşımı (timeout) içinde gönderilen ve alınan alındıların sayısında herhangi bir tarafta bir eksiklik varsa iletişimi belli bir noktadan yeniden başlatmak.

    böylelikle pratikteki iletim hata oranınız %100'e çok yakın değilse, yani tamamen "çevrimdışı" değilseniz, çok fazla olmayan tekrardan sonra başarılı mutabakatı pratikte garantileyebiliyorsunuz. tekrarlı olasılık hesabı üsteller üzerinden şekillendiğinden, birçok durumda teorik olarak bile örneğin "azami 100 tekrarda mutabakatın başarısız olma olasılığı kafama yıldırım düşüp beni öldürme olasılığından daha düşük" diyebilecek konuma geçebiliyorsunuz.

    good 'nuf...