第4章介质访问控制子层

2024-05-08 09:38
文章标签 介质 访问控制 子层

本文主要是介绍第4章介质访问控制子层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

网络链路可以分成两大类:使用点到点连接和使用广播信道。
广播信道有时也称为多路访问信道(multiacess channel)或者随机访问信道(random access channel)
用来确定多路访问信道的下一个使用者的协议属于数据链路层的一个子层,该层称为介质访问控制(MAC,Medium Access Control)子层。

4.1 信道分配问题

  1. 静态信道分配:信道拆分给多个用户使用,效率低
  2. 动态信道分配

4.2 多路访问协议

4.2.1 ALOHA

  1. 纯ALOHA:基本思想,当用户有数据需要传输时就传输。当然,这样做会产生冲突,冲突的帧将被破坏。在ALOHA系统中,每个站在给中央计算机发送帧之后,该计算机把帧重新广播给所有站。因此,那个发送的站可以侦听来自集线器的广播。最大吞吐量18%。
  2. 分槽ALOHA:将时间分成离散间隔,这种间隔称为时间槽(slot),每个时间槽对应于一帧。这种方法要求用户遵守统一的时间槽边界。取得同步时间的一种办法是有一个特殊的站在每个间隔起始时发出一个脉冲信号,作为时钟。

4.2.2 载波侦听多路访问协议

在一个协议中,站监听是否存在载波(即是否有传输),并据此采取相应的动作,则这样的协议称为载波侦听协议(carrier sense protocol).
1. 坚持载波检测多路访问(CSMA,Carrier Sense Multiple Access):当有一个站要发送数据时,它首先侦听信道,确定但是是否有其他站正在传输数据
2. 非坚持CSMA:如果当前信道正在使用中,则该站并不持续对信道进行侦听,以便传输结束后立即抓住机会发送数据,而是等待一段随机时间,然后重复上述算法。
3. 带冲突检测的CAMA(CSAM/CD, CSMA with Collision Detection).其实经典的以太局域网基础。时间槽宽度为2t.

4.2.3 无冲突协议

位图协议:采用基本位图法,每个竞争期正好包含N个槽。顺序标记槽是否自己有数据发送,并按照标记的意愿顺序发送数据。,像这样在实际传送数据之前先广播自己有发送数据愿望的协议,称为预留协议(reservation protocol).其实质是让每个站以预定义的顺序轮流发送一帧。
令牌传递:传递一个令牌(token) 的短消息,该令牌以预定义的顺序从一个站传送到下一个站。也称为令牌总线(token bus).
二进制倒计数(binary countdown):基本为徒协议每个站的开销是一位,不能嗯好扩展到大量的站点,可以通过使用二进制的站地址。如果一个站想要使用信道,就医二进制位的形式广播自己的地址,从高序的位开始。不同站的地址中相同的位在同时发送时被信道布尔或在一起。仲裁规则为,一个站只要看到自己的地址为中的0倍置为1,就必须放弃竞争。该协议有一种特性,高序站的优先级高于低序站。

4.2.4 有限竞争协议

在广播中获取信道的两种基本策略是:竞争方法和无竞争协议。可以用低负载下的延迟和高负载下 的信道利用率。竞争方法在低负载下,延迟低,但高负载下利用率低。非竞争法刚好相反。
有限竞争协议(limited-contention protocol):在低负载下竞争而提供较短延迟,在高负载下采用无冲突技术从而获得良好的信道利用率。有限竞争将所有的站分成组,只有0号组的成员可以竞争0号时间槽,如果改组中一个成员竞争成功了,则他获得信道。如果该时间槽是空闲的或发生冲突,则一号组的成员竞争1号时间槽,一次类推。
自适应遍历树协议:把站看成二叉树的叶节点

4.2.5 无线局域网协议

由于竞争者离得太远而导致无法检测到潜在的竞争者的冲突,称为隐匿终端问题
暴露终端问题:会引起延迟传输
冲突避免多路访问(MACA,Multile Access with Collision Avoidance):基本思想是发送方刺激接收方输出一个短帧以便其附近的站能检测到本次传输。

4.3 以太网

  1. 经典以太网
  2. 交换式以太网

4.4 无线局域网

4.4.1 802.11体系结构和协议栈

802.11网络的使用模式分为两种:一、最普遍使用客户端,连接到另一个网络,即接入点(AP,Access Point)关联;二、自组织网络(ad hoc network)
数据链路层分为:介质访问控制(MAC,Medium Access Control)子层,决定如何分配信道,也就是说下一个谁可以发送。在其上方是逻辑链路控制(LLC,Logical Link Control)子层,负责识别网络层协议,然后对它们进行封装。LLC报头告诉数据链路层一旦帧被接收到时,应当对数据包做何处理。

4.4.2 802.11物理层

所有的802.11技术都使用短程无线电传输信号,通常在2.4GHz或5GHz频段,其属于ISM频段,无须许可。但限定发射功率小于1w.
802.11a 基于正交频分复用(OFDM,Orthogonal Frequency Division Multiplexing)
802.11n 同时可以使用四根天线发送四个信息流。通过使用多入多出(MIMO,Multiple Input Multiple Output)通信技术把他们分离开来。多天线的使用带来速度的极大提升,单没有带来更大的覆盖范围和更高 的可靠性。

4.5 宽带无线

802.16 全球微波接入互操作性(WiMAX,Worldwide Interoperability for Microwave Access),其采用了2GHz和10GHz频率的OFDM技术。

4.6 蓝牙

4.6.1 蓝牙体系结构

蓝牙系统的基本单元是一个微网(piconet),微网包含一个主节点,以及10米距离之内至多7个活跃的从节点。在一个房间内可以同时存在多个微网,他们甚至可以通过桥节点连接起来,组成散网(scatternet)

4.6.3 蓝牙协议栈

  1. 蓝牙无线电层:其将比特信息从主节点移动到从节点,或者从从节点移动到主节点。蓝牙是一个低功率系统,距离范围为10米,运行在2.4GHz的ISM频段上。使用调频扩展技术。美妙1600条,驻留时间625微秒。一个王忠的所有节点同步调频,遵循主节点规定的时间槽和伪随机调频序列。
  2. 蓝牙链路层:链路控制(或基带)层是蓝牙中 最接近MAC子层的部分。他讲原始的比特流转换成帧,并定义一些关键格式。链路管理协议负责建立逻辑信道,称为链路(link),主设备和从设备通过他运载帧。主从设备发现过程是一个配对过程。之后建立链路。第一种同步有链接(SCO,Synchronous Connection Oriented) 链路,主要用于实时数据传输,比如电话连接。第二种异步无连接(ACL,Asynchronous ConnectionLess)链路。这类链路用来以数据包方式交换那些无时间规律的数据。
  3. 蓝牙帧结构:帧头是一个访问码(access code) ,通常表示了主节点。接下来是一个54位的头(header),其中包含了典型的MAC子层字段。下来是数据。

4.8 数据链路层交换

网桥(brige):将多个局域网链接起来,现代名词:交换机。
创建透明网桥的算法:后向学习算法(backward learning),用来组织不需要发送的流量;生成树算法(spanning tree),用来打破交换机线缆连接起来而形成的环路。
1. 学习网桥:有哈希表记录目的地地址和对应的端口。整个转发过程如下:
(1)如果去往目标地址的端口与源端口相同,则丢弃帧。
(2)若不同,转发该帧到目标端口。
(3)目标端口未知,则使用泛洪算法,将帧发送到所有端口上,除了入境的那个。
2.生成树网桥:以MAC地址为标识符,以最低标识符的网桥作为树的根。

4.8.4 中继器、集线器、网桥、交换机、路由器和网关

  1. 集线器(HUB)
      集线器就是将网线集中到一起的机器,也就是多台主机和设备的连接器。集线器的主要功能是对接收到的信号进行同步整形放大,以扩大网络的传输距离,是中继器的一种形式,区别在于集线器能够提供多端口服务,也称为多口中继器。集线器在OSI/RM中的物理层。集线器的基本功能是信息分发,它把一个端口接收的所有信号向所有端口分发出去。一些集线器在分发之前将弱信号重新生成,一些集线器整理信号的时序以提供所有端口间的同步数据通信。
      集线器实际就是一种多端口的中继器。集线器一般有4、8、16、24、32等数量的RJ45接口,通过这些接口,集线器便能为相应数量的电脑完成“中继”功能(将已经衰减得不完整的信号经过整理,重新产生出完整的信号再继续传送)。由于它在网络中处于一种“中心”位置,因此集线器也叫做“HUB”。
      集线器的工作原理很简单,比如有一个具备8个端口的集线器,共连接了8台电脑。集线器处于网络的“中心”,通过集线器对信号进行转发,8台电脑之间可以互连互通。具体通信过程是这样的:假如计算机1要将一条信息发送给计算机8,当计算机1的网卡将信息通过双绞线送到集线器上时,集线器并不会直接将信息送给计算机8,它会将信息进行“广播”——将信息同时发送给8个端口,当8个端口上的计算机接收到这条广播信息时,会对信息进行检查,如果发现该信息是发给自己的,则接收,否则不予理睬。由于该信息是计算机1发给计算机8的,因此最终计算机8会接收该信息,而其它7台电脑看完信息后,会因为信息不是自己的而不接收该信息。
  2. 中继器(Repeater)
    工作于OSI的第一层(物理层),中继器是最简单的网络互联设备,连接同一个网络的两个或多个网段,主要完成物理层的功能,负责在两个网络节点的物理层上按位传递信息,完成信号的复制、调整和放大功能,以此从而增加信号传输的距离,延长网络的长度和覆盖区域,支持远距离的通信。
    一般来说,中继器两端的网络部分是网段,而不是子网。中继器只将任何电缆段上的数据发送到另一段电缆上,并不管数据中是否有错误数据或不适于网段的数据。大家最常接触的是网络中继器,在通讯上还有微波中继器、激光中继器、红外中继器等等,机理类似,触类旁通。
  3. 交换机(switched)
    交换机顾名思义以交换为主要功能,工作在OSI第二层(数据链路层),根据MAC地址进行数据转发。交换机的每一个端口都属于一个冲突域,而集线器所有端口属于一个冲突域。交换机通过分析Ethernet包的包头信息(其中包含了源MAC地址、目标MAC地址、信息长度等),取得目标MAC地址后,查找交换机中存储的地址对照表(MAC地址对应的端口),确认具有此MAC地址的网卡连接在哪个端口上,然后将信包送到对应端口,有效的抑制IP广播风暴。并且信息包处于并行状态,效率较高。
    交换机的转发延迟非常小,主要的得益于其硬件设计机理非常高效,为了支持各端口的最大数据传输速率,交换机内部转发信包的背板带宽都必须远大于端口带宽,具有强大的整体吞吐率,才能为每台工作站提供更高的带宽和更高的网络利用率,可以满足大型网络环境大量数据并行处理 的要求。
  4. 路由器(Router)
    路由器是网络中进行网间连接的关键设备。作为不同网络之间互相连接的枢纽,路由器系统构成了基于 TCP/IP 的国际互连网络 Internet 的主体脉络。
    路由器之所以在互连网络中处于关键地位,是因为它处于网络层,一方面能够跨越不同的物理网络类型(DDN、FDDI、以太网等等),另一方面在逻辑上将整个互连网络分割成逻辑上独立的网络单位,使网络具有一定的逻辑结构。路由器的主要工作就是为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的站点。 路由器的基本功能是,把数据(IP 报文)传送到正确的网络,细分则包括:1、IP 数据报的转发,包括数据报的寻径和传送;2、子网隔离,抑制广播风暴;3、维护路由表,并与其它路由器交换路由信息,这是 IP 报文转发的基础;4、IP 数据报的差错处理及简单的拥塞控制;5、实现对 IP 数据报的过滤和记帐。
    路由器构成了 Internet 的骨架。它的处理速度是网络通信的主要瓶颈之一,它的可靠性则直接影响着网络互连的质量。因此Internet 研究领域中,路由器技术始终处于核心地位。
  5. 网桥(Bridge)
      简单的说网桥就是个硬件网络协议翻译器,假设你有2台电脑,一台兼容机安装windows,一台是Apple安装OS2,那么两台电脑之间是默认网络协议是不同的,兼容机可能只会说TCP/IP,苹果机只会说Apple talk,就好象两个外国人都不会说对方的语言,怎么办?找个翻译,网桥就是翻译。
      在386、486时代网桥可能是一台安装了协议转换程序的电脑,如今交换机也包含这个功能。今天的操作系统之间为了互相交流,支持更多的协议,操作系统自己就可以是网桥,现在网桥这个概念已经淡出了。更多是所谓的桥接、转发、协议二次封装。
      网桥也可以说相当一个端口少的二层交换机,再者网桥主要由软件实现,交换机主要由硬件实现!
  6. 网关(Gateway)
      网关(协议转换器)是互连网络中操作在OSI网络层之上的具有协议转换功能设施,所以称为设施,是因为网关不一定是一台设备,有可能在一台主机中实现网关功能。
      网关用于以下几种场合的异构网络互连:
      1).异构型局域网,如互联专用交换网PBX与遵循IEEE802标准的局域网。
      2).局域网与广域网的互联。
      3).广域网与广域网的互联。
      4).局域网与主机的互联(当主机的操作系统与网络操作系统不兼容时,可以通过网关连接)。
      网关的分类
      1)协议网关:协议网关通常在使用不同协议的网络区域间做协议转换。
      2)应用网关:应用网关是在使用不同数据格式间翻译数据的系统。
      3)安全网关:安全网关是各种技术的融合,具有重要且独特的保护作用,其范围从协议级过滤到十分复杂的应用级过滤。
    区别:  
    首先说HUB,也就是集线器。它的作用可以简单的理解为将一些机器连接起来组成一个局域网。而交换机(又名交换式集线器)作用与集线器大体相同。但是两者在性能上有区别:集线器采用的式共享带宽的工作方式,而交换机是独享带宽。这样在机器很多或数据量很大时,两者将会有比较明显的。而路由器与以上两者有明显区别,它的作用在于连接不同的网段并且找到网络中数据传输最合适的路径 ,可以说一般情况下个人用户需求不大。路由器是产生于交换机之后,就像交换机产生于集线器之后,所以路由器与交换机也有一定联系,并不是完全独立的两种设备。路由器主要克服了交换机不能路由转发数据包的不足。

集线器与交换机的区别:
  1) 在OSI/RM(OSI参考模型)中的工作层次不同
  交换机和集线器在OSI/RM开放体系模型中对应的层次就不一样,集线器是同时工作在第一层(物理层)和第二层(数据链路层),而交换机至少是工作在第二层,更高级的交换机可以工作在第三层(网络层)和第四层(传输层)。
  2) 交换机的数据传输方式不同
  集线器的数据传输方式是广播(broadcast)方式,而交换机的数据传输是有目的的,数据只对目的节点发送,只是在自己的MAC地址表中找不到的情况下第一次使用广播方式发送,然后因为交换机具有MAC地址学习功能,第二次以后就不再是广播发送了,又是有目的的发送。这样的好处是数据传输效率提高,不会出现广播风暴,在安全性方面也不会出现其它节点侦听的现象。
  3) 带宽占用方式不同
  在带宽占用方面,集线器所有端口是共享集线器的总带宽,而交换机的每个端口都具有自己的带宽,这样就交换机实际上每个端口的带宽比集线器端口可用带宽要高许多,也就决定了交换机的传输速度比集线器要快许多。
  4) 传输模式不同
  集线器只能采用半双工方式进行传输的,因为集线器是共享传输介质的,这样在上行通道上集线器一次只能传输一个任务,要么是接收数据,要么是发送数据。
  
路由器与交换机的主要区别:
  (1) 工作层次不同
  最初的的交换机是工作在OSI/RM开放体系结构的数据链路层,也就是第二层,而路由器一开始就设计工作在OSI模型的网络层。由于交换机工作在OSI的第二层(数据链路层),所以它的工作原理比较简单,而路由器工作在OSI的第三层(网络层),可以得到更多的协议信息,路由器可以做出更加智能的转发决策。
  (2) 数据转发所依据的对象不同
  交换机是利用物理地址或者说MAC地址来确定转发数据的目的地址。而路由器则是利用不同网络的ID号(即IP地址)来确定数据转发的地址。IP地址是在软件中实现的,描述的是设备所在的网络,有时这些第三层的地址也称为协议地址或者网络地址。MAC地址通常是硬件自带的,由网卡生产商来分配的,而且已经固化到了网卡中去,一般来说是不可更改的。而IP地址则通常由网络管理员或系统自动分配。
  (3) 传统的交换机只能分割冲突域,不能分割广播域;而路由器可以分割广播域
  由交换机连接的网段仍属于同一个广播域,广播数据包会在交换机连接的所有网段上传播,在某些情况下会导致通信拥挤和安全漏洞。连接到路由器上的网段会被分配成不同的广播域,广播数据不会穿过路由器。虽然第三层以上交换机具有VLAN功能,也可以分割广播域,但是各子广播域之间是不能通信交流的,它们之间的交流仍然需要路由器。
  (4) 路由器提供了防火墙的服务
  路由器仅仅转发特定地址的数据包,不传送不支持路由协议的数据包传送和未知目标网络数据包的传送,从而可以防止广播风暴。交换机一般用于LAN-WAN的连接,交换机归于网桥,是数据链路层的设备,有些交换机也可实现第三层的交换。 路由器用于WAN-WAN之间的连接,可以解决异性网络之间转发分组,作用于网络层。他们只是从一条线路上接受输入分组,然后向另一条线路转发。这两条线路可能分属于不同的网络,并采用不同协议。相比较而言,路由器的功能较交换机要强大,但速度相对也慢,价格昂贵,第三层交换机既有交换机线速转发报文能力,又有路由器良好的控制功能,因此得以广泛应用。

4.8.5 虚拟局域网

虚拟局域网(VLAN,Virtual Local Area Network)
虚拟局域网(VLAN)是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。VLAN是一种比较新的技术,工作在OSI参考模型的第2层和第3层,一个VLAN就是一个广播域,VLAN之间的通信是通过第3层的路由器来完成的。与传统的局域网技术相比较,VLAN技术更加灵活,它具有以下优点: 网络设备的移动、添加和修改的管理开销减少;可以控制广播活动;可提高网络的安全性。

这篇关于第4章介质访问控制子层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/969979

相关文章

喜报!极限科技新获得一项国家发明专利授权:“搜索数据库的正排索引处理方法、装置、介质和设备”

近日,极限数据(北京)科技有限公司(简称:极限科技)新获得一项国家发明专利授权,专利名为 “搜索数据库的正排索引处理方法、装置、介质和设备”,专利号:ZL 2024 1 0479400.9,授权日为 2024 年 6 月 21 日,标志着极限科技在数据库搜索技术领域的自主创新能力再次得到国家级认可。 创新技术,提升搜索效率 该专利的核心创新点在于将正排索引与倒排索引在逻辑上进行分离,通过专

Android C++系列:C++最佳实践3继承与访问控制

1. 背景 Java中有四种访问控制:public、protected、default、private,它们的使用范围可以用下面一张表概括: 类内部本包子类外部包public是是是是protected是是是否default是是否否private是否否否 整个结构还是比较简单的,从类内部到本包到子类到外部包权限越来越小,比较好理解也比较好记忆。但是在C++中访问控制要复杂很多,因为不仅有属性

如何在SpringSecurity中配置基于角色的访问控制?

在Spring Security中配置基于角色的访问控制是保护应用程序和资源不被未授权访问的基本策略之一。这里,我们将详细介绍如何在配置中和方法级别上实现基于角色的访问控制。 1. 配置基于角色的访问控制 在Spring Security的配置类中,你可以使用HttpSecurity对象来定义基于角色的访问控制规则。这包括指定哪些角色可以访问应用程序中的特定URL路径。 以下是一个示例配置,

服务的访问控制列表

文件修改后会立即生效,系统将会先检查允许控制列表文件( (/etc/hosts.allow),如果匹配到相应的允许策略则放行流量; 如果没有匹配,则去进一步匹配拒绝控制列表文件( (/etc/hosts.deny),若找到匹配项则拒绝该流量。如果这两个文件全都没有匹配到,则默认放行流量。 例: 禁止访问本机sshd服务vim /etc/hosts.denysshd:*允许网段访问vim

ACL访问控制列表基本概念

1. ACL概述   (1)、ACL全称访问控制列表(Access Control List)。   (2)、基本原理:ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息(如源地址、目的地址、协议口、端口号等),根据预先定义好的规则对包进行过滤,从而达到控制的目的。   (3)ACL目的:限制网络流量、提高网络性能;提供对通信流量的控制手段;提供网络访问的基本安全手段。

Elasticsearch集群安全性:访问控制与加密通信

在现今的数据驱动世界中,Elasticsearch因其强大的搜索和分析功能而广受欢迎。然而,随着数据量的增长和安全性需求的提高,如何确保Elasticsearch集群的安全性成为了重要的议题。本文将探讨Elasticsearch集群的访问控制和加密通信两个关键的安全领域。 一、访问控制的重要性 访问控制是保护Elasticsearch集群安全的第一道防线。它涉及到谁可以访问集群、可以执行哪些操

五、身份与访问管理—身份管理和访问控制管理(CISSP)

目录 1.身份管理 1.1 目录技术 1.2 单点登录 1.2.1 Kerberos认证 1.2.2 SESAME认证 1.2.3 KryptoKnight认证 1.3 联合身份管理 1.3.1 SAML安全断言标记语言 1.3.2 标记语言 1.3.3 OpenID 1.3.4 OAuth 1.3.5 OIDC(OpenID Connect) 2.身份即服务(IDaaS

[ 网络通信基础 ]——网络的传输介质(双绞线,光纤,标准,线序)

🏡作者主页:点击!  🤖网络通信基础TCP/IP专栏:点击! ⏰️创作时间:2024年6月8日14点23分 🀄️文章质量:94分 前言—— 在现代通信网络中,传输介质是数据传输的物理通道,是网络性能和可靠性的关键因素。无论是在家庭网络、企业局域网,还是在广域网中,不同的传输介质决定了数据传输的速度、距离以及抗干扰能力。了解各种传输介质的特点和应用场景,有助于我们在网

鸿蒙开发接口安全:【@ohos.abilityAccessCtrl (访问控制管理)】

访问控制管理  说明:  本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import abilityAccessCtrl from '@ohos.abilityAccessCtrl' abilityAccessCtrl.createAtManager createAtManager(): AtManager

oracle 10G控制文件因介质失败导致全部不可用的恢复

在丢失控制文件之前,当前数据库里头的表空间文件: Select * From Dba_Tablespaces;如下图: 前段时间新建一个表空间:Read_only_tablespc,为了后来添加额外业务数据再加的个表空间。后来在备份过整个数据库后因为业务变更后删除此表空间:Read_only_tablespc。备份库脚本: run { allocate channel d1 type