Short Essay Undergraduate

Data communication

Answer basic networking questions, half a page per question. Simple and easy.

The Transmission Control Protocol (TCP) is a transportprotocol that provides connection-oriented, reliable,end-to-end byte-streams as a service to the application layer.For many applications, it is very inconvenient that TCP usesbyte streams rather than packets.

(the ” is a part over the larger questions above)

Explain what the statement TCP provides a byte-stream service means

What does the byte-stream service mean forapplications that use socket functions (Berkeleysockets) such as send() and recv() to exchangedata? What must programmers do differently when they use TCP instead of a transport protocol that provides a packet-based service?

If an application uses TCP but needs packets, how must the developer design the application-layer protocol?

Would it be easy to create a new transport protocol PacketTP with small changes to TCP that delivers a connection-oriented, reliable, end-to-end datagram service? List at least 3 required changes and explainwhy they are important. The changes can be small.

———————————————————
Flow control on the transport layer does usually solve two problems: it ensures that the sender does not send packets faster than the receiver can receive, and it detects and corrects packet loss. Real transport layers use a credit mechanism instead of the simpler sliding window mechanism with selective repeat.

Explain how the flow control mechanism selective repeat worksExplain how the flow control with a credit mechanism works.

Describe the differences between selective repeatand a credit mechanism. Is there anything differentabout handling packet losses, handling ACK lossesor using timeouts? How large can the sequence number space be, and how many of those sequence numbers can be in flight at any time?

Can you find a problem with the loss of ACKs in the credit mechanism that does not exist in selective repeat, and do you have a proposal for solving it?

———————————————————–
Your company has been assigned 1024 IPv4 addresses starting at address 9.239.16.0. Your company has offices in three different locations, A, B and C, so you must split these addresses into three separate, routable networks, netA, netBand netC. Each of the locations requires 120 public IPv4addresses right now, but you expect that all of them will needmore in the future. You must decide how to assign these addresses.

What is the netmask of the address block that has been assigned to your company?

How many addresses do you allocate to each of the networks, netA, netB and netC?
What is thenetwork address and the netmask for each of thesenetworks? Explain how you get to this solution.

Explain why you have chosen to divide youraddress range into three networks like this. Did youconsider future growth in your assignment? Didyou keep any addresses in reserve? And if yes, howdo you plan to use them when necessary?