{"action":"created","issue":{"url":"https://api.github.com/repos/Tribler/tribler/issues/2783","repository_url":"https://api.github.com/repos/Tribler/tribler","labels_url":"https://api.github.com/repos/Tribler/tribler/issues/2783/labels{/name}","comments_url":"https://api.github.com/repos/Tribler/tribler/issues/2783/comments","events_url":"https://api.github.com/repos/Tribler/tribler/issues/2783/events","html_url":"https://github.com/Tribler/tribler/issues/2783","id":205545911,"number":2783,"title":"Swarm size community: content popularity","user":{"login":"synctext","id":325224,"avatar_url":"https://avatars4.githubusercontent.com/u/325224?v=4","gravatar_id":"","url":"https://api.github.com/users/synctext","html_url":"https://github.com/synctext","followers_url":"https://api.github.com/users/synctext/followers","following_url":"https://api.github.com/users/synctext/following{/other_user}","gists_url":"https://api.github.com/users/synctext/gists{/gist_id}","starred_url":"https://api.github.com/users/synctext/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/synctext/subscriptions","organizations_url":"https://api.github.com/users/synctext/orgs","repos_url":"https://api.github.com/users/synctext/repos","events_url":"https://api.github.com/users/synctext/events{/privacy}","received_events_url":"https://api.github.com/users/synctext/received_events","type":"User","site_admin":false},"labels":[{"id":32053670,"url":"https://api.github.com/repos/Tribler/tribler/labels/long-term","name":"long-term","color":"FFFF00","default":false},{"id":285783129,"url":"https://api.github.com/repos/Tribler/tribler/labels/possible%20student%20task","name":"possible student task","color":"fef2c0","default":false}],"state":"open","locked":false,"assignee":{"login":"MaChengxin","id":7589678,"avatar_url":"https://avatars4.githubusercontent.com/u/7589678?v=4","gravatar_id":"","url":"https://api.github.com/users/MaChengxin","html_url":"https://github.com/MaChengxin","followers_url":"https://api.github.com/users/MaChengxin/followers","following_url":"https://api.github.com/users/MaChengxin/following{/other_user}","gists_url":"https://api.github.com/users/MaChengxin/gists{/gist_id}","starred_url":"https://api.github.com/users/MaChengxin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MaChengxin/subscriptions","organizations_url":"https://api.github.com/users/MaChengxin/orgs","repos_url":"https://api.github.com/users/MaChengxin/repos","events_url":"https://api.github.com/users/MaChengxin/events{/privacy}","received_events_url":"https://api.github.com/users/MaChengxin/received_events","type":"User","site_admin":false},"assignees":[{"login":"MaChengxin","id":7589678,"avatar_url":"https://avatars4.githubusercontent.com/u/7589678?v=4","gravatar_id":"","url":"https://api.github.com/users/MaChengxin","html_url":"https://github.com/MaChengxin","followers_url":"https://api.github.com/users/MaChengxin/followers","following_url":"https://api.github.com/users/MaChengxin/following{/other_user}","gists_url":"https://api.github.com/users/MaChengxin/gists{/gist_id}","starred_url":"https://api.github.com/users/MaChengxin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MaChengxin/subscriptions","organizations_url":"https://api.github.com/users/MaChengxin/orgs","repos_url":"https://api.github.com/users/MaChengxin/repos","events_url":"https://api.github.com/users/MaChengxin/events{/privacy}","received_events_url":"https://api.github.com/users/MaChengxin/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/Tribler/tribler/milestones/19","html_url":"https://github.com/Tribler/tribler/milestone/19","labels_url":"https://api.github.com/repos/Tribler/tribler/milestones/19/labels","id":951197,"number":19,"title":"Backlog","description":"","creator":{"login":"whirm","id":529494,"avatar_url":"https://avatars5.githubusercontent.com/u/529494?v=4","gravatar_id":"","url":"https://api.github.com/users/whirm","html_url":"https://github.com/whirm","followers_url":"https://api.github.com/users/whirm/followers","following_url":"https://api.github.com/users/whirm/following{/other_user}","gists_url":"https://api.github.com/users/whirm/gists{/gist_id}","starred_url":"https://api.github.com/users/whirm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whirm/subscriptions","organizations_url":"https://api.github.com/users/whirm/orgs","repos_url":"https://api.github.com/users/whirm/repos","events_url":"https://api.github.com/users/whirm/events{/privacy}","received_events_url":"https://api.github.com/users/whirm/received_events","type":"User","site_admin":false},"open_issues":171,"closed_issues":117,"state":"open","created_at":"2015-01-26T12:02:36Z","updated_at":"2017-06-12T11:54:05Z","due_on":null,"closed_at":null},"comments":30,"created_at":"2017-02-06T10:44:53Z","updated_at":"2017-07-15T13:37:13Z","closed_at":null,"body":"The popularity of content is essential. Currently we do not have a method to determine if a magnet links points to a large swarms or a dying swarm.\r\n\r\nThis work enables novel caching approaches, see \"[Efficient analysis of caching strategies under dynamic content popularity](http://ieeexplore.ieee.org/abstract/document/7218613/)\".\r\n\r\nEach peer in the network must contact a swarm to determine the size. Checking 1 swarm every 5 seconds to conserve bandwidth means it takes many hours to check several thousand swarms. It is possible to share this information with your neighbors. By gossiping this swarm size information around, swarms need to be checked only once and bandwidth is saved. \r\n\r\nThe swarm size community is mechanism to collaboratively determine the size of swarms. The step from magnet link to swarm size involves numerous steps. Resolving a magnet link means using the DHT mechanism. Checking a swarm and doing a bittorrent handshake also takes numerous UDP packets and dealing with non-responsive IPv4 addresses.\r\n\r\nExperiments: \r\n  - App on Android Google Play market\r\n  - determine the exact bytes for each packet in the DHT and Bittorrent handshake and total lookup.\r\n  - determine the influence of swarm size on Video-on-demand performance (what is a healthy swarm size)\r\n  - how many neighbors do you need to collaborate with to make cooperation efficient\r\n  - credit mining / automagic caching of most popular content to boost system efficiency\r\n  - caching on Android: donate all your resources to Tribler (boost network with old/unused phones)\r\n  - boost with Raspberry Pi 3\r\n\r\nScience:\r\n  - http://dl.acm.org/citation.cfm?id=1787254\r\n  - http://static.usenix.org/events/iptps/tech/full_papers/Dan.pdf\r\n  - http://ieeexplore.ieee.org/abstract/document/6761239/\r\n  - http://link.springer.com/chapter/10.1007/11758549_62\r\n  - http://ieeexplore.ieee.org/abstract/document/6193512/\r\n  - http://ieeexplore.ieee.org/abstract/document/6883812/\r\n  - http://ieeexplore.ieee.org/abstract/document/7218613/"},"comment":{"url":"https://api.github.com/repos/Tribler/tribler/issues/comments/315534421","html_url":"https://github.com/Tribler/tribler/issues/2783#issuecomment-315534421","issue_url":"https://api.github.com/repos/Tribler/tribler/issues/2783","id":315534421,"user":{"login":"synctext","id":325224,"avatar_url":"https://avatars4.githubusercontent.com/u/325224?v=4","gravatar_id":"","url":"https://api.github.com/users/synctext","html_url":"https://github.com/synctext","followers_url":"https://api.github.com/users/synctext/followers","following_url":"https://api.github.com/users/synctext/following{/other_user}","gists_url":"https://api.github.com/users/synctext/gists{/gist_id}","starred_url":"https://api.github.com/users/synctext/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/synctext/subscriptions","organizations_url":"https://api.github.com/users/synctext/orgs","repos_url":"https://api.github.com/users/synctext/repos","events_url":"https://api.github.com/users/synctext/events{/privacy}","received_events_url":"https://api.github.com/users/synctext/received_events","type":"User","site_admin":false},"created_at":"2017-07-15T13:37:13Z","updated_at":"2017-07-15T13:37:13Z","body":"Would suggest to remove the checking of dead swarms. Additionally, split the checking of healthy and unhealthy swarms. Use a three strikes algorithms for swarms. A swarm is declared dead and will _never_ be checked again if zero seeders and zero leechers are found three times with at least 24h between measurements."}}
{"actor":{"display_login":"synctext"}}