博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TCP/IP协议 TCP包深入理解
阅读量:6590 次
发布时间:2019-06-24

本文共 2191 字,大约阅读时间需要 7 分钟。

TCP报格式

继续使用 中抓到的包进行分析。

no Time Source Destination protocal Length info
3 0.000278 192.168.137.28 192.168.1.102 TCP 58 49155 → 5000 [SYN] Seq=0 Win=8196 Len=0 MSS=1460

上面是3号包的大体情况。下面贴上3号包的详细信息。

地址 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
00 00 ff 9f 9a 70 89 52 54 00 11 22 33 08 00 45 00
10 00 2c 00 23 00 00 ff 06 af d5 c0 a8 89 1c c0 a8
20 01 66 c0 03 13 88 00 00 22 e1 00 00 00 00 60 02
30 20 04 75 e2 00 00 02 04 05 b4

其中关于TCP包的信息是0x22 ~ 0x30 。一共0x18个字节

  • TCP包数据
地址 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
00 c0 03 13 88 00 00 22 e1 00 00 00 00 60 02 20 04
10 75 e2 00 00 02 04 05 b4

暂时还没有发现
mss在哪里设置的。

  • 特别应该注意 这些数据包都是以大端的方式储存的。
Transmission Control Protocol, Src Port: 49155, Dst Port: 5000, Seq: 0, Len: 0    Source Port: 49155    Destination Port: 5000    [Stream index: 0]    [TCP Segment Len: 0]    Sequence number: 0    (relative sequence number)    [Next sequence number: 0    (relative sequence number)]    Acknowledgment number: 0    0110 .... = Header Length: 24 bytes (6)    Flags: 0x002 (SYN)    Window size value: 8196    [Calculated window size: 8196]    Checksum: 0x75e2 [unverified]    [Checksum Status: Unverified]    Urgent pointer: 0    Options: (4 bytes), Maximum segment size        TCP Option - Maximum segment size: 1460 bytes            Kind: Maximum Segment Size (2)            Length: 4            MSS Value: 1460    [Timestamps]复制代码

上面是3号包所有的信息。

我们在这里可以分析出。TCP所包含的所有信息。

  • 源端口 source port
  • 目的端口 destination port
  • 序列号 sequence number
  • 确认序列号 acknowledgement number
  • 报头长度
  • 编码位
  • 窗口
  • 校验和
  • 紧急指针
  • 其他选项

编码位

我怎么感觉像是状态位?

Flags: 0x002 (SYN)    000. .... .... = Reserved: Not set    ...0 .... .... = Nonce: Not set    .... 0... .... = Congestion Window Reduced (CWR): Not set    .... .0.. .... = ECN-Echo: Not set    .... ..0. .... = Urgent: Not set    .... ...0 .... = Acknowledgment: Not set    .... .... 0... = Push: Not set    .... .... .0.. = Reset: Not set    .... .... ..1. = Syn: Set    .... .... ...0 = Fin: Not set    [TCP Flags: ··········S·]复制代码

一共有6位标志位。

Flag 作用
URG 紧急指针有效
ACK 确认序号有效
PSH 接收方应该尽快将这个报文交给应用层
RST 重置连接
SYN 发起一个新连接。synchronize
FIN 释放一个连接
  • 上一章
  • 下一章

参考资料

https://juejin.im/post/5c87059ae51d452f3f64b110复制代码

转载于:https://juejin.im/post/5c8a1c3ae51d454a3a0d47db

你可能感兴趣的文章
线程同步中异常情况的处理
查看>>
Orchard模块开发全接触3:分类的实现及内容呈现(Display)
查看>>
JQuery 自动触发事件
查看>>
ylbtech-LanguageSamples-CommandLine(命令行参数)
查看>>
Uptime And Monitoring Strategies For Cloud-Based E-Commerce Applications/Websites
查看>>
FPGA未来几年的发展趋势及发展机遇
查看>>
【spring bean】 spring中bean之间的引用以及内部bean
查看>>
MVVM架构~knockoutjs系列之验证信息自定义输出~续
查看>>
-webkit-line-clamp下多行文字溢出点点点...显示实例页面
查看>>
FTP中各文件目录的说明
查看>>
JScript内置对象Array中元素的删除问题
查看>>
Service 广播 到Fragment
查看>>
Eclipse中建立自己的类库,给不同的工程使用
查看>>
记 dotamax 面试第一题
查看>>
ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能
查看>>
KBMMW 4.92.00 发布
查看>>
丹青引赠曹霸将军-杜甫
查看>>
一个执行计划异常变更的案例 - 外传之AWR
查看>>
libreoffice安装
查看>>
FFprobe使用指南
查看>>