基础
127.0.0.1的本机网路不走网卡,但其它流程如内核协议栈还得走。
- 协议栈 -> 网络设备子系统-> 驱动程序 -> 软中断 -> 驱动程序;
用本机IP跟 127.0.0.1 性能上没有差异,走虚拟的环回设备lo。
BPF:Berkeley Packet Filter,是类Unix系统上数据链路的原始接口,提供原始链路层封包的转发。
eBPF:Extended BPF,linux 3.18版本后引进,通用执行引擎,提供可基于系统或程序事件高效安全执行特定代码的通用能力。
- 观测(跟踪,性能调优)、安全和网络等方面;
业界基于ebpf的sockmap和sk redirect功能研发sockops组件,加速 istio 架构中 sidecar 代理和本地进程之间的通信。
- 避免内核协议栈的开销
通信参考模型
OSI七层模型:五层模型是将(会话/表示/应用当作一个应用层),TCP/IP体系
- 物理层:比特,数模转换与模数转换,传输比特流(0/1转化为电流强弱传输,目的地再转化为0/1)
- 数据链路层:帧,根据MAC地址进行转发;
- MAC 地址虽然唯一,但在世界范围内不能通过广播的形式,找到目标MAC地址计算机而不超时;
- 网络层:IP,常见的协议有 IP, ICMP, IGMP, ARP, RARP等;
- 传输层:端口,TCP/UDP协议;
- 会话层/表示层/应用层:如 HTTP, SMTP, FTP, DNS 等;
其它
IEEE 802.1x(MAC地址认证协议)
网络访问控制协议,定义了在局域网(LAN)和广域网(WAN)上进行网络认证和授权的标准方式。
工作在数据链路层(第2层)协议上,网络管理员可以控制谁可以访问网络、何时可以访问网络以及访问网络的权限等