『shell』tc+iptables+HTB+SFQ (backup)^_^.docVIP

  • 1
  • 0
  • 约1.54万字
  • 约 12页
  • 2015-08-28 发布于安徽
  • 举报
(完美WORD文档DOC格式,可在线免费浏览全文和下载)值得下载!

#!/bin/bash #脚本文件名: tc2 ######################################################################################### #用TC(Traffic Control)解决ADSL宽带速度技术 Ver. 1.0? ?by KindGeorge 2004.12.27? ? ? ? # ######################################################################################### #此脚本经过实验通过,更多的信息请参阅 #tc+iptables+HTB+SFQ # #一.什么是ADSL? ADSL(Asymmetric Digital Subscriber Loop,非对称数字用户环路) #用最简单的话的讲,就是采用上行和下行不对等带宽的基于ATM的技术. #举例,我们最快的其中一条ADSL带宽是下行3200Kbit,上行只有320Kbit.带宽通常用bit表示. # #1、下行3200K 意味着什么? #因为 1Byte=8Bit ,一个字节由8个位(bit)组成,一般用大写B表示Byte,小写b表示Bit. #所以 3200K=3200Kbps=3200K bits/s=400K bytes/s. #2、 上行320K 意味着什么? # 320K=320Kbps=320K bits/s=40K bytes/s. #就是说,个人所能独享的最大下载和上传速度,整条线路在没任何损耗,最理想的时候, #下载只有400K bytes/s,上传只有最大40K bytes/s的上传网速. #这些都是理想值,但现实总是残酷的,永远没有理想中那么好.至少也有损耗,何况内部网有几十台 #电脑一起疯狂上网. # #3.ADSL上传速度对下载的影响 #(1)TCP/IP协议规定,每一個封包,都需要有acknowledge讯息的回传,也就是说,传输的资料, #需要有一个收到资料的讯息回复,才能决定后面的传输速度,並决定是否重新传输遗失 #的资料。上行的带宽一部分就是用來传输這些acknowledge(确认)資料模?鄙闲懈涸毓? #大的时候,就会影响acknowledge资料的传送速度,并进而影响到下载速度。这对非对称 #数字环路也就是ADSL这种上行带宽远小于下载带宽的连接来说影响尤为明显。 #(2)试验证明,当上传满载时,下载速度变为原来速度的40%,甚至更低.因为上载文件(包括ftp #上传,发邮件smtp),如果较大,一个人的通讯量已经令整条adsl变得趋向饱和,那么所有的数据 #包只有按照先进先出的原则进行排队和等待.这就可以解释为什么网内其中有人用ftp上载文件, #或发送大邮件的时候,整个网速变得很慢的原因。 # #二.解决ADSL速度之道 #1. 为解决这些速度问题,我们按照数据流和adsl的特点,对经过线路的数据进行了有规则的分流. #把本来在adsl modem上的瓶颈转移到我们linux路由器上,可以把带宽控制的比adsl modem上的小一点, #这样我们就可以方便的用tc技术对经过的数据进行分流和控制. #我们的想象就象马路上的车道一样,有高速道,还有小车道,大车道.需要高速的syn,ack,icmp等走 #高速道,需要大量传输的ftp-data,smtp等走大车道,不能让它堵塞整条马路.各行其道. #2. linux下的TC(Traffic Control)就有这样的作用.只要控制得当,一定会有明显的效果. #tc和iptables结合是最好的简单运用的结合方法. #我们设置过滤器以便用iptables对数据包进行分类,因为iptables更灵活,而且你还可以为每个规则设 #置计数器. iptables用mangle链来mark数据包,告诉了内核,数据包会有一个特定的FWMARK标记值(hanlde x fw), #表明它应该送给哪个类( classid x : x),而prio是优先值,表明哪些重要数据应该优先通过哪个通道. #首先选择队列,cbq和htb是不错的选择,经过实验,htb更为好用,所以以下脚本采用htb来处理 #3. 一般系统默认的是fifo的先进先出队列,就是说数据包按照先来先处理的原则,如果有一个大的数 #据包在前面,#那么后面的包只能等前面的发完后才能接着发了,这样就算后面即使是一个小小的ack包, #也要等待了,这样上传就影响了下载,就算你有很大的下载带宽也无能为力. #HTB(Hierarchical Token Bucket, 分层的令牌桶) #更详细的htb参考 http://luxik.cdi.cz/~devi

文档评论(0)

1亿VIP精品文档

相关文档