The TCP/IP protocol stack is the most common protocol stack today. Flexibility and traffic routing capabilities allow it to be used in networks of various sizes. The TCP/IP protocol stack is a set network protocols regulating all aspects of the process of interaction between network devices.

Requirements-characteristics:

Fault tolerance. A network built using a protocol must maintain its functionality even if part of the network loses its functionality.

Extensibility. The protocol must allow for easy network expansion. Adding new segments to the network should not disrupt existing services.

Reliability. The protocol must include mechanisms to ensure reliable transmission of information within the network, regardless of the reliability of existing communications.

Inner simplicity. The protocol must have a simple structure to provide sufficient performance

Architecture: The TCP/IP stack, in terms of system architecture, follows the OSI (Open Systems Interconnection) reference model and allows applications and services running on virtually any platform to communicate over the network, including Unix, Windows, Macintosh and others.

Overview of the main protocols of the stack:

TCP: Transmission Control Protocol (TCP) assumes all responsibilities for delivering packets received from protocols upper levels, in an unchanged state and in the appropriate sequence. Therefore, it is the responsibility of the transport layer protocol to break these packets into smaller TCP packets, which are then passed on to the network layer protocol.

UDP: Within the TCP/IP protocol stack, there is another protocol that operates at the transport layer, which is not connection oriented. We are talking about the User Datagram Protocol (UDP). The UDP protocol is a fairly fast protocol because it does not include mechanisms to control the delivery of packets.

IP: Its main task is to route data packets. Receiving a packet from the upper layer protocols of the OSI model, the IP protocol makes a decision about the delivery of these packets. The decision is made on the basis of special tables called routing tables. Based on this table, two decisions can be made, depending on what subnet the packet recipient computer is located on

ARP: At the link layer, addressing is carried out on the basis of so-called MAC addresses. The MAC address is a unique 48-bit identification code assigned to each network adapter. This code is written (or, as they say, “stitched”) into a special ROM on the network adapter board and is thereby permanently associated with this network adapter. Since addressing at the link layer is carried out using MAC addresses, a mechanism is needed that would ensure the translation of IP addresses into the corresponding MAC addresses. The Address Resolution Protocol (ARP) provides such a mechanism. Its main task is to establish a correspondence between an IP address and a MAC address.

ICMP: Internet Control Message Protocol (ICMP) is a mechanism by which hosts can exchange service information. The ICMP protocol supports two types of service messages: error messages and control messages.

IGMP: The transmission of multicast traffic is governed by the Internet Group Management Protocol (IGMP).

IPsec: The IPsec protocol provides security for any packets transmitted by upper-layer protocols

Application Layer: Through the Application layer of the TCP/IP model, applications and services access the network. Access to TCP/IP protocols is provided through two software interfaces (API - Application Programming Interface):

  • - Windows sockets;
  • - NetBIOS.

The Windows Socket Interface, or WinSock as it is called, is a network programming interface designed to facilitate communication between different TCP/IP applications and protocol families.

The NetBIOS interface is used for interprocess communication (IPC - Interposes Communications) of Windows OS services and applications. NetBIOS performs three main functions: NetBIOS naming; NetBIOS Datagram Service; NetBIOS session service.

Transport Layer: The TCP/IP transport layer is responsible for establishing and maintaining a connection between two nodes. Main level functions:

  • - confirmation of receipt of information;
  • - data flow control;
  • - ordering and relaying of packets.

Depending on the type of service, two protocols can be used:

  • - TCP (Transmission Control Protocol - transmission control protocol);
  • - UDP (User Datagram Protocol - user datagram protocol).

TCP is typically used when an application needs to transfer a large amount of information and ensure that the data is received by the recipient in a timely manner. Applications and services that send small amounts of data and do not need to receive confirmation use UDP, which is a connectionless protocol.

Internetwork Layer: The Internetwork layer is responsible for routing data within a network and between different networks. At this level, routers operate, which depend on the protocol used and are used to send packets from one network (or segment of it) to another (or another segment of the network). The TCP/IP stack uses the IP protocol at this layer.

Network Interface Layer: This layer of the TCP/IP model is responsible for distributing IP datagrams. It works with ARP to determine the information that should be placed in the header of each frame. This layer then creates a frame appropriate for the type of network being used, such as Ethernet, Token Ring or ATM, then the IP datagram is placed in the data area of ​​that frame and it is sent out to the network.

Diagnostic utilities:

ipconfig /flushdns /registerdns /displaydns /showclassid /setclassid class_id]

/all -- as a result of executing the utility, it displays full information about protocol configuration for all interfaces local computer. Including for network interfaces working with the routing service and remote access(Routing and Remote Access Service, RAS);

/release -- executing the utility with this key releases the allocated IP address. The key is applicable for use on DHCP clients only;

/renew -- Using this switch instructs the system to update the configuration of the TCP/IP protocol stack. If you specify a network adapter name, only the protocol configuration for the selected adapter is updated. Otherwise, the protocol stack configuration for all network adapters is updated;

/displaydns -- as a result of executing the utility, information about the contents of the local DNS client cache used for domain name resolution will be displayed;

ping [-t] [-a] [-n count] [-1 size] [-f] [-i ttl] [-v tos] [-r count] [-S count] [[-] host-list ] | (-k host-list]] [-w timeout] [-R] [-S srcaddr] [-4] [-6] destination-host

  • -t -- using this switch instructs the system to continuously send special ICMP packets to the remote computer until the user stops running the utility;
  • -a -- using this key allows you to determine the domain name of a remote computer by its IP address. The usefulness of this key is often underestimated by users. However, when working on a local network, situations often arise when you need to find out the domain name of a computer by its IP address;
  • -n count -- unlike the previous switch, allows you to set the number of ICMP packets that will be sent during the connection check process. By default, the utility sends four packets;
  • -w timeout -- By default, the ping utility waits for an acknowledgment from the remote host for one second. At the end of this time, the utility concludes that it is impossible to establish a connection with the host. This situation occurs especially often when the remote computer is connected via slow communication lines. Using this key allows you to increase the confirmation wait time to a certain value, specified in milliseconds as the timeout parameter;

tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

  • -d -- by default, the utility, providing information about routers traversed by packets, indicates not only IP addresses, but also their domain names. Using this key instructs the utility not to convert IP addresses to domain names. This allows you to reduce the execution time of the utility;
  • -h maximum_hops -- using the utility with this switch allows you to limit the permissible number of transitions from one subnet to another during route tracking. The maximum_hops parameter determines the maximum allowed number of hops;
  • -w timeout -- the switch allows you to explicitly define the maximum time to wait for a response from remote router. In this case, the time is specified by the timeout parameter in milliseconds;

target_name -- Specifies the name of the remote host to which the route should be traced.

netstat utility. Allows you to obtain statistical information on some of the stack protocols (TCP, UDP, IP and ICMP), and also provides information about current network connections.

nbtstat utility. The utility is used to obtain information related to the operation of NetBIOS over TCP/IP. Using this utility, you can obtain information about both the local and remote computer.

IP Address: According to the TCP/IP concept, each host must have a specific IP address in order to work on the network

An IP address is a 32-bit binary number, which for ease of remembering is divided into octets - eight-bit groups

Rules for assigning an IP address:

  • 1. The computer cannot be assigned the first address in this network (address ending with the number 0). Such addresses are reserved to designate the entire network.
  • 2. The computer cannot be assigned the last address on this network (address ending with the number 255). Such addresses are used for broadcasting (broadcasting) - access to all computers on the network.
  • 3. Each octet is a number in the range from 0 to 255.
  • 4. The IP address of each computer must be unique within the network. If you assign an address that already exists on the network to a new computer, an address conflict will arise. The operating system will report the conflict by displaying a warning window, and both computers will not be allowed to work on the network until the situation is corrected.

Subnet address and host address: Any IP address can have two components: the subnet address and the host address in that subnet. At the development stage, the creators of the protocol divided all IP addresses into three categories, combining them into three classes of subnets - A, B and C.

Class A subnets are the most expensive, so only large corporations can afford them. All class A address pools have already been allocated. Their holders are corporations such as IBM, Xerox, Apple and Hewlett-Packard.

Class B addresses are less expensive, but they are only affordable by wealthy corporations who are willing to pay significant sums for a sufficient number of IP addresses. One of the most famous corporations that holds a pool of class B addresses is Microsoft.

Subnetting: Subnet mask is one of the key terms of TCP/IP, it is a 32-bit number that is used to allocate a subnet address from an IP address.


Because of this, subnet mask bits set to 1 indicate the bits that are used in an IP address to determine the subnet address. Allocation is carried out by the method of logical multiplication (AND operation) of the IP address and subnet mask.

ROOT address: 11000000 10101000 00000001 00000001

Subnet address: 11000000 10101000 00000001

STORE address: 11000000 10101000 00000001 00010101

Subnet mask: 11111111 11111111 11111111 00000000

STORE subnet address: 11000000 10101000 00000001

ROOT subnet address: 11000000 10101000 00000001

Internal IP addresses: For local networks, depending on their size, the IANA (Internet Assigned Numbers Authority), which is responsible for assigning IP addresses on the Internet, allocates the following address ranges:

  • 10.0.0.0 -- 10.255.255.255
  • 172.16.0.0 -- 172.31.255.255
  • 192.168.0.0 -- 192.168.255.255

DHCP, DNS, WINS services

To organize and control access to network resources for users and applications, an approach based on symbolic designations of nodes and resources is used. To determine the location of these nodes in the network, services are needed that provide conversion of symbolic names into identifiers used at lower levels of interconnection protocols. networking.

The Domain Name System (DNS - domain name services) is a method of registering computer names and their IP addresses.

Windows Internet Naming Service (WINS) is used as a service to resolve NetBIOS names to IP addresses on segmented networks.

Domain name servers are the tools of this system that ensure its functioning.

Domain Name System (DNS) - Hierarchical distributed base data containing mappings of DNS domain names to various types data such as IP addresses. DNS allows you to find computers and services by friendly names, and view other database information.

DNS client is a client computer that queries DNS servers to resolve DNS domain names. DNS clients have a temporary cache of resolved DNS domain names.

DNS server - a server that contains information about part of the DNS database and responds to and resolves DNS queries.

DNS suffix is ​​a string of characters representing a domain name in DNS. The DNS suffix shows the location of the host relative to the DNS root, indicating the host's position in the DNS hierarchy. Typically, a DNS suffix describes the last part of a DNS name, preceded by one or more of the first DNS name tags.

Domain name space:

When grouped by organizational level, first-level domain names are formed by three characters:

Edu (educational institutions),

Com (commercial organizations),

Org (non-profit organizations),

Gov (government organizations),

Mil (military institutions), etc.

The expansion of the Internet beyond the United States has led to the need to take into account the nationality of organizations and institutions. In this regard, the system for constructing the DNS namespace was modified. It was proposed to group domains according to their affiliation with a certain state. For this purpose, names consisting of two characters are used. For example:

Ru (Russia),

Ie (Ireland),

Au (Australia)

In addition, there is another first-level domain, which is used to group reverse domains. Reverse domains are used to look up a host's domain name by its IP address. This special domain was called .ara, and it was the only top-level domain with a four-character name. The domain contains only a few second-level domains: .in-addr.arpa., ip6.arpa

The creation of first- and second-level domains is handled by a special organization - the Internet Corporation for Assigned Names and Numbers (ICANN).

DNS service architecture

When it is necessary to ensure the exchange of data between application processes that run on remote computers, it is required to support quite complex procedures.

Therefore, the logic of interaction between processes in the network is not implemented as a single module, but is divided into many subtasks. Each subtask is implemented by a separate software or hardware module.

Modules are distributed across functional levels, which are organized in the form of a VERTICAL STACK:

Each layer of the stack performs its own subset of functions necessary to communicate with another system, with each layer providing services to the adjacent higher layer and in turn using the services of the adjacent lower layer.

Thus, functional levels within one system interact on a strictly hierarchical basis.

Architecture of processes in a computer network

With an ideal implementation of such an architecture remote systems communicate by exchanging data blocks of a strictly defined format. And the modules of each functional level on the transmitting side generate control information, which is analyzed and processed on the receiving side by modules of the same rank. This exchange is subject to a set of rules called protocol level.

In 1983 for the purpose of streamlining the principles of interaction of devices in data networks have been approved by the International Organization for Standardization (IOS, ISO) as an international standard 7-level model for communication protocol architecture. It was assumed that this model should serve as a basis for the development of international standards protocols. The model is called the Open Systems Interconnection Reference Model. VOS(ISO standard #7498, International Telecommunication Union recommendation ITU-T X.200). The model's developers believed that this model and the protocols developed under it would dominate computer communications, eventually replacing proprietary protocols and competing models such as TCP/IP. Although this did not happen, many useful protocols were created within the model. And nowadays, most developers and suppliers of network equipment define their products in terms of the OSI or OSI (Open System Interconnection) reference model.

The term " open system " means the ability to use computers on a network different types and classes, with different software and hardware. The main thing is that network devices use open (that is, known, standardized) data formats, interaction protocols and interfaces. This guarantees the ability to exchange information between network users, regardless of the software and hardware implementation methods of the network devices used. This network is open.

In accordance with the OSI model, the interaction of user application processes on the network is divided into 7 functional levels.

The numbering of functional levels goes from bottom to top. The figure shows the names of the OSI layers and the corresponding layer protocols.

On the transmission side the transmitted data block passes down through all functional levels of the sending computer, and at the reception- passes from bottom to top through all functional levels of the recipient.

As a rule, each layer in the transmission adds its own to the data block. title, which contains service information (message addressing and control functions) for modules operating at the same functional level on the receiving side.

Functional levels 1-4 (physical - transport) provide transport services for delivering a block of data from the application process of the source computer to the application process of the recipient computer.

A packet coming from an adjacent higher layer is called protocol data block this level of PDU (Protocol Data Unit). For example, a network layer data block may include the actual user application process data (APP Data) and the Set -... - Prik headers.

When a stream of bits over the network arrives at the input of the network connector of the recipient computer, it is received by its physical layer, then the link layer allocates frames in this stream, and then the data block sequentially moves up the functional levels. Each layer parses and processes its header, performs the necessary functions, removes its header, and passes the remaining block of data to the protocol of the upper adjacent layer.

The rules that determine the sequence and format of messages exchanged between network components (modules, entities) of the same functional level, but operating in different nodes, are called a layer protocol.

A hierarchically organized set of protocols sufficient to organize the interaction of nodes in a network is called a communication protocol stack.

A set of rules of interaction network components adjacent levels within one system and hardware and software at the boundary of levels is called an interface. Interfaces can be hardware (physical layer) and software (for example, transport layer).

The set of layers and protocols is called network architecture.

Physical level provides transmission/reception of an unstructured bit stream in a physical medium.

Level determines mechanical, electric And functional physical communication parameters, that is, describes the process of signals passing through the transmission medium between network devices. At this level, questions are resolved: how many contacts should be in the network connector and what each contact is used for, what signals are used to transmit bits “1” and “0” in the data sequence, what the modulation rate should be equal to IN(pulses per second), how the initial physical connection is established and how it is broken, how the receiver is synchronized with the incoming signals.

Network Device - Repeater or hub(hub, repeater) performs only physical layer functions. The functions of the hub are amplification and relaying of signals. The hub has several network connectors (ports) for connecting the transmission medium (cable). A signal received at the input of one of the ports is sent in parallel to all output ports (except for the input one).

Duct level (data link layer). A data link is a section of a network that includes two neighboring network devices and a physical communication line between them. For example, the user’s computer – communication line UTP 5e cable – switch.

The main functions of link layer protocols are data flow control on the link access control to the transmission medium, protection from errors.

Link Layer Protocol in the global (regional) network Wide Area Network (WAN) provides frame delivery between neighboring in a network of nodes connected by an individual communication line.

Link Layer Protocol on the local network Local Area Network (LAN) can provide frame delivery between any nodes of this network, but in modern networks protocols of higher levels are used - network and transport.

Local networks were originally built using shared(share) transmission media. Currently, transmission media separation methods in a local network are used in wireless access areas (for example, WI-FI). Therefore, the LAN link layer is divided into two sublayers (IEEE 802.x standards):

· LLC (Logical Link Control) - logical link control sublayer (interaction with the network layer, frame flow control, frame transfer between network workstations in accordance with a certain procedure: 1) without establishing a logical connection and without confirming the correct reception of the frame; 2) with the establishment of a logical connection, numbering of transmitted frames and retransmission of distorted frames; 3) without establishing a logical connection, but with confirmation.

· MAC (Media Access Control) - sublevel of access control to the transmission medium (implementation of the media access algorithm, addressing network nodes by physical (hardware) addresses of network cards, checking the received frame for errors).

Network devices, performing the functions of the link layer - switch(SW-switch), bridge(bridge), network adapter (network card) node in the local network (NIC - Network Interface Card).

Network level responsible for the organization route packet transmission in a complex network consisting of many segments (subnets), and allows you to work in arbitrary network topologies. Can be used completely within segments different principles transmission of messages between end nodes - computers. An example of such a network is the Internet. The main functional device of the network layer is router(router). A router is always implemented in software; network layer protocols are included in the computer's network operating system.

At the network level it is created logical subnet address to identify a group of computers. This address is assigned automatically by the operating system or system administrator.

Routers do not see the physical addresses used by the link layer. They forward information to logical subnet addresses.

Router(R,router) makes a decision about where to route incoming data packets based on information in the network layer header. Header contains network address sender and recipient's address, that is numeric identifiers, which allow you to uniquely identify a device on the network.

The router is supported by two processes. One process processes incoming packets and selects an outgoing line (outgoing port) for them according to its routing table. Second process Responsible for populating and updating routing tables. The second process works according to a specific route selection algorithm − routing algorithm.

Routing algorithms can be divided into two main classes: adaptive And non-adaptive.

Non-adaptive algorithms (static routing ) do not take into account the topology and current state of the network and do not measure traffic on communication lines. The list of routes is loaded into the router's memory in advance and does not change when the network state changes.

Adaptive Algorithms (dynamic routing ) change the decision about choosing routes when the network topology changes and depending on the load on the lines.

The router determines the optimal (best) path for transmitting the packet by calculating quantitative indicators called metrics. Usually the best path is the path with the smallest metric.

The passage of a packet through a router is often called abruptly(hop) or hop.

The simplest algorithms routing routers determine a route based on the smallest number of transit nodes on the path to the destination (distance vector algorithms DVA or distance vector routing, routing protocol R.I.P. routinginformationprotocol). More complex algorithms take into account several indicators, for example, the total delay in transmitting packets to the destination node, the throughput of communication channels or the monetary cost of communication (OSPF protocol, LSA link state algorithms, Dijkstra's algorithm - finding the optimal route on a graph).

Main result algorithm operation routing is the creation and support routing tables, in which all routing information is recorded.

Transport level actually separates the user application from the three upper layers that are responsible for data processing, from physical and functional features communication network. Main task transport level – ensure reliable and transparent transfer of data between endpoints (user computers, computer and server) over the network.

The transport layer must bring quality network connection to the reliability class requested by the application.

The OSI model defines 5 classes of service (services) provided by the transport layer. They are distinguished by urgency, the ability to restore an interrupted connection, and most importantly, by detecting and correcting errors in received packets.

Tools for detecting and eliminating errors in transport protocols include: preliminary establishment of a logical connection, calculation of checksums, numbering of packets (segments), setting delivery timers, retransmission of packets through the network etc.

Session layer manages interaction sessions between user application processes. At this level it is determined which party is active in at the moment, and synchronization of the dialogue of application processes is ensured. Synchronization facilities allow checkpointing of long transfers so that in the event of a failure, you can return to the last checkpoint without starting the entire data transfer over again.

Representative level or the presentation layer determines syntax transmitted messages, that is, a set of alphabet characters and ways of representing them in the form of binary numbers (primary code). The layer provides a process for reconciling different encodings and can also perform encryption, decryption, and compression of data.

Application layer provides access For applications user to network services, such as accessing files, transferring email, a database query processor. The level is responsible for semantics, that is, the semantic content of messages exchanged between remote applications.

A device that distributes information flows in the network and that performs the functions of all levels up to and including the application level is called gateway (gateway).


Related information.


This article will cover the basics of the TCP/IP model. For better understanding, the main protocols and services are described. The main thing is to take your time and try to understand each thing step by step. They are all interconnected and without understanding one, it will be difficult to understand the other. The information contained here is very superficial, so this article can easily be called “a TCP/IP protocol stack for dummies.” However, many things here are not as difficult to understand as they might seem at first glance.

TCP/IP

The TCP/IP stack is a network model for data transmission on a network; it determines the order in which devices interact. Data enters the data link layer and is processed in turn by each layer above. The stack is represented as an abstraction that explains the principles of processing and receiving data.

The TCP/IP network protocol stack has 4 levels:

  1. Channel (Link).
  2. Network (Internet).
  3. Transport.
  4. Application.

Application layer

The application layer provides the ability to interact between the application and other layers of the protocol stack, analyzes and converts incoming information into a format suitable for software. Is closest to the user and interacts with him directly.

  • HTTP;
  • SMTP;

Each protocol defines its own order and principles for working with data.

HTTP (HyperText Transfer Protocol) is designed for data transfer. It sends, for example, documents in HTML format that serve as the basis of a web page. In a simplified way, the work scheme is presented as “client - server”. The client sends a request, the server accepts it, processes it properly and returns the final result.

Serves as a standard for transferring files over the network. The client sends a request for a certain file, the server searches for this file in its database and, if found successfully, sends it as a response.

Used to transmit email. The SMTP operation includes three sequential steps:

  1. Determining the sender's address. This is necessary to return letters.
  2. Recipient definition. This step can be repeated a number of times when specifying multiple recipients.
  3. Determining message content and sending. Data about the type of message is transmitted as service information. If the server confirms its readiness to accept the packet, then the transaction itself is completed.

Header

The header contains service data. It is important to understand that they are intended only for a specific level. This means that as soon as the packet is sent to the recipient, it will be processed there according to the same model, but in reverse order. The embedded header will carry special information that can only be processed in a certain way.

For example, a header nested at the transport layer can only be processed by the transport layer on the other side. Others will simply ignore it.

Transport layer

At the transport layer, the received information is processed as a single unit, regardless of the content. Received messages are divided into segments, a header is added to them, and the whole thing is sent downstream.

Data transfer protocols:

The most common protocol. It is responsible for guaranteed data transfer. When sending packages, they are controlled checksum, transaction process. This means that the information will arrive “safe and sound” regardless of the conditions.

UDP (User Datagram Protocol) is the second most popular protocol. It is also responsible for data transfer. Its distinctive feature lies in its simplicity. The packets are simply sent without creating any special connection.

TCP or UDP?

Each of these protocols has its own scope. It is logically determined by the characteristics of the work.

The main advantage of UDP is its transmission speed. TCP is a complex protocol with many checks, while UDP appears to be more simplified and therefore faster.

The disadvantage lies in the simplicity. Due to the lack of checks, data integrity is not guaranteed. Thus, the information is simply sent, and all checks and similar manipulations remain with the application.

UDP is used, for example, to watch videos. For a video file, the loss of a small number of segments is not critical, while loading speed is the most important factor.

However, if you need to send passwords or details bank card, then the need to use TCP is obvious. Losing even the smallest piece of data can have catastrophic consequences. Speed ​​in this case is not as important as safety.

Network layer

The network layer forms packets from the received information and adds a header. The most important part of the data is the IP and MAC addresses of the senders and recipients.

IP address (Internet Protocol address) - the logical address of the device. Contains information about the device's location on the network. Example entry: .

MAC address (Media Access Control address) - the physical address of the device. Used for identification. Assigned network equipment at the manufacturing stage. Presented as a six-byte number. For example: .

The network layer is responsible for:

  • Determination of delivery routes.
  • Transferring packets between networks.
  • Assignment of unique addresses.

Routers are network layer devices. They pave the way between the computer and the server based on the received data.

The most popular protocol at this level is IP.

IP (Internet Protocol) is an Internet protocol designed for addressing on the network. Used to build routes along which packets are exchanged. Does not have any means of checking and confirming integrity. To provide delivery guarantees, TCP is used, which uses IP as its transport protocol. Understanding the principles of this transaction explains much of the basis of how the TCP/IP protocol stack works.

Types of IP addresses

There are two types of IP addresses used in networks:

  1. Public.
  2. Private.

Public (Public) are used on the Internet. The main rule is absolute uniqueness. An example of their use is routers, each of which has its own IP address for interacting with the Internet. This address is called public.

Private (Private) are not used on the Internet. In the global network, such addresses are not unique. An example is a local network. Each device is assigned a unique IP address within a given network.

Interaction with the Internet is carried out through a router, which, as mentioned above, has its own public IP address. Thus, all computers connected to the router appear on the Internet under the name of one public IP address.

IPv4

The most common version of the Internet protocol. Predates IPv6. The recording format is four eight-bit numbers separated by dots. The subnet mask is indicated through the fraction sign. The address length is 32 bits. In the vast majority of cases, when we talk about an IP address, we mean IPv4.

Recording format: .

IPv6

This version is intended to solve problems previous version. The address length is 128 bits.

The main problem that IPv6 solves is the exhaustion of IPv4 addresses. The prerequisites began to appear already in the early 80s. Despite the fact that this problem entered an acute stage already in 2007-2009, the implementation of IPv6 is very slowly gaining momentum.

The main advantage of IPv6 is a faster Internet connection. This is because this version of the protocol does not require address translation. Simple routing is performed. This is less expensive and, therefore, access to Internet resources is provided faster than in IPv4.

Example entry: .

There are three types of IPv6 addresses:

  1. Unicast.
  2. Anycast.
  3. Multicast.

Unicast is a type of IPv6 unicast. When sent, the packet reaches only the interface located at the corresponding address.

Anycast refers to IPv6 multicast addresses. The sent packet will go to the nearest network interface. Only used by routers.

Multicast are multicast. This means that the sent packet will reach all interfaces that are in the multicast group. Unlike broadcast, which is “broadcast to everyone,” multicast broadcasts only to a specific group.

Subnet mask

The subnet mask determines the subnet and host number from the IP address.

For example, an IP address has a mask. In this case, the recording format will look like this. The number "24" is the number of bits in the mask. Eight bits equal one octet, which can also be called a byte.

In more detail, the subnet mask can be represented in the binary number system as follows: . It has four octets and the entry consists of "1" and "0". If we add up the number of units, we get a total of “24”. Fortunately, you don’t have to count by one, because there are 8 values ​​in one octet. We see that three of them are filled with ones, add them up and get “24”.

If we talk specifically about the subnet mask, then in binary representation it has either ones or zeros in one octet. In this case, the sequence is such that the bytes with ones come first, and only then with zeros.

Let's look at a small example. There is an IP address and a subnet mask. We count and write down: . Now we match the mask with the IP address. Those mask octets in which all values ​​are equal to one (255) leave their corresponding octets in the IP address unchanged. If the value is zeros (0), then the octets in the IP address also become zeros. Thus, in the value of the subnet address we get .

Subnet and host

The subnet is responsible for the logical separation. Essentially, these are devices that use the same local network. Determined by a range of IP addresses.

Host is the address of the network interface (network card). Determined from the IP address using a mask. For example: . Since the first three octets are the subnet, this leaves . This is the host number.

The range of host addresses is from 0 to 255. The host numbered “0” is, in fact, the address of the subnet itself. And the host number “255” is a broadcaster.

Addressing

There are three types of addresses used for addressing in the TCP/IP protocol stack:

  1. Local.
  2. Network.
  3. Domain names.

MAC addresses are called local. They are used for addressing in local network technologies such as Ethernet. In the context of TCP/IP, the word "local" means that they operate only within a subnet.

The network address in the TCP/IP protocol stack is the IP address. When sending a file, the recipient's address is read from its header. With its help, the router learns the host number and subnet and, based on this information, creates a route to the end node.

Domain names are human-readable addresses for websites on the Internet. Web servers on the Internet are accessible via a public IP address. It is successfully processed by computers, but it seems too inconvenient for people. To avoid such complications, domain names are used, which consist of areas called “domains”. They are arranged in a strict hierarchy, from top level to bottom.

A top-level domain represents specific information. Generic (.org, .net) are not limited by any strict boundaries. The opposite situation is with local ones (.us, .ru). They are usually localized.

Low-level domains are everything else. It can be any size and contain any number of values.

For example, "www.test.quiz.sg" is a correct domain name, where "sg" is a local first (top) level domain, "quiz.sg" is a second level domain, "test.quiz.sg" is a third level domain . Domain names may also be called DNS names.

Establishes a correspondence between domain names and public IP address. When you type a domain name into your browser, DNS will detect the corresponding IP address and report it to the device. The device will process this and return it as a web page.

Data Link Layer

At the link layer, the relationship between the device and the physical transmission medium is determined and a header is added. Responsible for encoding data and preparing frames for transmission over the physical medium. Network switches operate at this level.

The most common protocols:

  1. Ethernet.
  2. WLAN.

Ethernet is the most common wired LAN technology.

WLAN - local area network based wireless technologies. Devices interact without physical cable connections. An example of the most common method is Wi-Fi.

Configuring TCP/IP to use a static IPv4 address

A static IPv4 address is assigned directly in the device settings or automatically when connecting to the network and is permanent.

To configure the TCP/IP protocol stack to use a permanent IPv4 address, enter the ipconfig/all command into the console and find the following data.

Configuring TCP/IP to use a dynamic IPv4 address

A dynamic IPv4 address is used for a while, rented, and then changed. Assigned to the device automatically when connected to the network.

To configure the TCP/IP protocol stack to use a non-permanent IP address, you need to go to the properties of the desired connection, open the IPv4 properties and check the boxes as indicated.

Data transfer methods

Data is transmitted through the physical medium in three ways:

  • Simplex.
  • Half-duplex.
  • Full Duplex.

Simplex is a one-way communication. Transmission is carried out by only one device, while the other only receives the signal. We can say that information is transmitted in only one direction.

Examples of simplex communication:

  • Television broadcasting.
  • Signal from GPS satellites.

Half-duplex is two-way communication. However, only one node can transmit a signal at a time. With this type of communication, two devices cannot use the same channel at the same time. A complete one may be physically impossible or lead to collisions. It is said that they conflict over the transmission medium. This mode is used when using coaxial cable.

An example of half-duplex communication is communication via walkie-talkie on one frequency.

Full Duplex - full two-way communication. Devices can simultaneously broadcast a signal and receive. They do not conflict over the transmission medium. This mode is used when using Fast Ethernet technology and a twisted pair connection.

An example of duplex communication is telephone communication via mobile network.

TCP/IP vs OSI

The OSI model defines the principles of data transmission. The layers of the TCP/IP protocol stack directly correspond to this model. Unlike the four-layer TCP/IP, it has 7 layers:

  1. Physical.
  2. Channel (Data Link).
  3. Network.
  4. Transport.
  5. Session.
  6. Presentation.
  7. Application.

There is no need to delve too deeply into this model at this time, but at least a superficial understanding is necessary.

The application layer in the TCP/IP model corresponds to the top three OSI layers. They all work with applications, so you can clearly see the logic of this combination. This generalized structure of the TCP/IP protocol stack makes it easier to understand the abstraction.

The transport layer remains unchanged. Performs the same functions.

The network layer is also unchanged. Performs exactly the same tasks.

The data link layer in TCP/IP corresponds to the last two OSI layers. The data link layer establishes protocols for transmitting data across the physical medium.

Physical represents the actual physical connection - electrical signals, connectors, etc. In the TCP/IP protocol stack, it was decided to combine these two layers into one, since they both deal with the physical medium.

TCP/IP protocol stack(English) Transmission Control Protocol/Internet Protocol- transmission control protocol) - a set of network protocols of different levels of the DOD network interaction model used in networks. Protocols work with each other in a stack. stack, stack) - this means that the protocol located at a higher level works “on top” of the lower one, using encapsulation mechanisms. For example, the TCP protocol runs on top of the IP protocol.

The TCP/IP protocol stack is based on the DOD networking model and includes four layers of protocols:

application

· transport (transport),

network

· channel (data link).

The protocols of these levels fully implement functionality OSI models. All user interaction in IP networks is built on the TCP/IP protocol stack. The stack is independent of the physical data transmission medium.

[edit]Physical level

The physical layer describes the data transmission medium (be it coaxial cable, twisted pair, optical fiber or radio channel), the physical characteristics of such a medium and the principle of data transmission (channel separation, modulation, signal amplitude, signal frequency, method of transmission synchronization, response latency and maximum distance).

[edit] Link layer

The data link layer describes how data packets are transmitted through the physical layer, including coding(that is, special sequences of bits that determine the beginning and end of a data packet). Ethernet, for example, contains in the packet header fields an indication of which machine or machines on the network the packet is destined for.

Examples of link layer protocols are Ethernet, IEEE 802.11Wireless Ethernet, SLIP, Token Ring, ATM, and MPLS.

PPP does not quite fit into this definition, so it is usually described as a pair of HDLC/SDLC protocols.

MPLS occupies an intermediate position between the data link and network layers and, strictly speaking, cannot be classified as one of them.

The data link layer is sometimes divided into 2 sublayers - LLC and MAC.

[edit]Network layer

The network layer is initially designed to transfer data from one (sub)network to another. Examples of such a protocol are X.25 and IPC on the ARPANET.

With the development of the concept of a global network, the level was introduced additional features for transmission from any network to any network, regardless of lower-level protocols, as well as the ability to request data from a remote side, for example in the ICMP protocol (used to transmit diagnostic information of an IP connection) and IGMP (used to manage multicast streams).



ICMP and IGMP are located above IP and should go to the next transport layer, but functionally they are network layer protocols and therefore cannot be fit into the OSI model.

IP network protocol packets may contain code indicating which next-layer protocol to use to extract data from the packet. This number is unique IP protocol number. ICMP and IGMP are numbered 1 and 2, respectively.

This level includes: DHCP, DVMRP, ICMP, IGMP, MARS, PIM, RIP, RIP2, RSVP

Transport layer

Transport layer protocols can solve the problem of unguaranteed message delivery (“did the message reach the recipient?”), and also guarantee the correct sequence of data arrival. In the TCP/IP stack, transport protocols determine which application the data is intended for.

The automatic routing protocols logically represented at this layer (because they run on top of IP) are actually part of the network layer protocols; for example OSPF (IP ID 89).

TCP (IP ID 6) is a “guaranteed” connection-pre-established transport mechanism that provides an application with a reliable data stream, provides confidence that the data received is error-free, re-requests data if lost, and eliminates duplication of data. TCP allows you to regulate the load on the network, as well as reduce the latency of data when transmitting over long distances. Moreover, TCP ensures that the received data was sent in exactly the same sequence. This is its main difference from UDP.

UDP (IP ID 17) connectionless datagram transmission protocol. It is also called an “unreliable” transmission protocol, in the sense of the impossibility of verifying the delivery of a message to the recipient, as well as the possible mixing of packets. Applications that require guaranteed data transfer use the TCP protocol.



UDP is commonly used in applications such as video streaming and computer games, where packet loss is allowed, and repeated request difficult or not justified, or in request-response applications (for example, DNS queries), where creating a connection takes more resources than resending it.

Both TCP and UDP use a number called a port to identify their upper-layer protocol.

See also: List of TCP and UDP ports

Application layer

The application layer is where most network applications operate.

These programs have their own communication protocols, for example, HTTP for WWW, FTP (file transfer), SMTP (email), SSH ( secure connection with a remote machine), DNS (converting symbolic names to IP addresses) and many others.

For the most part, these protocols work on top of TCP or UDP and are tied to a specific port, for example:

· HTTP on TCP port 80 or 8080,

· FTP to TCP port 20 (for data transfer) and 21 (for control commands),

· SSH to TCP port 22,

· DNS requests to UDP port (less often TCP) 53,

· updating routes via RIP protocol to UDP port 520.

These ports are defined by the International Assigned Naming Authority (IANA).

This level includes: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

Network access methods

Access Method– a set of rules governing the use of the network.

Implemented at the physical level.

The purpose of the access method is to resolve the issue of using the cable connecting users on the network.

Ethernet method

Multiple access with carrier sniffing and conflict resolution.

Every PC on the network “hears” every transmission, but not every PC receives it.

Any PC transmits a message that contains the address of the receiver and the sender. All PCs hear the message, but only one recognizes it, accepts it, and sends confirmation.

A conflict occurs if two PCs transmit messages at the same time. Then they stop transmitting for a random period of time and then resume it.

Archnet method

Handover access method for a star topology network.

A PC can transmit a message if it receives a token - a sequence of bits created by one of the PCs. The marker moves along the chain as if in a ring. All PCs have a number (from 0 to 255). The marker goes from PC to PC. When the PC receives the token, it can transmit a data packet (up to 512 bytes), including the source and destination addresses. The entire packet goes from node to node until it reaches the destination. In this node, the data is output, and the marker goes further.

Advantage This method is predictable, because the path of the marker is known, i.e. you can calculate how much time it takes to transfer.

Flaw– any node functions as a repeater, accepting and regenerating a token. If not operated correctly, the marker may be distorted or lost.

TokenRing method

Passing a token in a ring (ring topology)

When receiving an empty token, the PC can transmit a message within a certain time. This message is called a frame. The receiver copies the message into its memory, but does not remove it from the ring. This is what the sending computer does when it receives its message back.

There is a priority mechanism.

Advantage– reliability and simplicity.

You can turn off faulty PCs

Submitting your good work to the knowledge base is easy. Use the form below

Students, graduate students, young scientists who use the knowledge base in their studies and work will be very grateful to you.

Posted on http://www.allbest.ru/

Introduction

1. Hierarchy of TCP/IP protocols

2. TCP/IP protocol architecture

3. Basic protocols of the TCP/IP family

4. Internet Protocol

4.1 Routing

Conclusion

References

Introduction

The Internet is a network of networks that connects both local networks, so global networks. Therefore, the central place when discussing the principles of network construction is the TCP/IP family of internetworking protocols. The term "TCP/IP" usually refers to everything related to the TCP and IP protocols. These are not only the punctures themselves with the specified names, but also protocols built on the use of TCP and IP, and application programs. The main purpose of the TCP/IP stack is to network packet subnets through gateways.

Each network operates according to its own rules, but it is assumed that the gateway can accept a packet from another network and deliver it to the specified address. In reality, a packet from one network is transmitted to another subnet through a series of gateways that provide end-to-end routing of packets throughout the network. In this case, a gateway refers to the connection point between networks. In this case, both local networks and global networks can be connected. The gateway can be either special devices, routers, for example, or computers that have software, which performs packet routing functions.

Routing is the procedure of determining the path a packet will take from one network to another.

This delivery mechanism is made possible by the implementation of the Internet Protocol (IP) in all network nodes. If we look back at the history of the Internet, from the very beginning it was intended to develop specifications for a packet switching network. This means that any message that is sent over the network must be “chopped” into fragments when sent. Each of the fragments must be provided with the sender and recipient addresses, as well as the number of this packet in the sequence of packets that make up the entire message. Such a system allows each gateway to select a route based on current information about the state of the network, which increases the reliability of the system as a whole. In this case, each packet can pass from the sender to the recipient along its own route. The order in which the recipient receives the packets does not matter much, because Each packet carries information about its place in the message. When creating this system, it was important to ensure its survivability and reliable delivery of messages, because it was assumed that the system was supposed to provide control of the US Armed Forces in the event of a nuclear strike on the country.

1. Protocol hierarchyTCP/IP

Typically, network protocols are created on the basis of a single concept within a multi-level system, in which each level is responsible for its part of the information transfer processes. A protocol suite is a collection of protocols at various levels.

The TCP/IP family is usually divided into four levels:

1. Data Link Layer(link layer, data-link layer), or network interface layer, contains two main components: the computer's hardware network interface ( network card) and from the corresponding driver for this network interface in the operating system. Together they provide both the physical connection to the cable (or other physical medium) and the control of all hardware transmission processes.

2. Network layer(network layer, internet layer) is responsible for moving packets along one or another route in the network. In the TCP/IP protocol family, the network layer is represented by: protocols: IP (Internet Protocol), ICMP (Internet Control Message Protocol) and IGMP (Internet Group Management Protocol).

3. Transport layer(transport, layer) organizes data exchange between two computers and a network for a higher application layer. The TCP/IP protocol family simultaneously uses two significantly different transport protocols: TCP (Transmission Control Protocol) and UDP (User Datagram Protocol). TCP provides reliable transmission of data streams between two computers on a network. Its tasks include: dividing data coming from the applications it serves into blocks of an acceptable size for the lower network layer; confirm receipt of packets received via the network; within the time periods (timeouts) set by it, wait for confirmation of receipt of the packets sent to it, etc. Since TCP takes on all the problems of ensuring reliable delivery of the data handed to it to its destination, the application layer is freed from these concerns. In contrast, UDP provides a much more primitive service to the application layer. It only sends data to recipients in the form of packets called UDP datagrams, without guaranteeing their delivery. It is assumed that the required degree of forwarding reliability must be provided by the application layer itself. Each of these two transport protocols finds application corresponding to its advantages and disadvantages. The reasons why TCP is preferred for some applications and UDP for others will become clear when we look at the applications themselves.

4. Application layer(application layer) ensures the execution of various application tasks. There is a certain “classic” set of standard application services that are offered in most implementations of the TCP/IP family. These include:

· Telnet - remote access protocol,

· FTP (File Transfer Protocol) - file transfer protocol.

· SMTP (Simple Mail Transfer Protocol) - a simple email exchange protocol,

· SNMP (Simple Network Management Protocol) is a simple network management protocol.

2. TCP/IP protocol architecture

The TCP/IP protocol architecture is designed for an integrated network consisting of separate heterogeneous packet subnets connected to each other by gateways, to which heterogeneous machines are connected. Each of the subnetworks operates in accordance with its own specific requirements and has its own nature of communication media. However, it is assumed that each subnet can accept a packet of information (data with the appropriate network header) and deliver it to a specified address in that particular subnet. The subnet is not required to guarantee mandatory packet delivery and have a reliable end-to-end protocol. Thus, two machines connected to the same subnet can exchange packets.

When it is necessary to transmit a packet between machines connected to different subnets, the sending machine sends the packet to the appropriate gateway (the gateway is connected to the subnet just like a regular node). From there, the packet is routed along a specific route through a system of gateways and subnets until it reaches a gateway connected to the same subnet as the receiving machine; there the packet is routed to the recipient. The interconnected network provides datagram service.

The problem of packet delivery in such a system is solved by implementing the Internet Protocol IP in all nodes and gateways. The internetwork layer is essentially the basic element in the entire protocol architecture, providing the ability to standardize upper-layer protocols.

3. Basic protocols of the TCP/IP family

The TCP/IP protocol family uses TCP and UDP protocols at the transport layer. Both rely on the IP protocol as the underlying network layer.

TCP provides a reliable transport service on top of an unreliable IP service.

Protocol UDP allows applications to send and receive pieces of information in the form of so-called UDP datagrams. However, UDP does not have the reliability of TCP: there is no guarantee that a UDP datagram will even reach its destination.

The main network layer protocol is IP. It serves both TCP and UDP. Each piece of data generated by TCP or UDP for transmission over the Internet passes through the IP layer both on the end hosts and on each intermediate router. Also a certain user process that has direct access to the IP. This is a valid exception -- some routing protocols communicate directly with IP; in addition, this feature is also used when conducting experiments with new transport layer protocols

Protocol ISMR adjacent to IP. It is used to exchange error messages and other important information with the IP module of another host or router. Although ICMP is used primarily by the IP protocol, it can also be accessed by an application. We will see that the two most popular diagnostic tools, Ping and Traceroute, access ICMP directly, bypassing IP.

IGMP used for multicast data transfer, that is, when UDP datagrams are destined to several hosts simultaneously. We will talk about the basic properties of broadcasting (broadcasting) transmission of UDP datagrams addressed to all hosts on a specified network, and about multicasting.

ARP and RARP-- specialized protocols used by certain types of network interfaces (for example, Ethernet or Token Ring) to map IP layer addresses to their corresponding link layer addresses.

4. Internet ProtocolIP

In the TCP/IP family, the IP protocol is assigned the role of a “workhorse”: all TCP, UDP, ICMP and IGMP data are transmitted in IP datagrams. However, IP datagram delivery is by definition an unreliable and connectionless service.

An unreliable service does not guarantee that an IP datagram will successfully reach its destination. It is customary to say about such packet delivery that everything possible is being done, but the success of the attempt depends on the circumstances (best effort deliveiy). If an intermediate node fails (for example, the router's buffer is temporarily full), its IP module has a simple action: it discards the datagram. It is assumed that the required degree of reliability should be provided by upper-layer protocols (for example, TCP).

The term connectionless means that IP does not keep any record of the order in which datagrams are delivered and each one is processed independently of the others. As a result, the order of delivery may be disrupted. When a host sends two datagrams one after the other (first A, then B) to the same destination, both are routed independently. The routes of their advance may turn out to be different, and such that B will arrive before A.

The IP module is the basic element of internet technology, and the central part of IP is its route table. The IP protocol uses this table to make all decisions about the routing of IP packets. The contents of the route table are determined by the network administrator. Errors in setting routes can block transmissions.

4.1 Routing

The most important core function of the IP layer is routing. The source of datagrams to be routed on a host can be either the host itself or any other computer on the network. In the latter case, the host must be specially configured to perform the functions of a router, otherwise datagrams arriving on its network interfaces, but not addressed to it, will simply be ignored by it.

Conclusion

The TCP/IP protocol family works on any computer models made by various manufacturers computer equipment and working under the control of various operating systems. Using TCP/IP protocols, you can connect almost any computer. And what is most surprising is that today's implementations of the TCP/IP protocol are very far from how it was originally conceived. At the end of the 60s it began research project, funded by the US government, to develop a packet switching network, and in the 90s, the results of this research turned into the most widely used form of networking between computers. Nowadays it is truly an open system, namely a family of protocols and large number free implementations (or fairly cheap ones). They form the basis of what is currently called the Internet.

References

network user interface

1. Brezhnev A.F., Smelyansky R.L. "TCP/IP protocol family"

2. N. Ugrinovich “Informatics and information technologies”

3. http://www.citforum.ru/internet/comer/contents.shtml

4. http://tcpips.ru/?Obzor_TCP%2FIP:Realizacii_TCP%2FIP_v_Unix

5. http://tcpip.pp.ru/

Posted on Allbest.ru

...

Similar documents

    A mechanism for creating and exchanging packets in an information transmission network based on the ZigBee protocol stack. Principle of operation, features of operation and switching with other protocols, definition of the main methods and methods of protecting information transmitted over the network.

    course work, added 09/12/2012

    Protocol stacks from a worldwide network base. NetBIOS message frame format. Use of communication protocol stacks on the network: IPX/SPX, TCP/IP, OSI and DECnet. Remote control lighting. Features of the use of communication protocols.

    presentation, added 02/21/2015

    Standard networks of communication protocols. OSI stack. TCP/IP stack. Principles of networking based on network level protocols. Limitations of bridges and switches. Modem as a means of communication between computers. International modem standards.

    course work, added 07/06/2008

    Development of the structure of the local computer network of the State Budget Educational Institution SPO "VPT". Justification of the topology, selection of hardware for switching and segmentation. Installation and configuration of network protocols and services. System for monitoring network nodes and network traffic.

    thesis, added 10/25/2013

    General concepts, tasks and characteristics of the TMN computer network: control technology, composition and purpose of the main elements, functionality, architecture. Implementation of control in the VOS model. Comparative characteristics SNMP and CMIP protocols.

    course work, added 03/18/2011

    Formalization of requirements for a local computer network (LAN). Selection and justification of hardware for LAN switching and segmentation. Installation and configuration of network protocols and services. LAN testing and debugging: troubleshooting, etc.

    thesis, added 09/17/2017

    Elements of a communication network. Network communication according to the ISO model. Network protocol levels. Network resilience to errors, their detection and reconfiguration. Design tasks. Operation Ethernet networks, package structure. GPRS operation scheme.

    lecture, added 01/24/2014

    Development of the first program for sending e-mail over the network. Development of data transfer protocols. Jon Postel's role in the development and standardization of network protocols. Ways to connect to the Internet. Setting up STREAM. Cellular access.

    presentation, added 04/30/2014

    Local computer network management of communication systems and telecommunications of a car repair shop. Bandwidth channels between network clients and servers. Differences between the 100Base-T protocol stack and the 10Base-T protocol stack. Calculation of network performance.

    course work, added 01/18/2016

    Review of network control technologies and determination of requirements for control systems, system size and interconnectivity of its constituent parts. System architecture, overview of transmission protocols and possible solutions, coordination and configuration of the communication line.