HCIA-R&S笔记(二)

举报
zhoulive 发表于 2020/10/16 17:31:59 2020/10/16
【摘要】 以太网帧结构前言网络中传输数据时需要定义并遵从一些标准,以太网是根据IEEE802.3标准来管理和控制数据帧的。了解IEEE802.3标准是充分理解以太网中链路层通信的基础所以说。。。这看不懂的前言有个啥用呢?凭什么以太网就根据IEEE802.3标准来管理和控制数据帧?怎么管理和控制数据帧?我不能自己制定自己的标准?一、网络通信协议20世纪60年代以来,网络发展迅速,各个厂商和标准组织为了在...

以太网帧结构

前言
网络中传输数据时需要定义并遵从一些标准,以太网是根据IEEE802.3标准来管理和控制数据帧的。了解IEEE802.3标准是充分理解以太网中链路层通信的基础


所以说。。。这看不懂的前言有个啥用呢?
凭什么以太网就根据IEEE802.3标准来管理和控制数据帧?
怎么管理和控制数据帧?
我不能自己制定自己的标准?

一、网络通信协议

20世纪60年代以来,网络发展迅速,各个厂商和标准组织为了在数据通信网络领域当老大,自然开始推出自己的标准,厂商又根据不同标准生产出不同硬件和软件:IBM的SNA协议,Novell的IPX/SPX协议,以及OSI参考模型和TCP/IP模型。

IEEE 802.3是工作组和工作组制定的电气和电子工程师协会 (IEEE)标准的集合,该工作组定义了有线以太网的物理层和数据链路层的 介质访问控制(MAC)

主要内容为:
MAC子层的数据封装所包括的主要内容有:数据封装分为发送数据封装和接收数据封装两部分,包括成帧、编制和差错检测等功能。数据封装的过程:当LLC子层请求发送数据帧时,发送数据封装部分开始按MAC子层的帧格式组帧:
(1)将一个前导码P和一个帧起始定界符SFD附加到帧头部分;
(2)填上目的地址、源地址、计算出LLC数据帧的字节数并填入长度字段LEN;
(3)必要时将填充字符PAD附加到LLC数据帧后;
(4)求出CRC校验码附加到帧校验码序列FCS中;
(5)将完成封装后的MAC帧递交MAC子层的发送介质访问管理部分以供发送; 接收数据解封部分主要用于校验帧的目的地址字段,以确定本站是否应该接受该帧,如地址符合,则将其送到LLC子层,并进行差错校验。

image.png
由于TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。

电气和电子工程师协会(IEEE,全称是Institute of Electrical and Electronics Engineers)是一个美国的电子技术与信息科学工程师的协会,是世界上最大的非营利性专业技术学会,其会员人数超过40万人,遍布160多个国家。IEEE致力于电气、电子、计算机工程和与科学有关的领域的开发和研究,在航空航天、信息技术、电力及消费性电子产品等领域已制定了900多个行业标准,现已发展成为具有较大影响力的国际学术组织。国内已有北京、上海、西安、武汉、郑州等地的55所高校成立IEEE学生分会。

所以就目前来说,使用的最多的是DIX Ethernet V2 标准,严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网。D(EC)、I(ntel)、X(erox)合作提出的以太网规约DIX V1,是以太网的第一个标准,1982年又推出了第二版的DIX Ethernet V2。

image.png


DEC(美国数字设备公司):1958年初,即运出了第一批产品-数字实验室和数字系统组件
Intel:嘿嘿,这个就不用说了吧,虽然戏称为“牙膏厂”,但人家在微处理器领域地位没人敢否定吧。
Xerox(施乐):复印技术的发明公司
计算机设备生产公司+微处理器研发公司+复印技术发明公司,看起来要落实到实际,还得看生产商。

二、分层模型

1. 分层模型-OSI

国际标准化组织ISO于1984年提出OSI RM(开放式系统互联通信参考模型:Open System Interconnection Reference Model)

image.pngOSI参考模型优点:

  1. 简化相关的网络操作

  2. 提供了不同厂商之间的兼容性

  3. 促进了标准化工作 (只是促进了标准化,细品)

  4. 结构上进行了分层

  5. 易于学习和操作 (层次明确,学习研究起来更加方便)

ISO负责当今世界上绝大部分领域(包括军工、石油、船舶等垄断行业)的标准化活动。ISO现有165个成员国(包括国家和地区)。ISO的最高权力机构是每年一次的“全体大会”,其日常办事机构是中央秘书处,设在瑞士日内瓦。中央秘书处现有170名职员,由秘书长领导。ISO的宗旨是“在世界上促进标准化及其相关活动的发展,以便于商品和服务的国际交换,在智力、科学、技术和经济领域开展合作。”ISO通过它的2856个技术结构开展技术活动,其中技术委员会(简称SC)共611个,工作组(WG)2022个,特别工作组38个。中国于1978年加入ISO,在2008年10月的第31届国际化标准组织大会上,中国正式成为ISO的常任理事国。

你要问为什么这么多标准组织?这个问题我也不清楚,度娘可能可以回答你,度娘不行问谷哥,再不行必应,应该能应你一声。

2. 分层模型-TCP/IP

image.png

OSI模型与TCP/IP模型对比如下:

OSI TCP/IP 说明
会话层 + 表示层 + 应用层 应用层 定义格式 + 解读数据
传输层 传输层 UDP + TCP (端口定义)
网络层 网络层 IP协议 + ARP协议 + 路由协议
物理层+数据链路层 网络接口层 电信号—数据帧—介质传输

三、帧格式

上文已经提到过两种标准帧格式:
IEEE802.3DIX Ethernet V2

所以说,网络设备怎么区分两种帧…总不能两种帧到达网络设备时开口说话吧?看看下图,D.MAC(目的MAC)和S.MAC(源MAC)之后,不就是Type/Length吗,当网络设备一层一层拆这个帧的时候,拆到Type/Length时,他就看这个字段的大小,通过大小区分不同的数据帧。

  • Type(类型):IP(0x0800)、 ARP(0x0806)

  • Length (长度):Data字段包含的字节数

image.png
DIX Ethernet V2格式:

image.png
IEEE802.3格式:
image.png


看起来DIX Ethernet V2格式帧简洁不少,干脆直接,没那么多杂七杂八的字段。
诶?没人觉得为什么两个帧前面都要有D.MAC和S.MAC?
这MAC是个啥玩意儿?不要行不?
慢慢来,先百度看看怎么说的

MAC地址(英语:Media Access Control Address),直译为媒体存取控制位址,也称为局域网地址(LAN Address),MAC位址,以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。在OSI模型中,第三层网络层负责IP地址,第二层数据链路层则负责MAC位址 。MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址 。

嗯,看起来像是个唯一识别码,俗套点说就是个 身份证号 吧,出厂就烧录到网卡上的识别码,那这是不是能理解为我想发个快递,除了要你的家庭住址,还得要个 手机号+姓名 呢?哪天你搬家了,这快递最后你收到没我都不知道。
那这么说,这 快递 数据帧没有这MAC地址还真不行,那问题来了,我怎么知道你的MAC地址?ARP了解一下~~~

image.png
MAC地址由两部分组成,分别是供应商代码和序列号,前24位代表供应商代码,有IEEE管理和分配。剩下的24位序列号由厂商自己分配。(想要知道一个人身份证号,除了知道出生地址之外,还得知道出生年月日+随机码,前者是国家确定的,后者是由父母决定 懂的都懂

四、数据帧发送与接收

1. 数据帧发送方式

  • 单播:一对一发送 (MAC地址上的OUI第8个比特为0)

  • 组播:分组发送 (MAC地址上的OUI第8个比特为1)

  • 广播:发送到以太网上所有主机 (MAC地址为十六进制的FF:FF:FF:FF:FF:FF)

发送方式 二进制 十六进制
单播 XXXXXXX0:XXXXXXXX:XXXXXXXX:XXXXXXXX ?
组播 XXXXXXX1:XXXXXXXX:XXXXXXXX:XXXXXXXX ?
广播 11111111:11111111:11111111:11111111 FF:FF:FF:FF

2. 数据帧发送与接收流程(Type为IP:0x0800)

主机检查帧头中的目的MAC地址,如果目的MAC不是本机MAC地址,也不是本机侦听的组播或广播MAC地址,则主机会丢弃收到的帧。如果目的MAC地址是本机MAC地址,则接收帧,检查帧校验序列(FCS)字段,并与本机计算的值比对来确定帧在传输过程中是否保持了完整性。如果检查通过,就会剥离帧头和帧尾,然后根据帧头中的Type字段来决定把数据发送到哪个上层协议进行后续处理。

帧校验序列(Frame Check Sequence)
判断过程如下:发送网卡利用多项式计算,称循环冗余校验(CRC),将计算结果写入FCS字段,接收方收到这个帧,对其做相同的CRC计算。如果计算结果与接收的FCS字段相同,则帧没有发生错误。如果不同,接收方就相信帧肯定发生了错误,并丢弃这个帧。


官方文档还是看着犯困,不如一张图来的舒服,自己整了张流程图:


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。