TCP / IP is a group of Communication Protocols that communicate between various types of Computers and Networks located on the Internet. The TCP / IP Suite consists of the following protocols,
- User Datagram Protocol (UDP)
- Internet Control Message Protocol (ICMP)
- Internet Group Multicast Protocol (IGMP)
These all Protocols define a Standard Format to exchange Information between different types of Hosts. TCP / IP Implementation works equally for almost all kinds of Hardware and Operating Systems. Therefore, all types of networks can be connected via TCP / IP.
TCP / IP Network Architecture:
There are four layers in the TCP / IP Network Model. Each protocol of TCP / IP Suite works to communicate any two layers of these four layers among themselves. The lower-level layer in this model works to provide Data for High-Level Layer, which allows two hosts to be connected. These four layers are as follows:
- 1st Layer Physical Layer (Ethernet, Token Ring, PPP)
- 2nd Layer Network Layer (IP)
- 3rd Layer Transport Layer (TCP, UDP)
- 4th Layer Application Layer (Telnets, HTTP, FTP, Gopher)
We can see that there is no Protocol Associated with every Layer. These protocols work to transfer data from the lower layer to the higher layer. When a computer has to connect to another computer, then both computers have a Physical Layer. There is no hardware in this layer. For example, if we talk about Internet, then there is definitely no media in all the computers, which connects two computers together.
Normally when the network is small, then two computers are interconnected by LAN Card, which is a Physical Device on Computer’s Mother Board. When two computers communicate with LAN, then Protocol that is communicating between the two is usually Ethernet.
In the same way if we connect to the Internet then we need MODEM and it is physically attached on the Mother Board of Computer and in general, using two PPP (Point To Point Protocol or Peer To Peer Protocol) Connects in
Whenever a Source Computer sends a data to your destination, the Packets of Data reach the Destination while passing through the different layers. Let’s understand this process of being a data transfer by an example.
When we request a Web Document from a host by filling out a Web Address in our Web Browser, then our browser uses the TCP Layer (3rd Layer) to send an HTTP Request (4th Layer). Then the TCP Layer requests the IP layer (2nd Layer) to send the data to the appropriate host. Lastly, the IP Layer uses Physical Layer (1st Layer) to send data to Appropriate Host.
Any number of Layers that passes through data, in every Layer, some special type of information is added to the head of the packet with the Packet of that Data. The computer that receives Data Packet receipt uses the computer to convert the embedded data into its original form in the incoming package.
When Data is sent to the host, then the Data Packets reaches the Host (1st Layer). From here the package is sent to the Host’s IP Layer (2nd Layer). The IP Layer Validate the incoming package, checks whether it is a Packet TCP Packet or not. If the Packet is TCP Packet, then this Data Packet is sent to the Host’s TCP Layer (3rd Layer).
Finally, the TCP Layer sends the Data Packet to the Host’s HTTP Handle Handler (4th Layer), where the Required Web Document searches the Host’s HTTP Handler. If Host gets Requested Web Document, then Host again uses the same process and send Requested Web Document to Client’s computer.
When both Client and Host are part of the same Physical Network, then the above Client and Server interaction between the above process. But when both Host and Client are not part of the same network, then the IP Layer determines the routes of the packets and keeps the packets on different hosts until the packets reach the correct destination.
IPv4 and IPv6
Java Networking Programs: When TCP / IP was being developed, all IP numbers were kept 32-bit. Until that time the number of Unique IP Addresses that were created in this manner was enough to uniquely identify all Hosts at that time. This version of IP number is known as IPv4. But today the situation is not AC. Today these addresses are not able to identify all host computers around the world. Therefore, a new IP numbering version has been developed.
Unique IP number given to a computer in this manner is not 32-bit but 128-bit. This version of IP Addressing is named IPv6 or IPng. With this technique, we can get about 3.4 X 1038 different IP address. 32-bit IP address was represented by four decimal values, and every decimal could have anything between 0 and 255. But the 128-bit IP address is represented by eight groups of four Hexadecimal Values, and among them the Colon is used instead of the Dot. like:-
5A02: 1364: DD03: 0432: 0031: 12CA: 0001: BEEF
IPv6 is compatible with IPv4’s previous addressing mode. Therefore, those clients who were developed on the basis of IPv4, they also work in general with all IPv6s. I.e. IPv4’s Clients work on the IPv6 network and IPv6 clients on the IPv4 network without any difficulty in the normal way. IPv6 also provides some additional benefits as follows:
This allows us to send Multicasting i.e. Packets at the same time to multiple destinations at one go.
The format of the Packets Header in this IP Addressing is simplified in comparison to IPv4.
Support for Authentication and Encryption of Packets Contents on the Network Layer, which increases the security of Data Packets.
We can create special type of Connection to complete any special work, which can be treated with a particular type of data. For example, real time audio data needs to be transferred faster and this feature can be obtained by this IP.
Many more protocols have been added in the TCP / IP Suite. It includes RTP (Real Time Protocol) and TRCP (Real Time Control Protocol) protocol, which provides support for applications related to Video and Audio Conferencing. Some Functionalities have been merged into other protocols by removing some protocols from the TCP / IP Suite.
For example, the IGMP protocol which was used to provide membership in Multicast Group, it has now been removed from the TCP / IP suite and its work is now done by ICMP Protocol.
To develop Java Network Software, different types of required classes are provided as packages named java.net. Develop a network based application using different types of classes in Java. To develop different types of applications, we have to use different types of protocols. Every Network Protocol has its own characteristics and drawbacks. If we want, you can use different types of protocols already available or we can also develop new protocols as per our requirement. Java Provides various types of classes to fulfill this task.
Different types of classes have been defined to establish Communication between Network Devices that meet various types of needs in Java. We can use these classes according to our needs. (What is TCP / IP Protocol)
Recommended for you :
1) Networks Of Communications.