Pedro Henrique Penna
Pedro Henrique Penna
Description ======== TCP checksum offloading seems to be malfunctioning. We should investigate and fix, if needed.
Description ======== Currently, the default MSS size is hard-code (https://github.com/demikernel/catnip/blob/v0.7/src/protocols/tcp/constants.rs#L12). Instead, we should compute this from the MTU. Related Issues ----------------- demikernel/runtime#8
Description ======== In `protocols::tcp::established::ControlBlock::receive_data()` and potentially everywhere, we are casting fixed sizes to `usize` to perform some checks. We should do the other way around.
# Description In `protocols::tcp::peer:TcpPeer::connect()` we should free ephemeral ports once an active connection is closed.
Description ======== In `protocols::tcp::passive_open::PassiveSocket::receive()`, we should properly refuse incoming connections if we reached the maximum backlog length of a passive socket.
Description ======== In `protocols::tcp::active_open::receive()`, we currently panicking on a bad window scale, instead of failing or rounding down the provided value.
# Description In `protocols::udp::peer::do_receive()`, we fail when receiving packets in an unbound port. Instead, we should send back an error message through ICMPv4.
Description ======== We should handle cancellation of ping requests in `protocols::icmpv4::peer::ping()`.
Description ======== We are currently using watched values to drive the TCP stack, we should trigger event actions in a direct way instead.
# Description We should add the following regression tests for TCP: - [ ] Deterministic hashmap - [ ] Random number of clients, connecting and disconnecting from each other randomly...