客户端发送数据到服务器
15:20:16.304473 00:22:19:4f:7a:09 > 00:22:19:4f:7c:f2, ethertype IPv4 (0x0800), length 622: IP 192.168.20.17.2513 > localhost.localdomain.9900: P 2733155024:2733155592(568) ack 800828764 win 65535
0x0000: 4500 0260 aabd 4000 7b06 8a6f c0a8 1411 E..`..@.{..o....
0x0010: c0a8 3309 09d1 26ac a2e8 a2d0 2fbb ad5c ..3...&...../../
0x0020: 5018 ffff 9344 0000 4745 5420 2f20 4854 P....D..GET./.HT
0x0030: 5450 2f31 2e31 0d0a 5573 6572 2d41 6765 TP/1.1..User-Age
0x0040: 6e74 3a20 4f70 6572 612f 392e 3830 2028 nt:.Opera/9.80.(
0x0050: 5769
ip header段数据分析基本同(1)的描述,只是checksum不同,源、目的ip互换等等
ip header数据从第一行4500到第二行的3309
tcp段的分析有所不同:
(1)源端口:0x09d1-->2513
(2)目的端口:0x26ac-->9900
(3)序列号:a2e8 a2d0-->2733155024,本方的syn号
(4)Acknowlege Number:2fbb ad5c-->800828764,对方发来的syn+1,作为ack number
(5)Data Offset:5 (5时,无Options段)
(6)6位Reserved
(7)6位Code:10转为二进制为00011000,取6位为011000,表示发送的数据为ack+psh
(8)window size:0xffff-->65535
(9)checksum:9344
(10)urgent pointer:0000
(11)Options + Padding:无Options+Padding
(12)Tcp Data:从第二行的4745到最后
服务器接到数据后,先发送一个确认包
15:20:16.304486 00:22:19:4f:7c:f2 > 00:22:19:4f:7a:09, ethertype IPv4 (0x0800), length 54: IP localhost.localdomain.9900 > 192.168.20.17.2513: . ack 2733155592 win 6816
0x0000: 4500 0028 42a4 4000 4006 2fc1 c0a8 3309 E..(B.@.@./...3.
0x0010: c0a8 1411 26ac 09d1 2fbb ad5c a2e8 a508 ....&.../../....
0x0020: 5010 1aa0 7743 0000 P...wC..
tcp中
6位Code:10转为二进制为00010000,取6位为010000,表示发送的数据为ack
再发送服务器产生的数据到客户端:
15:20:16.337412 00:22:19:4f:7c:f2 > 00:22:19:4f:7a:09, ethertype IPv4 (0x0800), length 257: IP localhost.localdomain.9900 > 192.168.20.17.2513: P 800828764:800828967(203) ack 2733155592 win 6816
0x0000: 4500 00f3 42a6 4000 4006 2ef4 c0a8 3309 E...B.@.@.....3.
0x0010: c0a8 1411 26ac 09d1 2fbb ad5c a2e8 a508 ....&.../../....
0x0020: 5018 1aa0 c950 0000 4854 5450 2f31 2e31 P....P..HTTP/1.1
0x0030: 2033 3034 204e 6f74 204d 6f64 6966 6965 .304.Not.Modifie
0x0040: 640d 0a44 6174 653a 2046 7269 2c20 3036 d..Date:.Fri,.06
0x0050: 2041
客户端接到数据后,再发一个确认ack:
15:20:16.495726 00:22:19:4f:7a:09 > 00:22:19:4f:7c:f2, ethertype IPv4 (0x0800), length 60: IP 192.168.20.17.2513 > localhost.localdomain.9900: . ack 800828967 win 65332
0x0000: 4500 0028 aad5 4000 7b06 8c8f c0a8 1411 E..(..@.{.......
0x0010: c0a8 3309 09d1 26ac a2e8 a508 2fbb ae27 ..3...&...../..'
0x0020: 5010 ff34 91e3 0000 0000 0000 0000 P..4..........