Help Please 6. Programming Assignment: Based on the content covered in the class
ID: 3603402 • Letter: H
Question
Help Please
6. Programming Assignment:
Based on the content covered in the class, you are required to implement a simplified
network client-server simulating program. You can conduct the homework by yourself
or work with another student as a group. You are required to set up your system with
computers to emulate the sender, receiver and router, which are connected with TCP
as shown in the following figure.
Figure 1: Network Transmission Model (Topology)
The sender will send Y packets (changing Y from 10; 20; 40; 60; 80; 100) via the router
to the receiver. The receiver will reply with corresponding acknowledge packet as in
the following figure.
_ We apply the Selective Repeat mechanism for sender and receiver. For the window
size, you should use window size equals to 5.
_ The router in the middle will randomly drop a packet and ACK with a probability
(10+X) %, where X is the last digit of the four digit number 9788 and your partners last digit
of the four digit number 5973.
_ We further assume that the router not only randomly drop data packets, but also
acknowledge packets.
Router Sender Receiver Figure 1: Network Transmission Model (Topology)Explanation / Answer
1. Correctness (+5%): The implementation is correct and has none of the functional or concurrency problems listed for the normal portion of the assignment. 2. Reduced global lock contention (+10%): The implementation minimizes the time spent in synchronization which has a potential for global lock contention, but does not completely remove it. For example, at this level, an implementation is still allowed to use a single global lock to protect lookups on the map of chat room names to ChatState objects. 3. Minimal global lock contention (+15%): The implementation has no global lock contention whatsoever, except in making the initial socket connections, as accepting connections is an inherently serial process. Note that at this level, even lookups on the map of chat rooms names to objects must be completely concurrent.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.