COMP5416/4416 Assignment 1 2023 S2Due: 10/Sep/2023 23:598 questions. Q1-Q5, 8 points each. Q6-Q8, 20 points each.
Q1.
(8%) As shown in the figure below, a file of size F = 1000 + S bytes is transmitted on an end-to-endconnection over three links, where S is the last three digits of your student number. For example, if yourstudent number is 490123456, then S = 456 and F = 1456 bytes. Each link is 100 km. The signalprorogation speed is 2×108 m/s. Assume that a header of 28 bytes (UDP header and IP header) is addedto each packet. The bandwidth of all links is R = 1 Mbps. The nodes use thestore-and-forward scheme.No packet is lost and there is no bit error in the transmission.
(1) How long does it take to transmit the file if the whole file is transmitted as a single packet.
(2) We break the file into smaller packets in the store-and-forward scheme. Assume that each time you break the file to make a new packet, you have to add 28 bytes as the header of the new packet. What should be the optimal number of the packets? What is the overall time to transmit the file with the optimal number of packets?
Q2.
(8%) Consider that you want to establish a new network in domain myuni.edu. You have two hostswww.welcome.myuni.edu andwww.home.myuni.edu with IP addresses labelled in the figure. Also,you have the authoritative DNS server.
(1) What resource records (RRs) do you need to add in the DNS hierarchy? Where do you need to addthese RRs?
(2) Now that host 1 requests the IP address ofwww.welcome.myuni.edu. How is the IP addressaddressed? How are the RRs in (1) used? Assume that the local DNS server dns.mypoly.com only knows the root DNS server. Use iterative approach.
(3) Now that another host 2 requests the IP address ofwww.home.myuni.edu. How is this addressed.This time the local DNS server dns.mypoly.com has known the IP addresses of TLD DNS server andauthoritative DNS server. Use iterative approach.
Q3.
(8%). In this question, we consider the Tit-for-Tat algorithm in aP2P system. As shown in the figurebelow, A and B are communicating with their top-4 partners in a P2P system. In this scenario, each peersends chunks to those four peers currently sending her chunks athighest rate. A’s uploading anddownloading data rates of the th partner are ! and ! respectively; B’s uploading andownloadingwww.welcome.myuni.edu Now A optimistically unchoked B, with a sending data rate of %&. %& is arandom variable, independent
-. If A becomes a top-4 sender of B, B will start to serve A with a sending datarate &% = %&. What is the probability that both A and B find each other a top-4 sender? Show yourmathematical derivations. Please note that top means “strictly greater than”. " , then it is not regarded as top 4. %& must be strictly greater than one of the !
" values.
Q4.
In the figure below, TCP Reno transmits packets with the givensequence numbers on channel. Eachpacket is with the same size. At time T1, EstimatedRTT = 16 ms, and DevRTT = 8 ms. We use thefollowing update functions.EstimatedRTT = 0.875 EstimatedRTT + 0.125 SampleRTTDevRTT = 0.75 DevRTT + 0.25 |SampleRTT-EstimatedRTT|TimeoutInterval = EstimatedRTT + 4 DevRTT
(1) Compute the value of X in ms.
(2) What ACK number does the receiver send at “ACK ?”?
(3) Suppose ssthresh=16 (segment) and cwnd=5 (segment) at T1.What is cwnd at the sender at T3,T4, and T5?
Q5.
(8%) Consider the following DHT networks. Transmission over each link takes 10 ms. The links aredirectional as noted in the figures. When a key is found, the key holder creates a direct connection tothe query-originating node and transmits the key. The delay on that link can beignored. For example,if 1 is the query node and 5 is the keyholder, then the delay is 40 ms. What is the average time to search
Q6.
(20%) In the Tutorial 1, question 1, we consider a system where two users are sharing the samechannel with utility as follows.We have successfully derived three Nash Equilibria for this problem. We now want to investigate thequestion one step further through a learning algorithm. The two users do not directly set theirtransmission probability ( #, '), but to gradually “learn” the transmission probabilities iteratively. Weuse ( #( ), '( )) to denote their learnt values after the th iteration.Suppose at very beginning, ( #( to check how ( #( ), '( )) will change.
(1) Let =0.001, ( #(0), '(0)) = (0.3,0.7). Plot ( #( ), '( )) vs. where is from 1 to 10000. Doesthe learning algorithm approach to a Nash Equilibrium after a large number of iterations?
(2) Now you can choose arbitrary valid ( #(0), '(0)) values. Does the learning algorithm approach toa Nash Equilibrium after a number of iterations? Which Nash Equilibrium does it approach to? Discuss how the initial values ( #(0), '(0)) will influence the final results. [User 2 is a jammer] Now we consider another scenario that user 1 is a normal user but user 2 is ajammer. That means, user 2’s target is to fail user 1’s transmission. If both aretransmitting, user 2 willgain a positive utility. However, if user 1 is not transmitting but user 2 is transmitting, user 2 will lose its energy. The Utility table is as follows:
(3) Use a similar approach in the tutorial 1; calculate the transmission probabilities of ( #, ') of thetwo users in the new case when a Nash Equilibrium is reached.
(4) Repeat the progress of (1) and (2) for the new case.
(5) Discuss how Nash Equilibrium in the new case (user 2 is a jammer) is different from NashEquilibrium in the original case (both users are normal users). (bonus point)
Q7.
(20%) In this task, you will run a Wireshark experiment. Please follow the following procedure andanswer questions.Please note that you will need to connect to VPN if you are not on campus. You will need to use CiscoAnyConnect. You need to choose the correct interface in Wireshark indicating the VPN you are using.Otherwise, you cannot see the correct packets captured.You are only allowed to use one of the following web browsers: Google Chrome, Firefox, Safari, orMicrosoft Edge. Please update it to the latest version.
1) Open a web browser. Clear the cache of the browser.
2) Start up the capture of Wireshark packet sniffer.
3) Enter the following URL into your browser.http://wbserver.cs.usyd.edu.au/A1.html
4) Your browser should display text and two images.
5) When the images are completely loaded, enter the following URL into your browserhttp://wbserver.cs.usyd.edu.au/A2.html
6) When the images are completely loaded, refresh your browser (e.g., press F5).
7) When the images are completely loaded, stop Wireshark packet capture.
Q8.
(20%) Consider the following scenario where two schools of one university are installing web cachesor users.Inside each school, the one-way propagation delay from each host to the school’s gateway is 2ms. Thelink bandwidth is assumed to be infinity (sufficient large). The link bandwidth from each school’sgateway to the university’s gateway is 10Mbps, and one-way propagation delay is 4ms. The access linkbandwidth from the university’s gateway to the Internet is 20Mbps, and assume that the one-waypropagation delay from the gateway to any server in the public Internet is 6ms.On average, the requests from each school to view the webpage (of the public Internet) arrive at the rateof 1000 requests per second and the webpage is 1000 bytes (which fits exactly one packet). Ignore theheader size. The requests themselves are very small and we assume that they do not take any bandwidth.To analyse the delay, we model the system as there are three queues in the system: the downlink fromthe public Internet to the university’s gateway (Queue 1); the downlink from theuniversity’s gatewayto school A’s gateway (Queue 2); the downlink fromtheuniversity’s gateway to school B’s gateway(Queue 3). The queues are modelled as M/M/1 queues. In this question, we only consider thepropagation delay (uplink and downlink) and the waiting time at the three queues (downlink only). Forexample, in Queue 2, the arrival rate is 1000 packets per second, and the service rate is #×#!, = 1250packets per second. The waiting time at the queue can be calculated ##'-*.# = 0.004 s = 4 ms. Forsimplicity, we also ignore the TCP setup delay. The propagation delays (uplink anddownlink) are onlycounted once.
(1) Without cache, what is the average overall delay for each user to derive its requested webpage?Only the propagation delays (once) and the waiting delays at the queues are considered. All other delays are ignored.
(2) After step (1), conditional GET can be used. 10% of the original requests can be addressed by 304We assume that these response messages do not take any bandwidth. Only propagation delay is countedfor these response messages. (We assume that these messages are with small size and they do notexperience waiting delays at the queues.)
(3) After step (2), caches can be installed at the school’s gateway, so that another 10% of the originalrequests can be served by the schools’ proxies (proxies A and B). What is the average overall delay for each user to derive its requested webpage? (In this question, 10% goes to the original server with 304,10% goes to the proxy with 200, and 80% goes to the original server with 200).
(3) After step (2), cache can be installed at the university’s gateway, so that another 20% of the originalrequests can be served by the university’s proxy (proxy U). (There are no schools’ proxies.) What is theaverage overall delay for each user to derive its requested webpage? (In this question, 10% goes to the original server with 304, 20% goes to the proxy with 200, and 70% goes to the original server with 200).
(4) After step (2), caches can be installed at all gateways (proxies A, B, and U). a% of the originalrequests can be served by the schools’ proxies, and b% of the original requests can be served by thuniversity’s proxy. However, due to the limited storage owned by the university’s ICT department, wehave 2a%+b% ≤ 20%. Calculate the average overall delay for each user to derive its requested webpageas a function of a and b and find the optimal a and b. (In this question, 10% goes to the original serverwith 304, a% goes to the school’s proxy with 200, b% goes to the