基于GNS3仿真的QoS部署与性能测试

2019-05-13 10:24曹利陈亮王军
计算机时代 2019年3期

曹利 陈亮 王军

摘 要: QoS主要用于网络拥塞或过载时,确保重要业务不受延迟或丢弃,其部署比较繁琐和复杂,有效性也需要进行专门的压力测试才能得到验证。基于此,提出一种利用仿真技术模拟企业网的业务和QoS部署,并进行有效性测试。实验结果证明,基于GNS3的QoS策略部署与性能测试技术可以有效降低企业成本以及部署难度。

关键词: 服务质量控制; GNS3; SLA; 压力测试

中图分类号:TP391.9 文献标志码:A 文章编号:1006-8228(2019)03-05-04

QoS policy deployment and performance testing based on GNS3

Cao Li1, Chen Liang1, Wang Jun2

(1. School of Computer Science, Nantong University, Nantong, Jiangsu 226001, China; 2. Modern education center, Jiangsu College)

Abstract: QoS is mainly used to ensure that important services of the network are not delayed or discarded when network traffic is congested or overloaded. However, the deployment of QoS is cumbersome and complex. Validity after deployment requires special stress test to verify. For this reason, a scheme is proposed which can use simulation technology to simulate the enterprise network's service and QoS strategy, conduct stress testing, and verify the effectiveness of QoS. The experimental results show that the QoS deployment and performance testing technology based on GNS3 can effectively reduce the enterprise's cost and deployment difficulty.

Key words: QoS; GNS3; SLA; stress test

0 引言

服务质量控制(QoS,Quality of Service)[1]是网络中管理数据流的可用带宽、延迟、抖动以及分组丢失等参数的网络性能的关键技术,但QoS部署后有效性验证比较复杂,一般需要委托专业公司做压力测试,付出不菲的费用,同时影响网络业务正常进行。基于此,课题设计了一个仿真环境下企业网QoS部署和测试方案,方案在仿真搭建的企业网中部署QoS策略,采用SLA技术模拟出常见网络业务和流业务,如HTTP,DNS,P2P、VoIP等多种流量混合环境,进行大流量的压力测试。对QoS部署前后网络平台相关性能进行分析,经济而高效的验证QoS策略对企业网的有效性。

1 相关技术

1.1 GNS3和 QoS[2-3]

GNS3是一款能運行在多种平台的图形化网络工程仿真软件,该软件通过加载Cisco IOS进行网络仿真,能保证基于GNS的QoS性能仿真测试项目等效地迁移至真实业务环境。网络QoS的策略设置主要考虑服务模型、队列调度算法、拥塞控制等问题,课题选择使用IP Precentend进行标记分类、LLQ队列管理和CBWFQ拥塞避免技术进行仿真实验。

1.2 SLA技术[4-5]

SLA(Service-Level Agreement)是Cisco IOS的内置工具,可以模拟产生不同协议类型的数据包,在指定网络源地址和目的地址之间通信,收集响应时间、单向、延迟、抖动、丢包率、语音品质、网络资源可用性、应用程序性能以及服务器响应时间等相关信息,用于核实服务保证、检查网络性能、改善网络的可靠性和预先发现网络问题,进而调整和配置网络。课题采用SLA技术实现仿真网络的常规业务性能测试。

2 QoS策略部署

2.1 企业网仿真

企业网仿真环境通过GNS3模拟器实现,拓扑如图1所示。

图1中,共使用9台网络通信设备,其中PC用以模拟企业员工终端设备; HTTP服务器模拟企业网内部传统业务的服务器,供企业员工访问资源;R4、R5作为汇聚层设备,用作PC和服务器的网关;R2、R3作为核心层设备,配置PBR(Policy Based Routing,策略路由)指定路由下一跳到防火墙;防火墙模拟企业网内部安全设备;云用来模拟Internet外部网络。汇聚层、核心层和防火墙之间使用单区域OSPF路由协议实现各个路由器和防火墙之间互通;在R4和R5上进行路由重分布,把直连网段的路由重分布进OSPF域内实现PC到服务器之间的相互访问。

课题选择PBR控制路由,使网络数据流量按照方案期望的路径流动。配置时采用嵌套式的配置模式,使用ACL抓取本方案关心的流量;Route-map调用ACL执行相应策略;最后在接口中调用Route-map实现PBR的部署。核心配置如下:

Routet(config)#iP access-list extended pc //定义ACL策略

Routet(config-nacl)#permit ip any 10.10.2.0 0.0.0.255

Routet(config-nacl)#permit ip any 10.10.3.0 0.0.0.255

Routet(config)#route-map pc permit 10

//Route-map调用ACL执行相应策略

Routet(config)#match ip address pc

Routet(config)#set ip next-hop 10.1.12.1

Routet(config-if)#ip policy route-map pc

//在接口中调用Route-map实现PBR的部署

2.2 QoS部署

课题采用MQC模式部署QoS,MQC(Modular QoS,模块化QoS)使用ACL捕获数据包,Class-map调用ACL实现分类,Policy-map调用Class-map定义优先级策略。使用MQC的部署方式能够使QoS的部署过程更加逻辑与规范化。

⑴ 分类标记部署

分类是通过设定Class-map来区分不同数据包的种类。首先通过ACL捕获数据包,并设置Class-map调用相应的ACL进行分类。核心配置如下。

Routet(config)#iP access-list extended p2p

//定义一个p2p的规则

Routet(config-ext-nacl)#Permit udp any eq 15000

host 10.1.1.1

Routet(config-ext-nacl)#Permit udp any eq host

10.1.1.1 eq 15000

Routet(config)#ip access-list extended voip

////定义一个VOIP的规则

Routet(config-ext-nacl)#Permit udp any any eq 16385

Routet(config-ext-nacl)#Permit udp any eq 16385 any

⑵ LLQ队列配置

不同业务流采取高优先级队列优先转发,设限带宽的方式进行LLQ队列管理。课题对ICMP、IP、VOIP、DNS、HTTP业务进行配置。其中VOIP类为强制优先级队列,并给予带宽的35%。其余业务流使用 bandwidth 命令进行FT机制进行调度,实现业务区别转发。以VoIP、DNS为例,其核心配置如下。

Routet(config)#Policy-map qos //定义不同业务调度机制

Routet(config-pmap)#Class voip

Routet(config-pmap)#Set ip precedence 5

Routet(config-pmap)#Priority percent 35

Routet(config-pmap)#Class dns

Routet(config-pmap)#Set ip precedence 3

Routet(config-pmap)#Bandwidth percent 20

2.3 压力测试设计

本课题使用Cisco SLA技术模拟企业环境中的传统业务,例如DNS、HTTP、VOIP、ICMP等流量,进行网络带宽的压力测试。

⑴ UDP-Jitter通过UDP报文检测网络质量。课题实现PC向目的地址为10.2.1.2的服务器发送UDP端口号为16384的报文,每5秒发送一次。核心配置如下。

Routet(config)#Ip sla 2 //定义一个IP SLA操作

Routet(config-ip-sla)#Udp-jitter 10.3.1`.2 16384

source-ip 10.1.1.1 //向目的地址为10.2.1.2的服务器发送UDP端口号为16384的报文

Routet(config-ip-sla)#Frequency 5 //定义操作频率

Routet(confi)#Ip sla schedule 2 life forever start-time now

//配置调度参数,life默认为3600s,forever表示一直采集数据,start-time表示采集数据开始时间

⑵ 课题通过IP LSA模拟产生HTTP请求,通过服务器应答分析HTTP的连接时间、响应时间等性能。核心配置如下。

Routet(config)#Ip sla 3

Routet(config-ip-sla)#http raw http://10.3.1.2r 10.3.1`.2 source-ip 10.1.1.1

Routet(config-ip-sla)#http -raw-request

Routet(config-ip-sla)#get /exec/show/interface/crhttp\r\n

Routet(config-ip-sla)#exit

Routet(confi)#Ip sla schedule 3 life forever start-time now

⑶ 基于SLA技术的VoIP作業模拟是在UDP-Jitter的基础上添加G711ulaw参数,从而能够比较参数数值大小判断通话质量。核心配置如下。

Routet(config)#Ip sla 5

Routet(config-ip-sla)#Udp-jitter 10.3.1`.2 16385

source-ip 10.1.1.1 codec g711allaw

Routet(config-ip-sla)#Routet(config-ip-sla)#Frequency 10

Routet(config)#Ip sla schedule 5 life forever start-time now

⑷ 基于SLA技术的DNS作业模拟内网的DNS请求流量。在对端服务器启动DNS服务后,获得相应DNS性能参数。核心配置如下。

Routet(config)#Routet(config)#Ip sla 4

Routet(config-ip-sla)#Dns DNS name-server 10.3.1`.2

source-ip 10.1.1.1

Routet(config-ip-sla)#Frequency 10

Routet(confi)#Ip sla schedule 4 life forever start-time now

3 QoS有效性分析

3.1 结果测试

网络性能分析主要比较压力测试前、模拟流量注入和QoS部署后三个阶段网络性能的变化。限于篇幅,以QoS部署后的测试过程及其测试结果进行分析,主要测试网络业务有ping 、UDP、HTTP、DNS、VoIP等。下面给出HTTP和VoIP测试结果。

⑴ 使用show ip sla statistics 3查看HTTP测试参数信息,如图2所示。

⑵ 使用show ip sla statistics 5查看VoIP测试参数信息,如图3所示。

3.2 性能分析

通过对比网络正常、拥塞和部署Qos之后的业务指标数据,分析部署Qos前后的关键业务性能。

⑴ HTTP和DNS业务都是对延迟敏感流量,选取两种业务中延迟数据进行分析,如图4所示。

由图4可知,正常情况下,DNS和HTTP的延迟70多毫秒。在极度拥塞的网络环境中,由于没有任何的保护转发机制,延迟出现陡增,会严重影响用户体验。部署Qos之后由于DNS和HTTP的优先级相对较高,LLQ队列能够相对有效的保障两种报文的转发,因此延迟达到正常状态或与稍高于正常状态,不影响用户体验。

⑵ 课题采用MOS计分方法对VoIP质量进行评测,图5为VoIP的三种环境下的MOS得分,由图可知拥塞环境下VoIP的MOS得分下降,用户通话质量无法得到有效保障。在部署Qos之后,VoIP的MOS值恢复到正常。

4 结束语

课题主要研究了在GNS3仿真环境下使用SLA技术产生不同业务流量,模拟拥塞状态,部署QoS策略进行网络质量控制的有效性验证。仿真结果表明部署Qos能有效的实现网络拥塞情况下高优先级业务的优先转发,缓解拥塞导致的业务影响。课题提出的通过仿真环境进行Qos的部署测试,进行有效性验证后再部署到物理网络,可以有效地降低企业网Qos控制成本以及部署难度。

参考文献(References):

[1] (美)Wendell Odom Michael J. Cavanaugh,刘丹宁译.Cisco

Qos认证考试指南(第2版)[M].人民邮电出版社,2014.

[2] 黄天云.视频流量分析与Qos管理[M].电子科技大学出版社,

2013.

[3] 李建东,晋晓辉.IP网络QoS的研究现状[J].西安电子科技大

学学报,2002.2.

[4] 易小华.网络视频业务平均意见分统计研究及在流分类中的

应用[D].南京邮电大学,2017.

[5] 王丽娜.SLA和VRRP的多出口校园网可靠性实验设计[J].

實验室研究与探索,2016.35(5):102-107