| 网站首页 | 范文 | 演讲致词 | 汇报体会 | 总结报告 | 公文方案 | 领导讲话 | 党建工会 | 论文 | 文档 | 书信 | 
您现在的位置: 范文大全网 >> 论文 >> 计算机论文 >> 正文 用户登录 新用户注册
浅析网络流量控制系统在开源路由器上的实现           
浅析网络流量控制系统在开源路由器上的实现

本系统在dd一wrt原有功能的基础上扩展开发了流量统计和控制的功能,通过查看网络流量状态,并对带宽进行分配来控制网络流量,从而有效地解决了网络拥塞的问题。
1总体方案设计
现在一些小区、楼层、小的企事业单位,由于人们大量的下载上传以及p2p的普遍使用,并且缺乏一种规范的管理机制,所以经常导致网络流量激增,甚至拥塞。因此针对这种情况,设计一种能查看网络流量状态,并对其进行有效控制的基于开源路由器的流量控制系统。
系统主要分成三个部分设计:数据包捕包模块、流量统计模块和流量控制模块。为了有效捕获数据包,捕包模块采用pf _ ring的环形缓冲区捕包机制。流量统计功能可按ip地址、端口号和应用协议三种方案进行统计。当网络发生拥塞时,在流量控制模块中动态地调用tc(traffic control)来对网络流量进行控制。系统的基本流程如图1所示。

2关键技术
2.1 pf _ ring捕包机制

针对传统libpcap}捕包处理时间长、效率低的缺点,采用了一种新的基于环形缓冲区的套接字模型pf _ ring。它的主要工作原理如下所述:
采用pf_ ring技术,操作系统将包采用dma方式拷贝到内核缓冲区的环形队列中,再把网卡缓冲区中收到的这些包丢弃,不把它们传人内核协议栈缓存区中进行排队。lOcaLhOst环形缓存区在每个套接字被建立时分配,直到套接字关闭时,环形缓存区才被释放。每次由网卡缓存区拷人内核环形缓存区时,不会进行分配和去配的操作,而是新到的包按环形的方式,将原有的包覆盖。pf_ ring技术还提供了对mmap技术的支持。该技术将用户应用程序空间映射到内核缓存区,从而省略了将数据从内核缓存区向用户缓存区的拷贝操作。这样可以节省一次拷贝所占用的系统资源和缩短包处理的时间,从而提高了捕包的效率。
2.2流量统计方案
(1)按照ip地址汇聚。
系统对源和目的ip地址进行流量汇聚,统计出各ip地址单位时间内的上行流量和下行流量。这种统计方式能反映出本地各主机、各网段的网络负载情况,系统可以此为依据,进行路由调整及流量控制。
(2)按照端口号汇聚。
tcpiljdf’的端口号代表网络上的不同应用(http, f"ip, p2p等,按照单位时间内访问的tcp/udi〕端口来统计流量,可以查看各端口的流量分布情况,当网络出现异常时,可按照端口号来进行流量控制。
(3)按照网络应用汇聚。
常规的网络应用一般通过常用的端口就可以识别,并进行流量统计,然而p2p技术不断地发展演进,其拓扑结构从最初的集中式发展到纯分布式再到目前的混和式架构,其端口特性也由最初的固定端口发展到随机动态端口再到伪装端口。所以,系统对应用进行统计,主要是对p2p应用的解析统计。
对p2p应用的解析,首先是经过以太网解析,获取ip数据包,然后再通过网络层和传输层解析,得到源目的ip地址、源目的端口、传输层协议类型和完整的payload信息。由于p2p协议一般动态使用非知名端口进行通信,因此仅仅根据端口来检测p2p流是不准确的,必须进行应用层协议识别。在应用层识别过程中,根据协议格式以及消息里的特征字符串,采用深度包检测(dpi)方法来识别p2p业务。深度包检测时采用模式匹配方法查找特征字符串。例如,可以根据特征字符串“0x13 bittorrent protocol”检测出bit-torrent协议数据包,根据特征字符串“oxe319010000"检测出edonkey2000协议数据包。根据网络应用统计流量就是要按照这些特征字符串来进行流量汇聚。同时,解析p2p协议,也为按应用进行流量控制提供了一种可靠的手段。
2.3带宽分配机制
linux内核提供了强大的带宽管理代码,它主要使用规则过滤工具netfilter/iptables和路由工具包的流量控制命令tc相结合的方式来进行带宽控制。
netfilter/iptables ip信息包过滤系统实际上是由两个组件netfilter和iptables组成的。netfilter组件被称为内核空间(kernel印ace),是内核的一部分,主要由一些信息包过滤表组成,这些表中包含内核用来控制信息包过滤处理的规则集。iptables组件则是一种规则过滤工具,它称为用户空间(user space),主要用于插人、修改和除去信息包过滤表中的规则。
tc是linux环境下一种功能强大的网络流量控制软件,它可以分为三个部分:队列策略((,lueue disci-pline)、分类器(classifier)和过滤器(filter )。队列策略实质是一些算法,控制如何处理进入队列的报文。队列策略算法主要有fifo(先进先出),red(随机早期探测)、cbq(类基队列)和htb层次令牌桶)等。过滤器按照过滤条件,将数据报进行分类处理。一般来说,数据报的处理步骤如下:队列策略对数据报文进行调度,过滤器根据报文信息来决定把它放人到哪一个类中。在不同的类中,每个类也包含一个队列策略,同样进行调度、分类,将报文按照既定的规则排序发送出去。
3系统实现
3.1捕包模块
模块采用pf _ ring套接字的方式,用户层通过调用socket( pf_ ring, sock一raw, tons(eth_p_all))建立一个pf_ ring类型的、ket,并返回一个套接字描述符。接着调用bind (fd, ( s

[1] [2] [3] 下一页

  • 上一个论文:

  • 下一个论文:


  • 看了《浅析网络流量控制系统在开源路由器上的实现》的网友还看了:
    [法律论文]浅析涉外职务犯罪预防
    [法律论文]浅析名人代言虚假广告的民事责任
    [法律论文]浅论网络购物中消费者权益的法律保障
    [电子机械]浅析基于可靠性工程的电子信息装备质量管理研究
    [免费范文]浅析从律师业务的拓展看公证
    [免费范文]浅析实际持卡人不能构成恶意透支型信用卡诈骗罪
    [法律论文]浅析非法取得死者财物与犯罪的界限
    [法律论文]浅析电动自行车的法律监管论述
    [法律论文]浅析醉酒人刑事责任之中外理论
    [法律论文]试论网络裸聊行为之刑法分析

    计算机论文
    普通论文校园网络安全问题分析与对策
    普通论文数据库的查询优化方法分析
    普通论文容错技术研究
    普通论文计算机辅助数学分析教学的好处
    普通论文试论中文信息处理的主流技术
    普通论文关于金融计算机犯罪分析和防范
    普通论文关于网络传播对网民行为方式的影
    普通论文试析Blackboard的网络协作学习平
    普通论文浅议网络教学中的情感互动
    普通论文决策树在基于消费者外表的服装营
    普通论文现场总线控制系统在石化行业的应
    普通论文西部欠发达农牧区Internet网络信
    论文
    普通论文[今日更新]大学2009年学生工作总结
    普通论文[今日更新]浅谈管理层收购对企业发
    普通论文[免费范文]保持党员先进心得体会(一
    普通论文[今日更新]元宵节祝福短信精选
    普通论文[法律论文]论危险责任的若干理论问
    普通论文[免费范文]执法局2007年上半年工作
    普通论文[今日更新]试谈想象思维在记叙文写
    普通论文[企业管理]诚信是企业之本
    范文大全
    普通范文[范文大全]发改局2009年综治维稳工
    普通范文[范文大全]市劳动和社会保障局新任
    普通范文[范文大全]2010年学校党支部工作总
    普通范文[范文大全]2010年五一劳动节公司职
    普通范文[范文大全]乡镇纪检监察工作要点
    普通范文[范文大全]劳教民警征文:我的职业
    普通范文[范文大全]2011年市卫生局《廉政准
    普通范文[范文大全]2011年中学生有关“地球
    演讲致词
    普通演讲[节日祝福语]庆祝建国60周年征文:乡路
    普通演讲[庆典致辞]医院员工劳动合同管理办法
    普通演讲[开业开幕]学校运动会开幕词
    普通演讲[主持词]区委书记在市党代会分团讨
    普通演讲[庆典致辞]在××县×××煤矿竣工验
    普通演讲[竞聘演讲稿]大学生竞聘学生会生活部演
    工作范文
    普通总结[年终总结]2010年统计局优质服务工作
    普通公文方案[公文写作]##县直部门包村兴产业调查
    普通公文方案[公文写作]在作风建设中体现党员的先
    普通公文方案[公文写作]管理咨询公司的知识管理
    普通总结[年终总结]选调生工作总结
    普通公文方案[公文写作]*乡政府党风廉政建设和反腐
    普通公文方案[合同范本]物流仓储合同
    普通汇报体会[学习体会]达内IT培训学习心得
    普通公文方案[公文写作]花木租赁合同
    普通公文方案[公文写作]浅谈机关党建如何更好地为
    普通党建工会[政府政务]在全县狂犬病防治工作会议
    普通总结[工作计划]高二年级12月份工作计划