mac层的主要功能介绍

来源:
导读 大家好,我是本期栏目编辑小友,现在为大家讲解mac层的主要功能介绍问题。 MAC简介 即媒体干预控制层,属于O

大家好,我是本期栏目编辑小友,现在为大家讲解mac层的主要功能介绍问题。

MAC简介

即媒体干预控制层,属于OSI模型中数据链路层的下层子层。它定义了数据帧在介质上的传输方式。在共享相同带宽的链路中,对连接介质的访问是“先到先得”。这里定义了物理寻址,也定义了逻辑拓扑(信号通过物理拓扑的路径)。线路控制、错误通知(未纠正)、帧传输顺序和可选的流量控制也在该子层中实现。

MAC协议的类型。

多用户多址的核心问题是如何采用一些协调机制,即多用户竞争一个信道时采用哪种MAC协议。比如有两种极端的MAC协议,一种是完全自由的,用户自由发送,但一个需要解决的问题是碰撞后怎么办,另一种是完全排序,给每个用户发送和接收数据包的详细规则。但是,其实这是不可能的,因为MAC协议主要决定了通信的吞吐量、时延等性能,所以这一块非常重要,而且是各种方式的结合。MAC协议主要分为以下三类。

1.固定信道分配。信道基本上可以分为频分、时分、码分和空分,每个用户固定分配一个信道。这种方法实时性很高,但很浪费。主要是为了发声。例如FDMA(电话)、时分多址(全球移动通信系统)、码分多址。

2.随机分配频道。主要面向数据。例如,ALOHA和CSMA就是随机分配的典型例子。

3.按需分配渠道。根据用户需求,按需求分配频道。例如,802.16表示根据需求分配信道。主要是区域多媒体。

媒体访问控制帧格式

媒体访问控制帧基本格式如下图所示:

1.框架控件字段。

-ProtocolVersion:当前为0。

-类型:框架有三种类型,每种类型都有一些子类别(参见子类型)。

00:管理框架。

01:控制框。

10:数据帧(DataFrame)。

11:不使用。

-SubType: frame subType,它和type一起决定了一个框架的类型,如下表所示。

-ToDS/FromDS:表示帧的目的地是否为DS(分布式系统),可以简单理解为是否是【发往/发自】AP。

-Morefragments:指示是否有更多的片段(除了最后一个片段)。

-重试:表示当前帧是否为重传帧,接收方收到后会删除重复帧。

-电源管理:表示STA的电源管理模式。1表示STA在数据交换完成后进入省电模式,对于AP始终为0。

-更多数据:指示接入点为进入省电模式的站缓冲帧(来自直接序列)。

-WEP:指示框架体是否使用WEP加密。

-订单:表示将进行严格的订单转移。

2.其他领域。

-DuraTIon/ID:可用于以下三种场景。

@1DuraTIon,第15位为0,用于设置NAV,该值代表预计使用介质的微秒数。

@2在CFP帧中,第14个位置为0,第15个位置为1,其他值为0,字段值为32768,这样其他没有收到信标帧的站就可以宣布没有竞争周期。

@3在PS-Poll帧中,第14位和第15位同时设置为1,用于从省电模式下唤醒的STA发送一个AID(关联标识符),以获取AP中缓存的帧。

-地址:有几种类型,根据帧类型使用哪些地址字段。通常有三种,SA、DA和BSSID。

基本服务集标识符。

DA,目的地地址。

服务协议,源地址

RA,接收端地址。

TA,发件人地址。

-SequenceControl:它包含两个子字段,一个4位片段号和一个12位序列号。

序列号4096的模数从0开始,每处理一个上层数据包就增加1。

如果上层数据包被分段,所有帧片段都以相同的顺序编号。

对于重新传输的帧,序列号不变。

-frame body:frame body也叫Datafield,用于传输上层的Payload,可以是0。

-FCS:帧校验序列,采用循环冗余校验(CRC)码。计算范围包括媒体访问控制报头和帧体中的所有字段。

3.帧体数据。

与以太网不同,802.11的帧体由802.2的逻辑链路控制。

(LLC)来封装不同类型的网络协议

  有两种封装方式:RFC1042、802.1H

  下图是802.11里的IP封装

  MAC的修改地址

  通用修改

  需要根据MAC芯片型号联系厂家拿到对应的固件刷写工具,以及MAC地址文件,其中MAC地址是需要向IEEE联盟购买有效段的,并是唯一的,如果出现重复的则会报IP地址重复的错误而导致相同MAC地址的计算机网络访问异常。

  Unix/Linux系统下修改MAC地址

  进入保存MAC信息文件

  图形界面下Alt+Ctrl+Space→打开命令行终端→

  方法1、输入:ifconfig

  方法2、输入:ifconfig|grep“inet”|cut-c0-36|sed-e‘s/[a-zA-Z:]//g’

  方法3、输入:hostname-i

  方法4、输入:netstat-r

  方法5、输入:cat/etc/resolv.conf

  →显示相关网络数据

  其中inetaddr为ip地址,HWaddr是主机的HardwareAddress即MAC。

  修改MAC

  方法1、修改MAC的方法:在/etc/rc.d/init.d/中的network中加入ifconfigeth0hwetherxx:xx:xx:xx:xx:xx(MAC)然后重新启动就会发现网卡地址已经是xxxxxxx了。

  方法2、也可以将/sbin/ipconfigeth0hwetherMACaddr加入到/etc/rc.local中去。

12下一页全文 本文导航第 1 页:mac层的主要功能介绍第 2 页:以太网的MAC层

标签:

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。