Interesting...
Handshaking

If two devices need to communicate, they usually perform a handshaking procedure, as specified by a protocol.

A typical sequence that would be followed when a computer wants to send data to a printer...

  • The computer sends a signal to the printer
    ("Are you ready?")
  • The printer sends an acknowledgement signal back to the computer.
    ("Yes, I am ready")
  • The computer sends data to the printer.

Another example :

On the Internet the TCP/IP protocol uses a three-way handshake...

When a client computer wants to establish a link to a server over the Internet...

  • The client computer sends a synchronisation packet (SYN) to the server, part of this contains a randomly chosen sequence number x.
  • The server receives this and replies by sending back an acknowledgement packet (SYN-ACK) containing the next number in the sequence (x+1), and a sequence number of its own (y)
  • The client replies by sending an acknowledge packet (ACK) containing the next number in the sequence (y+1) back to the server.

At this point the connection is established and data transfer can take place.

 

   Back