面向新型业务的宽带接入网
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.4 以太网接入关键技术

2.4.1 生成树协议

1.STP协议原理

为了解决局域网成环问题,一个局域网中的所有交换机上都需要运行STP协议。STP协议在交换机间定时传递特定的以太网帧,以获得整个局域网的拓扑相关信息,基于这些信息,STP协议运行STP算法,计算成环路径,并最终通过关闭成环路径上的某个交换机端口打破局域网环路,从而解决了局域网成环问题。

图2-12为一个成环局域网,运行STP协议后,局域网段E和交换机5上的链路将会通过关闭交换机端口的方式被关闭,如图2-13所示,这样就消除了局域网上的环路。

图2-12 复杂的成环局域网

图2-13 消除环路后的局域网

STP协议在交换机之间交换的特定以太网帧通常称为BPDU(Bridge Protocol Data Unit,桥协议数据单元)。BPDU有两种类型:配置BPDU和拓扑改变通知BPDU。配置BPDU实现网桥配置信息的交互,它由根桥定期发出,并在全网扩散,它携带的信息有根桥ID、当前桥ID、发送BPDU的桥端口号和当前桥的根路径代价等。拓扑改变通知BPDU实现网络发生故障时的全网通告,它由故障下游网桥发出,并在全网扩散,其中不携带配置信息。

STP算法的主要作用就是通过BPDU信息,计算出一个局域网中的根桥、某个桥的根端口、某个局域网段的指定端口和指定桥。在计算出某个局域网段上的指定端口和指定桥后,STP协议会关闭与该局域网段相连的所有交换机的所有非根端口和非指定端口,只有根端口和指定端口被打开,这样就形成了一个无环的局域网。网络管理员可以通过配置桥优先级、端口优先级和路径开销来控制最终网络拓扑。当网络拓扑发生变化时,比如有添加了新的设备和某条链路中断等,STP协议会重新计算网络的生成树,这个过程需要几十秒的时间。

2.STP应用

STP协议一般用于防止交换式以太局域网形成环路,尤其是当局域网络拓扑发生变化时,STP协议会重新计算局域网络的生成树,形成新的无环网络。这一特性非常重要,在实际应用中通常利用这个特性来提供对网络中二层设备的上连接口冗余保护。

如图2-14所示,图中有两台以太网交换机,这两台以太网交换机通过两条链路互连,而且都在运行STP协议。当互连的两条链路都正常工作时,两台以太网交换机形成了一个环路,此时STP协议发生作用,将其中一条链路置成Blocking状态,一条链路置成Forwarding状态,这样就消除了网络中的环路。假设左侧链路发生故障中断,此时STP会重新计算网络的生成树,由于此时网络中已经不存在环路,STP协议会将右侧链路置为Forwarding状态,这样网络就得以重新连通,如图2-15所示.。

图2-14 上连口冗余保护示意图——正常

图2-15 STP上连口冗余保护示意图——保护

当然STP协议也有许多需要改进的地方,其中最主要的是STP保护时间过长,当网络拓扑发生变化时,通常需要几十秒时间,网络才能重新恢复正常工作状态。当网络拓扑变化频繁时,这个问题尤为严重。另外,随着技术的发展,越来越多类似语音的业务通过各种方式在以太网上传输,对业务中断的时间要求也越来越高。

3.RSTP协议

为了避免STP协议的一些缺点,人们提出了RSTP(快速生成树)协议。RSTP协议继承了STP协议的主要思想,只是针对STP协议的缺点进行了一些改进。因此,RSTP协议不仅具有STP协议的所有功能,而且能够在不造成网络临时环路的前提下,大大缩短局域网络从拓扑发生变化到重新稳定的时间,最快可以在1s以内完成。

RSTP协议对STP主要进行了如下改进。

① 增加替换端口(Alternate Port)和备份端口(Backup Port)。

为根端口和指定端口设置相应的替换端口(Alternate Port)和备份端口(Backup Port),当根端口/指定端口发生故障时,直接使用替换端口/备份端口作为根端口/指定端口。这样就省去了复杂的计算,替换端口/备份端口几乎无时延地进入转发(Forwarding)状态。

② 增加边缘端口(Edge Port)。

与终端而不是其他交换机相连的端口为边缘端口(Edge Port),交换机无法知道某个端口是否为边缘端口,所以需要人工配置。由于和终端向连,所以边缘端口一定不会导致网络出现环路,可以直接进入转发(Forwarding)状态,从而不需要任何延时。

③ 增加点到点链路。

只将两个交换端口连接到一起的链路为点到点链路。和共享链路相比,点到点链路上的指定端口只需与相连的交换机进行一次握手,就可以无时延地进入转发状态,缩短了交互时间。

为了支持上述改进,RSTP协议还对BPDU的格式进行了修改,但是仍然向下兼容STP协议,RSTP协议和STP协议可以混合组网。

4.MSTP协议

RSTP协议和STP协议同为单生成树SST(Single Spanning Tree)协议,即整个网络共用单个生成树,这就导致了SST协议有一些固有的缺陷,比如,当局域网络规模较大时,一旦拓扑改变,将会需要较长的收敛时间,而且影响的范围也比较大;局域网络中的链路如果被SST协议阻塞将不承载任何流量,极大地浪费了带宽。

这样,就出现了MSTP(多生成树)协议,MSTP是基于VLAN(VLAN见下面章节描述)的生成树算法,即某一个VLAN或某几个VLAN中的站点独占一棵生成树,不和其他VLAN共享,从而缩小了生成树的规模;对于不同的生成树,链路可以有不同的状态,而不是一味阻塞,从而提高了网络利用率。

在实际网络环境中,并不是所有的局域网络都支持基于VLAN的MSTP协议,有些交换机只支持STP协议或者RSTP协议。这样一个大的局域网络通常会被划分为:只支持STP协议或者RSTP协议的单STP域(SST Region)和支持MSTP算法的多STP域(MST Region),如图2-16所示。

图2-16 单STP域和多STP域

2.4.2 虚拟以太网

1.虚拟以太网概念

交换式以太网通过网桥将一个局域网分成了若干个分属不同碰撞域的局域网段,从而提高了局域网的规模和带宽。但是,网桥对碰撞域的隔离作用仅对单播流量有效,对于广播和泛洪等流量来说,尤其是广播流量,目的是本局域网的所有站点,所以必须在整个局域网内传播,而不是局限于一个或几个局域网段。这样当局域网中广播或泛洪流量很多时,会消耗大量的网络带宽,且站点间发生碰撞的概率重新提高,降低了网络的有效带宽。通常将局域网络中某个广播帧能够到达的所有区域称为广播域,显然,目前我们所讨论的交换式局域网只有一个广播域,包含网络中的所有站点和链路。

为了解决上述问题,虚拟交换式局域网,也就是VLAN应运而生。虚拟局域网技术将物理上的一个局域网划分为多个逻辑上互相独立的VLAN,每个VLAN都有一个自己的VLAN标识(VLAN ID)。只有相同VLAN内的站点才可以互相通信,属于不同VLAN的站点不可以互相通信。因为这些VLAN物理上并不互相独立,仍然共用一个物理网络,所以称为“虚拟”局域网。图2-17为一个局域网络的示意图。

图2-17 虚拟局域网示意图

通过将一个局域网划分为多个逻辑上互相独立的VLAN具有如下优点。

① 限制广播和泛洪流量在局域网中的传播。

由于不同VLAN间的站点不能互相通信,所以一个VLAN内的广播帧只会在一个VLAN内传播,而不应该被转发到其他VLAN中,也就是说一个VLAN就是一个广播域。这样在将一个物理局域网划分为多个VLAN的同时,也将本来一个非常大的全局广播域划分为了若干个互相独立的广播域,进一步提高了交换式局域网的有效带宽。

② 提高局域网络的安全性。

交换式局域网本质上是一个共享网络,网络中的所有站点共用相同的传输介质。如果不加限制,网络中的一个站点能够窃听到其他站点的流量,也可以通过许多其他方式攻击整个局域网络,致使网络瘫痪,比如不停地产生广播帧。

通过将一个物理局域网划分为多个逻辑上互相独立的VLAN,可以将网络上的站点划分为若干组,一个站点只能收到组内站点的流量,这样就提高了网络的安全性,降低了网络被攻击和窃听的可能。

③ 提高了局域网络的灵活性和可管理性。

VLAN是一个逻辑上的局域网络,如何将一个局域网络划分为多个VLAN,完全由网络管理员根据实际需要进行配置,配置过程非常简单方便。而且当局域网络发生变化时,比如一个站点从一个地点移到了另外一个地点,可以通过简单的修改配置来继续达到网络隔离的目的,使用上十分灵活。

2.VLAN标签

一个物理局域网可以被划分为多个VLAN,一个站点可以同时属于多个VLAN,VLAN内站点间通信通常情况下要经过一台或多台交换机,这就要求交换机必须能够识别经过其的以太网帧属于哪个VLAN,以确保该以太网帧只在相应的VLAN内传输。因此,必须对以太网帧格式进行修改,加上VLAN标签,以标识VLAN。

图2-18给出了支持VLAN的以太网帧格式。为了支持VLAN,在普通以太网帧的源MAC地址和类型字段之间添加了4字节的VLAN标签。VLAN标签主要由两个部分组成:TPID(标签协议识别符)和TCI(标签控制信息)组成。TPID长度为2字节,取值为0x8100时表示为VLAN标签。

图2-18 带有VLAN标签的以太网帧

图2-19 TCI格式

图2-19给出了TCI的格式,其中,

●用户优先级(user_priority):长度为3bit,表示以太网帧的优先级,取值范围为0~7。

●VID:长度为12 bit;表示该以太网帧所属的VLAN,取值范围0~4095,其中,0、1和4095为保留值。

3.VLAN转发

每一台支持VLAN的交换机都会维护一个VLAN转发表,如表2-5所示。

表2-5 VLAN转发表

每个VLAN转发表的组成部分有两个:VLAN ID,也是VLAN转发表的索引;端口列表,即所有属于该端口的VLAN。交换机在进行转发时,会查询VLAN转发表,只有当某个端口属于某个VLAN时才在该端口上转发相应VLAN的以太网帧。比如,对于广播和泛洪包,交换机不再向所有的非输入端口发送,而是仅向属于该VLAN的端口上发送。

在支持VLAN的交换机中,用于转发的地址表也发生了变化,如表2-6所示。支持VLAN的地址表多了一个VLAN字段,地址表的索引为VLAN+MAC。也就是说,收到以太网帧后,交换机通过该以太网帧的VLAN+MAC查找地址表,进行相应转发。

表2-6 支持VLAN的地址表

4.VLAN划分

在交换式以太网中,一个站点可以属于一个或者多个VLAN,一个站点可以发送不带VLAN标签的以太网帧,也可以发送带VLAN标签的以太网帧。当交换机收到一个带VLAN标签的以太网帧时,则以VLAN标签中的VLAN ID作为该帧的VLAN标识,对该帧进行转发。当交换机收到一个不带VLAN标签的以太网帧时,则需要给该帧确定一个VLAN标识,也就是划分一个VLAN,然后按照该VLAN标识进行转发。

通常有多种对VLAN进行划分的方法,由网络管理员根据实际需要选用,常用的VLAN划分方式有以下几种。

① 基于端口划分VLAN。

基于端口划分VLAN是目前最常用的VLAN划分方式,通常也是交换机的默认VLAN划分方式。这种VLAN划分方法给交换机的每个交换端口都配置一个VLAN ID,通常也称为某个端口的PVID(Port VID)。当从某个交换端口收到一个不带VLAN标签的以太网帧时,交换机则认为该以太网帧属于该端口的PVID标识的VLAN,并进行后续转发。通常,交换机端口的默认PVID都为1。在实际使用中,同一交换机的不同端口划分为同一VLAN,一个交换机端口可以同时属于不同VLAN,不同交换机的端口也可以划分至同一VLAN。

这种划分方式的优点是简单,易于配置;缺点是VLAN划分受交换机端口物理位置的限制,不是很灵活。

② 基于MAC划分VLAN。

这种VLAN划分方法,根据站点的MAC地址来划分VLAN。当交换机收到某个不带VLAN标签的以太网帧时,根据该以太网帧的MAC地址来确定其VLAN归属,然后进行转发。

这种划分方式的优点是当终端在交换式网络中移动时,VLAN不用重新配置,交换机能够自动识别和定义;缺点是在局域网中的所有交换机上,需要对局域网中的所有站点的MAC地址都进行相关配置,当站点众多,或MAC地址变化频繁时,配置的工作量很大。

③ 基于IP的VLAN。

这种VLAN划分方法,根据站点的IP地址来划分VLAN。指根据IP子网地址来划分的VLAN,当交换机收到某个不带VLAN标签的以太网帧时,根据该以太网帧承载的IP包的IP地址来确定其VLAN归属,然后进行转发。通常,把属于同一IP子网的站点划分在同一VLAN中。

这种划分方法的优点是当某一站点的IP地址改变时,交换机能自动识别,重新定义VLAN,不需要管理员干预。对于那些针对具体应用和服务来组织的局域网络来说这种方法非常有效的,站点可以在网络内自由移动,而不用重新进行配置。

2.4.3 以太网组播

1.组播地址表

在交换式局域网中,交换机可以使用泛洪的方式转发组播流量。当采用这种方式时,网络中的所有站点都会收到组播帧,而不管某个站点是否属于某个组播组,显然存在带宽浪费现象。这样的话,当组播流量很多时,将和广播流量一样形成风暴,大幅降低网络的实际有效带宽。

为了解决上述问题,高效地转发组播流量,以太网交换机中通常都维护一个组播地址表。如表2-7所示,组播地址标通常由VLAN ID、组播MAC地址和出端口列表3部分组成,其中VLAN+组播MAC地址是组播地址表的索引。当交换机接收到一个组播以太网帧时,将从该帧中提取出VLAN和目的组播MAC地址,以它们为索引查找组播地址表,如果能够找到匹配的组播地址条目,则向条目中出端口列表中的所有端口复制一份组播帧;如果没有找到,则可能有两种处理方式:丢弃或者泛洪,由网络管理员通过配置决定。

表2-7 组播地址表

组播地址表中的条目可以通过网管静态配置或者由交换机动态生成。静态配置方式比较简单,但是配置起来比较复杂,而且很不灵活,一旦组成员关系发生变化,就需要重新配置。动态生成的方式基本不需要用户参与,由交换机通过监听网络中的组播控制包自动生成,因此是目前主要使用的方式,交换机的这个功能通常称为IGMP Snooping。

2.IGMP Snooping

在数据网络中,主机和路由器通过IGMP协议来交换组播相关信息,如图2-20所示。

IGMP工作的主要过程如下:

●当主机需要加入某个组播组时,会给路由器发送一个IGMP Report报文,报文中有主机希望加入的组播组的相关信息。

●当主机希望退出某个组播组时,则给路由器发送一个IGMP Report报文,报文中有主机希望退出的组播组的相关信息。

图2-20 组播网络示意图

●路由器定时发送IGMP Query报文,查询网络中某个组播组或者所有组播组的成员信息,收到IGMP Query报文后,主机将会发送相应的IGMP Report报文作为响应。

●路由器根据收到IGMP加入和离开信息后,生成类似交换机中组播地址表条目的组播转发条目,从而知道需要向与自己相连的哪些接口发送组播报文。如果一段时间没收到IGMP加入请求,IGMP将老化相应的组播转发条目。

在一个交换式局域网中,主机和路由器通过由交换机相连,也就是说所有主机和路由器间交互的IGMP报文都会通过网络中的交换机。如图2-20所示,交换机1和交换机2会收到3个主机发送的IGMP报文1、IGMP报文2和IGMP报文3。这样,交换机就可以通过监听网络中主机和路由器交互的IGMP报文来获得相关组播组信息,形成组播地址表,这就是IGMP Snooping。

IGMP Snooping功能对于主机和路由器来说是透明的。IGMP Snooping功能只是监听IGMP包,不会修改IGMP包的内容;也不会截取某个IGMP包,使其无法到达路由器或主机;也不会自己生成IGMP包。

3.IGMP Proxy

在数据网络中,通常情况下主机发送的所有IGMP包都会最终到达路由器,由路由器对这些包进行处理。当局域网络规模很大时,IGMP流量的处理将会给路由器造成很大的负担。于是人们又给交换机添加了IGMP Proxy功能,即交换机作为路由器或主机的代理,分担路由器和主机的某些IGMP报文处理工作,从而减轻路由器和网络的负担。IGMP Proxy主要有如下功能。

●加入抑制:当某个交换机端口上有多个主机要加入某个相同的组播组时,交换机只向路由器转发第一个IGMP加入报文。

●最后离开:当某个交换机端口上有多个主机离开某个相同的组播组时,只有在端口上最后一个主机离开时,交换机才会给路由器发送IGMP离开报文。

●主机代理:交换机代理主机响应路由器下发的查询报文。

●查询代理:交换机代理路由器下发查询报文。

与IGMP Snooping不同,IGMP Proxy改变了主机和路由器间的IGMP交换过程。

4.IGMP Snooping+

在局域网络中可能出现这样的情况:某些主机属于相同的组播组,但是却属于不同的VLAN。IGMP Snooping功能将会窃听到来自不同VLAN的IGMP报文,这些报文尽管VLAN不同,但是却加入相同的组播组。IGMP Snooping功能会对相同的组播组生成多个不同的组播地址条目,如表2-8所示,4个组播地址条目的组播MAC地址完全一样,但是却属于不同的VLAN。

表2-8 IGMP Snooping功能生成的组播地址表

在实际运营中,上述情况有如下缺点:

① 消耗大量的组播地址条目。

② 相同组播组的流量由于属于不同VLAN,需要发送多份,成倍地消耗了网络中最为宝贵的带宽。

③ 过多的组播地址条目给管理带来了许多困难。

因此,人们对IGMP Snooping功能进行了改进,将属于不同VLAN、相同组播组的组播地址条目合并为一个条目,这就是IGMP Snooping+功能,也称为MVR(多播VLAN注册)。显然,相同组播组、不同VLAN条目合成后的组播地址条目依然需要有一个VLAN,这个VLAN称为组播VLAN,通常通过网管配置,不同的组播地址对应不同的组播VLAN。表2-9为IGMP Snooping+功能生成的组播地址表,从中可以看出:4条组播地址条目被合并为了一条,组播组01-00-5E-00-00-02的MVLAN为100。

表2-9 IGMP Snooping+功能生成的组播地址表

2.4.4 QinQ

1.QinQ概念

随着互联网的爆炸式发展,适合于传送分组报文的以太网技术也逐步从最初仅在局域网使用,扩展到了城域网,乃至广域网。

但是,以太网技术最初仅是作为一个局域网标准被定义的,使得其应用在城域网中时会有一系列的问题。比如:运营商通常使用VLAN对用户进行标识和隔离。而IEEE802.1q中定义的VLAN标签长度为12bit,也就是说最多只能有4K个VLAN。这个数目限制在局域网中还完全可以接受,但是显然无法满足城域网的要求。

于是,为了使得以太网技术能够很好地应用于城域网,人们就对现有以太网技术进行了各种扩展,比如,QinQ和MacInMac等。其中本节要描述的QinQ相对简单灵活,是目前广泛使用的一种技术,已被IEEE标准化。

2.QinQ原理

IEEE802.1ad在IEEE802.1q(VLAN)的基础上进行了扩展,定义了QinQ标准,也称为VLAN Stack(VLAN堆叠)技术。IEEE802.1ad只是在IEEE802.1q帧里又添加了一层VLAN标签,其他则和IEEE 802.1q完全一样。这样就将VLAN空间扩展到了4K×4K个,基本可以满足城域网的要求。

如图2-21所示,IEEE802.1ad在IEEE802.1qVLAN标签之前又加了一层VLAN标签,这样QinQ帧中就有两个VLAN标签,其中内层VLAN标签称为用户VLAN(Custom VLAN),简写为C-VLAN;外层CLAN标签称为业务VLAN(Service VLAN),简写为S-VLAN。

图2-21 IEEE802.1q和IEEE802.1ad帧结构对比图

IEEE 802.1ad中定义S-VLAN标签的TPID值必须为0x88a8,而C-VLAN其实是一个IEEE 802.1q VLAN标签,所以VLAN标签的TPID值依然为0x8100。在实际使用中,考虑到对旧设备兼容等问题,S-VLAN标签的TPID通常可以通过配置修改,当然也可以采用0x8100作为其TPID。

在实际运营中,通常在边缘网络设备上为来自用户私有网络的帧添加一层S-VLAN。在公有网络中,设备只根据S-VLAN进行转发,而C-VLAN则不考虑,只是作为数据帧的一部分。当以太网帧从公有网络被转发到私有网络中时,边缘网络设备通常需要去掉以太网帧的S-VLAN,即进行逆处理。

综上,QinQ技术有如下作用:

●将网络中可以支持的VLAN数目从4K个扩展到了4K×4K个。

●QinQ技术可以作为一种VPN技术使用。

●私有网络的VLAN对共有网络来说完全不可见,相同的VLAN在不同的私有网络中可以重复使用。

●S-VLAN不仅可以用来区分不同的网络,还可以用来区分不同的业务,从而为不同的业务提供不同的服务。

3.QinQ实现方式

通常QinQ实现方式可以分为以下两类。

① 基本QinQ:

即基于端口的QinQ。使用这种方式的交换机端口都配有一个默认VLAN。当从该端口收到以太网帧时,交换机将会给该帧打上一层该端口的默认VLAN标签。这样先前没有TAG的帧就变成了单TAG帧,先前的单TAG帧就变成了QinQ帧。

② 灵活QinQ:

灵活QinQ也称为基于流的QinQ,是一种相对于基本QinQ更加灵活的实现方式。这种方式首先对某个端口收到的流进行分类,然后根据分类的结果决定对某个帧是否打外层TAG,打什么样的外层TAG。

流分类的方式通常有多种,比如,按照CVLAN进行区分、按照优先级区分、按照以太网帧类型进行区分及按照CVLAN+优先级进行区分等,其中,按照CVLAN进行区分最为常用。

除了添加S-VLAN这一基本操作外,通常灵活QinQ还会提供其他一些扩展功能,比如:将C-VLAN的优先级复制到S-VLAN中;添加S-VLAN的同时修改C-VLAN;甚至仅将C-VLAN修改为S-VLAN,这就是通常说的VLAN翻译功能。

2.4.5 以太网QoS技术

要想在电信领域大规模应用,只能提供“尽力而为”服务的传统IP网络必须解决如何确保服务质量(QoS)的问题,伴随着IP技术发展起来的以太网技术也面临着同样的问题。总体来说,以太网只是提供了基本的QoS机制,无法保证端到端的QoS。如何提高以太网QoS方面的能力也是业界努力的一个方向。

1.流分类

以太网设备通常首先将收到的以太网帧分成不同的类别,即不同的流,然后给不同的流分配不同的服务类别(CoS),在设备中给不同服务类别的流提供不同的QoS。流分类的方式很多,经常使用的方式由如下几种。

① IEEE 802.1p优先级:

以太网TCI标签控制信息中的用户优先级字段表示了该以太网帧的优先级,即IEEE 802.1p优先级。用户优先级字段长度为3个,其取值范围为0~7,其中0表示默认优先级,1表示最低优先级,7表示最高优先级。通常一个以太网帧的优先级越高,得到的服务质量越高。

② 物理端口:

每个物理交换端口会有一个默认的IEEE 802.1p优先级,当收到不带TAG的帧时,则使用该默认优先级作为以太网帧的优先级。

③ IP包TOS字段或DSCP字段:

这种方式根据以太网帧所传送的IP包中的优先级相关字段,主要是TOS(服务类型)和DSCP(区分服务编码),决定以太网帧的COS。

④ 其他方式:

除了上述的基本方式外,以太网设备还会支持根据以太网帧中的其他信息进行流分类,通常是以太网帧的前几十个字节中的某些字段。比如源MAC、目的MAC、源IP、目的IP或者这些字段的组合。

2.队列调度

在出口和入口处,以太网设备会对以太网帧进行流分类,得到不同的COS后,将这些以太网帧缓存到对应的COS队列中进行调度,参见图2-22。不同队列调度实现的队列数目可能会有所差别,通常小于等于8个队列。

图2-22 队列调度处理示意图

不同COS队列中的以太网帧得到的处理是不一样的,由调度算法决定。调度算法多种多样,目前比较常用的算法如下所述。

① 轮转(Round Robin)调度:

在所有队列之间进行RR调度,即依次调度。在RR调度中所有队列都得到相同优先级的处理。以图2-22为例,RR调度首先判断队列1中是否有以太网帧等待处理。如果有,则处理队列1中的以太网帧;然后RR调度依次对队列2、3和4进行相同的判断和处理;所有队列依次处理完毕以后,RR调度将从队列1重新开始下一轮调度,如此循环往复。

② 严格优先级(Strict Priority)调度:

在SP调度中,每一个队列都有一个优先级。SP调度优先处理高优先级队列中的以太网帧,只有高优级队列中的以太网帧全部处理完毕,才会处理低优先级队列中的以太网帧。

SP调度确保了高优先级的以太网帧总会优先于低优先级的以太网帧得到处理。但是当高优先级帧过多时,低优先级队列将迟迟得不到处理,延迟加大,有些时候会导致整个网络的QoS特性恶化。

③ 加权轮转(Weight Round Robin)调度

WRR是对RR调度方式的改进。WRR调度可以为不同的队列分配不同的权重,在一个调度周期内,如果一个队列的权重高,则该队列中获得处理的帧就多,从而能够获得了更多的带宽和更小的响应延时。

以图2-22为例,假设图中4个队列的权重分别为10、20、30和40,每个队列中都一直有以太网帧等待处理。WRR将首先对队列1进行调度,如果队列1中有以太网帧,则对相应的以太网帧进行处理,同时将队列的权重减1,然后WRR调度将依次对队列2、3、4进行调度,如果有帧则进行相应处理,同时减少权重。如此10轮调度后,各个队列的权重分别为0、10、20和30,此时WRR将再次对队列1进行调度,但是由于其权重已经为0,则不对其进行任何处理,转而处理其他有权重的队列。如此循环往复,当所有的队列权重为0,或者所有队列上都没有需要处理的帧时,WRR算法会将各个队列的权重重新置为初始值:10、20、30和40,继续进行调度。从上面的描述可以看出,各个队列能够获得的带宽比例就是各自权重的比例。

④ SP+WRR调度:

SP+WRR调度结合了WRR调度和SP调度的优点。在SP+WRR调度中不同的队列可以选择不同的调度方式,SP或者WRR。SP+WRR优先对需要进行SP调度的队列进行SP调度,当所有SP队列上没有帧需要处理时,则在WRR队列间进行WRR调度。

3.端口流量控制

以太网设备的某个端口如果收到了大量的以太网帧,超过了其处理能力,此时将会导致缓冲区溢出,从而进一步导致网络吞吐量下降或者以太网帧丢失。在全双工模式下,以太网设备使用端口流量控制机制来解决这个问题,主要工作原理是:当以太网设备在某个端口上检测到拥塞后,则会给导致其拥塞的其他设备端口发送一种特殊的以太网控制帧,PAUSE帧。收到PAUSE帧后,相应得以太网端口将控制自己发出的以太网流量,从而达到避免拥塞的目的。

如图2-23所示,当端口D检测到自己处于拥塞状态时,立刻从端口A、B和C向外发送指定持续时间的PAUSE帧。站点接收来自A、B或C端口发送的PAUSE帧后,对PAUSE帧进行相应解析,根据其中信息控制自己发送的流量,避免拥塞的发生。在一段时间不收到PAUSE帧后,各站点恢复正常,不再对自己进行流量控制。

图2-23 全双工模式下的拥塞控制

4.其他QoS处理

除了上述处理外,以太网设备通常还提供以下一些其他常用的QoS处理。

●优先级标记:修改以太网帧的优先级相关信息,主要是IEEE 802.1p优先级。

●流量监管:对某条流、某个端口或者某个队列的流量进行控制。

●流量整形:经过以太网络的多个设备转发后,有些流量的特征,比如速率和帧间隔等往往发生了变化,对于某些业务来说,这些变化是不可接受的,需要尽可能恢复其初始状态,该功能就是流量整形。

●缓存管理:通常以太网都提供队列以缓存收到的以太网帧,当网络流量很大,导致队列发生溢出时,需要采用一定的策略对多出的帧进行丢弃,常用的算法有Tail-Drop、RED和WRED等。

2.4.6 LAN接入网

1.网络结构

基于以太网技术的LAN接入是目前主流的宽带接入方式之一,通常采用FTTB+LAN的方式,即首先通过光纤到达大楼,然后通过以太网技术入户。

基于以太网技术的宽带接入网由局侧设备和用户侧设备组成,如图2-24所示。用户侧设备由于五类线传输距离的限制,一般放置在靠近用户的位置,如楼道或者楼层内,而局侧设备则一般放置在小区机房或者大楼机房内。

局侧设备与用户侧设备的组网拓扑一般采用星状拓扑,局侧设备与核心网之间的拓扑一般采用星状,或者双星状上连,当对物理链路保护要求很高时,也可以考虑采用环状拓扑和RPR等城域环传输技术。

图2-24 基于以太网技术的LAN接入网的网络结构

2.设备功能要求

基于以太网技术的宽带接入网承载的业务以基于IP的业务为主,主要包括互联网接入、VoIP语音和IPTV等业务。

基于以太网技术的宽带接入网一般需要具备以下功能:

●用户隔离;

●以太网帧的统计复用;

●组播;

●支持基于用户端口或者基于账户用户的接入认证;

●支持用户接入网络的认证、授权和计费;

●支持IP地址的动态分配;

●支持用户接入多ISP;

●限制用户的最高接入速率;

●支持基于应用的计费。

对于一些较高级的设备,还可以具有以下功能:

●NAT功能;

●网络时间同步功能。

上述这些功能,分布在局端设备和用户侧设备上。用户侧设备主要完成用户的接入功能,在链路层上实现以太网帧的复用与解复用,将上行和下行以太网帧转发到相应的UNI端口以及上连端口上。局端设备主要完成用户侧设备流量的汇聚和统计复用,实现IP包的转发、过滤和各种IP层协议,以及对接入用户的管理控制功能,包括基于端口或者基于账户的方式,完成对接入用户使用网络资源的认证、授权和计费。

3.管理功能要求

LAN网络管理系统实现了对局端设备和用户侧设备的集中维护和统一管理,通常都提供配置管理、故障管理、告警管理、安全管理和性能管理功能,如图2.25所示。

图2-25 基于以太网技术的宽带接入网网管结构示意图

对于设备的管理通常有以下两种方式。

●CLI方式:可以通过串口或者Telnet的方式进行。

●网管台方式:网管台和设备之间通常使用SNMP协议。

小结

DSL技术的出现和广泛应用是顺应了电信运营商挖掘现有网络资源、保持现有网络结构基本不变、减少投资、快速部署和开通高盈利数据业务的客观需求。而以太网技术作为最初的局域网技术以其协议简单、部署方便、高速传输能力等特征,不断地拓展应用领域。这两种基于铜线的宽带接入技术在带宽传输能力、传输稳定性及对线路的适应能力等多方面也在不断提升和发展演进,基于这两种技术构建的宽带接入网已成为当前宽带接入网的主体。