بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
شبكه هاي Overlay
شبكه هاي Overlay چيست؟
به هر شبكه اي بر روي يك شبكه ديگر ايجاد مي شود Overlay گفته مي شود. ولي امروزه شبكه هاي Overlay به شبكه هايي اطلاق مي شود كه در لايه كاربرد و برروي شبكه IP تشكيل مي شوند. شبكه هاي اشتراك فايل از قبيل Gnutella, KaZaA و غيره نمونه هايي از شبكه هاي Overlay هستند.
كاربردهاي شبكه هاي Overlay :
سيستم هاي اشتراك فايل (Peer-to-Peer File Sharing)
چند پخشی در اينترنت (Multicasting in the Internet)
کنفرانس ويدئوِيی
بازی ها ی گروهی در شبکه
....
اسلاید 2 :
سيستم هاي اشتراك فايل Peer-to-Peer
nAlice chooses one of the peers, Bob.
nFile is copied from Bob’s PC to Alice’s notebook: HTTP
nWhile Alice downloads, other users uploading from Alice.
nAlice’s peer is both a Web client and a transient Web server.
All peers are servers = highly scalable!
Example
nAlice runs P2P client application on her notebook computer
nIntermittently connects to Internet; gets new IP address for each connection
nAsks for “Hey Jude”
nApplication displays other peers that have copy of Hey Jude.
اسلاید 3 :
P2P: centralized directory
original “Napster” design
1) when peer connects, it informs central server:
qIP address
qcontent
2) Alice queries for “Hey Jude”
3) Alice requests file from Bob
اسلاید 4 :
P2P: problems with centralized directory
nSingle point of failure
nPerformance bottleneck
nCopyright infringement
اسلاید 5 :
Query flooding: Gnutella
overlay network: graph
nedge between peer X and Y if there’s a TCP connection
nall active peers and edges is overlay net
nEdge is not a physical link
nGiven peer will typically be connected with < 10 overlay neighbors
nfully distributed
qno central server
npublic domain protocol
nmany Gnutella clients implementing protocol
اسلاید 6 :
Gnutella: protocol
r Query message
sent over existing TCP
connections
r peers forward
Query message
r QueryHit
sent over
reverse
path
اسلاید 7 :
Gnutella: Peer joining
1.Joining peer X must find some other peer in Gnutella network: use list of candidate peers
2.X sequentially attempts to make TCP with peers on list until connection setup with Y
3.X sends Ping message to Y; Y forwards Ping message.
4.All peers receiving Ping message respond with Pong message
5.X receives many Pong messages. It can then setup additional TCP connections
Peer leaving: see homework problem!
اسلاید 8 :
Exploiting heterogeneity: KaZaA
nEach peer is either a group leader or assigned to a group leader.
qTCP connection between peer and its group leader.
qTCP connections between some pairs of group leaders.
nGroup leader tracks the content in all its children.
اسلاید 9 :
KaZaA: Querying
nEach file has a hash and a descriptor
nClient sends keyword query to its group leader
nGroup leader responds with matches:
qFor each match: metadata, hash, IP address
nIf group leader forwards query to other group leaders, they respond with matches
nClient then selects files for downloading
qHTTP requests using hash as identifier sent to peers holding desired file
اسلاید 10 :
Kazaa tricks
nLimitations on simultaneous uploads
nRequest queuing
nIncentive priorities
nParallel downloading