首页 > 其他分享 >MAC地址+网络层

MAC地址+网络层

时间:2024-09-18 18:02:07浏览次数:8  
标签:MAC 网络层 字段 单播 mac 分片 地址 数据

进制

二进制和十六进制之间 1个16进制可以用4个二进制表示,1:4关系

1111是否取值
8 4 2 1 取值所代表的数值

 

在一台交换机上每台设备间的物理链路:不是直连 -- 直接连接

逻辑状态:都处于互联状态,处于一条链路上

MAC地址

由两部分组成,前24位代表该供应商代码,由IEEE管理和分配。剩下的24位序列号由厂商自己分配。

mac地址 ----- 物理地址 ----- 网卡地址

网卡上 ---- 烧录进网卡芯片 ---- mac地址

mac地址:显示16进制 = 12个16进制数

mac地址的概念

单播

通信形式上,点对点,单对单的通信。(类似于qq私聊)

数据封装时,源mac和目的mac都是单播mac,则为单播通信

单播mac地址特点:从高位地向低位(从左往右)第8位为0,且一定为0,其他任意

组播

通信形式上,点对多点,单对多的通信。(类似于qq群聊)

数据封装时,因为组播代表的是一组的集合,面向一组的通信,此时组播mac不能成为数据的源地址,仅能充当目的地址。

单播mac地址特点:从高位地向低位(从左往右)第8位为1,且一定为1,其他任意

广播

通信形式上,点对所有,单对所有的通信。广而播之/强制的接受处理。

数据封装时,因为广播代表的是所有人的集合,面向所有人的通信,此时广播mac不能成为数据的源地址,仅能充当目的地址。

单播mac地址特点:从高位地向低位48位全部为1,且一定为1

a:目的mac为单播mac

b:目的mac为组播mac

c:目的mac为广播mac

a场景:

单播数据抵达接收端接口以后,接收者的动作:

1.首先看目的MAC,是否是自己的mac,如果不是丢弃,如果是,则进行下一步;

2.将数据也进行CRC检验,比对FCS字段,如果不同则丢弃,如果相同,则进行下一步;

3.查看type字段,交由type字段标识的上层协议处理。

数据链路层工作,结束。

b场景:

组播数据抵达接收端接口以后,接收者的动作:

1.首先看目的MAC,查看自己本地是否加组,如果没加组丢弃,如果加组,则进行下一步;

2.将数据也进行CRC检验,比对FCS字段,如果不同则丢弃,如果相同,则进行下一步;

3.查看type字段,交由type字段标识的上层协议处理。

数据链路层工作,结束。

c场景:

广播数据抵达接收端接口以后,接收者的动作:

1.首先看目的MAC,如果是广播,则直接进行下一步;

2.将数据也进行CRC检验,比对FCS字段,如果不同则丢弃,如果相同,则进行下一步;

3.查看type字段,交由type字段标识的上层协议处理。

数据链路层工作,结束。

IP报文头部

Header Length:代表ip报头的长度

DS Field:定义报文的优先级

Total Length:代表总长度(报头长度加数据长度)

DF 不分片位

1 不可分片

0 可以分片

Identification:用来区分不同设备发来的分片(区分哪些分片是一组数据)

Flags:标志位:例如:MF,当MF为1时表示后面还有分片,当为0时表示后面没有分片。

Fragment Offset:用来区分每片分片在整组数据中的位置

Time to Live :防环机制 , 经过了多少个三层设备(每经过一个减一) 固定数值:255 128 64 (当TTL值为1 时数据被丢弃)

Protocol:标示使用的什么协议(3层拆完后4层使用什么协议) 1:ICMP     6:TCP     17:UDP

Header Checksum:检验IP报头的头部,用来保证数据的完整性(相当于第二层的FCS)

标签:MAC,网络层,字段,单播,mac,分片,地址,数据
From: https://www.cnblogs.com/malk/p/18419036

相关文章

  • mac苹果电脑办公套件全家桶下载:Office2019 for Mac 下载
    office 2019是Microsoftoffice应用程序套件的最新版本。它包括流行的软件,例如MicrosoftWord、Excel、PowerPoint和Outlook,office2019比其前身有许多新功能和改进,包括增强的协作工具、与OneDrive和SharePoint等云服务的更好集成,以及改进的生产力工具,如语法检查器......
  • Adobe Illustrator AI2024下载安装(附win/mac安装包)
    目录一、AdobeAI下载二、系统要求一、AdobeAI下载链接:https://pan.baidu.com/s/11IMuW59pfaLS8mbzWdlOig?pwd=dgys提取码:dgys二、系统要求为了确保AdobeIllustrator能够正常运行并发挥最佳性能,您的计算机系统需要满足以下要求:1.操作系统Windows:Windows10(......
  • 安卓手机改ip地址改到其他市
    在数字化时代,IP地址作为设备在网络上的唯一标识,其重要性不言而喻。有时,出于测试、学习或特定服务访问的需求,用户可能希望将安卓手机的IP地址修改为其他城市的地址。本文旨在探讨如何在安卓手机上修改IP地址至其他城市,并提供合规使用的建议。一、修改IP地址的方法要在安卓手......
  • zblog升级数据库版本 zblog数据库地址修改
    当你需要升级Z-Blog的数据库或修改数据库地址时,可以按照以下步骤操作:升级数据库版本备份现有数据库在进行任何升级操作之前,强烈建议先备份现有的数据库。这样即使升级过程中出现问题,也可以快速恢复到之前的状态。下载最新版本访问Z-Blog官方网站或其他可信来源下......
  • Adobe Illustrator AI 软件下载安装(附win/mac安装包)
    AdobeIllustrator,简称AI,是由Adobe系统公司推出的一款专业的矢量图形编辑软件。它以其强大的图形编辑功能和广泛的应用领域,成为设计师们不可或缺的工具之一。以下是对AdobeIllustrator软件的简介、功能及操作方法的概述。软件简介AdobeIllustrator最初于1987年为苹果公司......
  • Rust中的&运算符取一个变量的地址与C/C++中意义相同么?如果不同又有什么区别呢?
    Rust中的&运算符与C/C++中的&运算符有相似之处,但它们的行为和作用有一些关键区别,特别是在所有权、内存安全和编译期检查方面。1.相似之处在Rust和C/C++中,&运算符都用于获取变量的地址,即生成一个指针或引用。它们的作用可以概括为:将一个值的引用或地址作为结果,而不......
  • Rust有指针类型数据吗?是否可以查看一个变量的内存地址?
    在Rust中,虽然不像C/C++那样直接使用传统的指针类型,但Rust依然有指针的概念,且提供了多种安全的方式来操作和管理内存。你可以通过一些Rust的特性查看变量的内存地址并安全地进行指针操作。1.引用(References)Rust的引用(&和&mut)可以理解为一种安全的、受所有权规则和借......
  • GO语言学习笔记之mac环境go语言配置
    此处仅为Mac的Iterm终端,关于go的环境配置,仅供参考cd~vim.zshrcGOROOT为go的安装路径,GOPATH为go安装额外的工具和具体的工具环境配置,GOPROXY将安装镜像源改为阿里云#goexportGOROOT="/usr/local/go"exportGOPATH="/Users/635458/go"exportPATH=$PATH:$GOROOT/bin:$GOPATH......
  • zblog域名后无法访问 zblog数据库地址修改
    当Z-Blog在修改域名后无法访问时,这通常意味着数据库中的某些配置没有正确更新。以下是解决此类问题的一些建议步骤:1.检查数据库配置问题描述:数据库配置可能未正确更新。解决方法:登录到数据库管理工具(如phpMyAdmin)。找到Z-Blog的数据库。检查数据库中的 zbp_config......
  • 只有公网IP地址可以申请SSL证书吗?
    是的,只有公网IP地址可以申请SSL证书。这是因为SSL证书主要用于加密互联网上的数据传输,确保通信的安全性和数据的完整性。而公网IP地址是互联网通信的核心,具有全球唯一性,允许互联网上的用户通过它们访问互联网上的资源。具体来说,申请SSL证书时,必须确保拥有一个合法的公网IP地......