zoukankan      html  css  js  c++  java
  • TCP为什么会采用三次握手,若采用二次握手可以吗?

    建立连接的过程是利用C/S(客户机/服务器)模式,假设A为客户端,B为服务器端。

    TCP是采用三次握手进行连接的,简要说明该过程:

          (1) A向B发送连接请求

          (2) B对收的的A的报文段进行确认

          (3) A再对B的确认进行确认

    采用“三次握手”的目的是,为了防止失效的连接请求报文段突然又传送到B,因而产生错误。失效的连接请求报文段是指:A发出的连接请求没有收到B的确认,于是经过一段时间后,A又重新向B发送连接请求,且建立成功,顺序完成数据传输。考虑这样一种特殊情况,A第一次发送的连接请求并没有丢失,而是因为网络节点导致延迟达到B,B以为A又发起的新连接,于是B同意连接,并向A发回确认,但是此时A根本不会理会,B就一直在等待A发送数据,导致B的资源浪费。

    采用二次握手可以吗?

            不可以,原因就是上面说的失效的连接请求的特殊情况。

  • 相关阅读:
    Dubbo2.0
    Dubbo--RPC框架
    ActiveMQ消息队列
    quartz开源任务调度框架
    webService
    crud最常用
    springBoot第三天
    springmvc--依赖
    springBoot第二天
    pom.xml和settings.xml的下载优先级
  • 原文地址:https://www.cnblogs.com/jiqianqian/p/6589705.html
Copyright © 2011-2022 走看看