计算机网络——数据链路层


个人博客网站: https://xingkongdiyiren.github.io/myblog/,完整的Java知识体系,包括408,架构,业务,产品,软技能等

计算机网络系列文章

计算机网络——基础篇
计算机网络——HTTP
计算机网络——TCP
计算机网络——IP
计算机网络——数据链路层
计算机网络综合篇——当键入网址后,到网页显示,其间发生了什么?

概述

链路是从一个结点到相邻结点的一段物理线路,数据链路则是在链路的基础上增加了一些必要的硬件(如网络适配器)和软件(如协议的实现)
网络中的主机、路由器等都必须实现数据链路层
在这里插入图片描述
局域网中的主机、交换机等都必须实现数据链路层
在这里插入图片描述
从层次上来看数据的流动
在这里插入图片描述
仅从数据链路层观察帧的流动
在这里插入图片描述
主机H1 到主机H2 所经过的网络可以是多种不同类型的
注意:不同的链路层可能采用不同的数据链路层协议

MAC地址和ARP协议

认识 MAC 地址

MAC 地址的全称是 Media Access Control Address ,译为媒体访问控制地址,它是⽹络上以太⽹或⽹络适配器的唯⼀标识符。MAC 地址能够区分不同的⽹络接⼝,并⽤于多种⽹络技术,尤其是⼤多数 IEEE 802 ⽹络。

MAC 地址也称为物理地址,硬件地址和⽼化地址。

MAC 地址主要⽤于识别数据链路中互联的节点,如下图所示
在这里插入图片描述
MAC 地址⻓ 48 bit,在使⽤ ⽹卡(NIC) 的情况下,MAC 地址⼀般都会烧⼊ ROM 中。因此,任何⼀个⽹卡的MAC 地址都是唯⼀的。MAC 地址的结构如下
在这里插入图片描述
MAC 地址中的 3 - 24 位表示⼚商识别码,每个 NIC ⼚商都有特定唯⼀的识别数字。25 - 48 位是⼚商内部为识别每个⽹卡⽽⽤。因此,可以保证全世界不会有相同 MAC 地址的⽹卡。

MAC 地址也有例外情况,即 MAC 地址也会有重复的时候,但是问题不⼤,只要两个 MAC 地址是属于不同的数据链路层就不会出现问题。

ARP 是什么

ARP 协议的全称是 Address Resolution Protocol(地址解析协议) ,它是⼀个通过⽤于实现从 IP 地址到MAC 地址的映射,即询问⽬标 IP 对应的 MAC 地址 的⼀种协议。ARP 协议在 IPv4 中极其重要。

注意:ARP 只⽤于 IPv4 协议中,IPv6 协议使⽤的是 Neighbor Discovery Protocol,译为邻居发现协议,它被纳⼊ ICMPv6 中。

简⽽⾔之,ARP 就是⼀种解决地址问题的协议,它以 IP 地址为线索,定位下⼀个应该接收数据分包的主机 MAC地址。如果⽬标主机不在同⼀个链路上,那么会查找下⼀跳路由器的 MAC 地址。

ARP 的⼯作机制

下⾯我们探讨⼀下 ARP 的⼯作机制是怎样的。假设 A 和 B 位于同⼀链路,不需要经过路由器的转换,主机 A 向主机 B 发送⼀个 IP 分组,主机 A 的地址是 192.168.1.2 ,主机 B 的地址是 192.168.1.3,它们都不知道对⽅的MAC 地址是啥,主机 C 和 主机 D 是同⼀链路的其他主机。
在这里插入图片描述
主机 A 想要获取主机 B 的 MAC 地址,通过主机 A 会通过 ⼴播 的⽅式向以太⽹上的所有主机发送⼀个 ARP 请求包 ,这个 ARP 请求包中包含了主机 A 想要知道的主机 B 的 IP 地址的 MAC 地址。
在这里插入图片描述
主机 A 发送的 ARP 请求包会被同⼀链路上的所有主机/路由器接收并进⾏解析。每个主机/路由器都会检查 ARP请求包中的信息,如果 ARP 请求包中的 ⽬标 IP 地址 和⾃⼰的相同,就会将⾃⼰主机的 MAC 地址写⼊响应包返回主机 A
在这里插入图片描述
由此,可以通过 ARP 从 IP 地址获取 MAC 地址,实现同⼀链路内的通信。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

zhz小白

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

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

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

打赏作者

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

抵扣说明:

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

余额充值