How familiar should one be with networking? I know some C++ and know the low level C apis for maintaining sockets but never implemented them. I also never took a networking class.
It helps if you ever looked at the packets for example in Wireshark and have at some understanding of how TCP works. But the most important thing is the ability to read standards (RFCs).