MC-FTP (Multicast File Transfer Protocol): Implementation and Comparison with BitTorrent RVS Seminar HS 2007 MC-FTP (Multicast File Transfer Protocol): Implementation and Comparison with BitTorrent Alican Gecyasar University of Bern 1
Overview > Motivation > Bittorrent > Multicast IP Multicast Overlay Multicast > MC-FTP Protocol Example > Planet-Lab > Conclusion & Outlook > Questions 2
Motivation > Disadvantage of Client-Server communication Overload of Server Slow Data Transfer Not efficient Single Point of Failure Reliable (TCP) > Unicast P2P-Networks No Overload, Reliable (if TCP used) Slurpie Bittorrent > Multicast-Networks No Overload, Efficient, Fast, No Single Point of Failure, Not Reliable (UDP) 3
Slurpie > Slurpie's approach Get seed nodes from topology server Form mesh network Contact file server only when needed C1, C2 TS C3 File 1 C1 FS C2 4
Bittorrent > File divided into pieces >.torrent File Length, Name, Hashing Info(SHA1), Tracker URL > Tracker as negotiator Who else is connected? > Piece Selection Rarest First 5
Bittorrent > Example: Tracker Knows about B F C E contacts informs A Down-/Upload Downloaded Chunks 6
Multicast > Instead of Unicast S A B > Multicast! S A B 7
IP Multicast & Overlay Multicast > IP-Multicast IP Range (224.0.0.0-239.255.255.255) Send only once Replicated by Router ISP restrictions Not available allover > Overlay-Multicast Multicast Functionality at End-Systems Multicast Tree not via Routers Duplicated at End-Systems Redundancy 8
MC-FTP > Network using Multicast IPMulticast Overlay-Multicast (Scribe/Pastry) > File Leader -based / -less approaches > One File Management Group per File > File divided into Chunks > Multicast Group for each Chunk per Bandwidth > M to N Data Transfer 9
MC-FTP > File Leader based approach Manages Multicast groups Periodically sends out KeepAliveMessages Can declare a new File Leader Omniscient because of StatusMessages by clients > Clients Sends out StatusMessages Joins groups > File Leader less approach Completely distributed 10
MC-FTP Protocol > StatusMessage: Max. 256 Chunks T IP P_ B _Chunks... 0 1 5 7 8 40 Bytes > KeepAliveMessage: T ( C IP P_ B ) * sending groups 0 1 2 6 8 9 Bytes > To be extended T: Type, P: Port, B: Bandwidth, C: Chunk number 11
MC-FTP Example 1 130.92.70.251 9001 1 011 A F B 1 208.117.131.115 8721 1 100 joins C 1 192.33.90.68 9011 2 010 E D 1 192.33.90.195 7823 2 101 Starts sending 0 3 192.33.90.195 7823 2 2 192.33.90.68 9011 2 1 192.33.90.195 7824 2 3 147.46.240.166 9021 1 2 130.92.70.251 9001 1 1 208.117.131.115 8721 1 1 147.46.240.166 9021 1 001 12
Planet-Lab > Since 2003, 829 Nodes at 410 Sites in 40 Countries > Academic Institutions & Industrial Research 13
Planet-Lab > Slices > VM on Node per Slice Node Mgr Local Admin VM 1 VM n Virtual Machine Monitor 14
Conclusion & Outlook > Use Multicast instead of Unicast! > MC-FTP Efficient No Overload No Single Point of Failure File Leader less approach File Leader based approach Being implemented Compete against Bittorrent on Planet-Lab & Crunches 15
Questions >...? 16