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

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
『shell』tciptablesHTBSFQ(backup)^^

#!/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)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档