1. 服务器 – 客户端 (中间会加夹杂网关,代理等等),客户端通过请求向服务器请求数据,服务的收到请求后,返回数据:
简单解释三次握手和四处挥手:
连接建立阶段(三次握手):
第一次握手:客户端的应用进程主动打开,并向客户端发出请求报文段。其首部中:SYN=1,seq=x。
第二次握手:服务器应用进程被动打开。若同意客户端的请求,则发回确认报文
,其首部中:SYN=1,ACK=1,ack=x+1,seq=y。
第三次握手:客户端收到确认报文之后,通知上层应用进程连接已建立,
并向服务器发出确认报文,其首部:ACK=1,ack=y+1。当服务器收到客户端的确
认报文之后,也通知其上层应用进程连接已建立。
tips:至此,TCP连接就建立了。只要通信双方没有一方发出连接释放的请求,连接就将一直保持。
链接释放过程
第一次挥手:数据传输结束以后,客户端的应用进程发出连接释放报文段,并停止发送数据,其首部:FIN=1,seq=u。
第二次挥手:服务器端收到连接释放报文段之后,发出确认报文,其首部:ack=u+1,seq=v。
此时本次连接就进入了半关闭状态,客户端不再向服务器发送数据。而服务器
端仍会继续发送。
第三次挥手:若服务器已经没有要向客户端发送的数据,其应用进程就通知服
务器释放TCP连接。这个阶段服务器所发出的最后一个报文的首部应为:FIN=1,
ACK=1,seq=w,ack=u+1。
第四次挥手:客户端收到连接释放报文段之后,必须发出确认:ACK=1,seq=u+1
,ack=w+1。 再经过2MSL(最长报文端寿命)后,本次TCP连接真正结束,通信双
方完成了他们的告别。
2.ip和域名
ip:计算机得逻辑地址(简单理解每一个计算机都有得一个地址)
域名:用来映射ip,一个域名映射一个Ip,这里提下dns,dns它作为可以将域
名和IP地址相互映射的一个分布式数据库,就像是一个电话簿一样。
3.TCP和HTTP
tcp,是一种可靠的传输协议,其中提到得三次握手,四次挥手就是该协议。
HTTP,是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端
可能发送给服务器什么样的消息以及得到什么样的响应。
4.请求和相应
这是基于HTTP
请求,分为三部分:
1.请求行:请求方法/url/版本 (get/ HTTP 1.1)
2.请求头(内容非常多):
Accept:接受类型
Accept-Language:语言
Cookie
3.请求体:需要发送得内容(get类型得请求没有请求体,数据负在url上)
分为三类:
1.application/json(使用json,常常用在响应头)
2.text/xml
3.Query String:application/x-www-form-urlencoded(常用得post体检数据方
式,form表单提交)
响应:
1.响应行:协议/状态码:HTTP/1.1 200OK
2.响应头:
content-type:类型
date:时间
3.请求体:得到得内容
写在最后:每天的工作就是发请求,收请求,今天有空研究下请求到底是什么,怎么来,怎么去,自己总结了下分享给大家,如果有错误可以评论在下面。