The sending device can also resend a segment if the receiving device does not acknowledge all the data sent. The sending device, in this case, is a server. The server waits for a few moments using a timer called the retransmission timer, to make sure that no other acknowledgment arrives, after that it then decides to resend that particular segment that it did not receive its acknowledgment flag. Because network host has limited resources such as limited space and processing power, TCP implements a mechanism called flow control using a window concept.
This is applied to the amount of data that can be awaiting acknowledgment at any one point of time. The receiving device uses the windowing concept to inform the sender how much data it can receive at any given time. This allows the sender to either speed up or slow down the sending of segments through a window sliding process.
User datagram protocol UDP is considered as a best-effort transport protocol because it is a light-weighted transport protocol. UDP is a connectionless protocol, meaning it provides no reliability or reordering of the data segment and flow control like TCP.
However, according to Cisco , UDP provides some similar benefits to TCP, such as data segmentation and multiplexing using port numbers. UDP is used by applications that are tolerant to loss of data but not delay. But with UDP, if a packet is missing, the streaming will continue unnoticed. It only becomes apparent when many segments are missing, which is seen in low video quality and lack of synchronization between video and audio.
The whole purpose of building an enterprise network or connecting a small office home office SOHO network to the internet, is for applications such as text messaging, email, video streaming, video, and audio conversations to occur.
To manage these multiple simultaneous conversations, TCP and UDP uses a header field that can uniquely identifies these applications running simultaneously. This unique identifier is called port number. Each service running on a device uses a specific well-known port number. These port numbers identify each application or service running on a client uniquely.
Source port numbers are port numbers dynamically generated by the sending device transport layer, that identifies each conversation between the two end devices.
In a segment sent by a client, a destination port number is placed within it to tell the destination server, the services that the client is requesting. This mechanism is possible because, unlike on a client machine in which request can originate from any locally unused port, services provided by a server have a well-known dedicated port assigned to them. As such, the destination port number is inserted by the client, informs the server.
For example, Telnet uses TCP transport protocol and has a destination port number of When a server receives a segment with a destination port number of 23, it knows that the client is requesting a Telnet service.
The source and the destination port numbers placed within a segment, only identifies which application in a client, requests for that service from a server. But the segment does not have any mechanism to specify which device is requesting the service. To identify which device is requesting a particular service, the internet protocol IP encapsulates the segment containing the source and the destination port number.
This IP packet includes the source IP address to identify which device the request originates from and the destination IP address to determine the destination device. Thus, creating a socket. A socket is a combination of the destination IP address and destination port or source IP address and source port.
A socket is handy to the transport layer because it keeps track of services and devices requesting such services, to properly forward the data to the requesting application as stated by Cisco. For example, in case of video streaming, thousands of packets are forwarded towards its users.
Acknowledging all the packets is troublesome and may contain huge amount of bandwidth wastage. The best delivery mechanism of underlying IP protocol ensures best efforts to deliver its packets, but even if some packets in video streaming get lost, the impact is not calamitous and can be ignored easily.
Loss of few packets in video and voice traffic sometimes goes unnoticed. Source Port - This 16 bits information is used to identify the source port of the packet. An IP protocol is a host-to-host protocol used to deliver a packet from source host to the destination host while transport layer protocols are port-to-port protocols that work on the top of the IP protocols to deliver the packet from the originating port to the IP services, and from IP services to the destination port.
Each port is defined by a positive integer address, and it is of 16 bits. UDP is a simple protocol and it provides nonsequenced transport functionality. UDP is a connectionless protocol. This type of protocol is used when reliability and security are less important than speed and size. UDP is an end-to-end transport level protocol that adds transport-level addresses, checksum error control, and length information to the data from the upper layer. The packet produced by the UDP protocol is known as a user datagram.
User Datagram Format The user datagram has a byte header which is shown below: Where, Source port address: It defines the address of the application process that has delivered a message.
The source port address is of 16 bits address. Destination port address: It defines the address of the application process that will receive the message.
The destination port address is of a bit address. Total length: It defines the total length of the user datagram in bytes. It is a bit field. Checksum: The checksum is a bit field which is used in error detection. It does not provide any sequencing or reordering functions and does not specify the damaged packet when reporting an error. UDP can discover that an error has occurred, but it does not specify which packet has been lost as it does not contain an ID or sequencing number of a particular data segment.
It provides full transport layer services to applications. It is a connection-oriented protocol means the connection established between both the ends of the transmission. For creating the connection, TCP generates a virtual circuit between sender and receiver for the duration of a transmission. TCP itself segments the data and forward to the IP. Reliability: TCP assigns a sequence number to each byte transmitted and expects a positive acknowledgement from the receiving TCP.
If ACK is not received within a timeout interval, then the data is retransmitted to the destination. The receiving TCP uses the sequence number to reassemble the segments if they arrive out of order or to eliminate the duplicate segments.
Table of Contents. Save Article. Improve Article. Like Article. Recommended Articles. Article Contributed By :. Easy Normal Medium Hard Expert. Writing code in comment?
0コメント