Table of Contents1 术语1.1 ABC1.2 SACK1.3 D-SACK2 tcp_v4_connect()3 sys_accept()3.1 tcp_accept()4 三次握手4.1 客户端发送SYN段4.2 服务端接收到SYN段后,发送SYN/ACK处理4.3 客户端回复确...
分类:
其他好文 时间:
2014-09-19 23:41:16
阅读次数:
1397
SYN中的MSS选项是告诉对端,本端在本地连接的每个TCP分节中愿意接收的最大数据量。发送端TCP使用接收端的MSS值作为发送分节的最大大小。TCP半关闭使用的情况较少,可用于通知对端本端数据已输入完成。之所以关闭TCP要四路握手,也是因为有半关闭。主动关闭的一端在TIME_WAIT状态要等待2MS...
分类:
其他好文 时间:
2014-09-17 21:40:12
阅读次数:
167
TCP协议的三次握手过程1.建立连接时,客户端向服务器发送SYN包,并产生一个顺序号码seq number=k,等待服务器确认。2.服务器受到请求后,确认联机信息后,向客户端发送确认码ack=k+1,SYN包,并产生一个顺序号码seq number=q。3.客户端受到确认信息后,检查确认码ack是否...
分类:
其他好文 时间:
2014-09-16 15:47:20
阅读次数:
157
三次握手在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;第 二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(s...
分类:
其他好文 时间:
2014-09-15 21:00:49
阅读次数:
219
为什么要写一个端口扫描的程序,Java来写不是很方便吗?因为我也没有想到什么例子能够方便的来练习。于是想到以前找到的端口扫描的C代码,于是想用他们来练习。扫描服务端端口的方式有许多种,最简单的就是直接去连接该端口,复杂一些的就是看SYN的应答。其他方式就不说了。下面的portScan.c位于jni目...
分类:
移动开发 时间:
2014-09-13 22:42:36
阅读次数:
234
1、TCP连接手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要经过“三次握手”:第一次握手:客户端发送syn包(syn=j)到服务器,并进入S...
分类:
其他好文 时间:
2014-09-10 17:18:10
阅读次数:
304
http://bbs.csdn.net/topics/280046868使用套接字完成,按照tcp的方式在一个套接字里维持一个状态机。//定义枚举:enmu state{CLOSED,//没有连接SYN-SENT,//发送了syn,等代服务器ackACK_RECEIVE,//接到服务器ackSYNA...
分类:
其他好文 时间:
2014-09-06 19:56:13
阅读次数:
219
TCP连接的状态图
TCP建立连接的三次握手过程,以及关闭连接的四次握手过程
贴一个telnet建立连接,断开连接的使用wireshark捕获的packet截图。
1、建立连接协议(三次握手)
(1)客户 端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。
(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和S...
分类:
其他好文 时间:
2014-09-01 22:45:43
阅读次数:
303
SYN :同步分节; ACK :确认分节; TCP选项: 1. MSS选项: 发送SYN的TCP一端使用本项告知对端它的最大分节大小(maximum segment size)即MSS。即它在本连接的每个TCP分节中愿意接受的最大数据量。 发送端TCP使用接收端的MSS值作为所发送分节的最大...
分类:
其他好文 时间:
2014-08-31 18:34:01
阅读次数:
308
发现自己对tcp还是不牢靠 曾经认为,tcp 建连的过程是这样的, 客户端 发送syn 到服务端 (第一次握手) 服务端 发送syn(并携带ack) 到客户端(第二次握手) 客户端 发送数据 到服务端(完全丢了第三次握手,汗...
分类:
其他好文 时间:
2014-08-29 00:13:06
阅读次数:
312