当前位置:主页 > 管理论文 > 移动网络论文 >

基于Linux系统的流量控制研究

发布时间:2019-03-27 12:04
【摘要】:流量控制常用于计算机网络中,对网络中的安全访问进行有效的控制,并保障重要业务的带宽。企业用户常使用多网卡提高服务器的吞吐量、避免单点故障,以达到性能与经济成本的平衡。使用令牌桶算法在多网卡环境下进行流量控制时存在业务分类的问题,目前,缺少在这种场景下根据业务优先级进行剩余带宽利用的流量控制算法。另外,用户通过流量控制配置工具实现流量控制,Linux系统上的流量配置工具tc未兼顾功能与用户体验两方面,应针对Linux系统设计具有友好用户接口的带宽使用方法。 本文首先围绕Linux系统上的流量控制机制进行研究,分析了Linux内核中流量控制的流程与方法,对流量控制常用的FIFO、RED、TBF、CBQ、HTB等排队规则算法总结了原理及特点;对排队规则算法在内核中的实现方式进行了分析;对流量控制工具tc与流量过滤工具iptables进行了介绍。针对上文提到的问题,本文主要完成了以下工作: 基于多网卡流量控制的需求,在令牌桶算法的基础上,设计了改进的共享令牌桶算法STBF,并在实际应用场景中进行了实验对比。改进的共享令牌桶算法能够在多网卡环境中对不同的网卡设置服务优先等级,在多个网卡间按照优先级的高低实现空闲令牌的共享。实验结果表明,改进的共享令牌桶算法能够在多网卡应用环境中有效达到流量控制的目的,同时实现了按业务优先级分配空闲令牌与TBF算法、HTB算法相比提高了带宽利用率。在仅有优先级高的网卡处于流量繁忙状态时,STBF算法的平均带宽利用率相比TBF算法由73%提升到了97%;同等负载状态下,STBF算法的平均发送时延要低于TBF算法与HTB算法。 针对Linux流量配置工具tc的不足,结合tc的带宽管理功能与iptables的流量过滤功能,设计了一种用于Linux系统的带宽管理方法tctables,并对该方法进行了实验测试。该方法具有容易掌握的使用方法、良好的移植性以及与比tc丰富的过滤功能,支持普通用户、网络管理员、编程开发人员等各类用户进行带宽管理或者带宽管理软件的开发。带宽管理方法tctables包括tctables语言和tctables解释器两部分,文章中分别阐述了两部分的工作原理与实现细节。文章中对使用tctables进行带宽管理进行了测试,结果表明,通过tctables解释器能够编译tctables语言写成的脚本,最终能够实现期望的带宽管理效果。
[Abstract]:Flow control is often used in computer networks to effectively control the secure access in the network and to guarantee the bandwidth of important services. Enterprise users often use multiple network cards to improve server throughput and avoid a single point of failure in order to achieve a balance between performance and economic costs. There exists the problem of traffic classification when using token bucket algorithm to control traffic in multi-network card environment. At present, there is no traffic control algorithm to utilize residual bandwidth according to service priority in this scenario. In addition, the user realizes the flow control through the flow control configuration tool, and the flow configuration tool tc on the Linux system does not take into account both the function and the user experience, so the bandwidth usage method with friendly user interface should be designed for the Linux system. In this paper, the flow control mechanism on Linux system is studied, the flow control flow and method in Linux kernel are analyzed, and the principle and characteristics of the queuing rules algorithm such as FIFO,RED,TBF,CBQ,HTB, which is commonly used in flow control, are summarized. The implementation of queue rule algorithm in kernel is analyzed, and the flow control tool tc and flow filter tool iptables are introduced. In view of the problems mentioned above, the main work of this paper is as follows: based on the demand of multi-network card flow control and based on token bucket algorithm, an improved shared token bucket algorithm STBF, is designed. The experimental results are compared with each other in the practical application scenario. The improved shared token bucket algorithm can set the service priority for different network cards in the multi-network card environment, and realize the sharing of idle tokens among the multiple network cards according to the priority level. The experimental results show that the improved shared token bucket algorithm can effectively achieve the purpose of flow control in the multi-network card application environment. At the same time, the allocation of idle tokens according to the service priority is realized compared with the TBF algorithm. Compared with the HTB algorithm, the bandwidth utilization is improved. When only high priority network cards are in a busy state, the average bandwidth utilization of STBF algorithm is increased from 73% to 97% compared with TBF algorithm, and the average transmission delay of STBF algorithm is lower than that of TBF algorithm and HTB algorithm under the same load condition. Aiming at the deficiency of Linux traffic configuration tool tc, combined with the bandwidth management function of tc and the traffic filtering function of iptables, a bandwidth management method tctables, for Linux system is designed and tested experimentally. This method has many advantages, such as easy to master, good portability and rich filtering function compared with tc. It supports all kinds of users, such as ordinary users, network administrators, programming developers and so on, to carry out bandwidth management or bandwidth management software development. The bandwidth management method tctables consists of two parts: tctables language and tctables interpreter. In this paper, the working principle and implementation details of the two parts are described. In this paper, the bandwidth management using tctables is tested. The results show that the script written in tctables language can be compiled by tctables interpreter, and the desired bandwidth management effect can be achieved at last.
【学位授予单位】:中国科学技术大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP316.81;TP393.08

【参考文献】

相关期刊论文 前10条

1 李勇;周健;邵东轶;;一种基于Netfilter的BitTorrent流量控制方法[J];计算机安全;2008年04期

2 蔡文郁;金心宇;张昱;;基于Linux的网络流量控制机制[J];江南大学学报;2006年04期

3 董剑安,王永刚,吴秋峰;iptables防火墙的研究与实现[J];计算机工程与应用;2003年17期

4 祝琳,王光彩,顾君忠;Linux网络系统对QoS的支持[J];计算机工程;2002年02期

5 魏元雷;戚玉箐;胡西虹;;局域网系统基本性能指标的测试方法[J];计算机工程;2008年06期

6 汤庸,杨学良,区海翔,傅秀芬,李松;基于IP网络的自适应QoS管理方案研究[J];计算机学报;2001年01期

7 乐艳辉;李之棠;柳斌;;基于Netfilter的P2P流量测量系统[J];计算机应用研究;2008年04期

8 孟晓景,井艳芳,张瑜;Linux内核Netfilter防火墙原理与设计[J];山东科技大学学报(自然科学版);2004年02期

9 杨刚;陈蜀宇;;Linux中基于Netfilter/Iptables的防火墙研究[J];计算机工程与设计;2007年17期

10 何宝宏;IP网络的服务质量讲座 第4讲 IP网络流量与拥塞控制技术[J];中国数据通信;2003年05期

相关博士学位论文 前1条

1 曾菊玲;宽带无线接入网动态QoS机制研究[D];北京邮电大学;2010年



本文编号:2448160

资料下载
论文发表

本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2448160.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户41404***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com