


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、开源路由器上的网络流量控制0 引言随着计算机网络的发展与普及, 人们对网络的应用也变得更 加多元化, 与此同时对于宽带管理、 网络流量控制有了更加高标 准的要求,简单地针对 IP 或端口的宽带已经无法满足多种需求 所需的流量控制。 在目前局域网接入互联网的方式中, 路由器是 一种关键的设备, 在接入路由器的过程中对局域网的访问所进行 的控制是控制网络流量一种可行的方法。 同时,很多商业路由器 也可以对网络流量进行有效的控制, 但是由于商业路由器固件更 新的速度过慢,并且可扩展性差, 无法适应不断丰富的网络应用, 也不能够实现对流量控制的个性化; 另外一个原因就是商业路由 器并不公开源码, 第三
2、方支持软件的开发者无法根据商业路由器 的特性开发专属软件。 目前, 市面上有很多已经开源的路由器软 件,这些软件在特定型号的路由器上能够运行, 以开元路由器软 件为基础,根据具体的需求来实现对网络流量控制的特定开发。1 开源路由器开源路由器在一台普通的 PC机上插入一张刻有开源路由器 XORP(extensible open router plantform 可扩展开发路由器平 台)源代码的CD光盘,运行程序,进入 XORP界面,设置xorpsh 命令接收程序,跟 uinx 命令解释程序非常相似,这需要路由器 的配置以及路由表的控制。 Xorpsh 拥有两种命令模式:配置模 式和操作模式。 配
3、置模式允许用户浏览路由器的配置、 改变配置 以及装入、保存配置; 操作模式则允许路由器通过互相作用监视 操作的状态。 在实现网络流量的控制中, 我们需要对路由器的某 些数据量进行改变、存储,所以选择开源路由器是最适宜的。静 态路由是路由器所设置的路由表。 静态路由无法对网络改变及时 作出反应,通常用于规模较小、拓扑结构的网络。静态路由拥有 简单、可靠和高效的特点,在目前的路由中,静态路由拥有最高 的优先级。开源路由器共有两种路由协议, 分别是RIP ng和RIP, RIP协议是基于距离向量的分布式路由选择协议,拥有的最大优 点是简单,是因特网中的标准协议。 RIP 协议要求网络内部所有 的路由
4、器都需要维护从路由器到每个目的网络的距离记录。 基本 的特点首先是只可以和邻近的路由器进行信息交换, 其次是所交 换的信息只能是目前的路由器知道的全部信息,最后, RIP协议 规定只能按照固定的时间间隔来交换路由表。2 网络流量控制系统的设计 网络流量控制系统的设计现在的网络应用单位, 往往缺少规 范的管理机制, 常常因为某一个网络结点下载上传一些文件而使 得网络流量拥塞。 我们针对这一情况, 设计了能够查看网络的流 量状态并能够相应进行有效控制的开源路由器网络流量控制系 统。开源路由器的网络流量控制系统主要是 3部分:流量统计模 块,流量控制模块和数据包接收模块。数据包接收模块使用 pf-r
5、ing 环形缓冲区捕包机制; 流量统计功能按照端口号、 IP 地 址或者应用协议的不同进行相应的统计, 而统计的结果如果显示 网络拥堵时,则会在流量控制模块中对网络流量进行不同的控 制。3 网络流量控制的理论基础 接收模块接收模块主要采用的是 pf_ring 套接字的方式, pf_ring 是一种新的基于环形缓冲区的套接字模型,它的处理时 间较短,效率较高。其工作原理如下:操作系统将接收到的数据 包复制到内核缓冲区的环形队列中, 再将网卡缓冲区中收到的这 些数据包删除。 环形缓存区在每个套接字被建立时分配, 在套接 字关闭时,环形缓存区被释放。在每次不断接收新内容的时候, 一直是新的数据包按环
6、形的方式将原来的数据包覆盖。流量统计模块 : 按照端口号路由器通过路由器的接口接受 邻近路由器所传输的数据包,其中一些数据包属于路由器本身, 但绝大部分仍是通过其它网络接口转到其它路由器或本地所相 连的主机。TCP/UDP勺端口号代表网络上的不同应用,以单位时 间为单位统计访问TCP/UDP端口的流量,可以检查每个端口不同 的流量分布,根据端口具体的异常情况控制端口流量;以IP地 址系统对源地址和目的地址进行流量汇聚,统计单个 IP 地址在 单位时间内传入传出的流量。 这一统计方式能够根据系统的统计 出各个主机、 不同时段的网络负载, 使系统能够及时对路由进行 控制和调整;按照常规的网络应用一
7、般通过常用的端口就能够 进行识别,随着互联网中P2P技术的不断发展,拓扑结构也越来越复杂,端口的特性也从开始固定的端口衍变成随即的伪装端口 和动态端口,所以系统进行的应用统计主要是为了解析、统计 P2P的应用。对P2P应用的解析,必须首先通过以太网解析,在 获取了 IP 数据包之后通过传输层和网络层解析,得到源目的的 IP 地址、源目的的端口,传输层协议类型以及完整的 payload 信息。由于P2P协议通常是动态的使用不知名的端口进行通信, 所以我们不能只根据端口来检测P2P流,我们还需要对应用层进行协议识别。由流量控制模块 linux 内核所提供的强大的宽带管理代码, 主要通过规则过滤工具
8、路由工具包和 netfilter/iptables 的流 量控制命令 TC结合的方式进行控制。netfilter/iptables IP数据包过滤系统由 netfilter 及 iptables 共同组成,其中 netfilter 是内核空间,主要的组成部分是数据包过滤表,在数 据包过滤表中存储的是内核控制数据包过滤处理的规则。 Iptables 是过滤工具,主要用于修改、插入和删除数据包过滤 表的规则。TC是linux环境中一种拥有强大功能的控制流量的 软件,它由 3 部分组成:过滤器、队列分析和分类器。其中队列 策略的一些算法是控制处理进入队列方式的报文。 过滤器则会根 据过滤条件的要求,
9、将数据包进行分类处理。4 网络流量的具体实现采用 pf-ring 套数字接受模块,用户层通过 socket 建立一 个 pf-ring 类型的 socket ,并返回一个套接字描述符,之后调用 bind 把 socket 绑定至本地 IP 和端口。 Bind 和 socket 实际 上分别使用了 ring-bind 和 ring-create ,这两个函数的意义是 为套数字创建环形缓冲区, 然后在一个设备上进行绑定。 通过建 立 pf-ring 套数字可以直接进行数据传输, 这样是直接访问的内 核空间里的环形缓冲区, 所以可以大量的节省其处理时间, 有效 的提高效率。 之所以把它称作环形缓冲区
10、, 是由于在连续内存中 有 FlowSlotlnfo 结构, FlowSlotlnfo 结构包含了描述环状缓冲 的基本信息,插入删除是循环操作的。当接受数据包时,可以通 过add_skb_to_ring 来讲sk-buff插入环形缓冲区,从skb f date 中读取一个数据包头结构,然后通过使用memcopyl将insert-slot 直接覆盖内存。统计模块经过接收模块所接收来的数据包及信息, 会通过不 同的方式进行处理。通过端口,统计出TCP/UDF源端口和目的端 口的流量。通过 IP 地址,统计出各 IP 以及各 IP 网段的网络数 据流量, 并且统计出传入和传出的流量。 由应用层 pa
11、yload 字段 的字符串特征符统计相应的网络应用流量。 无论是以上哪一种统 计方式统计的结果, 当总体的流量超出一定的界定值时, 可能会 导致网络产生拥堵, 当网络出现拥堵时, 我们就需要根据具体的 情况来选择合适的统计方式为依据,动态调用TC,进行网络流量控制。流量控制模块进行流量控制基本的步骤是: 针对网卡建 立一个队列; 取出数据包源和目的地址的端口、 协议类型等信 息;通过DPI对到达的数据包进行识别;根据用户要求,进 行相应的匹配, 再为匹配上的数据包进行标注; 设置过滤器为 每一分类建立选路, 是数据流进入相应队列, 并相应的分配带宽; 数据包调度。5 结束语由于开放路由软件源代码, 很多的企业甚至个人都能够根据 自己不同的需求,添加适合自己使用的各种路由协议和路由算 法,从而使其性能更加完善。对于开源路由器的研究,我们在开 发路由平台XORPt,设计并实现了 RIP,OSPF BGP等一系列的 协议。我们今后的工作还要继续去完善开源路由器, 并且着重解决 如何发挥标准硬件的优势来降低路由器的成本
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 夫妻忠诚协议书见证及离婚后子女抚养权责任合同
- 公共关系学影响传播试题及答案研究
- 2025年公共关系学考试全攻略试题及答案
- 建筑工程职责编排的试题及答案
- 经济法概论考试时间安排与试题及答案
- 市政工程公共艺术试题及答案2025
- 2025年休闲食品健康化转型与健康食品行业培训市场拓展的专业服务报告
- 行政管理的前沿探索试题及答案
- 2025年高校产学研合作中的技术转移与产学研合作模式创新报告
- 贴合实际的2025年行政管理试题及答案
- DBJ-T 15-98-2019 建筑施工承插型套扣式钢管脚手架安全技术规程
- 鸢飞鱼跃:〈四书〉经典导读智慧树知到期末考试答案章节答案2024年四川大学
- MOOC 统计学-南京审计大学 中国大学慕课答案
- 高考作文标准方格纸-A4-可直接打印
- 毛泽东诗词鉴赏
- 肛肠科的中医特色护理【医院中医护理及保健知识】
- 《高温熔融金属吊运安全规程》(AQ7011-2018)
- 商场纠纷和解书
- 强国必须强军军强才能国安
- 幼儿园教育中的多媒体技术与教学应用
- 第12课 自觉抵制犯罪(课时1)【中职专用】中职思想政治《职业道德与法治》高效课堂(高教版2023·基础模块)
评论
0/150
提交评论