码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 以太网帧格式 以及 认识MAC地址


    目录

    一、以太网帧格式

    二、认识MAC地址

    1、什么是MAC地址

    2、为什么需要MAC地址(局域网通信的过程)


    以太网不是一种具体的网络,而是一种技术标准,属于数据链路层,但是它既包含了数据链路层的内容,也包含了物理层的一些内容(比如以太网中的网线必须使用双绞线)

    以太网是目前应用最广泛的局域网技术,与之并列的还有令牌环网, 无线LAN等。

    一、以太网帧格式

    帧字段字段解析
    目的地址目的Mac地址
    源地址源Mac地址
    类型帧协议类型,可选值为 IP、ARP、RARP
    数据每种类型对应的数据,比如类型为IP,这里填的就是IP数据;类型为ARP,这里填的就是ARP请求,PAD是填充字段(凑数用的,因为数据长度最少为46个字节)
    CRC校验码,检查MAC帧的比特位是否错乱

    补充:可以看出这里数据的长度是有限制的,当网络层传下来的报文大小超过 1500字节的时候,就要求网络层进行分片操作了;

    二、认识MAC地址

    上面的源地址和目的地址提到了一个关键概念MAC地址,下面我们就来了解MAC地址的相关内容

    1、什么是MAC地址

    以高铁路线为例,IP地址标记的是起点站和终点站,而MAC地址标记的是中间站或者叫做临时停靠站。MAC地址的特点如下:

    • MAC地址有48位(6个字节),跟IP地址不一样,MAC地址不存在复用或者重复的情况,每一台主机都具备着唯一的MAC地址。
    • MAC地址是内嵌在网卡中的,早在网卡出厂的时候就确定了,是不可修改的,通常是唯一的

    2、为什么需要MAC地址(局域网通信的过程)

    假设主机X发送一条报文,在网络层经过路由表查询发现,需要先发给路由器A,因此,源地址就填上当前主机的MAC地址(假设是HX),目的地址填的是路由器A的MAC地址(假设是RA)。构成的MAC帧就像下面这样。

    此时主机X就会将报文发到当前局域网中,该局域网中的每一台主机都会收到这个报文。假设主机Y收到了这个报文,先对这个报文进行解包取出里面的目的MAC地址,假设主机Y的MAC地址是HY,一比对发现MAC地址不对,于是直接将这个报文丢弃。

    最终只有路由器A 在数据链路层解包取出MAC地址,一比对发现这个报文是给自己的,于是继续向上交付。路由器比对自己的路由表,决定要将MAC帧发送给哪个设备,此时需要再次向下封装,换上新的目的MAC地址。

    路由器比对路由表其实属于路由转发的内容。感兴趣的可以参考:路由转发的过程

  • 相关阅读:
    CAN 通信-底层
    如何用Java高效地存入一万条数据?这可能是你面试成功的关键!
    快手治理低质量直播内容,运营者需要注意什么?
    由世界第一个AI软件工程师Devin引发的热潮背后----程序员到底会不会被代替?AI发展至如今是否初衷已变?
    (c语言)两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
    latex里的box
    2023/09/07 c++&qt day2
    代码随想录算法训练营第二十八天| 78 子集 90 子集|| 93 复原IP地址
    6.24 学习内容
    unity shader全局雾效
  • 原文地址:https://blog.csdn.net/challenglistic/article/details/126807456
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号