Chapter 20: An Opportunity to Catch Up
Fu Xin nodded, he knew what Gao Wenxin meant, but he still couldn't help but glance at Gao Wenxin, and sighed in his heart, none of the politicians are simple! This Gao Wenxin obviously mastered the rhythm that he Fu Xin hadn't finished talking about.
Fu Xin really hasn't finished talking yet, just now he just talked about the background of the TCP/IP protocol.
Fu Xin continued: "TCP/IP protocol is not a joint name for TCP and IP, but refers to the entire TCP/IP protocol family of the Internet. From the perspective of protocol layering model, TCP/IP consists of four layers: network interface layer, network layer, transport layer, and application layer.
The network interface layer, also known as the link layer, is not actually part of the Internet protocol group, but it is the method by which packets are transmitted from the network layer of one device to the network layer of another device.
This process can be controlled in the software driver of the network card, as well as in the firmware or dedicated chip. This will accomplish some of the data link functions such as adding headers ready to send, actually sending over physical media, and so on. On the other end, the link layer completes the dataframe reception, strips the headers, and transmits the received packets to the network layer.
However, the link layer is not always that simple. It could also be a virtual private network (VPN) or tunnel, where packets from the network layer are sent using a tunnel protocol and a set of other (or the same) protocols instead of to a physical interface.
VPNs and tunnels are usually pre-built, and they have some special features that are not found in sending directly to a physical interface, such as the fact that it can encrypt data passing through it.
Since now the link "layer" is a complete network. The recursive use of such a protocol group can be confusing. But it's an excellent way to implement common complications. However, care needs to be taken to prevent a packet that has already been encapsulated and sent down the tunnel from being encapsulated and sent again.
The network interface layer corresponds to the physical layer and the data link layer in the OSI reference model. The network interface layer is the TCP/IP interface with various LANs or WANs.
The network interface layer encapsulates the IP datagram of the upper layer into a frame at the sender and sends it to the network. When a data frame reaches the receiving end over the network. The network interface layer of the node unpacks the data frame and checks the MAC address contained in the frame. If this address is the MAC address of the unit or the broadcast address. then upload to the network layer, otherwise the frame is discarded.
When using a serial line to connect a host to a network, or to connect a network to a network, for example, a host accesses the Internet through modems and telephone lines, the SLIP or PPP protocols need to be run at the network interface layer.
The SLIP(Serial_Line_Internet_Protocol) protocol provides a simple way to encapsulate IP datagrams over serial communication lines, allowing users to easily access TCP/IP networks via telephone lines and modems.
The PPP (Point_to_Point_Protocol) protocol is an effective point-to-point communication protocol, which solves the above problems of SLIP, that is, it can support a variety of network layer protocols (such as IP, IPX, etc.). Support for dynamically assigned IP addresses; In addition, the check field is set in the PPP frame, so the PPP has the error verification capability at the network interface layer.
The data link layer is responsible for receiving IP packets and sending them over the network, or receiving physical frames from the network, extracting IP packets, and handing them to the IP layer.
ARP is a forward address resolution protocol that uses a known IP address to find the MAC address of a host.
RARP is a reverse address resolution protocol that determines an IP address by MAC address. For example, diskless workstations also have DHCP services.
Common interface layer protocols are:
Ethernet802.3, Token_Ring802.5, X.25, Frame_relay, HDLC, PPP, ATM, etc.
The network layer is the third layer in the OSI reference model, which sits between the transportation layer and the data link layer. It further manages the data communication in the network on the basis of the data frame transmission function between two adjacent endpoints provided by the data link layer, and tries to transfer the data from the source end to the destination end through several intermediate nodes, so as to provide the most basic end-to-end data transmission service to the transportation layer.
The main contents are: virtual circuit packet switching and datagram packet switching, routing algorithms, blocking control methods, X. 25 protocols, Integrated Service Data Network (ISDN), Asynchronous Transfer Mode (ATM) and internetwork interconnection principles and implementation.
The purpose of the network layer is to achieve transparent data transmission between the two end systems. Specific functions include addressing and routing, connection establishment, holding, and termination, and more. It provides a service that eliminates the need for the transport layer to understand the data transmission and switching technologies in the network.
The network layer is related to the operation control of the communication subnet, and reflects the way that the resource subnet accesses the communication subnet in the network application environment. Physically, the network layer is generally distributed over a wide area and logically complex in function. Therefore, it is the most complex and critical layer of the lower three layers (i.e., communication subnets) for data communication in the OSI model.
The network layer is responsible for communication between adjacent computers. Its function consists of three aspects.
First, it handles packet send requests from the transport layer. Once the request is received, it is subassembled into an IP datagram. Populate the header, select the path to the host, and send the datagram to the appropriate network interface.
Second, the input datagram is processed: its legitimacy is checked first, and then pathfinding is carried out - if the datagram has reached the host machine, the header is removed and the rest is handed over to the appropriate transmission protocol; If the datagram has not yet reached the destination, the datagram is forwarded.
Third, deal with problems such as paths, flow control, and congestion.
The network layer includes: IP (Internet_Protocol) protocol and ICMP (Internet_Control_Message_Protocol)
Control packet protocol, ARP (Address_Resolution_Protocol) address translation protocol, and RARP (Reverse_ARP) reverse address translation protocol.
IP is the core of the network layer, and the next IP is encapsulated and handed over to the interface layer through routing. IP Datagram is a connectionless service.
ICMP is a supplement to the network layer and can send packets back. It is used to check whether the network is smooth.
The ping command is to send the ICMP echo packet. Network testing via echorelay loopback.
The transport layer is when two computers communicate data over the network. The first end-to-end layer, which acts as a buffer. When the quality of service at the network layer cannot meet the requirements. It will improve the service to meet the requirements of the upper echelons; When the quality of service at the network layer is good, it uses very little effort. The transport layer can also be multiplexed, i.e., multiple logical connections are created on a single network connection.
The Transport Layer (Transport_Layer) is the most important and critical layer of OSI and is the only layer responsible for overall data transfer and data control.
The transport layer provides an end-to-end mechanism for exchanging data, provides reliable transmission services to the three layers of the session layer, and provides reliable destination site information to the network layer.
The transport layer is also known as the transport layer. The transport layer only exists in the open end system, which is a layer between the lower layer three communication subnet systems and the upper layer three, but it is an important layer. Because it is the last layer that controls data transmission from source to destination, from low to high.
There is a pre-existing fact. That is, there are great differences in the performance of various communication subnets in the world.
For example, the communication subnets such as switched telephone networks, packet switched networks, public data switched networks, and local area networks can be interconnected, but the throughput, transmission rate, and data delay communication costs they provide are different.
For the session layer, there is a need for an interface with constant performance. The transport layer takes on this function. It uses the techniques of splitting/merging and multiplexing/demultiplexing to adjust the differences in the above communication subnets. Make it unfelt by the conversation layer. In addition, the transport layer should also have error recovery, flow control and other functions, so as to shield the details and differences of the communication subnet in these aspects to the session layer.
The data objects of the transport plane pair are no longer network addresses and host addresses, but interface ports with the session layer.
The ultimate purpose of the above features is to provide a reliable session with that. Error-free data transfer.
Generally, the service of the transport layer needs to go through three stages: the transmission connection establishment stage, the data transmission stage, and the transmission connection release stage. In the data transmission stage, it is divided into two types: general data transmission and accelerated data transmission.
There are five types of transport layer services. Basically, it can meet the quality of transmission. Transmission speed, transmission cost of a variety of different needs.
The transport layer provides communication between applications.
Its functions include: 1. Formatting information flow; 2. Provide reliable transmission.
In order to achieve the latter. The transport layer protocol specifies that the receiver must send back an acknowledgment if the packet is lost. It must be retransmitted, the familiar process of "three-way handshake", to provide reliable data transmission.
The transport layer protocols are mainly TCP (Transmission_Control_Protocol) and UDP (User_Datagram_protocol).
The application layer, also known as an Application Entity (AE), consists of several Specific Application Service Elements (SASE) and one or more Common Application Service Elements (CASE). Each SASE provides application-specific services such as File Shipping Access and Management (FTAM), Electronic Telecommunications Processing (MHS), Virtual Terminal Protocol (VAP), and more. CASE provides a common set of application services, such as the Contact Control Service Element (ACSE), the Reliable Transportation Service Element (RTSE), and the Remote Operations Service Element (ROSE).
The application layer is the seventh layer of the seven-layer OSI model. The application layer directly interfaces with the application and provides common web application services. The application layer also makes requests to the presentation layer.
The application layer is the highest layer of the open system and provides services directly to the application process. Its role is to realize the communication between multiple system application processes and complete a series of services required for business processing. Its service elements are divided into two categories: the public application service element CASE and the specific application service element SASE.
CASE provides the most basic service, it becomes the user of any user and any service element in the application layer. It mainly provides the basic control mechanism for application process communication and distributed system implementation; Specific services: SASE is required to meet certain services. Such as volume transfer, access management. Job routing, banking transactions, order entry, etc.
These will involve virtual terminals, job transfer and operation, volume transfer and access management, remote database access, graphics core systems, open systems interconnection management, and more.
The application layer provides users with a set of commonly used applications, such as email, file transfer access, remote login, and so on. TELNET USES THE TELNET PROTOCOL TO PROVIDE INTERFACES FOR REGISTRATION ON OTHER HOSTS ON THE NETWORK.
TELNET sessions provide character-based virtual terminals. File Transfer Access (FTP) uses the FTP protocol to provide file copying between machines within the network.
The application layer protocols include the following: FTP, TELNET, DNS, SMTP, NFS, and HTTP.
FTP (File_Transfer_Protocol) is a file transfer protocol. For the FTP service for upload and download, the data port is 20H and the control port is 21H.
Telnet service is a remote login service for users, using 23H ports, using clear code transmission, poor confidentiality, simple and convenient.
DNS (Domain_Name_Service) is a domain name resolution service that provides translation between domain names and IP addresses, using port 53.
SMTP (Simple_Mail_Transfer_Protocol) is a simple mail transfer protocol used to control the sending and relay of letters. Use port 25.
NFS (Network_File_System) is a network file system used for file sharing between different hosts in a network.
HTTP (Hypertext_Transfer_Protocol) is a hypertext transfer protocol used to implement WWW services on the Internet, using port 80.
The TCP/IP protocol does not fully conform to OSI's Layer 7 reference model. OSI (Open_System_Interconnect) is the traditional open system interconnection reference model, which is a seven-layer abstract reference model of communication protocols, in which each layer performs a specific task. The purpose of this model is to enable various pieces of hardware to communicate with each other at the same level.
The seven layers are: the physical layer, the data link layer (network interface layer), the network layer (network layer), the transport layer (transport layer), the session layer, the presentation layer, and the application layer (application layer). The TCP/IP communication protocol adopts a four-layer hierarchical structure. Each layer calls the network provided by the next layer to fulfill its own needs.
Since the designers of ARPANET focused on network interconnection, the communication subnet (network interface layer) was allowed to use a variety of existing or future protocols. So there are no specific protocols provided in this layer. In fact, the TCP/IP protocol can be connected to any network through the network interface layer. For example, X.25 switched networks or IEEE802 local area networks.
Finally, the protocols in the network layer mainly include IP, ICMP, IGMP, etc., because it contains IP protocol modules, it is the core of all TCP/IP protocol-based networks. At the network layer, IP modules perform most of the functions.
ICMP and IGMP, as well as other IP-enabled protocols, help IP accomplish specific tasks, such as transmitting error control information and control messages between hosts and routers. The network layer is responsible for the transfer of information between hosts in the network.
The main protocols on the transport layer are TCP and UDP. Just as the network layer controls the transfer of data between hosts, the transport layer controls the data that will enter the network layer. Two protocols are the two ways it manages this data: TCP is a connection-based protocol; UDP is a protocol for the management of connectionless services. ”
Speaking of this, Fu Xin couldn't help but pick up the water cup on the table and take a sip, moisten his throat, and continued: "The TCP/IP protocol has the following characteristics,
First, the TCP/IP protocol does not depend on any specific computer hardware or operating system, providing open protocol standards, even without considering the Internet. The TCP/IP protocol is also widely supported. Therefore, the TCP/IP protocol has become a practical system that combines various hardware and software.
Second, the TCP/IP protocol does not depend on specific network transmission hardware. As a result, the TCP/IP protocol can be integrated into a wide variety of networks. Users can use Ethernet, TokenRingNetwork, Dial-upline, X.25 network, and all network transmission hardware.
Third, a unified network address allocation scheme. This makes the entire TCP/IP device have a unique address in the network.
Fourth, standardized high-level protocols can provide a variety of reliable user services.
In the long process of development, IP gradually replaced other networks. Here's a simple explanation. IP transmits common data. Data can be used for any purpose and can easily replace data previously transmitted over private data networks.
For example:
A proprietary network is developed for a specific purpose. If it works well, the user will accept it.
In order to facilitate the provision of IP services, it is often used to access e-mail or chat, usually through a VPC tunnel in some way. Tunneling can be very inefficient at first, as email and chat require very low bandwidth.
With a little bit of investment, IP infrastructure is gradually emerging around the perimeter of private data networks.
The need to replace proprietary services with IP has emerged. Often a user requirement.
The IP substitution process is spread throughout the Internet, which makes IP substitution more valuable than the original private network (due to network effects).
Private networks are suppressed. Many users start maintaining reproductions that use IP alternatives.
The indirect overhead of IP packets is small, less than one percent, which makes them very competitive in cost. An inexpensive medium of transport has been developed that brings IP to the majority of users on a private network.
In order to cut the overhead for most users, VPCs are canceled.
However, the TCP/IP protocol does not mean that there are no shortcomings, and it has the following two major shortcomings:
First, it's not very clear what the difference is between services, interfaces, and protocols. A good software project should distinguish between functionality and implementation, and TCP/IP does not do this well, making the TCP/IP reference model inadequate for the use of new technologies. The TCP/IP reference model is not suitable for other non-TCP/IP protocol suites.
Second. The host-network layer itself is not the actual layer, it defines the interface between the network layer and the data link layer. The division of the physical layer from the data link layer is necessary and reasonable, and a good reference model should distinguish between them, which is not the case with the TCP/IP reference model. ”
"Where has this TCP/IP protocol been developed? Is there any chance that it will continue to develop? Zhou Zhengming grasped the point of the problem.
"Yes. There is still a possibility that it will continue to develop, in fact, the existing TCP/IP version is not very complete. Fu Xin nodded. He continued: "There are currently four versions being developed - TCPv1 and TCPv2, which were split into TCPv3 and IPv3 versions in the spring of 1978. Now it's stable TCP/IPv4.
IPv4, which is the Internet Protocol (Internet_Protocol. IP) and the first protocol to be widely used and form the cornerstone of today's Internet technology.
In 1981 Jon_Postel IP was defined in RFC791, and IPv4 can run on a variety of underlying networks, such as end-to-end serial data links, i.e., PPP protocol and SLIP protocol, satellite links, etc. The most commonly used in local area networks is Ethernet.
The traditional TCP/IP protocol is based on IPV4, which belongs to the second generation of Internet technology, and the core technology belongs to the United States. Its biggest problem is that it has limited network address resources, which theoretically addresses 16 million networks and 4 billion hosts. However, with the adoption of A, B, and C addressing, the number of available network addresses and host addresses will be greatly reduced, so that IP addresses will be exhausted after the arrival of the Internet era in the future.
In addition, the traditional TCP/IP protocol is based on the electrical characteristics of telephone broadband and Ethernet, and its subcontracting principle and verification occupy a large part of the data packet to cause low transmission efficiency, in the future, the network will develop in the direction of high-speed Ethernet of all-fiber network, at that time, TCP/IP protocol will not be able to meet its development needs. ”
"Great, it seems that our country still has a chance to catch up!" Zhou Zhengming and Gao Wenxin said happily at the same time. (To be continued......)