先说一下http tcp/ip协议背景
HTTP(HyperText Transfer Protocol) 即超文本传输协议,现在基本上所有web项目都遵从HTTP协议(协议就是一种人为的规范)。
目前绝大部分使用的都是HTTP/1.1版本。因为HTTP协议是属于TCP/IP协议簇的,所以先简单介绍下与HTTP相关的
TCP/IP简介:TCP/IP是一个协议簇,是由许多协议组成的。
TCP/IP四层模型:
TCP/IP按照层次从上至下分为四层:应用层,传输层,网络层,数据链路层。(实际上最初理论上OSI模型是分的七层,我们程序猿的话通常只用分四层就行了。)
HTTP协议
1.http:超文本传输协议,主要定义了客户端和服务端数据传输方式。
2.web客户端和服务器
A.资源: html/文本、word、avi电影、其他资源
B.媒体类型:text/html、 image/jpeg
C:URI和URL
web服务器资源的名字和用于描述一个网络上资源的地址
schema: http/https/ftp.
host: web服务器的ip地址或者域名
port: 服务端端口, http默认访问的端口是80
path: 资源访问路径
query-string: 查询参数
D:方法:GET/PUT/DELETE/POST/HEAD
3.http协议的报文组成
A.请求报文:请求行,请求头,请求体
B.响应报文:状态行,首部行,返回体
三次挥手四次握手
三次挥手协议
A.第一次握手:客户端请求建立连接
B.第二次握手:服务端应答客户端,并请求建立连接
C.第三次握手:客户端针对服务端请求确认应答
四次握手协议
A.第一次挥手:客户端发送关闭请求
B.第二次挥手:服务端响应客户端关闭请求
C.第三次挥手:服务端发送关闭请求
D.第四次挥手:客户端发送关闭确认请求