当前位置:网站首页>Technology sharing | common interface protocol analysis
Technology sharing | common interface protocol analysis
2022-07-05 11:15:00 【Hua Weiyun】
This article is excerpted from the internal textbook of Hogwarts testing and development society
Transfer packets between services , Because of different application scenarios , Use different communication protocols for delivery . For example, website access , Often use HTTP Protocol delivery , File transfer usage FTP, Mail delivery use SMTP. The above three types of protocols are in the application layer of the network model . In addition to the common protocols of the application layer , For the transport layer TCP、UDP agreement , as well as Restful Architectural style 、RPC Basic network knowledge such as protocols should be understood and recognized .
Network protocol introduction
Before understanding the specific agreement , You need to know OSI Seven layer model 、TCP/IP Four layer model 、 Five layer architecture these three different network models .
Network protocol model comparison diagram :
- OSI The reference model is a conceptual framework for developing standards for coordinating interprocess communication , It is not a standard .
- TCP/IP The four layer model is the basic communication architecture of the Internet . It's often seen as a simplified seven level OSI Model .
- The five layer agreement is OSI and TCP/IP The synthesis of , The practical application is still TCP/IP Four story structure of .
- TCP/IP The protocol stack corresponds to TCP/IP The specific network protocol used in the four layer model .
TCP agreement
TCP The protocol is in the transport layer , A connection oriented 、 reliable 、 Transport layer communication protocol based on byte stream .TCP The working mode of the protocol is that... Is required when establishing a connection “ Three handshakes ”, When terminating the connection, you need to “ Four waves ”.“ Three handshakes ” and “ Four waves ” yes TCP Important knowledge points of the agreement , In the following chapters, we will introduce in detail through the combination of practice and theory .
Applicable scenario
TCP Connection oriented protocol 、 Error retransmission 、 Congestion control and other characteristics , It is suitable for scenarios with high reliability , For example, data transmission involving user information .
UDP agreement
UDP Once the protocol sends the data sent by the application to the network layer , Do not keep data backups . It's only in IP Multiplexing and data verification fields are added to the header of the packet . therefore UDP Packets are often considered unreliable .
Applicable scenario
UDP There is no need to establish a connection in advance 、 Implement simple features , It is very suitable for scenes with high real-time performance , Like streaming media 、 Online games, etc .
HTTP agreement
HTTP Protocol is the most common protocol in interface testing , Is for distributed 、 Application layer protocols for collaborative and hypermedia information systems .HTTP Is the foundation of data communication in the world wide web . The client sends... To the server HTTP request , The server will return the requested data in the response . During the test , It is often necessary to verify the request and response results , So understand HTTP agreement , For interface testing , It's the top priority .
In the following chapters, we will introduce HTTP、HTTPS The difference between agreements , as well as HTTP Basic knowledge information of the agreement .
RESTful agreement
origin
Roy Thomas Fielding Doctor Yu 2000 A style of World Wide Web software architecture proposed in his doctoral dissertation in . Its purpose is to facilitate different software to transmit information in the network .RESTful Is based on HTTP A resource request made on top of a protocol 、 The style of operation , To sum up in one sentence is to use URL To locate resources , Use HTTP Verb description operation .
HTTP The request method is RESTful api Typical applications in :
Method | significance |
---|---|
GET | Access to resources |
POST | Add or update |
PUT | Update resources |
DELETE | Delete resources |
Be careful : Different companies are using RESTful There are some differences in architectural style .
RPC agreement
RPC The English of is Remote Procedure Call , It's a good interpretation RPC The concept of agreement , That is to realize remote execution by calling local code ,RPC It is mainly used for service invocation within the company .RPC The advantage of the interface is higher transmission efficiency 、 Lower performance loss 、 Built in load balancing strategy 、 Better service governance .
common RPC agreement
Currently commonly used in the industry RPC The main agreements are as follows :
- Dubbo:Java High performance based on RPC agreement .
- gRPC: High performance general purpose RPC frame , be based on Protocol Buffers.PB It's a language neutral 、 Platform neutral data serialization framework .
- Thrift: And gRPC Similar multilingualism RPC frame .
边栏推荐
- 数据库三大范式
- go语言学习笔记-分析第一个程序
- How to make full-color LED display more energy-saving and environmental protection
- Nuxt//
- 32:第三章:开发通行证服务:15:浏览器存储介质,简介;(cookie,Session Storage,Local Storage)
- Data type
- Taro advanced
- 使用GBase 8c数据库过程中报错:80000305,Host ips belong to different cluster ,怎么解决?
- TSQL – identity column, guid, sequence
- Web3 Foundation grant program empowers developers to review four successful projects
猜你喜欢
Based on shengteng AI Yisa technology, it launched a full target structured solution for video images, reaching the industry-leading level
Explanation of message passing in DGL
DDRx寻址原理
Wechat nucleic acid detection appointment applet system graduation design completion (8) graduation design thesis template
DGL中的消息传递相关内容的讲解
【DNS】“Can‘t resolve host“ as non-root user, but works fine as root
Modulenotfounderror: no module named 'scratch' ultimate solution
How to make full-color LED display more energy-saving and environmental protection
无密码身份验证如何保障用户隐私安全?
Go language learning notes - analyze the first program
随机推荐
FreeRTOS 中 RISC-V-Qemu-virt_GCC 的调度时机
Scaffold development foundation
Paradigm in database: first paradigm, second paradigm, third paradigm
spark调优(一):从hql转向代码
Four departments: from now on to the end of October, carry out the "100 day action" on gas safety
OneForAll安装使用
我用开天平台做了一个城市防疫政策查询系统【开天aPaaS大作战】
matlab cov函数详解
Three suggestions for purchasing small spacing LED display
Web3 Foundation grant program empowers developers to review four successful projects
deepfake教程
Characteristics and electrical parameters of DDR4
Golang application topic - channel
C # to obtain the filtered or sorted data of the GridView table in devaexpress
[SWT component] content scrolledcomposite
使用GBase 8c数据库过程中报错:80000305,Host ips belong to different cluster ,怎么解决?
Summary of websites of app stores / APP markets
Implement the rising edge in C #, and simulate the PLC environment to verify the difference between if statement using the rising edge and not using the rising edge
Broyage · fusion | savoir que le site officiel de chuangyu mobile end est en ligne et commencer le voyage de sécurité numérique!
-26374 and -26377 errors during coneroller execution