Presentation is loading. Please wait.

Presentation is loading. Please wait.

Towards Efficient Simulation of Large Scale P2P Networks

Similar presentations


Presentation on theme: "Towards Efficient Simulation of Large Scale P2P Networks"— Presentation transcript:

1 Towards Efficient Simulation of Large Scale P2P Networks
Tobias Hoßfeld ITG-Fachgruppe “Cooperating and Scalable Networks” Aachen, Ericsson, J. Sachs,

2 Cartography of P2P Architectures
Two control functions in P2P systems Resource mediation where are files located Resource access control who may download a file and when Mapping of P2P architectures into architectural space pure P2P hybrid P2P classic client/server Identification of control objectives resource mediation centralized decentralized operator-centric domain user-oriented domain X Chord Pure P2P X Gnutella P2P Cartography hybrid P2P X eDonkey Client/ Server X BitTorrent resource access control centralized decentralized

3 Peer-to-Peer Architectures
Unstructured P2P-Network (Gnutella) Information Provider Seeker Information Seeker Information Provider Information Mediator Structured P2P-Network (Chord) Hybrid P2P-Network (eDonkey) Index Information Mediator BitTorrent Tracker Web-Server Information Mediator

4 Basic Functions of P2P Networks
join() leave() new node knows one peer peer informs its “neighbors” and bootstrap server bootstrap server contacts bootstrap server position in the P2P network according to the structure: self-organization node failures detected by periodical updates or not answered requests: resilience

5 Basic Functions of P2P Networks (contd.)
insert(key,data) retrieve(key) peer x wants to insert (key,data); using DHTs: key = hash(data) peer x searches for key y has (key,data) x x and asks its neighbors which redirect requests key routes to peer y which stores data y y sends data to x structure assigns responsibility for data based on hash function: load balancing y responsible for (key,data) performance improved by using shortcuts according to the known structure for a given key: scalability

6 Basic Function of P2P Content Distribution
Main feature is multiple source download. Peers issue several download requests for the same file to multiple providing peers in parallel. Providing peers serve the requesting peers simultaneously. downloading peer 2 downloading and providing peer 1 After successfully downloading a whole chunk, it is provided to other peers. providing peer downloading peer 1 index server #2 index server #1 providing peer providing peer

7 Features of P2P Systems and Their Implications
Usually a large number of participating peers Large-scale: a lot of nodes and even higher number of resources need to be simulated Peers may arbitrary join or leave Highly dynamic: a lot of user created event (due to churn, i.e. peers joining and leaving arbitrarily, as key feature of P2P systems) Cooperative working of peers and robust systems Complexity: one event can cause a large number of events at other peers, i.e. system events, due to cooperation among peers additionally periodic or provisional systems event to cope with the self-organization of p2p systems Target of Workshop: Focus on large-scale P2P networks in order to consider key characteristics (e.g. regarding churn for 100 peers reasonable?)

8 Approach For Simulating Large-Scale P2P Systems
System state has to be stored at simulation machine requires efficient data structures (e.g. calendar queue) How to model in order to reduce the number of events? Resource mediation might not require to model bandwidth, only signalling delay Resource exchange might not require to model delay if large contents are exchanged; requires modelling of bandwidth other performance influence factors: packet loss, moving users, … appropriate abstractions & models for investigated application Clustering of peers to user groups... might allow parallel simulation of clusters

9 Workshop in Würzburg Efficient Data Structures
Andreas Binzenhöfer, Calendar Queue and Event Design Algorithms Jens Oberender, Modelling Resource Fragmentation Abstractions and Models Kolja Eger, Packet-based Simulation Gerald Kunzmann, Signaling in Voice/Video over IP Systems Daniel Schlosser, Tobias Hoßfeld, Periodic and Market-Based Bandwidth Allocation Parallel Simulation Ivan Dedinski, Parallel Discrete Event Simulation

10 Talks Today Hier könnte Ihr Name stehen !

11 Periodic and Market-Based Bandwidth Allocation in eDonkey Networks
Tobias Hoßfeld, Daniel Schlosser

12 Measurements of eDonkey Traffic
Case-by-case measurements of eDonkey file-sharing application in public GPRS/UMTS network Multiple source download via GPRS

13 eDonkey Data Exchange via UMTS
UMTS upload restricts throughput UMTS download restricts throughput Max-min-fair share of available bandwidth is observed How to model the bandwidth allocation of fair-share P2P file-sharing applications?

14 Simulation of Fair-Share Bandwidth Allocation
Events which influence the bandwidth allocation are that a peer… starts the download of a file finishs a download goes offline while downloading continues downloading a file after joining the network again We consider eDonkey-like file-sharing networks Aim: Modeling of bandwidth allocation in fair-share networks Events t Dt Dt Dt Dt Dt Dt Dt Dt Dt Dt Dt Computation of allocated bandwidth t

15 Stream-based or packet-based approach?
TCP can be neglected if conditions are fulfilled (540 kB blocks) Signaling vs. data exchange: RTT vs. bandwidth

16 What means fair-share? All peers get the same bandwidth
If a peer cannot consume completely the allocated bandwidth, the surplus is distributed among the remaining peers Peer 3 11 kbps Peer 2 3 kbps 11 kbps 3 kbps uploading Peer 1 40 kbps Peer 4 20 kbps Peer 5 40 kbps 13 kbps 13 kbps

17 Periodic Bandwidth Allocation
For each Dt, for each peer: compute bandwidth allocation Peer 3 Peer 2 Allocated bandwidth can be overbooked or underbooked Peer 1 Peer 4 Peer 5

18 Market-Based Bandwidth Allocation
For each event, consider affected, i.e. connected, peers All affected peers make a bid Strategy If there are no other bids, propose x = not allocated bandwidth / #peers If minimal bid y of all affected peers is smaller than x, then keep bid y and compute x‘ If all bids are larger than x, then bid x on these connections Finish: If lower bid of a connection is the minimal bid of a peer and is repeated

19 Market-Based Bandwidth Allocation
Downloading network links Uploading network links 20 NL3: 40kbps 3.333 15 NL4: 30kbps NL0: 10kbps 10 NL1: 10kbps 5 NL5: 10kbps 5 NL2: 80kbps NL6: 10kbps 20 10 NL7: 10kbps Initial bid: x = BW / #peers 40 NL8: 40kbps

20 MBBA Example Downloading network links Uploading network links 20
NL3: 40kbps 3.333 15 3.333 NL4: 30kbps NL0: 10kbps 26.667 10 NL1: 10kbps 5 NL5: 10kbps 5 25 3.333 NL2: 80kbps 5 NL6: 10kbps 25 6.667 25 20 10 NL7: 10kbps If minimal bid y of all connected peers holds y<x, then set bid y and compute x‘ x = BW / #peers. If all y<x, keep x. 40 NL8: 40kbps

21 MBBA Example Downloading network links Uploading network links 20
NL3: 40kbps 3.333 3.333 NL4: 30kbps NL0: 10kbps 26.667 10 NL1: 10kbps 5 NL5: 10kbps 25 3.333 NL2: 80kbps 5 NL6: 10kbps 25 6.667 25 10 NL7: 10kbps Finish: If lower bid of a connection is the minimal of a peer and is repeated 40 NL8: 40kbps

22 MBBA Example Downloading network links Uploading network links
NL3: 40kbps 3.333 NL4: 30kbps NL0: 10kbps 5 26.667 NL1: 10kbps NL5: 10kbps 24.444 5 25 NL2: 80kbps 6.667 NL6: 10kbps 6.667 24.444 24.444 10 NL7: 10kbps Finish: If lower bid of a connection is the minimal of a peer and is repeated Minimal bid y<x, set y and compute x‘ 40 NL8: 40kbps

23 MBBA Example Downloading network links Uploading network links
NL3: 40kbps 3.333 NL4: 30kbps NL0: 10kbps 5 26.667 NL1: 10kbps NL5: 10kbps 24.444 31.667 6.667 NL2: 80kbps NL6: 10kbps 10 24.444 31.667 24.444 10 NL7: 10kbps Finish: If lower bid of a connection is the minimal of a peer and is repeated If all y<x, keep x. 40 NL8: 40kbps

24 MBBA Example Downloading network links Uploading network links
NL3: 40kbps 3.333 NL4: 30kbps NL0: 10kbps 5 26.667 NL1: 10kbps NL5: 10kbps 6.667 NL2: 80kbps NL6: 10kbps 36.666 31.667 10 NL7: 10kbps Finish: If lower bid of a connection is the minimal of a peer and is repeated 40 NL8: 40kbps

25 MBBA Example Downloading network links Uploading network links
NL3: 40kbps 3.333 NL4: 30kbps NL0: 10kbps 5 26.667 NL1: 10kbps NL5: 10kbps 6.667 NL2: 80kbps NL6: 10kbps 10 NL7: 10kbps 36.666 NL8: 40kbps

26 Comparison PBA vs. MBBA Exchange of small files

27 Comparison PBA vs. MBBA Exchange of large files
MBBA: computes and allocates immediately fair-share bandwidth -> in real systems this requires some time PBA: bandwidth overbooked or underbooked for Δt -> in next step bandwidth is adapted

28 Conclusion For P2P content distribution networks, like eDonkey, resource access control is crucial point Fair-share bandwidth allocation has to be modeled We have proposed two stream-based approaches which are valid in the considered scenarios Periodic bandwidth allocation PBA Market-based bandwidth allocation MBBA Depending on the number of events influencing the resource access control PBA or MBBA has to be preferred


Download ppt "Towards Efficient Simulation of Large Scale P2P Networks"

Similar presentations


Ads by Google