【发布时间】:2017-08-28 07:00:08
【问题描述】:
出于学习目的,我正在实现 TCP(现在只是 RFC 793),但我没有
想法如何测试它。互联网上的大多数 TUN/TAP 内容都已过时(例如
Linux API 调用不再起作用),只是解释不够。另外,我
感觉像创建设备和转发包等不是最好的方法
用于学习目的。例如,我宁愿只覆盖socket(),
listen(), connect(), accept(), send(), recv() 等在一个程序中而不是
而不是将所有以太网流量转发到执行以下操作的设备/程序
为整个系统而不是单个程序进行簿记。
我想知道这是否可能。如果没有,我想知道最简单的方法 在 Linux 上测试 TCP 实现。
因为我遵循 RFC 793,所以如果我能拥有一个 IP(互联网 RFC 中提到的协议)API 在我的应用程序中。这是可能的还是做 我必须弄乱 TUN/TAP 的东西?
谢谢..
【问题讨论】:
-
我正在努力更好地理解您的问题。您是否有已实现的 TCP 堆栈并且希望能够对其进行测试?至少有两种方法可以,你想测试你的 TCP 堆栈作为服务器,然后连接任何“标准”客户端(比如 telnet 到它。)。你必须做的一些繁重的工作是——能够自己在 TCP 堆栈上实现监听和接受类似的功能——但这将是一个起点——假设——你得到输入的 IP 数据报。另一种方法是首先将其作为客户端进行测试。
标签: linux networking tcp