Ethernet MAC 简介

  今天上午进行的很顺利,导师认为选题是可以的,而且开题报告写的不错,不用修改什么了。只需要在准备一下发表的时候所用的PowerPoint就行了。我当然是很开心了,原本还担心导师会让重新选题。现在好了,心病去了一大块。等开题报告会之前再好好准备一下,应该就不成问题了。嘻嘻。
  下面进入正题吧,呵呵。昨天说了IEEE802.3和Ethernet,今天就简单说下MAC吧:

MAC(Media Access Controller)简介

MAC在OSI的通信模式中是处于链路层(Link Layer)中的,是链路层的底层。

Ethernet MAC 简介_第1张图片

图1.OSI网络参考模型

 

在链路层中,MAC在CSMA/CD(Carrier Sense Multiple Access/Collision Derect),即载波监听多路访问/冲突检测方法协议的规范下进行接收和发送数据的。包括两个部分:接收器与发送器。

CSMA/CD基于一些常识性规则:

¤      载波监听:工作站时刻在侦听介质。在介质空闲时间超过帧间隙后,工作站可以发送一帧。

¤      冲突监测:两个工作站可能在大致相同的时刻开始发送。发送时,一个工作站继续侦听,检测是否存在引起其信号混淆的并发传输。

¤      拥挤:发送者检测到冲突后,必须继续发送位以保证所有的工作站能够发现冲突。这些附加位称为拥挤位,共32位(4个字节)。

¤      等待:卷入冲突的工作站必须等待随机长的时间,然后再尝试发送。

 

发送和传输的数据是采用如下的MAC帧格式:

 Ethernet MAC 简介_第2张图片

图2.MAC帧格式

 

处于MAC帧开始处的字段为前导码字段,由7个字节组成。(其功能是使物理层的接收器建立比特同步。)编码形式为多个“1”、“0”交替的二进制序列,最后一比特为“0”。在这种编码形式下,经过曼彻斯特编码后成为周期性方波。

帧首定界符(SFD)是MAC帧的第2个字段,其编码形式为“10101011”序列,长度刚好为一个字节。该字段的功能是指示一帧的开始。

终点地址(DA)为第3个段,长度为6个字节。该字段用来指出帧要发往的工作站。

源点地址(SA)处于终点地址字段之后,其长度也为6个字节。该字段功能是指示发送该帧的工作站地址。

长度指示符段长度为2个字节,用来指示紧随其后的逻辑链路控制(LLC)数据字节的长度,长度单位为字节数。

LLC数据段,就是所输的数据了,该数据由LLC子层提供和接收。

填充(PAD)字段紧接的LLC之后,用来对LLC数据进行填加,以保证帧有足够长度,适应冲突检测的需要。

帧检验序列(FCS)处于帧的最后,其长度为32比特,用于检验帧在传输过程中有无差错。

 

上面涉及到了MAC地址,所以简单说下:

IEEE802.3标准规定,源点地址字段中第1比特恒为“0”。相对的,终点地址有更多的规定,原因是一个帧有可能发给某一工作站,也可能发送给一组工作站,还有可能发送给所有工作站,我们将后两种情况分别称为组播(Multicast-Group)和广播(Broadcast)。

MAC地址的格式如下图所示。当该字段第一比特为“0”时,表示帧要发送给某一工作站,即所谓单站地址。当该字段第一比特为“1”时,表示帧发送给一组工作站,即所谓组地址。全“1”的组地址表示广播地址。

 Ethernet MAC 简介_第3张图片

 

图3.MAC地址组成

I/G=0:单站地址;    

I/G=1:组地址;     

U/L=0:全局地址;

U/L=1:局部地址。

 

顺便在此指出,帧长除有最小要求外,最长也有限制,这是由于发送站和接收站的缓冲器容量总有一限度,同时如果一个工作站发送的帧太长,将妨碍其它站对媒体的使用。

 

你可能感兴趣的:(Ethernet,MAC)