相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试,几乎是必考的内容.因此在这里详细解释一下这两个过程。 TCP数据包格式 顺序号( 32 位):用来标 ...
分类:
其他好文 时间:
2016-06-21 22:37:37
阅读次数:
290
在IOS开发中,网络请求链接往往是HTTP请求,但是有些需求比较特殊,需要保持持续连接,就需要用到Socket了。 学习来自《iOS的Sock开发基础》,该篇文章对三次握手讲的很详细哦,另外还讲解了四次挥手,就是连接的拆除。 Socket简介: Socket是下面图中应用层和运输层中间的软件抽象层, ...
分类:
移动开发 时间:
2016-06-19 22:42:42
阅读次数:
315
一、TCP协议1、概念:TCP协议,即传输控制协议。它是面向连接、可靠的传输层协议。2、特点:工作在传输层;每一条TCP连接只能是点对点的;面向连接、可靠性;提供全双工通信;基于字节流。3、TCP数据报格式:TCP基于字节流源端口号、目的端口号:各占2字节(16位)序号:4字节..
分类:
其他好文 时间:
2016-06-12 16:59:42
阅读次数:
222
建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示: 其中三次握手即建立连接 四次挥手则为关闭连接 TCP连接的11种状态 客户端独有的:(1)SYN_SENT (2)FIN_WAIT1 (3)FIN_WAIT2 (4)CLOSING (5)TIME_WAIT 。 服务器独 ...
分类:
系统相关 时间:
2016-06-11 18:43:27
阅读次数:
218
1 什么是长连接和短连接 三次握手和四次挥手 TCP区别于UDP最重要的特点是TCP必须建立在可靠的连接之上,连接的建立和释放就是握手和挥手的过程。 三次握手为连接的建立过程,握手失败则连接建立失败。 四次挥手为连接的完整释放过程,也会发生某个消息丢失或者超时的情况,有一方主动发送FIN消息即表示连 ...
分类:
其他好文 时间:
2016-06-08 23:09:59
阅读次数:
627
建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示: 先来看看如何建立连接的。 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建 ...
分类:
其他好文 时间:
2016-06-08 18:53:40
阅读次数:
160
TCP的握手挥手和状态转换是很多网络问题的基础。在此进行相关问题的讨论及记录。 首先,这幅图大致介绍了TCP连接和断开的过程: 注意其中的几个状态: LISTEN, SYN-SEND, SYN-RCVD, ESTABLISHED, FIN-WAIT-1, CLOSE-WAIT, FIN_WAIT-2 ...
分类:
其他好文 时间:
2016-06-07 19:12:04
阅读次数:
128
注:主动、被动 与 服务器、客户端没有明确的对应关系。 这个图N多人都知道,它排除和定位网络或系统故障时大有帮助,但是怎样牢牢地将这张图刻在脑中呢?那么你就一定要对这张图的每一个状态,及转换的过程有深刻 的认识,不能只停留在一知半解之中。下面对这张图的11种状态详细解析一下,以便加强记忆!不过在这之 ...
分类:
其他好文 时间:
2016-05-30 10:15:23
阅读次数:
205
正常情况是啥?一方发送FIN,另一方相应,四次挥手,断开连接。但是就像生活一样,服务器也总有意外,以下是《Unix网络编程》中提到的服务器的四种常见的意外情况。客户端在服务器端出现意外情况下是什么状况,又该该如何处理呢? 首先给出整个网络的基本流程图。客户端从标准输入读入数据,发往服务器端,服务器接 ...
分类:
其他好文 时间:
2016-05-28 12:57:57
阅读次数:
222
三次握手的比喻:两个素未谋面的人遇见了,一个人(client端)想认识对方(server端)..于是那个人(client端)主动向对方(server端)挥手(意味着接下来有握手的冲动,即是带SYN标志的TCP报文到服务器),而对方(server端)也向那个人(client端)挥手(对刚才客户端SYN报文的回应;同时..
分类:
其他好文 时间:
2016-05-27 22:10:23
阅读次数:
859