关于QoS

介绍

企业网络的使用正变得越来越复杂。过去的20年我们发现,企业网络中运行的应用范围越来越广,企业对网络也就越来越依赖如今的网络能够传输音频,视频和数据,这为网络行为带来了更多的变数。不同的应用程序以不同的方式影响着网络,您需要完全的控制网络带宽并确保网络性能得到优化。并且,社交媒体泡沫的破裂也对网络产生了一定影响。这就导致网络复杂化,流量类别和子类别众多。对网络中的关键业务最优先分配带宽,才能有效的使用网络。服务质量简称QoS,可以为您达到目的并为所需网络流量类型指派优先级。这样可以确保关键服务顺利被交付。下面这些QoS的基础知识可以帮助您了解如何在网络中设计并实施QoS。

什么是QoS?

服务质量(QoS)是定义网络可用性的术语,用于为各种级别的流量提供不同级别的服务。QoS是一种用于优化网络利用率的技术,它根据您的业务目标优先分配流量。各个企业的业务范围不同,优化策略也不相同。根据不同的业务对象,优先分配网络流量的策略也不同。这是为了确保关键业务应用能够被分配高优先级。QoS是一套标准和技术,用于确保网络中关键应用高性能的运行。QoS作为一种机制,能够被网络管理员用于确保网络中的资源运行在最佳状态,而不需要对网络进行任何拓展或增强。为关键业务应用分配高性能网络,确保关键业务应用能够立即交付,从而使您的企业网络得到优化。

为什么需要QoS?

在当前的网络融合时代,网络流量中可以包含音频,数据和视频等类别。在发生网络拥堵时,它们被分配网络流量的机会都是均等的。于是关键业务应用程序和其它应用程序就会互相争抢带宽。为了有效的利用网络带宽,将带宽优先分配给关键业务应用程序是很必要的。这就需要对网络中运行的应用程序进行分类。第一类是关键业务如(CRM, ERP, business VoIP等),第二类是对公司业务不太重要的带宽密集型应用程序(媒体流,点对点的文件共享,在线游戏, 网络电台等)。

当带宽密集型应用程序在网络中并行运行时,由于大量的数据流造成了网络拥堵。当网络发送拥堵发生时,可能会造成数据丢失和影响关键业务的应用程序的使用。这就要求网络管理员要将带宽优先分配给关键业务应用程序。

让我们设想这样一个场景,在拥堵的网络中进行FTP或VoIP电话。FTP对于网络延迟不是十分敏感。尽管传输速率会很慢,还是可以进行传输。但是,如果VoIP包由于网络延迟受到影响,就会导致接收端接收声音不清楚,影响跟客户沟通的效果。“延迟敏感性应用程序”,如语音和视频对网络十分依赖。即使是丝毫的延迟,也会影响VoIP或视频通话的质量,从而影响业务的顺利进行,这就在很大程度上要依赖网络。这种情况,采取优先应用对于网络管理员来说就尤为必要。

新时代的商务需求

这些年来网络利用率模式有了极大的改变。网络中的视频流量倍增。高清和3D的技术需要占用更多的带宽,这就更增大了网络拥堵。下面是一些来自Cisco虚拟网络主页上的一些统计:

  • 到2015年全球IP流量将使用zettabyte来计量
  • 连接到IP网络的设备数将会是全球人口数的两倍
  • 2015年无线设备产生的流量将会超过有线设备产生的流量。

随着视频流量在网络中的爆炸性增加,增加更多的带宽是主要的选择。但是如果您选择“可持续的发展”,“科学合理地使用现有资源”,那么就需要优化当前的网络资源QoS机制能够很大程度上帮助您实现这些目标。

QoS主要由哪几个方面构成?

为了能够被有效的实施,正确配置QoS极为重要。QoS主要包括如下方面:

  1. 分类
  2. 流量监管和队列

分类:

正如我们之前了解的,运行在网络中的应用有不同的类型。如邮件,CRM,sharepoint,intranet,数据库,VoIP, 媒体流,游戏,文件共享,文件主机等依赖网络的应用,并非所有这些应用都属于关键业务范畴。即使是对于关键业务应用,不同应用的重要程度也不相同。首先要对应于进行分类,确定不同应用的重要程度。第二步,对流量进行分类:

  1. 流量识别
  2. 标记

习惯上,访问控制列表(ACLs)被作为识别工具来使用。访问列表通常是一组语句,用来定义一个指定的模型,此模型将在IP包中被发现。在这种方式下,包进入一个能够被扫描的接口,扫描指定模块,并根据模块匹配情况决定允许还是拒绝。这种方式的重要缺点是列表越长,look-up时间就会越长。对于对延迟敏感的应用,这种方式将不能正常工作。

应用类别
  1. Intranet
  2. 效能工具
  3. CRM
  4. ERP
  5. MIS
  6. 点对点文件共享
  7. Gaming
  8. Torrents
应用子分类
  1. 内网
  2. 数据库
  3. 媒体流
  4. 电子化支付
  5. SAP
  6. 销售队伍
  7. Zoho CRM
  8. P2P文件系统

NBAR是能够帮助您使QoS指标符合规范的智能分类引擎。

应用类型分类:NBAR

NBAR是一个对网络流量进行分类的系统。NBAR根据识别应用的能力监控第四层,第七层,而不仅仅是应用层。NBAR is Network Based Application Recognition is capable of monitoring Layer 4 through Layer 7 traffic and not just the application layer. 如此的深入透明,使您可以使用动态端口识别应用,为网络中的应用指定分类和子分类,如skype。With such deep visibility, it can recognize applications that use dynamic ports like skype that pertain to specific categories and subcategories of applications on the network. 一些运行在网络中的应用分类如:

标记:Marking:

标记动作,标识与包相关联的唯一值。In the marking action, the identified packet is associated with a unique value (marked with) pertaining to its class of traffic. 包通过此标记值被标识,QoS条款和The packet will be identified with this marked value, in QoS terms and its treatment will depend on this marked value. 通常Cisco路由器和交换机都包含标记选项,包括IP优先级,DSCP, CoS, ToS bits, QoS组,和MPLS EXP值。The common marking options available on Cisco routers and switches are IP Precedence, DSCP, CoS, ToS bits, QoS group, and MPLS EXP values. 优化路由器利用率,依靠此标记值。For optimum use of router resources, it is highly recommended to do the marking as close to the source as possible. 标记基于指派到网络的流量的优先级。Marking is the basis for assigning priority to traffic on the network.

队列:

队列用于存储流量,直到被允许通过。A queue is used to store traffic until it is allowed to pass. 拥有队列机制是非常迫切的,即使发生拥堵的机会很小。It is imperative to have a queuing mechanism in place even though the chances of congestion are very minimal. 尤其是当企业为非重要应用程序分配了低速链接的网络流量时尤其有用,如文件共享等。Queuing is particularly useful when organizations assign low-speed links for non-essential applications pertaining to web traffic like file sharing etc. 通常建议为与业务相关的应用程序分配高速网络流量,如Citrix, Webex等。Cisco建议企业为队列做如下带宽分配:High speeds are generally recommended for business-related applications like Citrix, Webex etc. Cisco recommends the following queuing guidelines for organizations:

  1. best effort类带宽分配 - 最少25%
  2. priority类带宽分配 - 最多33%
  3. scavenger类带宽分配 - 不能大于5%
  4. For congestion avoidance in select TCP flows - non-priority queue为了避免产生拥堵,选择TCP flow - 非优先队列

Some queuing mechanisms 一些排队机制

除了可用的排队机制外,网络管理员可以使用最匹配的目标和组织的目标,网络类型等。Out of the available queuing mechanisms, the network Administrator can follow an approach that best matches with the goals and objectives of the organization, the network type etc. 但是我们强烈建议您使用排队机制。But, it is highly recommended to have a queuing mechanism in place.

实施QoS:

实施QoS包括3个主要部件:

  1. 创建类映射
  2. 创建策略映射
  3. 服务策略

创建类映射:

类映射来源于第3层,第4层和第7层,用于标识流量分类。这对于将网络中不同类型的流量进行分类是十分重要的。从应用、传输和网络层获得信息,然后对这些信息产生的流量进行分类。一个类映射要基于被分类的流量,并且一个类映射要对应网络中不同的流量分类。类映射的主要组成部件是“匹配语句”和“匹配标准”。根据网络管理员的需求对流量分类指定匹配条件。如果需求匹配,就会将包分配到各自类名中。如果匹配失败,包就会被分配的默认类中。当发生拥堵时,就会造成丢包。

A small case example: 一个小案例:

一条匹配语句可以被写进隔离FTP的数据包和VoIP包。A match statement could be written to segregate FTP packets and VoIP packets. VoIP包比FTP包更加延迟敏感。The VoIP packets are much more delay-sensitive than the FTP packets. 因此,当VoIP包从默认包中分离出来时,就会Thus, when the VoIP packets are separated from the default packets, it would help in prioritizing the VoIP packets considering their sensitivity to latency and delay.

创建策略图:

在类图被创建完成之后,下一步是决定如何执行这些分类的流量。将流量分割到不同的类之后,网络管理员需要决定如何以有效的方式执行这些不同的类。

服务策略:

使用服务策略命令激活策略。一旦类被定义并决定要使用,就要激活这些服务策略。

检测QoS有效性:

在完成QoS设计和实施之后,验证是最后的关键步骤。唯一的验证方式是进行检测。于是,检测并监控QoS是确保网络中QoS策略有效性的重要保障。逐个的对QoS的深度和广度进行监控。不过,按照最低的标准,监控应该包括链接可用性扩展和丢包信息。

这里有几种方式监控QoS链接,如Cisco-Class-based-QoS-MIB,NetFlow等。使用Cisco CBQoS可以收集很多数据,不过前提是需要支持后端工具对数据进行分类,并转化成易于读取的有价值的信息。此工具也必须能够对数据进行分类并标记丢包率。

NetFlow Analyzer的CBQoS报表

ManageEngine NetFlow Analyzer支持Cisco CBQoS,发送部署了QoS策略的报表。报表显示不同流量分类队列的pre-policy, post-policy和drops。CBQoS通过深层次的监控帮您验证QoS策略。您可以在NetFlow Analyzer中根据报表更改策略。这是用于验证QoS策略的最佳工具。