一、TCP/IP协议

1.TCP/IP三次握手
SYN:TCP/IP 建立连接时使用的握手信号
ACK:确认字符,确认发送过来的数据已经接受无误
(1)客户端发送syn包(syn=j)到服务器,进入SYN_SEND状态,然后等待服务器确认
(2)服务器收到syn包,确认客户端的syn(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,服务器进入SYN_RECV状态
(3)客户端收到SYN_ACK包,向服务器发送确认包ACK(ack=k+1),发送完毕后,客户端与服务器进入ESTABLISHED状态,完成三次握手,然后两者开始传数据

二、Http网络请求
1.Http请求原理
http是一种应用层协议,它通过tcp实现了可靠的数据传输
(1)客户端执行网络请求,从url中解析出服务器的主机名
(2)将服务器的主机名转换成服务器的ip地址
(3)将端口号从url中解析出来
(4)建立一条客户端与服务器的tcp链接
(5)客户端通过输入流向服务器发送一条http请求
(6)服务器向客户端回送一条http响应报文
(7)客户端从输入流获取报文
(8)解析报文,关闭连接
2.Http请求方式
get、post、delete、put、head(服务器只返回首部,不返回实体的主体部分)
3.Http报文格式解析
通常来说http请求报文由请求行、请求头部、空行和请求数据4个部分组成
4.响应报文
http响应报文也有三个部分组成:状态行、消息报文、响应正文
5.常见的请求头
(1)Content-Type:请求数据的格式
(2)Conteent-Lenth:消息长度
(3)Host:请求主机名
(4)User-Agent:发出请求的浏览器类型
(5)Accept:客户端可以识别的内容类型列表
(6)Accept-Encoding:客户端可识别的数据编码
(7)Connection:允许客户端和服务器指定与请求/响应连接有关的选项
(8)Transfer-Encoding:为了保证可靠传输,对报文采用了什么编码方式
网友评论