Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

2.4 Two blue armies are each poised on opposite hills preparing to attack a sing

ID: 2085538 • Letter: 2

Question

2.4 Two blue armies are each poised on opposite hills preparing to attack a single red army in the valley.The red army can defeat either of the blue armies separately but will fail to defeat both blue armies if they attack simultaneously.The blue armies communicate via an unreliable communications system (a foot soldier).The commander with one of the blue armies would like to attack at noon. His problem is this: If he sends a message to the other blue army, ordering the attack, he cannot be sure it will get through. He could ask for acknowledgment, but that might not get through. Is there a protocol that the two blue armies can use to avoid defeat?

Explanation / Answer

The problem may be solved by using the approach taken by TCP when setting up a connection. TCP uses a Three Way Handshake to establish a connection as follows:

The first step is

SYN (Synchronize): The active open is performed or the connection is established by the client sending a SYN to the server. The client sets the segment's sequence number to a random value A.

In the second step

SYN-ACK (Synchronize + Acknowledge): The server replies with a SYN-ACK. The acknowledgment number is set to one more than the received sequence number (i.e., A+1) and the server chooses another random number B as the sequence number for the packet.

In the third or final step

ACK (Acknowledge): The client sends an ACK back to the server. The sequence number is set to the received acknowledgement value (i.e., A+1), and the acknowledgement number is set to one more than the received sequence number (i.e., B+1). At this point, both the client and server have received an acknowledgment that the connection has been established.

The first and second steps ( SYN and SYN-ACK) establish the sequence number as a connection parameter in one direction that is from Army A to B and allow its acknowledgement. Whereas the second and third step ( SYN-ACK and ACK) establish the sequence number as a connection parameter in the other direction that is from Army B to A and allow its acknowledgement. Both steps allow the establishment of a full-duplex communication and hence a reliable connection is established.