7. Computer networks
A. Transport layer services and protocols
The transport layer protocols provide the logical communication between applications/processes running in different hosts.
- These protocols run in the end systems and not in the network routers.
- Sender: Breaks the application messages into Segments; passes it to network layers.
- The segment is further encapsulated into network-layer packets called Datagrams.
- The datagram is finally passed to the network router.
- The segment is further encapsulated into network-layer packets called Datagrams.
- Receiver: Receives the segments and re-assembles the application messages; passes it to application layer.
- Sender: Breaks the application messages into Segments; passes it to network layers.
There are different transport layer protocols, each with its own characteristics. The following are the most common ones:
- Transmission Control Protocol (TCP)
- User Datagram Protocol (UDP)
User Datagram Protocol (UDP)
“No frills,” “bare bones” Internet transport protocol. UDP is a connectionless protocol.
Connectionless:
- No handshaking between UDP sender and receiver.
- Each segment is handled independently of others.
Why use UDP?
- No connection needs to be established which usually creates a delay
- Simple: no connection state at sender and receiver
- Small segment header
- No congestion control: USP can blast away as fast as desired
Most often used for streaming multimedia applications.
Other uses: Domain name system (DNS), Simple network management protocol (SNMP)
Protocol specifications:
Few notable ports and protocols:
Port number | Protocol | Application |
---|---|---|
53 | UDP , TCP |
Domain name system (DNS) |
80 | TCP |
HTTP (WWW) |
443 | TCP |
HTTPS (SSL) |
16, 384-32, 767 | UDP |
Voice and video |
Transmission Control Protocol (TCP)
“Connection-oriented” transport protocol.
Properties:
- Point-to-point: One sender, one receiver.
- Connection-oriented: Handshaking in it’s sender. receiver state before data exchange.
- Full duplex: Bi-directional data flow in same connection
- MSS: Maximum segment size
- Reliable, in-order byte stream: Segments are sent in order and acknowledged by receiver.
- Flow controlled: Segments are not sent if receiver is not ready.
TCP Segment structure
- Includes both source and destination port numbers, checksum.
- 32 bit sequence number, 32 bit acknowledgment number.
- 4 bit header length specifies the length of the TCP header in 32-bit words.