标签:多次 输入 转发 缓存 过程 img tcp 分享图片 url
输入URL,点击回车,然后发生了啥捏。
总体分4步:
1、DNS域名解析,得到IP,进行访问
2、TCP三次握手建立连接
3、发送与接收数据
4、TCP四次挥手断开连接
详细点讲:
1:访问两种方式--ip(不好记)和域名。输入域名,还要DNS服务器转换成ip的。
DNS域名解析时用的是UDP协议。整个域名解析的过程如下:
TCP三次握手:
这是最基本的一个问题了,描述三次握手:
1、客户端发送SYN包,序列号为j,进入SYN_SEND状态;
2、服务器端接收到SYN包,必须确认SYN包(确认报文ACK,序列号为j+1),同时自己也发送一个SYN包,序列号为k,此时服务器端进入SYN_RECV状态;
3、客户端接收到这两个包ACK+SYN包,回复一个ACK包,序列号为k+1,此时客户端处于建立连接状态;
4、服务器接收到ACK包,处于建立连接状态。
可以开始传输数据啦!!!
问:客户端什么情况才处于建立连接状态?服务端什么时候处于建立连接状态?为啥不能两次握手就得了?
客户端简单,申请建立连接,收到服务器的确认包(ACK+ SYN)就处于建立连接喽;服务器从收到请求,到发出确认包,再到收到确认包,才建立连接;
两次握手,会有无效连接占用服务器资源的危险。比如,客户端发送请求,结果由于网络原因,滞后了;然后过段时间(客户端认为是无效请求了),服务器接到了,发了个确认包,如果两次握手,这就意味着服务器认为和客户端建立了连接,那么就会
标签:多次 输入 转发 缓存 过程 img tcp 分享图片 url
原文地址:https://www.cnblogs.com/westlife-11358/p/9667111.html