Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Peer-to-peer alkalmazások a gyakorlatban

    A tantárgy angol neve: Peer-to-peer Applications in Practice

    Adatlap utolsó módosítása: 2010. április 6.

    Tantárgy lejárati dátuma: 2015. június 30.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar

    Mérnök informatikus szak

    Villamosmérnöki szak

    Szabadon választható tantárgy

    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VITMBV13   0/0/2/f 2  
    3. A tantárgyfelelős személy és tanszék Dr. Simon Csaba, Távközlési és Médiainformatikai Tanszék
    4. A tantárgy előadója
     Név: Beosztás: Tanszék, Intézet:
     Dr. Vida Rolland egy. docens TMIT
     Simon Csaba egy. tanársegéd TMIT
    6. Előtanulmányi rend
    Ajánlott:
    Kötelező: Peer-to-peer (P2P) hálózatok (VITMJV76, korábban VITT9176)
    7. A tantárgy célkitűzése

    Az Internet forgalmát manapság jelentős mértékben az új generációs elosztott peer-to-peer (P2P; egyenrangú) rendszerek generálják. Széles körben használják a P2P-alapú fájlcserélő, VoIP (Voice over IP, „internettelefon”) és streaming (médiaszórás) alkalmazásokat. Az ilyen rendszerek résztvevői elosztott módon kommunikálnak egymással anélkül, hogy egy központilag menedzselt és ellenőrzött rendszer vezérelné a kapcsolattartást. Éppen emiatt az ezen alkalmazások által generált forgalmat nehezebb jellemezni, megfigyelni, mint a klasszikus kliens-szerver architektúrákban.

    A tantárgy célja, hogy gyakorlati betekintést nyújtson a P2P alkalmazások működésébe, építve a „Peer-to-peer (P2P) hálózatok” tantárgy során bemutatott elméleti ismeretekre. Vizsgálni fogjuk a különböző generációs, különböző célú P2P rendszerek felépítését, konkrét működését, keresési sajátosságait, valamint megfigyeljük az általuk generált forgalom jellemzőit.

    8. A tantárgy részletes tematikája
    1. hét
      Ismerkedés a hálózati környezettel, alkalmazásokkal, melyeket a félév során használunk majd a gyakorlatok során. Wireshark (korábban Etherreal) a hálózati forgalom megfigyelésére. OverlayWeaver szimulátor/emulátor a különböző DHT algoritmusok elemzésére.
    2. hét
      A PlanetLab hálózat, mint egy globális kutatói teszthálózat elosztott (peer-to-peer) alkalmazások működésének tesztelésére, elemzésére. A PlanetLab működése, szeletek kiosztása, kezelése. Programok feltöltése, futtatása, eredmények begyűjtése, kiértékelése. Teszt alkalmazások írása.
    3. hét
      Házi feladatok bemutatása és kiosztása. A Kazaa P2P fájlcserélő működése a gyakorlatban. Melyik peer-ből lesz supernode, hogyan, miért? Lehet-e ezt befolyásolni? A keresés illetve fájlletöltés sikerének mérése. A részvételi szint befolyásolása, hatásai.
    4. hét
      A BitTorrent működése a gyakorlatban. .torrent file szerkesztése, hirdetés. Trükközés a rátákkal (choking/unchoking sorrend befolyásolása). "Valós" BitTorrent felhasználók megfigyelése (pl. hány kérés érkezik be és melyik peerről).
    5. hét
      Trackerless BitTorrent megoldások – Vuze (korábban Azureus). Miben tud segíteni egy elosztott hash táblára (DHT) épülő megoldás? Hogyan változik a keresés hatékonysága, összehasonlítva a „klasszikus" BitTorrent-tel? Mennyire befolyásolja a hatékonyságot a nagy peer dinamika, a gyakori ki- és becsatlakozások (churn)?
    6. hét
      A Kademlia DHT működése a gyakorlatban. Az eMule-Kad alkalmazás vizsgálata. Mennyire robosztus? Hatékonyabb-e a keresés a hagyományos megoldásokhoz képest? Összehasonlítás a Vuze-val. Mennyire befolyásolja a hatékonyságot a nagy peer dinamika, a gyakori ki- és becsatlakozások (churn)?
    7. hét
      openChord, JChord – nyílt forráskódú Chord DHT megvalósítások megismerése. Egy saját Chord kliens készítése egy JVM-en (Java Virtual Machine), a működés tesztelése és vizualizálása. 
    8. hét
      Biztonsági kérdések - hogyan támadhatóak a peer-to-peer rendszerek. Szennyezett fájlok terjedése egy klasszikus (BitTorrent) és strukturált (Kad, Chord) rendszerben. Mérgezett indexek hatása a DHT rendszerekben.
    9. hét
      P2P forgalommenedzsment ISP szempontból. Forgalomszűrési technikák. Nagyforgalmú P2P alkalmazások kezelése ISP szempontból (port filtering, downprioritise, random TCP drop) és lehetséges válaszlépések a P2P felhasználók részéről.
    10. hét
      P2P alapú, alkalmazás rétegbeli multicast alkalmazások működésének vizsgálata: Narada, TBCP. Hogyan befolyásolja az overlay topológia kialakítása a hálózat működését. Milyen hálózatméretig használhatóak ezek az alkalmazások? Hogyan lehet a multicast fának a peer-ek kilépése miatti átalakulását hatékonyan kezelni?  
    11. hét
      A Skype VoIP alkalmazás működésének bemutatása. A supernode választás hatása a mások, illetve a saját teljesítményre. A Skype által generált forgalom detektálása, szűrése. Tűzfal kikerülése.
    12. hét
      A SopCast P2P streaming alkalmazás hatékonyságának elemzése, a hagyományos kliens-szerver megoldásokhoz (pl. vlc) képest. Pufferelési tulajdonságok. Hány peer kell a normális működéshez? Mit jelent egy peer kiesése?
    13. hét
      A cache alapú megoldások működésének elemzése, a szolgáltató és a felhasználó szempontjából. Hogyan gyorsíthatja a fájlcserélő megoldásokat? Milyen hatása van a streaming megoldásokra? Hogyan méretezzük optimálisan a cache-t? Mit, meddig, és hol érdemes eltárolni? 
    14. hét
      Házi feladatok leadása és bemutatása.
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) laboratórium.
    10. Követelmények
    • A szorgalmi időszakban: 1 házi feladat (min. 50%-os eredménnyel)
    • A laboratóriumi gyakorlatok legalább 70%-án való részvétel (a TVSZ-nek megfelelően)
    11. Pótlási lehetőségek A házi feladat a beadási határidő után különeljárási díj ellenében adható be, illetve javítható a pótlási időszak végéig, ezután nem pótolható
    12. Konzultációs lehetőségek Igény szerint, az oktatóval egyeztetve.
    13. Jegyzet, tankönyv, felhasználható irodalom
    1. Ralf Steinmetz, Klaus Wehrle (eds.), „Peer-to-Peer Systems and Applications”, Springer LNCS 3485, 2005.
    2. A. Oram (ed.), “Peer-to-Peer: Harnessing the Power of Disruptive Technologies.”, O'Reilly & Associates, 2001.
    3. Overlay Weaver – An Overlay Construction Toolkit, http://overlayweaver.sourceforge.net/
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra  28
    Félévközi készülés órákra  14
    Felkészülés zárthelyire   0
    Házi feladat elkészítése  18
    Kijelölt írásos tananyag elsajátítása
    Vizsgafelkészülés  0
    Összesen60
    15. A tantárgy tematikáját kidolgozta
     Név: Beosztás: Tanszék, Intézet:
     Dr. Vida Rolland egy. docens TMIT
     Simon Csaba egy. tanársegéd TMIT