Scenario: Consider a server, running as a console application program, connected to a number of clients, also built as console applications, and consider that communication between computers follows the UDP communication protocol.
Consider each computer-client to be on board a ship that patrols a specific area (think of the area as a square matrix of size, say, 5x5 square miles or 25 tiles) following movement instructions from the server (say, the ship moves 1 tile at a time that may be in one of 8 different directions: E,NE,N,NW,W,SW,S,SE). Ship movement directions are issued continuously by the server, by request of the client, until the whole designated area is patrolled. However, caution should be exercised as to the valid ship movements: a)the server issues movement instructions at 8 random directions, b)the server issues instructions coded according to a simple XOR cipher, using a specific key word (see [url removed, login to view]), c)the ship will decode the instruction, having knowledge of the encryption key, and d)will follow the instruction only if it takes it to a tile that has not been patrolled and it is within the designated patrol area.
It is required:
1/One server - one client (ship) UDP connection: To count the number of requests that the ship has to make to the server until all tiles of the designated area (say, 5x5 tiles) have been patrolled. This should be repeated, say 100 times, a histogram of the number of ship requests should be plotted (using excel), and conclusions should be formed regarding the distribution of requests.
2/For 2,3,…,N clients: When many ships are connected concurrently to the same UDP-server. Here, you have to consider a)a large area of say 20x20 tiles, b)that each ship will have to patrol a separate but equal in size area; i.e. for the one-ship case, it will have to patrol a 20x20 area, for the 2-ships case, each ship will have to patrol a 10x20 area, and so on). Additionally, you will need to create a mechanism, whereby the server initiates communication with all connected ships simultaneously. It is required for you to assess the total time taken for a number of ships to patrol the designated area (using [url removed, login to view]()), each time considering a different number of ships connected, and to plot that time against the number of ships. An account should be written explaining the shape of the resulting curve (time Vs number of ships).
3/ Step 2 should be attempted on different computers connected to a LAN, for top marks.
1. Task 1: One Server connects to one ship-client that, in turn, requests one of 8 random directions (E,NE,N,NW,W,SW,S,SE) from server until it patrols a designated square area. Results to be stored in file. Plot of 100 attempts of the ship to patrol the whole area and comment on results
2. Task 2: Connect many ships to the server. Plot Time Vs No of ship-clients for patrolling the same square area (have to divide the area in as many sections as the number of ships engaged) and comment on the shape of the curve.
3. Task 3: Repeat 2 using an actual LAN
Please make as small bids as possible!
It is just an assignment that i have to give.