Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix TCP support #89

Open
perlun opened this issue Mar 22, 2017 · 3 comments
Open

Fix TCP support #89

perlun opened this issue Mar 22, 2017 · 3 comments

Comments

@perlun
Copy link
Contributor

perlun commented Mar 22, 2017

Subject says it all. The ipv4 server should be able to receive and send TCP packets.

This is a bit hard, since the TCP protocol is fairly complex, but we should at least be able to handle non-fragmented packages at first.

We did some initial experimentation around this in 2000 or 2001, but the problem back then was that the TCP packages we sent from chaos was never properly ACK:ed by the other machine. So the reason for this could be something like: bad checksum, problems with the packet structure, etc. It looked correct when we inspected the package with tcpdump and similar, but it still didn't work.

This bug has been bothering me for years and hopefully, we could sort it out eventually. 😄

@doverhill
Copy link

doverhill commented Mar 22, 2017 via email

@perlun
Copy link
Contributor Author

perlun commented Mar 22, 2017

Det löste problem med att ingen ville ta emot våra paket. Andra nätverkskort la automatiskt på checksum...

😄 I didn't remember that part, no. But like you say, it solved the problem with the ethernet checksum. I think there is also a TCP checksum, that we supposedly (?) give the right value, it doesn't show anything weird in tcpdump at least. But it still doesn't work. 😭

Will have to dig into this, any decade now. 😉

@perlun
Copy link
Contributor Author

perlun commented Mar 22, 2017

Btw, I think it's actually not a CRC32 but a CRC16 in fact. 😆

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants