struct proto_ops:inet_stream_ops, inet_dgram_ops, inet_sockraw_ops
struct socket.ops就是上边的结构,当用户通过系统调用send发数据时,ops 负责把数据传递给 struct sock
istruct proto: tcp_prot,udp_prot,raw_prot
struct sock.sk_prot 就是上边的结构,sk_prot负责把数据传递给 sk_buff
struct net_protocol: icmp_protocol,udp_protocol,tcp_protocol,igmp_protocol
负责从sk-buff接受数据给sock{};
sock{}通过 sk_prot 给 socket{}