当前位置:网站首页>Technology sharing | common interface protocol analysis
Technology sharing | common interface protocol analysis
2022-07-06 06:16:00 【The elegance of testing】
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 :
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 .
Last : It can be in the official account : Sad spicy bar ! Get one by yourself 216 Page software testing engineer interview guide document information 【 Free of charge 】. And the corresponding video learning tutorial is free to share !, It includes basic knowledge 、Linux necessary 、Shell、 The principles of the Internet 、Mysql database 、 Special topic of bag capturing tools 、 Interface testing tool 、 Test advanced -Python Programming 、Web automated testing 、APP automated testing 、 Interface automation testing 、 Testing advanced continuous integration 、 Test architecture development test framework 、 Performance testing 、 Safety test, etc. .
I recommend one 【Python Automated test communication group :746506216】, We can discuss communication software testing together , Learn software testing together 、 Interview and other aspects of software testing , Help you advance quickly Python automated testing / Test Development , On the road to high pay .
Friends who like software testing , If my blog helps you 、 If you like my blog content , please “ give the thumbs-up ” “ Comment on ” “ Collection ” One Key triple connection !
边栏推荐
猜你喜欢
JWT-JSON WEB TOKEN
VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator
【Postman】Monitors 监测API可定时周期运行
Buuctf-[[gwctf 2019] I have a database (xiaoyute detailed explanation)
【Postman】测试(Tests)脚本编写和断言详解
[web security] nodejs prototype chain pollution analysis
功能安全之故障(fault),错误(error),失效(failure)
isam2运行流程
数据库隔离级别
Caused by:org. gradle. api. internal. plugins . PluginApplicationException: Failed to apply plugin
随机推荐
Reading notes of effective managers
「 WEB测试工程师 」岗位一面总结
Interface test: what are the components of the URL in fiddler
黑猫带你学UFS协议第8篇:UFS初始化详解(Boot Operation)
10M25DCF484C8G(FPGA) AMY-6M-0002 BGA GPS模块
[C language] qsort function
模拟卷Leetcode【普通】1091. 二进制矩阵中的最短路径
技术分享 | 常见接口协议解析
10m25dcf484c8g (FPGA) amy-6m-0002 BGA GPS module
D - How Many Answers Are Wrong
F - true liars (category and search set +dp)
Software test interview questions - Test Type
还在为如何编写Web自动化测试用例而烦恼嘛?资深测试工程师手把手教你Selenium 测试用例编写
Seven imperceptible truths in software testing
JDBC Requset 对应内容及功能介绍
假设检验学习笔记
模拟卷Leetcode【普通】1109. 航班预订统计
Amazon Engineer: eight important experiences I learned in my career
【C语言】qsort函数
[leetcode] day96 - the first unique character & ransom letter & letter ectopic word