The IP protocol at the network layer is inherently unreliable. It is responsible for delivering packets from one IP address to another without any guarantees for delivery, order, or even the completeness of the data in the packet. This is where TCP steps in to ensure reliable data transmission.
There are 3 important features of TCP:
- TCP is connection-oriented. Unlike UDP which sends data from one server to multiple servers, TCP establishes a connection between two specific servers.
- TCP is reliable. TCP guarantees the delivery of the segments, no matter what the network condition is.
- TCP is bitstream-oriented. With TCP, application layer data is segmented. The transport layer remains oblivious to the boundary of a message. In addition, the segments must be processed sequentially, and duplicated segments are discarded.
To identify a unique TCP connection, we use the following fields, often referred to as a 4-tuple.
Source and destination IP addresses. Located in the IP header, these direct the IP protocol on data routing.
Source and destination ports. Found in the TCP header, these instruct the TCP protocol on which process should receive the segments.
- task If I’m able to change the Transmission Control Protocol headers then should one application be able to read other applications data? Like i make use install one of my windows application and that reads Microsoft teams app data?
- Same as above happens for website andSSL certificate helps to prevent it.