-
Notifications
You must be signed in to change notification settings - Fork 33
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
Add network stack #12
Conversation
First raw data received:
|
By taking the packet header and length into account:
|
And now by taking CRC at the end into account:
Confirmed with Wireshark:
|
Got the packet transmission working!
Used the following example for the DHCP client: https://github.com/m-labs/smoltcp/blob/master/examples/dhcp_client.rs |
Everything seems to be working except we'll need to update the allocator to have physical memory blocks larger than the 4iB page size. After receiving a few big (or many small) packets the card will start to write in space than has not been allocated and we can't read it back. |
Creating an unused array that will "push" the other one into a contiguous area in memory proved that this was indeed the issue. |
Going to merge this as it is and work on the allocator this week. |
smoltcp
cratenet
commandip
commandroute
commanddhcp
commandhost
commandhttp
commandDriver:
https://wiki.osdev.org/RTL8139
https://www.cs.usfca.edu/~cruse/cs326f04/RTL8139D_DataSheet.pdf
https://docs.rs/smoltcp/0.6.0/smoltcp
DNS:
https://tools.ietf.org/html/rfc1035