Protocols TCP / IP Internet. TCP / IP protocol stack
In the modern world, information is distributed in seconds. The news has just appeared, and in a second it is already available on any website on the Internet. The Internet is considered one of the most useful developments of the human mind. To enjoy all the benefits that the Internet provides, you must connect to this network.
Few people know that the simple process of visiting web pages implies an imperceptible for the user, a complex system of actions. Each link click activates hundreds of different computational operations at the heart of the computer. Among them, the transfer of requests, receiving answers and much more. For each action in the network are responsible for the so-called TCP / IP protocols. What are they?
Any TCP / IP Internet protocol works on its own level. In other words, everyone does their own thing. The entire family of TCP / IP protocols simultaneously performs tremendous work. And the user at this time sees only bright pictures and long lines of text.
The concept of a stack of protocols
The TCP / IP protocol stack is an organized set of basic network protocols, which is divided into four levels in a hierarchical manner and is a system for transporting packet distribution over a computer network.
TCP / IP is the most well known network protocol stack currently in use. The principles of the TCP / IP stack apply to both local and global networks.
Principles of using addresses in the protocol stack
The TCP / IP network protocol stack describes the paths and directions for sending packets. This is the main task of the entire stack, which runs on four levels that interact with each other using a logged algorithm. In order to correctly send the packet and deliver it exactly to the point that requested it, IP addressing was introduced and standardized. This was the presence of the following tasks:
- Addresses of different types must be matched.For example, the conversion of the site domain to the server’s IP address and back, or the conversion of the host name to the address and back. This way it becomes possible to access a point not only with the help of an IP address, but also by an intuitive name.
- Addresses must be unique.This is due to the fact that in some particular cases the package should only hit one specific point.
- The need to configure local area networks.
In small networks, where several dozens of nodes are used, all these tasks are performed elementarily, with the help of the simplest solutions: creating a table describing the ownership of a machine and its corresponding IP address, or you can manually distribute IP addresses to all network adapters. However, for large networks per thousand or two thousand machines, the task of manually issuing addresses does not seem so doable.
That is why a special approach was invented for TCP / IP networks, which became the hallmark of the protocol stack. The concept of scalability was introduced.
Levels of TCP / IP protocol stack
There is a certain hierarchy here. The TCP / IP protocol stack provides four levels, each of which processes its own set of protocols:
Application layer: created for the user to work with the network At this level, everything that the user sees and does is processed. The level allows the user to access various network services, for example: access to databases, the ability to read a list of files and open them, send an email or open a web page.Together with user data and actions, service information is transmitted at this level.
Transport level:This is a pure packet transfer mechanism. At this level, neither the content of the package, nor its belonging to any action has any significance. At this level, only the address of the sending node of the packet and the address of the node to which the package is to be delivered matters. As a rule, the size of the fragments transmitted using different protocols can vary, therefore at this level blocks of information can be split up at the output and assembled into a single whole at the destination point. This is due to the possible loss of data if at the time of the transfer of the next fragment a brief break in connection occurs.
The transport layer includes many protocols, which are divided into classes, from the simplest, which simply transmit data, to the complex ones, which are equipped with acknowledgment functionality, or to re-request the data block that was not received.
This level provides the upstream (applied) two types of services:
- Provides guaranteed delivery using TCP protocol.
- Delivers possible over UDP protocol.
To ensure guaranteed delivery, according to the TCP protocol, a connection is established that allows putting numbering on the output on the packets and confirming their reception at the input. Packet numbering and acknowledgment is the so-called service information. This protocol supports duplex transmission. In addition, thanks to a well-thought-out protocol protocol, it is considered very reliable.
The UDP protocol is intended for moments when it is impossible to configure the transmission using the TCP protocol, or it is necessary to save on the network data transmission segment. Also, the UDP protocol can interact with higher level protocols to improve the reliability of packet transmission.
Network level or "Internet level":baseline for the entire TCP / IP model. The main functionality of this level is identical to the OSI model of the same name and describes the movement of packets in a composite network consisting of several smaller subnets. It links adjacent TCP / IP protocol levels.
The network layer is the connecting link between the higher-level transport layer and the lower level network interfaces.The network layer uses protocols that receive a request from the transport layer and, through regulated addressing, transmit the processed request to the network interface protocol, indicating which address to send the data to.
The following TCP / IP network protocols are used at this level: ICMP, IP, RIP, OSPF. The main, and most popular at the network level, of course, is IP (Internet Protocol). Its main task is to transfer packets from one router to another until a unit of data reaches the network interface of the destination node. IP is deployed not only on hosts, but also on network equipment: routers and managed switches. IP works on the principle of non-guaranteed delivery with maximum effort. That is, there is no need to pre-establish a connection to send a packet. This option leads to saving traffic and time on the movement of excess service packages. The packet is directed towards the destination, and it is possible that the node will remain inaccessible. In this case, an error message is returned.
Network Interface Layer:responsible for ensuring that subnets with different technologies can interact with each other and transmit information in the same mode. Implemented in two simple steps:
- Encryption of a packet into an intermediate network data unit.
- Convert information about the destination to the standards of the required subnet and send the unit of data.
This approach allows you to constantly expand the number of supported technologies for building networks. As soon as a new technology appears, it immediately falls into the TCP / IP puncture stack and allows networks with old technologies to transfer data to networks built using more modern standards and methods.
Transmitted Data Units
During the existence of such a phenomenon as the TCP / IP protocols, standard terms have been established in terms of units of transmitted data. Transmission data may be split differently, depending on the technologies used by the destination network.
In order to have an idea of what is happening with data at what point in time, it was necessary to invent the following terminology:
- Data stream- data that arrives at the transport layer from the protocols of the higher application layer.
- A segment is a fragment of data into which a stream is split up according to TCP protocol standards.
- Datagram(especially illiterate are pronounced as “Datagram”) - data units, which are obtained by splitting a stream using connectionless protocols (UDP).
- Package- data unit produced by IP protocol.
- TCP / IP protocols package IP packets into blocks of data transmitted over composite networks, which are calledframesorby frames.
Types of TCP / IP protocol stack addresses
Any TCP / IP data transfer protocol uses one of the following address types to identify hosts:
- Local (hardware) addresses.
- Network addresses (IP addresses).
- Domain Names
Local addresses (MAC addresses) - are used in most local area network technologies to identify network interfaces. The word local, speaking of TCP / IP, should be understood as an interface that operates not in a composite network, but within a single subnet. For example, the subnet of an interface connected to the Internet will be local, and the Internet will be composite. A local network can be built on any technology, and regardless of this, from the point of view of a composite network, a machine located in a separate dedicated subnet will be called a local one.Thus, when a packet gets to the local network, then its IP address is associated with the local address, and the packet is sent to the MAC address of the network interface.
Network addresses (IP addresses). TCP / IP technology has its own global node addressing, for solving a simple task - combining networks with different technologies into one large data transfer structure. IP addressing is completely independent of the technology used in the local network, but the IP address allows the network interface to represent the machine in a composite network.
As a result, a system was developed in which the nodes are assigned an IP address and a subnet mask. The subnet mask shows how many bits are allocated for the network number, and how many for the node number. An IP address consists of 32 bits, divided into blocks of 8 bits.
When a packet is transmitted, it is assigned information about the network number and node number to which the packet should be sent. First, the router forwards the packet to the desired subnet, and then the node that is waiting for it is selected. This process is performed by the Address Resolution Protocol (ARP).
Domain addresses in TCP / IP networks are managed by a specially developed Domain Name System (DNS).To do this, there are servers that match the domain name, represented as a string of text, with the IP address, and sends the packet in accordance with the global addressing. There are no correspondences between the computer name and the IP address, therefore, in order to convert a domain name into an IP address, the sending device must address the routing table that is created on the DNS server. For example, we write in the browser the address of the site, the DNS server maps it to the IP address of the server where the site is located, and the browser reads the information, receiving a response.
In addition to the Internet, it is possible to issue domain names to computers. Thus, the work process in the local network is simplified. There is no need to remember all the IP-addresses. Instead, you can think of any name for each computer and use it.
IP address. Format. Components. Subnet mask
An IP address is a 32-bit number, which in the traditional representation is written as numbers, from 1 to 255, separated by dots.
Type of IP address in various recording formats:
- Decimal IP address: 192.168.0.10.
- The binary view of the same IP address: 11000000.10101000.00000000.00001010.
- Address entry in hexadecimal notation: C0.A8.00.0A.
There is no separator between the network ID and the point number in the record, but the computer is able to separate them. There are three ways to do this:
- Fixed borderWith this method, the entire address is conventionally divided into two parts of a fixed length byte-by-byte. Thus, if we give one byte as the network number, then we get 28networks of 224knots. If the border is moved another byte to the right, then there will be more networks - 216, and there will be fewer nodes - 216. To date, the approach is considered obsolete and not used.
- Subnet mask.The mask is paired with an IP address. The mask has a sequence of values "1" in those digits that are reserved for the network number, and a certain number of zeros in those places of the IP address that are assigned to the node number. The boundary between the ones and zeros in the mask is the boundary between the network ID and the node ID in the IP address.
- The method of address classes.Compromise method. When using it, network sizes cannot be selected by the user, however there are five classes — A, B, C, D, E. Three classes — A, B and C — are intended for different networks, and D and E are reserved for special-purpose networks. .In a class system, each class has its own network number boundary and node ID.
Classes of IP Addresses
TOclass AThis includes networks in which the network is identified by the first byte, and the remaining three are the node number. All IP addresses that have the value of the first byte in the range from 1 to 126 are Class A networks. Quantitatively, Class A networks are very few, but in each of them there can be up to 224points.
Class B- networks in which the two highest bits are 10. In them, under the network number and the point identifier, 16 bits are allocated. The result is that the number of class B networks in a big way differs from the number of class A networks in quantitative terms, but they have a smaller number of nodes — up to 65,536 (216) PC.
In networksclass C- very few nodes - 28in each, but the number of networks is huge, due to the fact that the network identifier in such structures takes as many as three bytes.
Networkclass D- already belong to special networks. It begins with a sequence of 1110 and is called a multicast address (Multicast adress). Interfaces that have class A, B, and C addresses can be included in a group and receive, in addition to the individual, a group address.
Addressesclass E- in reserve for the future.Such addresses begin with the sequence 11110. Most likely, these addresses will be used as group addresses when there is a shortage of IP addresses in the global network.
TCP / IP protocol setup
Further, on which systems can the designated protocols be configured?
TCP / IP configuration is available on all operating systems. These are Linux, CentOS, Mac OS X, Free BSD, Windows 7. TCP / IP only requires a network adapter. Of course, server operating systems are capable of more. Very widely, with the help of server services, TCP / IP is configured. IP addresses in ordinary desktop computers are configured in the network connection settings. There, the network address is configured, the gateway is the IP address of the point that has access to the global network, and the addresses of the points where the DNS server is located.
Internet Protocol TCP / IP can be configured manually. Although not always in this need. You can receive TCP / IP protocol parameters from a dynamically distributing server address in automatic mode. This method is used in large corporate networks. On the DHCP server, you can map the local address to the network address, and as soon as a machine with the specified IP address appears on the network, the server will immediately give it a pre-prepared IP address. This process is called reservations.
TCP / IP Address Resolution Protocol
The only way to establish a connection between the MAC address and the IP address is to maintain a table. If there is a routing table, each network interface is aware of its addresses (local and network), but the question arises how to properly organize the exchange of packets between nodes using TCP / IP 4.
What was the address resolution protocol (ARP) for? To bind a family of TCP / IP protocols and other addressing systems. An ARP mapping table is created at each node, which is populated by polling the entire network. This happens after every shutdown.
|Address||Local Address||Record type|
This is an example of an ARP table.