每天一道面试题一谈谈TCP建立连接和断开连接的过程
简介
传输控制协议(Transmission Control Protocol)
建立连接(三次握手)
第一次握手是客户端发送消息给服务端,服务端接收到客户端发送的消息。
第二次握手是服务端回复客户端已经接收到的消息,客户端也接收到服务端回复的消息。
第三次握手是客户端回复服务端接收到回复的消息,服务端接收到客户端反馈的结果。
Why
第一次握手,服务端确认客户端发送消息正常。
第二次握手,客户端确认服务端发送接收消息正常。
第三次握手,服务端确认客户端接收消息正常。
所以,由此三次握手双方都能确认接收和发送消息功能是否正常
断开连接(四次挥手)
第一次挥手,客户端确发送断开连接请求给服务端,服务端接收到。
第二次挥手,服务端响应客户端发送的断开连接请求,客户端接收到。
第三次挥手,服务端发送断开连接请求给客户端,客户端接收到。
第四次挥手,客户端响应服务端发送的断开连接请求,服务端接收到。
Why
第一次挥手,是客户端主动确认断开连接,并中断数据的发送。
第二次挥手,是服务端确认客户端的请求,告知客户端我已收到
第三次挥手,是服务端主动确认断开连接,并中断数据的发送。
第四次挥手,是客户端确认服务端的请求,告知服务端我已收到。
只有经历四次挥手,才能确认客户端和服务端双方都没有了数据发送,此时就会断开连接。
每天一道面试题一谈谈TCP建立连接和断开连接的过程相关推荐
- TCP建立连接和断开连接流程
[转]http://blog.csdn.net/gamekit/article/details/53888674 一.基本描述 TCP协议为提供面向连接的服务,需要先建立连接,然后才可以通信,通信结束 ...
- mysql的tcp链接过程_tcp建立连接和断开连接过程
在之前对TCP协议的介绍中,说到了其中它的一个特点是面向连接.今天就来介绍一下它的连接和断开过程. 面向连接指的是采用TCP协议通讯,在数据传输之前必须先建立连接,通讯完成之后,必须关闭连接. 建立连 ...
- TCP建立连接与断开连接的过程
在CS模式的TCP连接建立过程中,客户端与服务器端流程如下: 客户端流程:发送请求->接收服务器端确认->发送对服务器端确认的确认. 服务器端流程:接收客户端的连接建立请求->发送确 ...
- TCP建立连接和断开连接图解
参考博客: http://blog.csdn.net/whuslei/article/details/6667471 http://www.2cto.com/net/201310/251896.htm ...
- TCP建立连接和断开连接的过程
一. TCP建立连接- 三次握手 1. 客户端向服务器端发送syn包,进入syn_send状态,等待服务器的回复 2. 服务器端收到客户端发送的syn包,发送syn_ack包给客户端,进入syn_re ...
- TCP四次挥手断开连接
四次挥手的流程 1.主动关闭方发送FIN连接释放报文段 客户端调用 close 方法,告诉服务器自己要主动关闭连接,会发送一个 FIN 报文给服务端,客户端进入FIN-WAIT-1状态. 2.被动关闭 ...
- 图解TCP四次握手断开连接
建立连接非常重要,它是数据正确传输的前提:断开连接同样重要,它让计算机释放不再使用的资源.如果连接不能正常断开,不仅会造成数据传输错误,还会导致套接字不能关闭,持续占用资源,如果并发量高,服务器压力堪 ...
- [Qt] TCP客户端与服务器断开连接自动重联机制
TCP服务器断开连接自动重联机制 客户端加入定时器实现断线重联(客户端服务端代码见上一篇博客) 编译环境:Qt 5.9.5 ui界面如图: 代码如下 tcpclient.h #ifndef TCPCL ...
- 为什么tcp不采用停等协议_为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?...
看到了一道面试题:"为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?",想想最近也到金三银四了,所以就查阅了相关资料,整理出来了这篇文章 ...
最新文章
- 安卓下使用 dropbear 开启SSH And arm 下的busybox
- 自考总结-2019-4-14
- pytorch tensorboard
- python爬虫详细步骤-Python爬虫实践入门,超详细
- 天津理工大学c语言上机报告3,天津理工大学-c语言上机报告4.pdf
- 晶晶赴约会(信息学奥赛一本通-T1049)
- 没有弃用 Sun 拥抱 HP/Linux,亚马逊或已倒闭!
- [Java]jvm参数选项中文文档
- Win8 64位系统最简单的adb安装方法
- 如何在Android中设置铃声+震动
- 在 ReactNative 的 App 中,集成 Bugly 你会遇到的一些坑
- 深度学习:概述和一孔之见 浅谈深度学习中潜藏的稀疏表达
- BUUCTF笔记之Misc系列部分WriteUp(一)
- 安全标准ISO 17799/27001
- Si24R2F+超低功耗高性能2.4GHz无线射频NTC测温单发射芯片 兼容Si24R2E
- 台式计算机截图快捷键,台式电脑怎么用快捷键截图
- 为什么使用vi /etc/sysconfig/network-scripts/ifcfg-ens33打开的编辑器是空的?
- 浙江科技学院c语言考试试卷,浙江科技学院c语言-1-C试卷A.doc
- 新唐MCU资料的寻找方法
- 如何在数据分析工作中找准自己的角色和定位?