以太LAN网中发送的分组称做帧,包含7个字段

MAC帧格式

前同步码 SFD DA SA 长度或类型 数据域 CRC
7字节,物理层加入 帧首定界符,1字节 目的地址,6字节 源地址,6字节 2字节 46-1500字节 4字节

前同步码:

802.3协议的帧的第一个字段

长度:7个字节,56比特

内容:交替出现的0和1

   作用:提醒接收系统有帧到来,使帧与输入定时同步,由物理层添加进MAC帧

SFD:又叫帧首定界符

长度:1个字节

内容:10101011

  作用:作为帧开始的信号,SFD提醒接收站,这是最后一次进行同步的机会,最后俩个比特提醒接收方,接下来的字段是目的地址,由物理层加入帧

DA:目的地址

长度:6个字节

内容:要发往地方的物理地址

SA:源地址

长度:6个字节

内容:发送方的物理地址

长度或类型:

长度:2个字节

作用:最初以太网将此字段用作类型字段,定义使用改MAC帧的上层协议,IEEE标准定义为长度字段,用来指明在数据字段中包含的字节数目

数据域:

长度:46-1500字节

CRC

长度:4个字节

内容:差错检验信息

作用:差错校验

数据域限制最小长度46字节是为了CSMA/CD,

标准定义一个帧的最大长度是1518字节(不算前同步码和SFD)

如果首部和尾巴加起来算18字节,那么一个帧的最小负荷是46字节,如果上层的分组小于46字节,需要用填充来填补差距

一个MAC地址6个字节的物理地址,分为三类MAC地址,单播,组播,广播,

一个MAC帧的源地址只能是单播地址,任何一个帧只可能来自一个站点,目的地址有可能是单播地址,多播地址,广播地址

1:单播MAC地址

一个MAC帧的源地址只能是单播地址,任何一个帧只可能来自一个站点,如果目的地址的第一个字节的最低位是0,那么就是单播地址

2:广播MAC地址

广播地址是多播的地址的特殊情况,它的接收是局域网中的所有站.48个1组成FF:FF:FF:FF:FF:FF

3:多播MAC地址

如果目的地址的第一个字节的最低位是1,那么就是单播地址,多播地址指明接收者是一组地址

地址在发送到线路上时与书写方式不同,从左到右逐字节发送,对于每一个字节来说,最先发送的总是最低位,大端模式(高位字节在内存的低地址端),比如

47:88:32:11:22:12

发送的字节如下,从左到右逐字节发送,对每个字节,从右到左,逐位发送

1110 0010 1000 1000 0010  0011

7    4    8  8       2       3

关于MAC的更多相关文章

  1. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  2. JAVA for mac 的学习之路

    要学习一门新技术,首先得下载相关的工具. 一 . 下载相关工具 1. 下载 jdk formac 下载地址为:http://www.oracle.com/technetwork/java/javase ...

  3. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  4. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  5. mac下安装及配置tomcat

    mac下的软件不像windows下的程序那样写注册表,对于tomcat的安装来说,在mac下是名符其实的绿色软件,具体操作如下: 1.到 apache官方主页 下载完整 tar.gz文件包.(没有专门 ...

  6. Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)

    Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...

  7. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  8. MAC Osx PHP安装指导

    php.ini的位置 Mac OS X中没有默认的php.ini文件,但是有对应的模版文件php.ini.default,位于/private/etc/php.ini.default 或者说 /etc ...

  9. MAC下 mysql不能插入中文和中文乱码的问题总结

    MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...

  10. Mac上MySQL忘记root密码且没有权限的处理办法&workbench的一些tips (转)

    忘记Root密码肿么办 Mac上安装MySQL就不多说了,去mysql的官网上下载最新的mysql包以及workbench,先安装哪个影响都不大.如果你是第一次安装,在mysql安装完成之后,会弹出来 ...

随机推荐

  1. JSP - 9大内置对象及其API

    内置对象:不需要预先声明就可以在脚本代码和表达式中随意使用,有以下特点 1.由JSP规范提供,不用编写者实例化 2.提供Web容器实现和管理 3.所有JSP页面均可用 4.只有在脚本元素的表达式或者代 ...

  2. ASP.NET Razor - C# 逻辑条件

    编程逻辑:根据条件执行代码. If 条件 C# 允许根据条件执行代码. 使用 if 语句来判断条件.根据判断结果,if 语句返回 true 或者 false: if 语句开始一个代码块 条件写在括号里 ...

  3. Kali2.0VMwareTools安装

    安装完系统后,配置好apt源,然后执行下列语句可成功安装VMwareTools工具,可实现本机与虚拟机之间的文件复制等功能: apt-get install open-vm-tools-desktop ...

  4. 一些好的python IDE

    pyscipter 是一个不错的选择,快速灵巧.功能丰富.它的安装包只有五六兆,功能却一个都不少.语法高亮功能也很强,运算符.数字.hex都能按照你的需要改变颜色.还有非常灵敏的code comple ...

  5. 基于params,ref,out的参数问题详解

    http://www.jb51.net/article/37967.htm 最近在写程序时遇到params,ref,out 参数问题.回头有自习看了看MSDN,才巩固了基础.现在和大家分享一下.par ...

  6. sqldeveloper

    阅读文档:e12152-08 preferences 首选项,参数 panes 窗格 tabs 标签,选项卡 pin 别针,钉住 detach,move,dock 分离,移动,停靠 find data ...

  7. Oracle常用的性能诊断语句

    --1.阻塞及等待事件信息查询 -- 查询所有会话的状态.等待类型及当前正在执行的SQL脚本 select se.SID, se.SERIAL#, se.Status, se.Event, se.BL ...

  8. Android应用开发-Activity(重制版)

    Android四大组件:Activity,Service,Broadcast Receiver,Content Provider Activity是Context的子类,同时实现了Window.Cal ...

  9. [转]Windows 下的进程间通讯及数据共享

    http://blog.codingnow.com/2005/10/interprocess_communications.html Windows 下有很多方法实现进程间通讯,比如用 socket, ...

  10. About SSDT BI

    Welcome to Microsoft Marketing Speak hell. With the 2012 release of SQL Server, the BIDS, Business I ...