网络协议之链路层

数据链路层

  • 以太网帧格式
    在这里插入图片描述

类型有三种:IP、ARP、RARP

  • MAC地址

    • MAC地址用来识别数据链路层中连接的节点
    • 长度为48位,用16进制数中间间隔:来表示
    • MAC地址在网卡出厂就确定,是唯一的。虚拟机中不一定
  • MTU

    • MTU最大传输单元,是对发送数据长度的规定,最大值1500,不同的网络类型有不同的MTU

    • 如果一个数据包从以太网路由到拨号链路上,数据包大于拨号链路的MTU,则需要对数据进行分片

    • 不同的数据链路层标准的MTU是不同的

  • MTU对IP协议影响

    由于数据链路层MTU的限制,对于较大的IP数据要进行分包

    • 将较大的包分为多个小包,并打上标签
    • 每个小包IP协议头的16位标识都是相同的
    • 每个小包的IP协议头的3位标志字段中,第二位为0,表示允许分片,第三位来表示结束标志,是为1
    • 到达对端会将其按序重组,拼装后返回给传输层
    • 任意分包消失,接收端的重组就会失败,但是IP层不会负责重新传输数据

    路由器分片后,每个小包都有一个IP头部,传输层头部只会有一个

  • MTU对UDP协议影响

    • 一旦UDP携带的数据超过1472(1500 - IP头20 - UDP头20),那么就会在网络层分成多个IP数据报
    • 由于UDP协议的不可靠,一旦IP数据报任意一个丢失,就会重组时失败,传输数据也就丢失了
  • MTU对于TCP协议的影响

    • TCP数据报受制于MTU,TCP的单个数据报的最大分段大小,称为MSS(MAX segment size)
    • TCP在建立连接过程中,通信双方会进行MSS协商
    • 最理想的情况下,MSS的值正好是在IP不会被分片处理的最大长度,受制于MTU
    • 双方在发送SYN的时候会在TCP头部写入自己支持的MSS值
    • 然后双方得知对方的MSS值后,选择较小的作为最终MSS
    • MSS的值在TCP首部选择(40字节)
  • ARP协议

    ARP不是一个单纯的数据链路层协议,而是一个介于数据链路层和网络层之间的协议

    ARP协议建立了主机IP地址和MAC地址的映射关系

    • 在网络通讯时,源主机的应用程序直到目的主机的IP地址和端口,但不知道目的主机的硬件地址
    • 数据包首先是被网卡接收到再去处理上层协议,如果接收到的数据包的硬件地址与本机不符,则直接丢弃
    • 因此在通讯前必须获得目的主机的硬件地址
    • 每隔主机都维护一个ARP缓存表,可以用arp-a命令查看。缓存表中的表项有过期时间(一般为20分钟),如果20分钟内没有在此使用此表项,则该表项失效,下次还要发ARP请求来获得目的主机的硬件地址
  • NAT技术

    NAT技术是解决IP地址不够用的主要手段,是路由器的重要功能

    • NAT能够将私有IP对外通信时转为全局IP
    • 每个终端设置私有IP,路由器或服务器设置全局IP
    • 全局IP为公网IP是唯一的,私有IP不需要
  • 代理

    • 正向代理

    在这里插入图片描述

    应用:VPN、爬虫

    • 反向代理

      在这里插入图片描述

    应用:VPN、爬虫

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值