爲了學習的目的,我正在實現TCP(現在只是RFC 793),但我沒有 想法如何測試它。大多數互聯網上的TUN/TAP內容已過時(例如, Linux API調用不再有效),並且不足以解釋。另外,I 感覺就像創建一個設備,並且轉發包等不是用於學習目的的最佳方式 。舉例來說,我寧願只覆蓋socket()
, listen()
,connect()
,accept()
,send()
,recv()
等的程序,而不是 轉發所有以太網流量的設備/程序負責 bookeeping整個系統,而比一個單一的節目。如何測試Linux上的自定義TCP實現?
我想知道這是否可能。如果不是,我想知道在Linux上測試TCP實現的最簡單方法。
因爲我遵循RFC 793,如果我的應用程序中可以有一個IP(RFC中提到的互聯網 協議)API,那就太好了。這是可能的或做 我必須弄亂TUN/TAP的東西?
謝謝..
我想更好地瞭解你的問題。你有一個你已經實現的TCP協議棧,你希望能夠測試它嗎?至少有兩種方法可以,你想測試你的TCP棧作爲服務器,然後連接任何'標準'客戶端(比如telnet到它)。一些繁重的工作你必須做的是 - 能夠在TCP堆棧上自己實現監聽和接受功能 - 但這是一個起點 - 假設 - 你得到輸入IP數據報。另一種方法是首先將其作爲客戶端進行測試。 – gabhijit