我发现有两种不同的结构来获取 TCP header ,即 tcp 和 tcphdr。 两个结构的链接都是 here:tcp和 here:tcphdr分别。
它们之间有什么区别,它们是否取决于所运行的系统?
最佳答案
一个来自http://minirighi.sourceforge.net/用于IA-32的Minirighi多线程操作系统
另一个来自 Linux 内核版本 2.6。 ( http://www.cse.scu.edu/~dclark/am_256_graph_theory/linux_2_6_stack/structtcphdr.html )
TCP 数据包/ header 实现是 TCP/IP 堆栈的内部实现,通常是操作系统内核的一部分。因此,存在不同的 TCP/IP 堆栈,它们可能定义不同的结构。重要的是 - 根据 RFC 文档(如 https://www.rfc-editor.org/rfc/rfc793)实现 TCP 标准其中包括 tcp 数据包 header 的字节格式(在网络中发送时)。
关于c - struct tcphdr 和 struct tcp 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49956081/