For training purposes, I implement TCP (currently only RFC 793), but I have no idea how to test it. Most TUN / TAP materials on the Internet are out of date (for example, the Linux API API no longer works) and simply does not explain enough. In addition, I feel like creating a device and forwarding packets, etc., is not the best way for training purposes. For example, I would prefer only to redefine socket() , listen() , connect() , accept() , send() , recv() , etc. in the program, rather than redirecting all network traffic to a device / program that performs accounting for the entire system, and not for one program.
I am wondering if this is possible. If not, I would like to find out the simplest way to test the TCP implementation on Linux.
Since I am following RFC 793, it would be great if I had the IP (Internet Protocol mentioned in RFC) API in my application. Is this possible or Do I need to tinker with TUN / TAP materials?
Thanks..
linux networking tcp
sinan
source share