题目:TCP的三次握手关闭连接,为什么是三次,如果使用两次握手来关闭连接,是否会存在资源死锁,如果会说出原因,如果不会,说出原因。

解决方案 »

  1.   

    建立连接才是3次握手
    两次的话,服务端不能确认客户端是否收到它返回的ACK
      

  2.   

    去查TCP/IP的书啊,任何一本有关TCP/IP的都会有的。
    建立连接是三次
      

  3.   

    TCP的官方文档,看37页ftp://ftp.rfc-editor.org/in-notes/rfc793.txt3.5  Closing a Connection ......................................... 37
      

  4.   

    正常的关闭tcp是4次握手当然,不正常的关闭,0-4次都有可能
      

  5.   

    呵呵 这个问题要懂tcp/ip的原理才行  我看过这本书,好难
      

  6.   

    kao,连接三次,关闭四次了。
      

  7.   

    只说3次4次,说说为什么嘛连接时需要3次握手是因为srv返回ACK的同时发送了SYN报文,如果不发送这个SYN报文的话,也就是两次握手,那么srv就不知道clt是否收到了ACK回应,容易死锁。终止时需要4次握手是因为TCP有半关闭造成的,所以不能把ACK和FIN一起发给clt。如果是你自己建立的TCP驱动可以2次连接3次关闭,大多数情况下还是可以正常工作的。