Real-time visualisation of swarm dynamics
Research question: provide the end-user with insight into
the health and contributions to Bittorrent content distribution swarms and the ability to self-police
bandwidth. Context and motivation
top level strategies:
- 1 stunning case study
- more user involvement + actions to take
- increased understanding and behavioural change to boost performance
- entertainment
Top level goals
- Show the bandwidth contributions of peers and give the user full control of upload bandwidth contributions, blocking of peers, and social markers visible to others: Love&Hate. This will generate an emergent self-policing system where users determine the bandwidth allocation policy and the real-time visualiser is an enabling mechanism
- Show for each user their bandwidth contribution or leeching for naming&shaming + send bandwidth love & kick-out button
- Reward good behaviour with a prominent visual placement as to improve performance
- show who the most socially connected people are and provide a desire to join
- entertainment and social glue: give boring user something to look at + imprint community membership
- show something new
- network insight
- mental model of the economics of swarms: every MByte is contributed by a real person
- mental model that bandwidth comes from people
- mental model that high performance comes from increased sharing
- explain zero-sum game: Alice gave 23 MByte to Bob, Charlie send 30MByte to...
- insight into you sharing ratio, sharing reputation, or Internet speed
- increase the feeling of connectedness of participants: group formation, shared goals&beliefs
- Show user that all bandwidth comes from community members and uploads go to real people
- Insight into Internet connection usage, Mbps stats
- voting on real-fake of moderations and moderators from Rameez
Deployment ideas
Possible extended implementation for deployment 3-4 months before end of thesis
- Light-weight display of connected peers stats
- Display method is a single spiral shape with fixed even-spaced degrees of separation
- What to display
- Default is distance to centre for latency
- Default for size is top bandwidth
- Default for sorting is by bandwidth ( 1 O'clock position top peers, 11 O'clock lowest peers)
- Default for color is T4T vs. G2G peers
- Which peers to display
- Enable or disable classes of peers in a corner
- Default is 80 peers in five classes (all enabled)
- Highest Bandwidth T4T, idem for G2G
- Lowest latency (close proximity) T4T, idem for G2G
- Most uploaded MBytes T4T, idem for G2G
- Random peers T4T, idem for G2G
- Possible action for users to do
- Block peer
- Give high priority
- By default share the network statistics and user actions for research purposes
- Allow user to disable crawling in privacy setting
- clear explanation on website
- Crawl the network for thesis graphs
- rendering performance on their machines (startup+refresh for CPU config)
- actual usage by users
http://images.google.com/images?q=tag%20cloud%20examples
Tribler integrated prototype
Keep it simple, get in working in the wild
- Integrated in Tribler GUI, new "peers" button in red color
- Tribler integration, use/expand stats API
- Refresh (including generation and sorting) 150 msecs
- Test response time
- Keep "header"/search bar of Tribler above visualisation
- Devise a better way to scatter the peers in the window
- 1st sort by: bandwidth when connected
- 2nd sort by: last activity of MByte exchange in a swarm when no longer connected
- two colors: t4t, Tribler; exactly 25 most recent connected peers each
- Always display 25 + 25 peers with most recent 'last activity'
- Mix: t4t upload, t4t downloads, bartercast
- Total Download stats of both swarm and .torrent files
- Use normalised distance: 1Kbyte far, 1GByte close.
- Keep info between sessions using storage by PermID (Tribler only)
- How to give users more control of their bandwidth using up/down peer voting like Reddit
Thesis
- Introduction (P2P networks, BitTorrent, Tribler)
- Problem description
See above research question provide the end-user with insight into... plus real-time rendering
- Design and implementation
Design methodology: Continuous prototyping, increase sophistication, learn and plan
What to display, what stats, how this is done, screenshot, Integration with bartercast 2
Send bartercast2 message, receive message, parse and store in database,
link with visualization
- Performance
Response Time of Prototypes and Implementation
Resources Utilization
- Future Work
Deploy and measure voting behavior
|