将你的 scp 会话的最大上传带宽设定为 100 KB/s:
$ trickle -u 100 scp backup.tgz alice@remote_host.com:
另一种控制你的带宽资源的方式是在每一个接口上限制带宽。这在你与其他人分享你的网络连接的上行带宽时尤为实用。同其他一样,Linux 有一个工具来为你做这件事。wondershaper就是干这个的。
wondershaper 实际上是一个 shell 脚本,它使用 tc 来定义流量调整命令,使用 QoS 来处理特定的网络接口。外发流量通过放在不同优先级的队列中,达到限制传出流量速率的目的;而传入流量通过丢包的方式来达到速率限制的目的。
举个例子, 将 eth0 的最大下载/上传带宽分别设定为 1000Kbit/s 和 500Kbit/s:
$ sudo wondershaper <interface><download-rate><upload-rate>
不是木马,是设置问题,下面是流量的控制方法一、Linux流量控制过程分二种:1、队列控制即QOS,瓶颈处的发送队列的规则控制,常见的有SFQPRIO2、流量控制即带宽控制,队列的排队整形,一般为TBFHTB二、Linux流量控制算法分二种:1、无类算法用于树叶级无分支的队列,例如:SFQ2、分类算法用于多分支的队列,例如:PRIOTBFHTB三、具体实现:1.在网卡上建立以SFQ算法的限流#tcqdiscadddeveth0roothandle1:sfqSFQ参数有perturb(重新调整算法间隔)quantum基本上不需要手工调整:handle1:规定算法编号..可以不用设置由系统指定..#tcqdiscshdeveth0显示算法#tcqddeldeveth0root删除注:默认eht0支持TOS2.在网卡建立以TBF算法的限流#tcqdadddeveth1roothandle1:tbfrate256kbitburst10000latency50ms速率256kbit突发传输10k最大延迟50ms#tc-sqdshdeveth1统计#tcqddeldeveth1root删除3.在网卡建立PRIO#tcqdiscadddeveth0roothandle1:prio#此命令立即创建了类:1:1,1:2,1:3(缺省三个子类)#tcqdiscadddeveth0parent1:1handle10:sfq#tcqdiscadddeveth0parent1:2handle20:tbfrate20kbitbuffer1600limit3000注:此为TBF限速的另一写法,前文有讲解.#tcqdiscadddeveth0parent1:3handle30:sfq4.WEB服务器的流量控制为5Mbps,SMTP流量控制在3Mbps上.而且二者一共不得超过6Mbps,互相之间允许借用带宽#tcqdiscadddeveth0roothandle1:0cbqbandwidth100Mbitavpkt1000cell8#tcclassadddeveth0parent1:0classid1:1cbqbandwidth100Mbitrate6Mbitweight0.6Mbitprio8allot1514cell8maxburst20avpkt1000bounded这部分按惯例设置了根为1:0,并且绑定了类1:1.也就是说整个带宽不能超过6Mbps.#tcclassadddeveth0parent1:1classid1:3cbqbandwidth100Mbitrate5Mbitweight0.5Mbitprio5allot1514cell8maxburst20avpkt1000#tcclassadddeveth0parent1:1classid1:4cbqbandwidth100Mbitrate3Mbitweight0.3Mbitprio5allot1514cell8maxburst20avpkt1000建立了2个类.注意我们如何根据带宽来调整weight参数的.两个类都没有配置成"bounded",但它们都连接到了类1:1上,而1:1设置了"bounded".所以两个类的总带宽不会超过6Mbps.别忘了,同一个CBQ下面的子类的主号码都必须与CBQ自己的号码相一致!#tcqdiscadddeveth0parent1:3handle30:sfq#tcqdiscadddeveth0parent1:4handle40:sfq缺省情况下,两个类都有一个FIFO队列规定.但是我们把它换成SFQ队列,以保证每个数据流都公平对待.#tcfilteradddeveth0parent1:0protocolipprio1u32matchipsport800xffffflowid1:3#tcfilteradddeveth0parent1:0protocolipprio1u32matchipsport250xffffflowid1:46.过滤器过滤示例#tcfilteradddeveth0protocolipparent10:prio1u32matchipdport220xffffflowid10:1在10:节点添加一个过滤规则,优先权1:凡是去往22口(精确匹配)的IP数据包,发送到频道10:1..#tcfilteradddeveth0protocolipparent10:prio1u32matchipsport800xffffflowid10:1在10:节点添加一个过滤规则,优先权1:凡是来自80口(精确匹配)的IP数据包,发送到频道10:1..#tcfilteradddeveth0protocolipparent10:prio2flowid10:2在eth0上的10:节点添加一个过滤规则,它的优先权是2:凡是上二句未匹配的IP数据包,发送到频道10:2..#tcfilteradddeveth0parent10:0protocolipprio1u32matchipdst4.3.2.1/32flowid10:1去往4.3.2.1的包发送到频道10:1其它参数同上例#tcfilteradddeveth0parent10:0protocolipprio1u32matchipsrc1.2.3.4/32flowid10:1来自1.2.3.4的包发到频道10:1#tcfilteradddeveth0protocolipparent10:prio2flowid10:2凡上二句未匹配的包送往10:2#tcfilteradddeveth0parent10:0protocolipprio1u32matchipsrc4.3.2.1/32matchipsport800xffffflowid10:1可连续使用match,匹配来自1.2.3.4的80口的数据包欢迎分享,转载请注明来源:夏雨云
评论列表(0条)