TCP/IP学习笔记补遗
TCP/IP学习笔记补遗
作者:肖进
经过我对网络上IP数据包的跟踪,对我写的《TCP/IP学习笔记》进行补充。通过本文,可以加深对TCP/IP的认识。
●网络环境:ADSL宽带
●IP数据包内容:通过Outlook发送邮件,帐号是xiaojin8039@163.com,给我的其他邮箱xiaoj@njb.swirebev.com发送邮件,系统从而捕获的IP包。
●所有IP包均为TCP协议
1、关于IP包的分片情况:
所有的IP包均不分片,也就是IP包传输过程从不进行分片,均保持原始IP包的大小。这可能跟网络环境较好有关。
2、关于IP首部和TCP首部的大小:
IP首部的大小均为20,未见到包括选项的情况。但TCP首部有时会包括选项,大小为24到44不等,建立连接时的协商都带有选项数据,一般为28。
3、关于TCP连接的步骤:
(1)客户端发送建立报文的TCP报文给服务器端;
(2)服务器端发送同意建立TCP连接的报文给客户端;
(3)客户端再次进行确认;
(4)服务器端发送服务器信息;
(5)客户端发送数据,服务器端发送数据;
(6)客户端发送结束连接的命令;
(7)服务器端发送结束连接的TCP报文给客户端;
(8)客户端发送同意结束连接的TCP报文给服务器端;
4、TCP连接的具体过程,包括P包的唯一标识符ID、TCP报文连接的sequence和ACK数据,这是一个完整的TCP连接建立和结束的过程:
序号
数据大小
客户端
服务器端
IPID
sequence
ACK
IPID
sequence
ACK
1
0
273
2098660028
0
2
0
54707
3904671124
2098660029
3
0
274
2098660029
3904671125
4
56
54708
3904671125
2098660029
5
14
275
2098660029
3904671181
6
0
54709
3904671181
2098660043
7
113
54710
3904671181
2098660043
8
12
276
2098660043
3904671294
9
18
54711
3904671294
2098660055
10
18
277
2098660055
3904671312
11
18
54712
3904671312
2098660073
12
10
278
2098660073
3904671330
13
31
54713
3904671330
2098660083
14
0
279
2098660083
3904671361
15
34
280
2098660083
3904671361
16
8
54714
3904671361
2098660117
17
35
281
2098660117
3904671369
18
8
54715
3904671369
2098660152
19
6
282
2098660152
3904671377
20
37
54716
3904671377
2098660158
21
1414
283
2098660158
3904671414
22
0
54717
3904671414
2098661572
23
993
284
2098661572
3904671414
24
0
54718
3904671414
2098662570
25
5
285
2098662565
3904671414
26
38
54719
3904671414
2098662570
27
6
286
2098662570
3904671452
28
9
54720
3904671452
2098662576
29
0
54721
3904671452
5098662576
30
0
287
2098662576
3904671462
31
0
288
2098662576
3904671462
(1)数据大小不包括IP首部和TCP首部的大小。
(2)除开始协商建立连接外,每一个sequence均等于上一sequence值加数据大小。开始协商的SYN标记要占用一个字节。
(3)1和2行数据设置了SYN标志。
(4)30和31行数据设置了FIN标志。
(5)每个数据都包括发送方数据的起始字节sequence和期待对方发送数据位置的Ack值。
5、程序说明:

(1) 该程序收集通过本机网卡的所有协议为TCP的IP包。
(2) 对于未加密的邮件内容,可以进行识别并获得邮件首部内容。
(3) 对于采集的数据包可以进行保存,文件名为scan.bin,也可以导入符合该格式的文件。数据格式请见源程序。
(4) 源程序中还包括其他功能,有些尚未完成,有兴趣的读者可以帮我完成和修改.
6、由于笔者水平有限,上述内容难免有错误和不足之处,欢迎批评指正,先谢了。
作者:肖进
单位:南京中萃食品有限公司 资讯部
邮件:xiaoj@njb.swirebev.com