计算机网络:数据链路层 —— 网络适配器与 MAC 地址

文章目录

    • 网络适配器
      • 使用网络适配器
      • 网络适配器类型
    • MAC 地址
      • MAC 地址格式
      • MAC 地址类型
      • MAC 地址发送顺序
      • 数据接收
      • MAC 地址泄露问题

网络适配器

要将计算机连接到以太网,需要使用相应的网络适配器(Adapter),网络适配器一般简称为“网卡”。在计算机内部,网卡与 CPU 之间的通信,一般是通过计算机主板上的 I/O 总线以并行传输方式进行,网卡与外部以太网(局域网)之间的通信,一般是通过传输媒体(同轴电缆、双绞线电缆、光纤)以串行方式进行的。

![[Adapter Transmission.png]]

使用网络适配器

网卡(网络适配器)除了要实现物理层和数据链路层功能,其另外一个重要功能就是要进行并行传输和串行传输的转换。由于网络的传输速率和计算机内部总线上的传输速率并不相同,因此在网卡的核心芯片中都会包含用于缓存数据的存储器

在确保网卡硬件正确的情况下,为了使网卡正常工作,还必须要在计算机的操作系统中为网卡安装相应的设备驱动程序。驱动程序负责驱动网卡发送接收帧

一般情况下,普通用户计算机中往往会包含两块网卡:

  • 一块是用于接入有线局域网以太网卡
  • 一块是用于接入无线局域网Wi-Fi网卡

每块网卡都有一个全球唯一的 MAC 地址。交换机和路由器往往具有更多的网络接口,所以会拥有更多的 MAC 地址。

网络适配器类型

  • 有线网络适配器:通过物理连接(如以太网电缆)连接到网络,常用于固定位置的设备如台式机和服务器。

  • 无线网络适配器:通过无线电波与无线接入点(AP)通信,适用于便携式设备如笔记本电脑和平板电脑。

  • 集成网络适配器:许多现代计算机已经将网络适配器集成在主板上,无需额外的硬件。

  • 外部网络适配器:如USB网络适配器,可以为不具备内置网络连接能力的设备提供网络接入功能。

MAC 地址

数据链路层必须使用地址来区分各主机,当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,则每个主机都必须有一个唯一的标识,即一个数据链路层地址。在每个主机发送的帧的首部中,都携带有发送主机(源主机)和接收主机(目的主机)的数据链路层地址。由于这类地址是用于媒体接入控制(Medium Access Control,MAC)的,因此被称为 MAC 地址

MAC 地址(Media Access Control Address),也称为物理地址,由于一般被固化在网卡的电可擦可编程只读存储器 EEPROM 中,因此 MAC 地址也被称为硬件地址

MAC 地址在数据链路层上使用,用于在局域网中唯一标识和寻址设备。在数据帧中,源地址字段和目标地址字段分别用于指示发送者和接收者的 MAC 地址。交换机和网桥等网络设备使用 MAC 地址来转发数据帧,将数据帧从一个端口转发到另一个端口,以实现设备间的通信。

虽然 MAC 地址在局域网中是唯一的,但在全球范围内并不一定唯一,因此在互联网上,通常使用 IP 地址来唯一标识设备。然而,在局域网内,MAC 地址在数据链路层上仍然扮演着重要的角色。

MAC 地址格式

MAC 地址是网络设备(如计算机、路由器、交换机等)在以太网或其他数据链路层上的唯一标识符。每个网络设备都有一个独特的 MAC 地址,由48位二进制数表示,通常以十六进制数的形式表示,例如:00:1A:2B:3C:4D:5E

MAC 地址由厂商全球唯一地分配给设备,前24位(6个十六进制数)标识厂商,后 24 位则是厂商内部分配给设备的唯一标识。因此,MAC 地址既可以用于识别设备的制造商,也可以用于唯一地识别设备本身。

![[MAC Frame.png]]

严格来说,MAC 地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识。

MAC 地址类型

![[MAC Type.png]]

MAC 地址发送顺序

字节发送顺序:第 1 字节 ——> 第 6 字节

字节内比特发送顺序:b0 ——> b7

数据接收

网卡从网络上每收到一个无误码的帧,就检查帧首部中的目的 MAC 地址,按以下情况处理:

  1. 如果目的 MAC 地址是广播地址(FF-FF-FF-FF-FF-FF),则接受该帧。

  2. 如果目的 MAC 地址与网卡上固化的全球单播 MAC 地址相同,则接受该帧。

  3. 如果目的 MAC 地址是网卡支持的多播地址,则接受该帧。

  4. 除上述1、2和3情况外,丢弃该帧。

网卡还可被设置为一种特殊的工作方式,混杂方式(Promiscuous Mode)。工作在混杂方式的网卡,只要收到共享媒体上传来的帧就会收下而不管帧的目的 MAC 地址是什么。

  • 对于网络维护和管理人员,这种方式可以监视和分析局域网上的流量,以便找出提高网络性能的具体措施。

  • 嗅探器(Sniffer)就是一种工作在混杂方式的网卡,再配合相应的工具软件(WireShark),就可以作为一种非常有用的网络工具来学习和分析网络。

  • 混杂方式就像一把“双刃剑”,黑客常利用这种方式非法获取网络用户的口令。

MAC 地址泄露问题

全球单播 MAC 地址就如同身份证上的身份证号码,具有唯一性,它往往与用户个人信息绑定在一起。因此,用户应尽量确保自己拥有的全球单播 MAC 地址不被泄露。为了避免用户设备连接 Wi-Fi 热点时 MAC 地址泄露的安全问题,目前大多数移动设备都已经采用了随机 MAC 地址技术

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/446236.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AirServer v7.2.7 破解版 – iPhone屏幕镜像工具

AirServer v7.2.7 破解版 – iPhone屏幕镜像工具可以将你的Mac转变为一个通用的镜像接收器,除了无法接收Miracast外,你可以使用内置的AirPlay或Google Cast基于屏幕投影功能来镜像你的设备屏幕;一次一个或同时投影到AirServer。用户可以从任何…

TGRS 2024 面向雾天遥感图像的定向目标检测算法

TGRS 2024 | 面向雾天遥感图像的定向目标检测算法 论文信息 摘要 目前,大量工作集中在航空目标检测上,并取得了良好的结果。尽管这些方法在传统数据集上取得了有希望的结果,但在恶劣天气条件下捕获的低质量图像中定位对象仍然具有挑战性。目…

数据库课程 CMU15-445 2023 Fall Project-2 Extendible Hash Index

0 实验结果 tips:完成项目的前提不需要一定看视频 1 数据结构:扩展哈希 解释下这张图: 图中header的最大深度2,directory最大深度2,桶的容量2。 最开始的时候只有一个header。 插入第一个数据,假设这个数据对应的哈希…

[自然语言处理]RNN

1 传统RNN模型与LSTM import torch import torch.nn as nntorch.manual_seed(6)# todo:基础RNN模型 def dem01():参数1:input_size 每个词的词向量维度(输入层神经元的个数)参数2:hidden_size 隐藏层神经元的个数参数3&#xff1a…

【puppeteer】wvp-puppeteer制作 过程

目录 最后的结论 制作windows&ubuntu的docker 重启桌面上的docker 命令重启 通过 Docker Desktop 图形界面重启 制作centos docker 测试 参考文档 最后的结论 ubuntu && windows 使用 dualvenregistry:5000/wvp-puppeteer:1.0 centos7 使用:…

RabbitMQ事务模块

目录 消息分发​​​​​​​ 负载均衡 幂等性保障 顺序性保障 顺序性保障方案 二号策略:分区消费 三号策略:消息确认机制 四号策略: 消息积压 RabbitMQ集群 选举过程 RabbitMQ是基于AMQP协议实现的,该协议实现了事务机制,要么全部成功,要么全…

Java——数组的定义与使用

各位看官:如果您觉得这篇文章对您有帮助的话 欢迎您分享给更多人哦 感谢大家的点赞收藏评论,感谢您的支持!!! 一:数组的概念以及定义,初始化 1.1:数组概念以及定义 数组概念:可以看成…

四边形网格生成算法:Q-Morph(三)底边生成四边形

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 参考论文:Q-Morph an indirect approach to advancing front quad meshing ε − π − θ ∈ ⋅ \varepsilon - \pi - \theta \in \cdot ε−π−θ∈⋅ …

通过redis实现高性能计费处理逻辑

计费服务一般都是跟资金相关,所以它在系统中是非常核心的模块,要保证服务的高可用、事务一致性、高性能。服务高可用需要集群部署,要保证事务一致性可以通过数据库来实现,但是只通过数据库却很难实现高性能的系统。 这篇文章通过使…

解锁5 大无水印热门短视频素材库

想让你的抖音视频更出彩吗?想知道那些爆款视频的素材源头吗?快来了解以下 5 个超棒的视频素材下载平台。 蛙学网 国内的视频素材佼佼者,有大量 4K 高清且无水印的素材,自然风光、情感生活等类别任你选,不少还免费&…

关于wordpress建站遇到的问题

🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&am…

Spring WebFlux 核心原理(2-1)

1、Spring 响应式编程 1.1、早期响应式解决方案 响应式编程是构建响应式系统的主要候选方案。Spring 4.x 引入了 ListenableFuture 类,它扩展了 Java Future,并且可以基于 HTTP 请求实现异步执行操作。但是只有少数 Spring 4.x 组件支持新的 Java 8 Com…

瑞芯微RK3566/RK3568 Android11使用OTA升级固件方法,深圳触觉智能鸿蒙开发板演示,备战第九届华为ICT大赛

本文介绍瑞芯微RK3566/RK3568在Android11系统OTA升级固件方法,使用触觉智能的Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566,Laval官方社区主荐! 1、OTA包生成 在源码根目录上执行以下命令编译OTA包 # make installclean # …

【华为HCIP实战课程七】OSPF邻居关系排错MTU问题,网络工程师

一、MTU MUT默认1500,最大传输单元,一致性检测 [R3-GigabitEthernet0/0/1]mtu 1503//更改R3的MTU为1503 查看R3和SW1之间的OSPF邻居关系正常: 默认华为设备没有开启MTU一致性检测! [R3-GigabitEthernet0/0/1]ospf mtu-enable //手动开启MTU检测 [SW1-Vlanif30]ospf mtu…

【详细教程】如何使用YOLOv11进行图像与视频的目标检测

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

《数字信号处理》学习08-围线积分法(留数法)计算z 逆变换

目录 一,z逆变换相关概念 二,留数定理相关概念 三,习题 一,z逆变换相关概念 接下来开始学习z变换的反变换-z逆变换(z反变化)。 由象函数 求它的原序列 的过程就称为 逆变换。即 。 求z逆变换…

linux线程 | 线程的控制(二)

前言: 本节内容是线程的控制部分的第二个小节。 主要是列出我们的线程控制部分的几个细节性问题以及我们的线程分离。这些都是需要大量的代码去进行实验的。所以, 准备好接受新知识的友友们请耐心观看。 现在开始我们的学习吧。 ps:本节内容适合了解线程…

如何批量从sql语句中提取表名

简介 使用的卢易表 的提取表名功能,可以从sql语句中批量提取表名。采用纯文本sql语法分析,无需连接数据库,支持从含非sql语句的文件文件中提取,支持各类数据库sql语法。 特点 快:从成百个文件中提取上千个表名只需1…

JAVA开发中SpringMVC框架的使用及常见的404问题原因以及SpringMVC框架基于注解的开发实例

一、JAVA开发中SpringMVC框架的使用及常见的404问题原因 使用SpringMVC建立一个web项目,在IDEA中file->new->project建立一个空项目project。不用选择create from archetype从模板创建。然后在项目的pom.xml中添加公共的依赖包括org.springframework&#xff…

400行程序写一个实时操作系统RTOS(开篇)

笔者之前突发奇想,准备写一个极其微小的实时操作系统内核,在经过数天的努力后,这个RTOS诞生了。令读者比较意外的是,它的程序只有400行左右。但就是这短短的400行,完成了动态内存管理、多线程、优先级、临界区、低功耗…