You must be aware of the different layers that exist in a computer network design. The function of layers, as I said earlier, is to offer services to the layers above it. This can be done in two modes
- Connection oriented service
- Connectionless service
Connection Oriented Service
Consider the case when you make a telephone call. Here are the steps you would take in order to connect to the person at the other end.
- Pick up your telephone
- Dial the destination number which is unique
- Say what you want to convey
- Hang up your phone
A similar mode of operation is followed in the case of connection oriented services
- Establish a connection between the sender and the receiver
- Make use of the connection by sending and receiving information
- When done, terminate the existing connection
Imagine a tube of certain length that is connected to a tap and the other end connected to a bucket. If you push water through the tap end, the water flows directly to the bucket without flowing elsewhere. This is an example of end to end transmission and is what happens in the case of connection oriented service.
A connectionless services, as it’s name suggests, is just a service with no pre established connection. It is more like a postal system wherein you send and receive mails with the help of destination address and several offices that route your mails to the correct destination.
The packets send need not arrive in the same order in which they are sent. This is basically because all packets might not take the same route since there is no preset connection in such services. The routers route the packets according to their built in algorithms and the receiver might need to re order the packet.
Reliable and Unreliable Service
Both connection oriented and connectionless services have reliable as well as unreliable services. Reliable services in the sense that we are assured of the receiver receiving the data and in unreliable the receiver might not actually get the data. This is monitored by usually setting a feedback required or not mechanism.
In cases like FTP, we might require that the sender acknowledge the receipt. For this we use reliable connection oriented services. In other cases such as database queries, it is not really required that the receiver sends an acknowledgement. In these cases, we use unreliable connectionless services.
TCP is one protocol that uses connection oriented service concept and UDP is another protocol that uses connectionless service concept.