首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查看Linux TCP TCB

查看Linux TCP TCB
EN

Stack Overflow用户
提问于 2013-06-20 03:37:19
回答 1查看 1.1K关注 0票数 2

我需要找出应该保存在TCP传输控制块(TCB)中的信息,具体地说,我需要找出用于任何特定会话的序列号。

我也发过帖子到其他论坛,浏览过procfs,搜索过谷歌,给自己发了lmgtfy (dot) com的链接:)没什么好运气的。

如果procfs中没有工具或提示,是否有可能以某种方式找出此类信息在内存中的位置,并从那里收集这些信息,例如使用to dd复制/dev/mem?

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2013-06-20 13:01:16

好吧,我想你首先需要知道序列号是什么以及为什么要使用它,然后你才能看看序列号生成的特定实现。

序列号是32位字段,它被用来唯一地标记每个数据包,就好像它们可以被确认一样。而且,确认是很重要的,这也是tcp维护连接可靠性的一个重要特性。完整的细节可以在TCP中找到(http://www.ietf.org/rfc/rfc793.txt -第3.3节)。

现在,如果您需要了解Linux是如何做到这一点的,您需要查看net/ipv4/tcp_ipv4.c::tcp_v4_init_ Sequence ()它用于在每次建立新连接时生成ISN (初始序列号),以及后面的序列号是如何生成的,这在rfc中有解释。因此,看看tcp_v4_init_sequence()和rfc的实现,这将有助于您有效地理解序列号的用法和实现。希望这能有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17199843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档