PROJECT 2: RIP ============== 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | command (1) | version (1) | must be zero (2) | +---------------+---------------+-------------------------------+ | address family identifier (2) | must be zero (2) | +-------------------------------+-------------------------------+ | IPv4 address | +---------------------------------------------------------------+ | must be zero | +---------------------------------------------------------------+ | must be zero | +---------------------------------------------------------------+ | metric | +---------------------------------------------------------------+ command = 1 from client to server; 2 from server to client version = 1 There are many records, each consisting of the remaining fields shown: address family = 1 IPv4 address = client subnet address; server subnet address metric = 1 from client; 2 from server Here, following command and version, the address family and the address and metric are repeated as many times as are given as a command line argument to the client. For each record, give a different IP network address such as 10.0.0.0, 192.168.220.0, 172.16.0.0 etc. From the server, reply with another set of addresses not found in the set the client sends. Repeat sending the messages from the client every few seconds. Group 14 : Implement as a TCP concurrent server using threads Group 15 : Implement as a TCP concurrent server with processes Group 9 : Implement as TCP iterative server with select to handle multiple connections