GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent Weishuai Yang Nael Abu-Ghazaleh {wyang,nael}@cs.binghamton. edu
Dec 31, 2015
GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
Weishuai Yang
Nael Abu-Ghazaleh
{wyang,nael}@cs.binghamton.edu
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
2
Peer-to-Peer
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
3
P2P Simulation Emphases
• Looking up
• Downloading
1
54
2
6
3
1
54
2
6
3
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
4
BitTorrent (BT) Scenario
HTTP GET
Tracker
Peer 1(Leecher)
Peer 2(Leecher)
Peer 3(Seed)
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
5
BitTorrent (BT) Scenario
Tracker
Peer 1(Leecher)
Peer 2(Leecher)
Peer 3(Seed)
.torrent file
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
6
BitTorrent (BT) Scenario
Tracker
Peer 1(Leecher)
Peer 2(Leecher)
Peer 3(Seed)
Announce Tracker
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
7
BitTorrent (BT) Scenario
Tracker
Peer 1(Leecher)
Peer 2(Leecher)
Peer 3(Seed)
Peer List
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
8
BitTorrent (BT) Scenario
Tracker
Peer 1(Leecher)
Peer 2(Leecher)
Peer 3(Seed)
Hand Shaking
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
9
BT Algorithms
• Piece Selection– Strict Priority– Rarest First– Random First– End Game Mode
• Peer Selection (server side and peer side)• Rechoking, optimistic unchoking, and anti-
snubbing• Pipeline request
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
10
GPS: General P2P Simulator
http://www.cs.binghamton.edu/~wyang/gps
• Modeling downloading process
• Message level simulation
• Graphical
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
11
GPS Architecture
Physical Networks(Nodes, Links ...)
Look-up Protocols(Chord, CAN ...)
P2P Application Agents(BT, Gnutella ...)
P2P User ActionsUser Action Model
ResourceAllocation Model
Network TopologyModel
SimulatorConfiguration
ProtocolConfiguration
General P2P Simulator
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
12
Framework Components
• Core Components– Simulation Engine– Topology– Protocols– Agents (includes Peers & Servers)– Documents– Keywords
• Special Components– GUI– Asynchronous Logging
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
13
BTSim Components
• BTProtocol
• BTTrackers and BTPeers
• BTDocuments
• BTSessions, BTSockets and BTConnections
• BTAlgorithms
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
14
Accounting for Network & Protocol Effect
• Peer Based Bandwidth(PBB) Flow Model– Peer End Allocation
• Dynamic Link-Level Network Bandwidth (DLNB) Flow Model– Bandwidth Allocation Algorithm
• TCP Based Flow (TBF) Model– Macro Formula: BW=MSS*C/(RTT*P^(1/2))
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
15
Macro Model Simulation Validation
MSS=536 bytes RTT=1.7msC=1.22p=0.1%
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
16
Link Based Flow Model Simulation Validation
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
17
Scalability Study
• Peers randomly attached to non-transit nodes• Documents with rankings are randomly stored at Peers• User actions are randomly initiated every 50 seconds
Nodes Peers Docs(500M) Downloads
1 16 8 4 4
2 64 32 16 16
3 252 128 64 64
4 1054 512 256 256
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
18
Scalability Study cont.
(DLNB based)
9/29/2005 GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent
19
Questions?
Thank You!
Weishuai [email protected]