Question 1: What is the main difference between TCP and UDP? (2 Marks)
Differences:

TCP: is a connection-oriented protocol, a connection can be made from client to server, and from then on any data can be sent along that connection.
Reliable - when a message is sent along a TCP socket, it will get there unless the connection fails completely. If it gets lost along the way, the server will re-request the lost part. This means complete integrity, things don’t get corrupted.
Ordered - if two messages are sent along a connection, one after the other, the first message will get there first. There is no need to worry about data arriving in the wrong order.
Heavyweight - when the low level parts of the TCP ”stream” arrive in the wrong order, resend requests have to be sent, and all the out of sequence parts have to be put back together, so this requires a bit of work to piece together.
UDP: is a simpler message based connectionless protocol. With UDP messages (packets) are sent across the network in chunks.
Unreliable - When a message is sent, it is not for sure that it’ll get there, it could get
lost on the way.
Not ordered - If two messages are sent out, it is not known for sure what order they’ll
arrive in.
Lightweight - No ordering of messages, no tracking connections, etc. Just fire and
forget. This means it’s a lot quicker, and the network card/OS have to do very little
work to translate the data back from the packets.

Question 2: The maximum payload of a TCP segment is 65,495 bytes. Why was such a strange number chosen? (3Marks)

1. Actually 65535 is the maximum segment size. This is the largest number that can be represented in 16 bits. The remaining bytes are used as a header to identify the packet.

The reason they chose 16 bits is because that committee figured 64K was a good number for a packet, given the information they had at the time. But in the time since then, the internet has gotten faster, computers have gotten much faster, the number of people using the internet has exploded, and the amount of data that people want to push around the net is crazy. The architects of TCP/IP and the net in general never foresaw that hundreds of millions of average non-techie people would be consuming terabytes of bandwidth on watching porn.

If they had known all this, packets might be a different size. Maybe 2^24. Who knows. The longer a packet gets, though, the more easily corrupted it is by transmission errors.

Question 3: Why does UDP exist? Would it not have been enough to just let user processes send raw IP packets? (3 Marks)
The main components of the UDP header are the source and destination port numbers which allow packets to be associated with particular processes. Use of raw IP packets would not allow the receiver to determine the process to which the packet was directed

Question 4: Differentiate between UNICAST, MULTICAST AND BROADCAST (6 Marks)
Unicast
Unicast is a one-to one connection between the client and the server. Unicast uses IP delivery methods such as Transmission Control Protocol (TCP) and User Datagram Protocol (UDP), which are session-based protocols. When a Windows Media Player client connects using unicast to a Windows Media server, that client has a direct relationship to the server. Each unicast client that connects to the server takes up additional bandwidth. For example, if you have 10 clients all playing 100-kilobits per second (Kbps) streams, those clients as a ***** are taking up 1,000 Kbps. If you have only one client playing the 100 Kbps stream, only 100 Kbps is being used.
Multicast
Multicast is a true broadcast. The multicast source relies on multicast-enabled routers to forward the packets to all client subnets that have clients listening. There is no direct relationship between the clients and Windows Media server. The Windows Media server generates an .nsc (NetShow channel) file when the multicast station is first created. Typically, the .nsc file is delivered to the client from a Web server. This file contains information that the Windows Media Player needs to listen for the multicast. This is similar to tuning into a station on a radio. Each client that listens to the multicast adds no additional overhead on the server. In fact, the server sends out only one stream per multicast station. The same load is experienced on the server whether only one client or 1,000 clients are listening

Question 5: Differentiate between connectionless and connection-oriented protocol? (6 Marks)
1. In conection-oriented system a HANDSHAKING process is used i.e the process starts from the sender computer by sending a request to start the transfer that is to be acknowledged by the destination device before the data can be send.
While in CONNECTIONLESS system no handshaking process is used. if one computer wants to send data, it just sends the data packet to the end system.
2. In connection-oriented system communication between the sender & receiver continues until the transmission has been verified. Thus it requires higher overhead & places greater demand on bandwidth.
While the CONNECTIONLESS system requires less overhead & bandwidth.
3. There is guaranteed delivery of data in CONECTION-ORIENTSD system. Any packet that is not received by the destination is resend by the sending device. There is no confirmation that the data has been received, thus there is no resending of data in CONNECTION LESS SYSTEM. Thus transmission is not guaranteed.

Sponsored Links

4. connection-oriented protocol is-TCP\IP &
connectionless protocol is-UDP