A 100Mb file is to be distributed to N peers via the Internet. The 10Gb file\'s
ID: 3888057 • Letter: A
Question
A 100Mb file is to be distributed to N peers via the Internet. The 10Gb file's file server has an upload rate u_server = 20Mbps. All peers have upload rates of u_peer = 1Mbps and download rates of d_peer = 5Mbps (i.e., standard DSL rates). The Internet connections between the server and the peers' uplinks and downlinks al have 1Gbps or greater capacity. (a) Compute lower bounds for the time (in minutes) required to fully distribute the file to N = 1000 peers via both, the client-server, and the peer-to-peer distribution architectures. (b) Repeat (a) for the case of N = 10 peers and briefly comment on what your computations suggest about the relative merits of the two architectures.Explanation / Answer
Part a:
File Size F=100 Mb, Number of peers N = 1000, server upload rate userver=20Mbps, peer download rate upeer=1 Mbps, peer upload rate dpeer=5Mbps
For client server architecture minimum time to distribute the file will be the time each user takes to download the file incase server upload speed is enough to allow users to download at their max download rate. This id F/dpeer. If that is not so then it will be the time the server can upload the file N times as it has to upload this file to each user or NF/userver
tmin(c-s)=max(NF/userver, F/dpeer)=max(1000*100/20,100/5)=max(5000,20)=5000 seconds
During peer to peer architecture, its not just the server that is uploading the file but the peers as well if needed. Hence the upload speed of server is compounded by the upload speed of peers if required. We also need to take care that the file must be uploaded atleast once by the server to a peer to be available for download for others. Hence time taken can not be less than the amount taken by the server to transfer the file once even if the peer's upload speeds multiplied overtake it.
So now tmin(p-p)=max(NF/(userver+Nupeer, F/dpeer, F/userver)=max(1000*100/(20+1000*1), 100/5, 100/20)=max(98.04,20,5)=98.04 sec
Part b:
Changing N to 10
tmin(c-s)=max(NF/userver, F/dpeer)=max(10*100/20,100/5)=max(50,20)=50 seconds
tmin(p-p)=max(NF/(userver+Nupeer, F/dpeer, F/userver)=max(10*100/(20+10*1), 100/5, 100/20)=max(33.33,20,5)=33.33 sec
Comparing the ratios of the times tmin(p-p):tmin(c-s) for both cases we see peer to peer architecture leads to humongous reduction in download times for N=1000. For N=10 there is a reduction but not so pronounced. Assuming setting up peer to peer architecture needs more investment than the client server minimal architecture, we can conclude that incase there is heavy traffic, we should opt for peer to peer architecture. Once we do that, the download times decrease exponentially depending upon the number of user.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.