关于MAC
以太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的更多相关文章
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- JAVA for mac 的学习之路
要学习一门新技术,首先得下载相关的工具. 一 . 下载相关工具 1. 下载 jdk formac 下载地址为:http://www.oracle.com/technetwork/java/javase ...
- docker for mac 学习记录
docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- mac下安装及配置tomcat
mac下的软件不像windows下的程序那样写注册表,对于tomcat的安装来说,在mac下是名符其实的绿色软件,具体操作如下: 1.到 apache官方主页 下载完整 tar.gz文件包.(没有专门 ...
- Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)
Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...
- Mac OS、Ubuntu 安装及使用 Consul
Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...
- MAC Osx PHP安装指导
php.ini的位置 Mac OS X中没有默认的php.ini文件,但是有对应的模版文件php.ini.default,位于/private/etc/php.ini.default 或者说 /etc ...
- MAC下 mysql不能插入中文和中文乱码的问题总结
MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...
- Mac上MySQL忘记root密码且没有权限的处理办法&workbench的一些tips (转)
忘记Root密码肿么办 Mac上安装MySQL就不多说了,去mysql的官网上下载最新的mysql包以及workbench,先安装哪个影响都不大.如果你是第一次安装,在mysql安装完成之后,会弹出来 ...
随机推荐
- PHPExcel 导出时乱码
今天遇到了个奇怪的问题..猜测应该是因为php文件的编码造成的,但是没有解决办法. 问题是,用PHPEXCEL导出文件的时候,相同的代码在一个文件中可以导出,在另一个文件中却不行.. 最后没有办法,只 ...
- android studio 插件
引用于:http://www.zhihu.com/question/28026027 adb-idea 支持直接在AS面板中进行ADB操作,个人觉得太实用,上面有哥们已提及,这里再介绍下: Unins ...
- Disque
Disque是一个内存储存的分布式任务队列实现, 它由 Redis 的作者 Salvatore Sanfilippo (@antirez)开发, 目前正处于预览版(alpha)阶段. 本文档将对 Di ...
- tp根据数据库动态创建微信菜单
喻可伟的博客 tp根据数据库动态创建微信菜单 $button = array();$class = M('ucenter_menu')->limit(3)->select();//取出 ...
- python_selenium智联搜索
python_selenium智联搜索 妹子要去招聘会工作,奈何网上仅仅提供招聘会的公司名字,没有提供招聘的职位,SO我写了个小代码给妹子在智联上面搜索职位,由于时间紧迫,前程的就不写了 #!/usr ...
- Chrome Devtools简介
Chrome开发工具(又称DevTools),是一套内嵌在chrome浏览器内部的web编写和调试工具.DevTools提供给web开发人员深入地访问浏览器内部和web应用的机会.DevTools可以 ...
- Oracle常用的性能诊断语句
--1.阻塞及等待事件信息查询 -- 查询所有会话的状态.等待类型及当前正在执行的SQL脚本 select se.SID, se.SERIAL#, se.Status, se.Event, se.BL ...
- centos虚拟机网络配置
修改IP vi /etc/sysconfig/network-scripts/ifcfg-eth0 ONBOOT=yes BOOTPROTO=dhcp service network restart ...
- Android学习笔记——权限解释
<!--允许读取电话状态SIM的权限--><uses-permission android:name="android.permission.READ_PHONE_STAT ...
- DHTMLX-Form
DHTMLX-Form dhtmlxForm提供了一个标准形式与一些有用的补充,如不同风格,使用的数据从客户端和服务器端,与其他dhtmlx组件的集成.验证等. 例子 <!DOCTYPE htm ...