aplica es p2p
play

Aplicaes P2P Roteiro: Evoluo Napster Gnutella FastTrack Edonkey - PowerPoint PPT Presentation

Aplicaes P2P Roteiro: Evoluo Napster Gnutella FastTrack Edonkey BitTorrent Skype Rosa Leo 2008 Aplicaes P2P Evoluo do trfego: Rosa Leo 2008 Aplicaes P2P Vantagens: Escalabilidade: cada cliente


  1. Aplicações P2P Roteiro: Evolução Napster Gnutella FastTrack Edonkey BitTorrent Skype Rosa Leão – 2008

  2. Aplicações P2P Evolução do tráfego: Rosa Leão – 2008

  3. Aplicações P2P Vantagens: Escalabilidade: cada cliente contribui com os seus próprios recursos Custo distribuído entre os peers Robustez: redundância devido a arquitetura do sistema pois dados podem ser recuperados de diversas fontes Rosa Leão – 2008

  4. Aplicações P2P Primeira Geração: Sistemas centralizados Servidor central usado para indexar os arquivos Portas pré-definidas para transferência de dados Sistemas fáceis de serem identificados Exemplo: Napster Rosa Leão – 2008

  5. Aplicações P2P Segunda Geração: Sistemas totalmente distribuídos Requisições são enviadas para os vizinhos Portas são atribuídas dinamicamente Sistemas mais difíceis de serem identificados Exemplo: Gnutella Rosa Leão – 2008

  6. Aplicações P2P Terceira Geração: Combinam idéias de sistemas centralizados e distribuídos Idéia de “super” nós que possuem mais recursos que os outros e são responsáveis pelos arquivos de índices de um subconjunto de pares Portas são atribuídas dinamicamente Podem ser usadas portas de aplicações conhecidas Rosa Leão – 2008

  7. Aplicações P2P Terceira Geração: Partes do arquivo podem ser recuperadas de diversos peers simultaneamente Técnicas de criptografia usadas nos dados. Ex: FastTrack Sistemas muito mais difíceis de serem identificados Exemplo: FastTrack, KazaA, Gnutella2, BitTorrent Rosa Leão – 2008

  8. Napster História: Maio 1999 – criado um programa chamado Napster por um estudante de 18 anos da Boston Northeastern University Objetivo – troca de arquivos mp3 de música Fevereiro 2001 – Napster atingiu a taxa de pico de 1.5 milhões de usuários simultâneos Julho 2001 – Napster desativado por uma ordem judicial Rosa Leão – 2008

  9. Napster Architecture Rosa Leão – 2008

  10. Naspter Application-level, client-server protocol over point-to-point TCP Centralized directory server which holds an index of offered MP3/WMA files Clients connect to this server, identify themselves and send a list of files they are sharing Rosa Leão – 2008

  11. Naspter Other clients can search the index and learn from which clients they can retrieve the file Client pings hosts that apparently have data. Looks for best transfer rate Problems: Centralized server: single logical point of failure No security: passwords in plain text, no authentication, no anonymity Rosa Leão – 2008

  12. Gnutella History: 14th March 2000: Nullsoft published under GPL Withdrawn after a couple of hours by AOL However protocol was reverse-engineered and many clones released Rosa Leão – 2008

  13. Gnutella Focus: decentralized method of searching for files Each application instance serves to: store selected files route queries (file searches) from and to its neighboring peers respond to queries (serve file) if file stored locally Rosa Leão – 2008

  14. Gnutella Searching by flooding: if you don’t have file, query some partners if they don’t have it, they contact other partners, for a maximum hop count reverse path forwarding Rosa Leão – 2008

  15. Gnutella Problems: freeloading: WWW sites offering search/retrieval from Gnutella network without providing file sharing or query routing prematurely terminated downloads: long download times over modems modem users run gnutella peer only briefly or users becomes overloaded late 2000: only 10% of downloads succeed Searh requests grow exponentially to the number of connected users, then they overwhelm the Internet Rosa Leão – 2008

  16. Gnutella Solution: Create peer hierarchy based on capabilities Previously: all peers identical, most modem blackholes Connection preferencing: favors routing to well-connected peers favors reply to clients that themselves serve large number of files: prevent freeloading Rosa Leão – 2008

  17. FastTrack Architecture: Organized in super nodes (SN) and ordinary nodes (ON) – TCP connections Overlay network Rosa Leão – 2008

  18. FastTrack Overlay maintenance: list of potential SN included within software download new peer goes through list until it finds operational SN connects, obtains more up-to-date list node then pings 5 SN on list and connects with the one with smallest RTT if SN goes down, node obtains updated list and chooses new SN Rosa Leão – 2008

  19. FastTrack Searching and sharing files: ON chooses a parent SN and upload the metadata for files it is sharing Metada contains: file name, file size, ContentHash, file descriptors (eg., artist name, album name, etc.) ON sends a query to SN to locate files For each match SN sends IP address, port number, metadata Rosa Leão – 2008

  20. FastTrack Signaling traffic is encrypted: handshaking (connections between peers) metada, uploaded from ONs to SN supernode lists queries and replies File transfer traffic (eg., MP3s, videos, etc) is not encrypted and is sent within HTTP messages One of the most popular clients is KaZaA-Lite Rosa Leão – 2008

  21. eDonkey Searching and sharing files: Consists of servers (index for file location) and clients Each server keeps a list of all files shared by the clients connected to it Client gathers a list of all potential file providers when he connects to a server Most popular clients: eDonkey2000, eMule Rosa Leão – 2008

  22. eDonkey File download: Can download from multiple peers Each file is divided into pieces of approximately 10 MBytes Clients can restrict the upload bandwidth to a given limit A mechanism decides which client is served next The mechanism gives priority to peers from which blocks have been previously downloaded Rosa Leão – 2008

  23. BitTorrent Created in 2002 by Brian Cohen Main principles: Challenge: maximize the speed of replication File is divided into pieces of 256KB Can download from multiple peers Hybrid architecture: tracker and peers Tit-for-tat strategy encourages cooperation and avoid free-riding Rarest first algorithm to select pieces Rosa Leão – 2008

  24. BitTorrent Elements: Two kinds of peers: Seeds: have a complete copy of the file Leechers: still downloading the file Trackers: Keeps meta-information about the peers that are currently active Act as a rendez-vous point for the clients of the torrent Rosa Leão – 2008

  25. BitTorrent How to obtain the list of peers ? IP address of the tracker Rosa Leão – 2008

  26. BitTorrent How to obtain the list of peers ? Report its state Rosa Leão – 2008

  27. BitTorrent How to obtain the list of peers ? Random peer list 50 peers typically Rosa Leão – 2008

  28. BitTorrent How to obtain the list of pieces ? Maintain connections to 20-40 peers List of pieces Rosa Leão – 2008

  29. BitTorrent Which peers to upload from – choke/unchoke algorithm Every 10 seconds a peer re- evaluates the upload rates for all peers Chokes the peer with the smallest upload rate Every 30 seconds unchokes a peers regardless the upload rate offered (optimistic unchoking) Seeds apply the same strategy based on download rates Rosa Leão – 2008

  30. BitTorrent Which peers to upload from – choke/unchoke algorithm Every 10 seconds a peer re- evaluates the upload rates for all peers Chokes the peers with upload rate equal to zero Unchokes the choked peers with upload rate greater than zero Seed unchokes the peer that is longer chocked Rosa Leão – 2008

  31. BitTorrent Piece selection - rarest first algorithm Peer has no pieces: random police to obtain the first one For others pieces peers selects the rarest first piece Peers have a local view Each time the download of a new piece is completed, peer informs all the peers it is connected with Rosa Leão – 2008

  32. BitTorrent Piece selection – strict priority Peer breaks pieces of 256KBytes into sub-pieces of 16KBytes Requests the remaining sub- pieces for a particular piece before sub-pieces of another piece The goal is to have “complete” pieces as soon as possible Rosa Leão – 2008

  33. BitTorrent Piece selection – end game mode Peer sends requests for all of its missing pieces to all of its peers when there are few pieces to finish the download To keep this from becoming horribly inefficient, the client also sends a cancel to everyone else every time a piece arrives Rosa Leão – 2008

  34. BitTorrent Updating the list of peers If the number of connections is less than 20 Peer recontact the tracker to obtain additional peers Rosa Leão – 2008

  35. P2P file sharing applications traffic distribution Rosa Leão – 2008

  36. Skype Released in 2003 by Niklas Zennstrom and Janus Friis (who founded FastTrack and Kazaa) Proprietary protocol P2P network for user directory and NAT/firewall traversal Hierarchical infra-structure: supernodes and clients Every peer starts as client node, the Skype software checks if client has CPU, memory, network bandwidth, and is not behind NAT or firewalls Skype promotes client node to supernode Rosa Leão – 2008

More recommend