【网络世界】数据链路层

目录

🌈前言🌈

📁 初识数据链路层

 📂 概念

 📂 协议格式

📁 MAC地址

 📂 概念

 📂 与IP地址的区别

📁 MTU

 📂 对IP协议的影响

 📂 对UDP协议的影响

 📂 对TCP协议的影响

📁 ARP协议

 📂 引入

 📂 格式

 📂 工作流程

 📂 ARP欺骗

📁 总结


🌈前言🌈

        欢迎收看本期【网络世界】,本期内容讲解TCP/IP协议栈中的数据链路层,包含了MAC地址,局域网通信,ARP协议等。

📁 初识数据链路层

 📂 概念

        数据链路层(Data Link Layer)也称为网络接口层,是计算机网络协议栈中的第二层,位于物理层之上,网络层之下,而在TCP/IP参考模型中则被视为最低层。它主要负责在相邻节点之间提供可靠的数据传输服务。数据链路层通过封装成帧、差错检测、流量控制等机制,确保数据帧在物理链路上能够准确无误地传输。并涉及物理地址(如MAC地址)与逻辑地址(如IP地址)之间的映射机制。

作用
        数据链路层的主要作用是将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,从而向网络层提供一条可靠的、无差错的链路。这一层通过封装成帧、差错检测、流量控制等功能,确保数据在传输过程中的完整性和可靠性。

认识以太网

        • "以太网" 不是一种具体的网络, 而是一种技术标准; 既包含了数据链路层的内 容, 也包含了一些物理层的内容. 例如: 规定了网络拓扑结构, 访问控制方式, 传输速 率等;

        • 例如以太网中的网线必须使用双绞线; 传输速率有 10M, 100M, 1000M 等;

        • 以太网是当前应用最广泛的局域网技术; 和以太网并列的还有令牌环网, 无线 LAN 等

 📂 协议格式

        源地址和目的地址是指网卡的硬件地址(也叫 MAC 地址), 长度是 48 位,是在网 卡出厂时固化的。

        帧协议类型字段有三种值,分别对应 IP、ARP、RARP。

        帧末尾是 CRC 校验码。

📁 MAC地址

 📂 概念

        MAC地址是用来识别数据链路层中相互连接的节点。长度是48位(6B),一般用16进制+冒号形式表示(例如: 08:00:27:03:fb:19)

        在网卡出厂时就确定了,不能被修改,mac地址通常是唯一的(虚拟机mac地址并不是真实的mac地址,可能会冲突;有些网卡也支持自己配置)

 📂 与IP地址的区别

        IP地址是逻辑地址,是网络层的概念,表示全网的唯一台主机。描述的是路径总体的起点和终点。

        mac地址是物理地址,是数据链路层的概念,用来确认网络设备位置的位址。描述的是路途上的每一个区间的起点和终点。

        MAC地址作为物理地址,确保了局域网内设备之间的准确通信;而IP地址作为逻辑地址,则实现了不同网络之间的互联互通。

  1. 物理与逻辑的区别
    • MAC地址:是物理地址,与设备的硬件直接相关,由设备制造商在生产时烧录在网卡上,具有唯一性和固定性。
    • IP地址:是逻辑地址,用于在网络中标识设备或主机,由网络管理员进行配置和管理,具有一定的灵活性和可变性。
  2. 工作层次不同
    • MAC地址工作在OSI模型的第二层(数据链路层),用于在局域网内控制数据包的传输。
    • IP地址则工作在OSI模型的第三层(网络层),用于在不同网络之间标识和传输数据包。
  3. 范围与扩展性
    • MAC地址:只能在同一个局域网内使用,无法跨越不同的网络。由于其长度固定为48位,无法进行扩展。
    • IP地址:可以在全球范围内的任何网络中使用,支持跨网络通信。IP地址可以根据需要进行分段和组织,实现更加丰富、复杂和可扩展的网络拓扑结构。
  4. 分配与管理
    • MAC地址:由设备制造商在设备制造时分配,具有全球唯一性,用户无法更改。
    • IP地址:由网络管理员根据网络拓扑和需求进行分配和管理,可以根据需要进行更改或重新分配。
  5. 作用与功能
    • MAC地址:主要用于局域网内的设备标识和数据传输控制,确保数据包能够准确地传输到目标设备。
    • IP地址:用于在网络中标识设备或主机,实现数据在不同网络之间的传输和路由选择。此外,IP地址还可以用于建立网络连接、进行网络扫描、实现主机发现和设备管理等任务。

📁 MTU

        MTU(Maximum Transmission Unit,最大传输单元)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。它限制了数据链路层上面能发送的数据包的最大尺寸。这个参数通常与通信接口有关(例如以太网、PPP等)。

• 以太网帧中的数据长度规定最小 46 字节,最大 1500 字节,ARP 数据包的长度不够 46 字节,要在后面补填充位;

• 最大值 1500 称为以太网的最大传输单元(MTU),不同的网络类型有不同的 MTU;

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

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

 📂 对IP协议的影响

        由于数据链路层对MTU的影响,对较大的IP数据包要进行分片

• 将较大的 IP 包分成多个小包, 并给每个小包打上标签;

• 每个小包 IP 协议头的 16 位标识(id) 都是相同的;

• 每个小包的 IP 协议头的 3 位标志字段中, 第 2 位置为 0, 表示允许分片, 第 3 位 来表示结束标记(当前是否是最后一个小包, 是的话置为 1, 否则置为 0);

• 到达对端时再将这些小包, 会按顺序重组, 拼装到一起返回给传输层;

• 一旦这些小包中任意一个小包丢失, 接收端的重组就会失败. 但是 IP 层不会负 责重新传输数据;

 📂 对UDP协议的影响

        一旦UDP携带的数据超过1472(1500B - 20B(IP首部)  - 8 (UDP首部) ),那么就会在网络层进行分片。这个IP数据包有任何一个丢失,都会引起对端网络层重组失败,但UDP是不可靠的,面向无连接的,因此UDP数据报被网络层分片,数据丢失的概率就大大增加了。

 📂 对TCP协议的影响

        TCP数据报也受限于MTU,TCP单个数据报最大长度为MSS(Max Segment Size).TCP在建立连接时,通信双方会进行MSS协商。最理想情况下,MSS的值正好是IP不会被分片处理的最大长度。

        通信双方在发送SYM的是偶会在TCP头部写入自己支持的MSS,然后双方告知对方的MSS值后,选择较小值作为最终的MSS。MSS值就是TCP首部的40B选项中。

📁 ARP协议

 📂 引入

        在网络通讯时,源主机的应用程序知道目的主机的 IP 地址和端口号,却不知道目的主机的硬件地址。数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。因此在通讯前必须获得目的主机的硬件地址。

        ARP 协议建立了主机 IP 地址 和 MAC 地址 的映射关系,负责将IP地址转换成MAC地址。

        RARP协议负责将MAC地址转换成IP地址。(不讲解RARP协议,主要以ARP协议进行讲解)

 📂 格式

• 注意到源 MAC 地址、目的 MAC 地址在以太网首部和 ARP 请求中各出现一次, 对于链路层为以太网的情况是多余的,但如果链路层是其它类型的网络则有可能是必要的。

• 硬件类型指链路层网络类型,1 为以太网;

• 协议类型指要转换的地址类型,0x0800 为 IP 地址;

• 硬件地址长度对于以太网地址为 6 字节;

• 协议地址长度对于和 IP 地址为 4 字节; • op 字段为 1 表示 ARP 请求,op 字段为 2 表示 ARP 应答

 📂 工作流程

        我们先来理解一下如何构建IP地址映射Mac地址的关系。

(1). 路由器(或源主机)发出 ARP 请求,每个主机取出MAC帧,取出帧中ARP,首先检查oper。

(2). 如果是arp请求,就对比destip和自己的ip,如果一样,说明请求自己的mac地址,然后取出srcip和srcmac,构建arp应答单播给路由器。

(3). 路由器收到arp应答,取出mac帧,发现oper是arp应答,然后提取srcIP和srcMac,构建映射关系。

        为什么是暂时缓存呢?主机可能会随时更换网卡,如果是一成不变的,那么就会导致错误。因此需要定时更换,暂时缓存。

 📂 ARP欺骗

        ARP欺骗(ARP spoofing),又称ARP毒化(ARP poisoning)或ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术。

        ARP欺骗通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通或数据被截获。攻击者发送假的ARP数据包到网上,尤其是送到网关上,目的是要让送至特定的IP地址的流量被错误地送到攻击者所取代的地方。

📁 总结

        以上,就是本期【网络世界】的内容了,包含了数据链路层的基本概念,例如Mac地址是什么,局域网通信使用的就是MAC地址。

        学习了为什么我们只需要知道IP地址,就能够经过一跳一跳的发送到目的主机呢?因为ARP协议的存在,将IP地址转换为Mac地址,Mac地址充当了路径每个区间的起点和终点。

        如果感觉本期内容对你有帮助,欢迎点赞,关注,收藏Thanks♪(・ω・)ノ

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋刀鱼的滋味@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值