Hi everyone,
I would like to pitch an idea to improve network protocol debugging on Genode.
I value the verbosity option of the `nic_router` and the `nic_dump` components, but sometimes I'd like the ability delve deeper into packets, like I am used to with Wireshark. But extending the log based network debugging in Genode to reach that level of detail clearly doesn't make sense.
Another option is to introduce an intercepting `nic_tap` component that implements a bump-in-the-interface between a Nic client and a Nic server and duplicates all packets between the client and the server to a dedicated Nic tap interface. A Nic client connected to the Nic tap interface is presented with all network packets, both up- and downstream, of the intercepted Nic session.
The nic_tap is especially useful when running on real hardware. There are various ways to use the nic_tap. An obvious scenario is to setup an instance of VirtualBox with Linux and Wireshark that is routed to use the Nic tap. But it should also be possible to route the Nic tap to an external Nic interface (granted that you have a solution to tie two Nic clients together, but thatâs easy enough).
In my view the nic_tap would be a valuable and complementing addition to the set of Genode network debugging tools.
What do you think, would you benefit from such a component?