网络流量控制相关关键技术研究

2022-09-12

随着基于TCP/IP协议的互联网飞速发展和网络业务的极大丰富, 互联网己经逐渐发展成为承载多种业务、服务多类用户群体的全球性公共信息传输平台。但是由于IP协议固有的无连接特性和传统IP网络尽力而为 (Best-effort) 的服务原则, 传统的互联网无法向用户提供有效的服务质量 (Qo S) 保障, 也不能实现网络资源的有效监控和管理。另一方面, 网络规模的不断扩大、网络结构的日趋复杂, 加重了网络管理、网络运作的负担, 而网络管理的效果直接影响到网络的运行质量。研究如何进行资源分配和流量规划, 提高网络管理的效率, 是改善网络环境运行质量的重要问题。网络流量控制模型一般包括流量分类器、流量整形器、流量监测器和队列管理器等几个部分。分类器的功能是按照不同的优先级或者控制策略, 把数据包注入到不同的队列;整形器的功能是使数据包比较平稳地注入网络, 减少拥塞的发生, 提高传输效率;监测器是对网络控制模块实施效果进行监测分析, 打印报表等;队列管理器的功能主要是队列缓存管理以及队列调度管理, 这些与业务的带宽分配有关。

通过对流量的分类, 划分流量的优先级或者应用不同控制策略, 确保重要的流量优先通过, 并限制不重要的流量, 网络流量的分类是后续控制阶段的基础;主动缓存管理通过丢包策略, 减少网络瓶颈的拥塞几率;各种不同类的流量进入不同的队列中, 通过队列调度算法, 分配不同的带宽, 对关键业务流可以分配合适的带宽, 保证其通畅性;流量整形, 使数据包比较平缓地在网络边界瓶颈处转发出去, 减少包丢失率, 能提高TCP/UDP的传输性能;而流量监测和统计分析, 能够对实施效果进行监测分析, 通过这些信息反馈, 从中发现网络控制各模块的不足, 以便后续改进。

1 流量控制的意义

在网络边界节点, 对网络流量进行控制, 能够在骨干网缺乏端到端服务质量保证机制的情况下, 提供部分的服务质量解决方案, 有效缓解Internet的服务质量压力, 特别是能够提高重要业务流量的服务质量性能同时从总体上实现对企业网络内部的资源优化和管理, 提高网络资源的利用率。

目前在Internet上传输的流量大部分是TCP和UDP流量。通常所谓的关键任务应用一般都采用TCP作为传输协议。因此保证TCP的传输性能是保证关键业务服务质量的重点。TCP是针对Internet的尽力服务提供方式设计的传输层协议, 它采用丢包触发、窗口控制、加法递增乘法递减AIMD (Additional Increase Multiplied Decrease的拥塞控制机制来控制流量, 这种流量控制一方面导致了网络流量的突发性, 另一方面导致了TCP会话本身的速率非常不稳定, 还使得TCP传输中的丢包不可避免。因此, 必须提高TCP传输性能来保证关键业务流量传输的稳定性。UDP是Internet中被广泛用来传输流媒体的协议。UDP协议最核心的问题是它没有传输层的流量控制机制 (通常依靠应用层来调节) , 而缺乏流量控制的UDP流量会导致网络资源的不公平利用, 同时影响TCP流量的性能。因此, 必须对TCP和UDP流量进行管理控制, 以实现有效的带宽利用。

2 流量分类

数据包分类就是根据数据包本身携带的信息或与数据包有关的信息 (主要指IP包头和传输层头部携带的信息) 索引预先设置的分类器, 查找匹配的规则来达到区分数据包的目的。数据包分类的结果决定了这个数据包属于哪一数据流以及此数据包应达到什么样的服务等级, 然后转发引擎根据分类的结果采用相应的处理来满足用户的需求。这些处理可能包括丢弃未授权的分组、进行特殊的排队和调度处理或者作为路由选择的依据等。许多网络服务需要进行数据包分类, 如寻路、防火墙访问控制、策略路由和业务帐单等。分类器是分类规则和分类策略的集合。一般情况下, 分类器中的一条规则代表一种业务流, 在数据包转发过程中接受相同的服务。分类规则是分类算法处理数据包的依据。一条分类规则可以看成是一个过滤器 (Filter) 和一种处理行为 (Action) 的组合。

3 队列调度管理

当某个输出端口的分组到达速率快于输出端口的分组传输速率时, 就会发生网络拥塞, 队列调度管理常用来控制网络拥塞。队列调度管理分为队列调度以及队列存储器管理。

3.1 队列调度

管理分配给每一服务类的输出端口带宽, 通过队列调度, 可以控制每一服务类对有限的网络资源—链路带宽的占用。

3.2 队列存储器管理

在队列出现拥塞时, 通过确定何时丢弃、丢弃何种分组来控制队列中分组的数量, 通过队列存储器管理, 可以控制每一服务类对另一种有限的网络资源—分组缓冲器的占用。虽然这两种机制紧密相关, 但它们解决问题的方式却截然不同。队列调度通过对不同服务类分配不同的输出端口带宽比来管理拥塞, 而队列存储器管理通过控制队列的平均深度来避免拥塞的发生。

4 流量整形

流量整形 (Traffic Shaping) 也称速率整形、流量控制、传输整形、流量引导等。流量整形首先用在信源数据流整形, 尽管信源产生数据流总体速率可能不变或有规律, 但短时无序性使得数据流速率起伏很大不适合直接进入网络, 常用漏桶 (Leaky Bucket) 或令牌桶 (Token Bucket) 先进行流量整形再进入网络。其次, 流量整形也常用于平滑网络传输中的业务流, 从而控制拥塞。

5 流量监测与统计

网络流量监测 (n e t w o r kT r a f f i c Measurement) 提供了一种探索实际环境中网络特性的手段。网络流量监测是指从网络设备上采集数据、收集数据、分析数据的过程。它从网络中采集一些具体指标数据并反馈给监测者。这些数据可以用来作为分析网络性能、了解网络运行动态、诊断可能存在的问题、甚至预测可能出现问题的“度量值”。这一技术目前被广泛应用于商业和科研领域。在商业领域, 一个网络由网络运营者和网络使用者组成。网络流量监测作为双方都需要的工具, 这方面的软件开发有着广阔的市场前景。对于一个大型IP网络运营者来说, 了解整个网络的运行状况、掌握网络的动态变化、了解用户的使用情况, 网络流量监测作为网络管理的一部分, 发挥着重要作用。

在科研领域, 网络流量监测技术作为“测量仪”, 是实现具体建模、分析的必要前提和手段。在网络安全的研究方面, 借助网络流量监测捕获流量数据是IDS (入侵监测系统) 中的必要一步。在互联网协议开发方面, 网络流量监测技术可以用来分析具体网络协议的性能。在互联网流量工程的研究方面, 网络监测提供了获取实际网络特性的手段, 而网络模拟和理论分析则侧重于在真实的网络之上建立起抽象的分析模型。

摘要:伴随WebGIS应用范围的不断扩展, 测绘部门提供的地理信息服务由于数据量大、实时性强, 对网络流量的控制相比于其他行业有着更加紧迫的需求。本文全面分析了网络流量控制的相关关键技术, 相信对从事相关工作的同行有着重要的参考价值和借鉴意义。

关键词:网络流量,控制模型,队列调度管理,流量监测

上一篇:企业物资采购管理中集约化管理系统的应用探析下一篇:关于单片机实践教学的探讨