|
Post by mostafiz48n on Jan 23, 2024 9:09:28 GMT
当 收到了 的确认连接请求报文后还要对该确认再进行次确认报文的 发送之后 处于 状态当 接收到该报文后也进入 状态。 之所以要进行三次握手是因为第二次握手时 知收是没有问题的而第三次握手时 才能知道自己的发送和接收也都是没有问题的。同时三次握手防止了已失效的连接请求问题假设这样种正常情况 发送的第个连接请求报文丢失了之后超时重传建立了连接通信之后释放了连接。但假设 第个发送的连接请求报文并没有丢失而是在网络中某结点停滞了之后又到达了 。如果是两次握手此时 会以为是 请求建立连接同意之后并不会收到任何数据因为 已经关闭了此时 的资源就会被白白浪费。 四次挥手 当 已经没有要发送的数据了决定释放连接就会发送个终止连接报文其中 的值为之前 发送的最后个序号 。此时 进入 状态。 收到该报文后发送给 个确认报文 的值为 之前发送的最后个序号 。此时 进入了 状态但 进入了 状态但 WhatsApp 号码数据 连接并未完全释放 会通知高层的应用层结束 到 这方向的连接此时 处于半关闭状态。 当 发送完数据后准备释放连接时就向 发送连接终止报文 同时还要重发 在半关闭状态 可能又发送了些数据。此时 进入 状态。 收到连接终止报文后还要再进行次确认确认报文中 。发送完之后进入 状态等待 之后进入 状态 收到该确认后也进入 状态。 是最大报文段寿命之所以要等待 是为了保证 发送的最后个 报文能被 接收如果 发送的确认报文丢失 没有收到就会超时重传之前的 报文而如果 在发送了确认报文之后就立即释放连接就无法收到 超时重传的报文因而也不会再次发送确认报文段 就无法正常进入 状态。第二点原因是 时间之后本连接中的所有报文就都会从网络中消失防止出现三次握手中的已失效的请求报文问题影响下次的 连接。 之所以不是三次挥手是因为服务器 是全双工的当 发送完数据之后可能 还没有发送完当 发送完所有的数据之后才会关闭 到 方向的连接。 除此之外 还设有个保活计时器用于解决服务器故障的问题服务器每收到保活计时器时间为 小时。
|
|