Question

In: Computer Science

two network entities

Suppose we have two network entities, A and B. B has a supply of data messages that will be sent to A according to the following conventions. When A gets a request from the layer above to get the next data (D) message from B, A must send a request (R) message to B on the A-to-B channel. Only when B receives an R message can it send a data (D) message back to A on the B-to A channel. A should deli ver exactly one copy of each D message to the layer above. R messages can be lost (but not corrupted) in the A-to-B channel; D messages, once sent, are always delivered correctly. The delay along both channels is unknown and variable. Design (give an FSM description of) a protocol that incorporates the appropriate mechanisms to compensate for the loss-prone A-to-B channel and implements message passing to the layer above at entity A, as discussed above. Use only those mechanisms that are absolutely necessary.

Solutions

Expert Solution

Because the A-to-B channel can lose request messages, A will need to timeout and retransmit its request messages (to be able to recover from loss). Because the channel delays are variable and unknown, it is possible that A will send duplicate requests (i.e., resend a request message that has already been received by B). To be able to detect duplicate request messages, the protocol will use sequence numbers. A 1-bit sequence number will suffice for a stop-and-wait type of request/response protocol.

A (the requestor) has 4 states:

 

   “Wait for Request 0 from above.” Here the requestor is waiting for a call from above to request a unit of data. When it receives a request from above, it sends a request message, R0, to B, starts a timer and makes a transition to the “Wait for D0” state. When in the “Wait for Request 0 from above” state, A ignores anything it receives from B.

 

   “Wait for D0”. Here the requestor is waiting for a D0 data message from B. A timer is always running in this state. If the timer expires, A sends another R0 message, restarts the timer and remains in this state. If a D0 message is received from B, A stops the time and transits to the “Wait for Request 1 from above” state. If A receives a D1 data message while in this state, it is ignored.

 

   “Wait for Request 1 from above.” Here the requestor is again waiting for a call from above to request a unit of data. When it receives a request from above, it sends a request message, R1, to B, starts a timer and makes a transition to the “Wait for D1” state. When in the “Wait for Request 1 from above” state, A ignores anything it receives from B.

 

   “Wait for D1”. Here the requestor is waiting for a D1 data message from B. A timer is always running in this state. If the timer expires, A sends another R1 message, restarts the timer and remains in this state. If a D1 message is received from B, A stops the timer and transits to the “Wait for Request 0 from above” state. If A receives a D0 data message while in this state, it is ignored.

 

The data supplier (B) has only two states:

 

   “Send D0.” In this state, B continues to respond to received R0 messages by sending D0, and then remaining in this state. If B receives a R1 message, then it knows its D0 message has been received correctly. It thus discards this D0 data (since it has been received at the other side) and then transits to the “Send D1” state, where it will use D1 to send the next requested piece of data.

 

   “Send D1.” In this state, B continues to respond to received R1 messages by sending D1, and then remaining in this state. If B receives a R1 message, then it knows its D1 message has been received correctly and thus transits to the “Send D1” state.


The data supplier (B) has only two states:

Related Solutions

Consider a network with network ID. 192.168.56.0/24: Split the network into two subnets, A and B...
Consider a network with network ID. 192.168.56.0/24: Split the network into two subnets, A and B and provide the IP range, network ID, and broadcast of each. Show your work What is TCP three-step handshake? What happens if the handshake is not successfully completed? What technological development led to the CSMA/CD protocols becoming obsolete? Give an example of a networking protocol that we have discussed in class that utilizes UDP over TCP. Provide two pros and two cons to switiching...
Examples of public entities, nonpublic entities and private companies
Examples of public entities, nonpublic entities and private companies
business entities
business entities
Is indirect network effects or direct network effects more of a defining feature of two-sided markets?...
Is indirect network effects or direct network effects more of a defining feature of two-sided markets? Explain
What are the health care entities involved in continuum of care? Identify and describe these entities...
What are the health care entities involved in continuum of care? Identify and describe these entities and the order in which they become involved in his lifelong continuum of care. ( 270 words NO PLAGIARISM PLEASE ) What are the information needs of each of his care providers? What are some of the challenges involved with capturing and utilizing this required information? ( 270 words NO PLAGIARISM PLEASE )
Identify and explain the characteristics that distinguish governmental and not-for-profit entities from for-profit entities
Identify and explain the characteristics that distinguish governmental and not-for-profit entities from for-profit entities
Describe the differences in reporting between governmental entities and not-for-profit entities. For example, what are the...
Describe the differences in reporting between governmental entities and not-for-profit entities. For example, what are the financial statements for each entity? What measurement focus and basis of accounting do each use?
"GOVERNMENT PRINTS MONEY." The Federal Government and the Federal Reserve are two different entities. Factors are...
"GOVERNMENT PRINTS MONEY." The Federal Government and the Federal Reserve are two different entities. Factors are the only ways the Federal Government can obtain a dollar to spend and who actually issues the currency that is used. another factor is who determines how much currency is in circulation and who determines it. Explain that.
In less than 100 words, provide an example of a collaboration between two entities that did...
In less than 100 words, provide an example of a collaboration between two entities that did not meet the goal they had set for themselves and discuss what were the factors that led to this failure.
What are the three categories of business entities? List and briefly describe the two primary differences...
What are the three categories of business entities? List and briefly describe the two primary differences between the three categories of business entities.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT