r packet forwarding. When a packet arrives, an existing socket is selected from the <code>sock_map</code> to forward the packet to. As a result, we need to save all the socket information for packets to make the transportation process function properly. When there are new socket operations — like a new socket being created — the <code>sock_ops</code> function is executed. The socket metadata is obtained and stored in the <code>sock_map</code> to be used when processing packets. The common key type in th