Linux:数据链路层——以太网协议、NAT协议、ARP协议和DNS协议

以太网协议

数据链路层:数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自物理层来的数据可靠地传输到相邻节点的目标机网络层。他的作用就是负责相邻设备的转发。
以太网:以太网不是一种具体的网络,而是一种技术标准;既包含了数据链路层的内容,也包含了一些物理层的内容。以太网是当前应用最广泛的局域网技术,和以太网并列的还有令牌环网(已淘汰)和无线LAN等。

以太网帧格式

在这里插入图片描述

源地址和目的地址:指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出场是固化的
帧协议类型字段:有三种值,分别对应IP、ARP、RARP
帧末尾是CRC校验码
类型:指上层协议的类型。0800表示IP协议、0806表示ARP请求、0835表示ARP应答
数据:有效载荷,46~1500(MTU);1500:ipheader + tcpheader + 数据;46:如果从网络协议栈传递下来的数据没有达到46字节,会在数据前面默认补上0,以达到数据链路层对数据的限制

MTU以及MTU对IP协议的影响

MTU:就相当于发快递时对包裹尺寸的限制,这个限制是不同的数据链路对应的物理层产生的限制,以太网帧中的数据长度规定最小46字节,最大1500字节,ARP数据包的长度不够46字节,要在后面补填充位;最大值1500称为以太网的最大传输单元(MTU),不同的网络类型有不同的MTU,如果一个数据包从以太网路由到拨号链路上,数据包长度大于拨号链路的MTU了,则需要对数据包进行分片,不同的数据链路层标准的MTU是不同的;
IP:

将较大的IP包分成多个小包, 并给每个小包打上标签,每个小包IP协议头的 16位标识(id) 都是相同的,每个小包的IP协议头的3位标志字段中, 第2位置为0, 表示允许分片, 第3位来表示结束标记(当前是否是最后一个小包, 是的话置为1, 否则置为0),到达对端时再将这些小包, 会按顺序重组, 拼装到一起返回给传输层;一旦这些小包中任意一个小包丢失, 接收

  • 28
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值