软件测试课程(七):Web协议

10月的11和14日上了两次课,共4小时,主要学习了Web协议的一些知识,现笔记归纳如下:

数据链路层:

它为网络层提供服务,在不可靠的物理介质上提供可靠的传输。

•作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。
•常见的链路层设备是:二层交换机、网桥。
•这一层,数据的单位称为帧(frame)

网络层:

使数据路由经过大型网络。

•这一层,数据的单位称为数据包(packet)。
•网络层主要设备:路由器

传输层:

提供终端到终端的可靠连接。
•这一层,数据的单位称为数据段(segment)。

表示层:

编码、加密解密、压缩

应用层:

DNS、HTTP、邮件服务、文件传送服务等

网络协议模型–TCP/IP模型:

“transmission Control Protocol/Internet Protocol”传输控制协议/互联网络协议,包括网络访问层、Internet层、传输层、应用层。

IP协议:

Internet Protocol,是Internet层(网络层)的协议,用于将多个包交换网络连接起来的,在源地址和目的地址之间传送数据报。

TCP协议:

传输层上的协议,TCP 协议提供了一种端到端的、基于连接的、可靠的通信服务。

TCP协议–三次握手:建立TCP需要三次握手才能建立,而断开连接则需要四次挥手。

TCP协议–四次挥手:TCP链接是全双工的,因此每个方向上都必须要关闭。

Wireshark工具过滤规则

1.过滤源ip、目的ip
查找目的地址为:ip.dst==192.168.101.8;
查找源地址为:ip.src==1.1.1.1;
2.过滤80端口
tcp.port==80
过滤目的端口为80:tcp.dstport==80
过滤源端口为80:tcp.srcport==80
3.协议过滤
直接输入:http
4.http模式过滤
过滤get包,http.request.method=="GET"
过滤post包,http.request.method=="POST"
5.and连接符

Wireshark数据与对应的协议层:

1. Frame: 物理层的数据帧概况
•2. Ethernet II: 数据链路层以太网帧头部信息
•3. Internet Protocol Version 4: 互联网层IP包头部信息
•4. Transmission Control Protocol: 传输层的数据段头部信息,此处是TCP
•5. Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议

UDP和TCP:

定义:UDP(User Data Protocol,用户数据报协议)它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。

对比:与TCP最大的差别在于它在建立连接前不会进行三次握手,属于不可靠的传输。

优点:可以显著地提高性能。

应用:例如:ping命令、QQ、网络电视

HTTP协议:

HTTP---hypertext transport protocol;

•定义:规定了浏览器和www服务器之间互相通信的规则,通过Internet传送www文档的数据传送协议。

•应用层协议

HTTP的特点和原理:

HTTP 协议是一种请求-应答式的协议。
•最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。
•原理:
•短连接:用完就释放。
•需要不断向服务器发起连接请求来保持在线状态。
•若服务器长时间无法收到客户端的请求,则认为客户端“下线”
•若客户端长时间无法收到服务器的回复,则认为网络已经断开。

HTTP的版本差异:

•在HTTP 1.0中客户端的每次请求都要求建立一次单独的连接,在处理完本次请求后,就自动释放连接。
•在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。