当前位置:  技术问答>linux和unix

请问可以对具体的 VLAN ID分配带宽吗?

    来源: 互联网  发布时间:2016-08-22

    本文导语:  1.如果创建了10个vlan,能不能按照各自的  ID 分配带宽,如果可以,那么相应的 TC命令怎么写?谢谢 2.如果不能按ID分配带宽,那么该怎么做,可以实现vlan(不按照具体的ID来分)的带宽分配?谢谢 | ...

1.如果创建了10个vlan,能不能按照各自的  ID 分配带宽,如果可以,那么相应的 TC命令怎么写?谢谢
2.如果不能按ID分配带宽,那么该怎么做,可以实现vlan(不按照具体的ID来分)的带宽分配?谢谢

|
Red Hat Linux 7.3 内核 2.4.18 以上。 
局域网的网络拓扑:


在服务器的eth0 帮定了外部地址 eth0:192.168.1.3 
eth1 帮定了内部地址 eth1:1 172.17.1.1
eth1:2 172.18.1.1
eth1:3 172.19.1.1

现在要实现的功能就是整个出口限制在512kbit(上传流量) , 172.17网段的下载流量下载到512Kbit ,172.18 网段限制在128kbit,172.19的网段限制到 3Mbit。
方法如下:
首先帮定相应的地址:(不细述)
实现路由设定,使用iptables实现。

# iptables –A input -F
iptables -A output -F
# iptables -A forward -F
#echo 1 > /proc/sys/net/ipv4/ip_forward
#允许转发
# iptables -A input –j accept
# iptables -A output -j accept
# iptables -A forward -j accept
# iptables -t nat -A POSTROUTING -s 172.17.0.0/16 -j MASQUERADE
# iptables -t nat -A POSTROUTING -s 172.18.0.0/16 -j MASQUERADE
# iptables -t nat -A POSTROUTING -s 172.19.0.0/16 -j MASQUERADE

#进行IP地址伪装,使得内部的主机的数据包能通过服务器与外界联系。
进行流量管理

#tc qdisc add dev eth0 root tbf rate 512k lantency 50ms burst 1540

#在网卡eth0上使用tbf(TokenBucket Filter)过滤队列,将出口限制在512kbit,延迟50ms,突发数据1540,rate指定的数值就是限制的带宽。
继续在eth1
做限制。

#tc qdisc add dev eth1 root handle 1:0 cbq bandwidth 100Mbit avpkt 1000 cell 8

#创建队列,指明网卡为100M网卡,这个跟流量限制无关,用于计算使用。

#tc class add dev eth1 parent 1:0 classid 1:1 cbq bandwidth 100Mbit rate 5Mbit weight 6Mbit prio 8 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded

创建根分类,带宽限制在5Mbit,并且不允许借用别的带宽。
Prio 后面的参数为优先级,指定数据包处理的顺序。

#tc class add dev eth1 parent 1:1 classid 1:3 cbq bandwidth 100Mbit rate 512kbit weight 5Mbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded

在跟类底下,创建分类1:3 限制带宽为512kbit,不允许借用带宽,用于172.17网段。

#tc class add dev eth1 parent 1:1 classid 1:4 cbq bandwidth 100Mbit rate 128kbit weight 5Mbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded

在跟类底下,创建分类1:4 限制带宽为128kbit,不允许借用带宽,用于172.18网段。

#tc class add dev eth1 parent 1:1 classid 1:5 cbq bandwidth 100Mbit rate 3Mbit weight 10Mbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded 

在跟类底下,创建分类1:5 限制带宽为3Mbit,不允许借用带宽,用于172.19网段。

#tc qdisc add dev eth1 parent 1:3 handle 30: sfq
#tc qdisc add dev eth1 parent 1:4 handle 40: sfq
#tc qdisc add dev eth1 parent 1:5 handle 50: sfq

在每个分类底下,创建队列,使用sfq(Stochastic Faress Queueing)随即公平队列。

#tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 172.17.0.0/16 flowid 1:3
#tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 172.18.0.0/16 flowid 1:4
#tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 172.19.0.0/16 flowid 1:5

使用u32过滤器,对目的地址进行分类,对应已经创建的队列。
通过以上方式实现了简单的流量控制,限制出口的上传流量以及内口的下载流量。
测试从 172.17.1.2 进行下载 限制的是 512kbit ,下载速率为 64-65kB
172.18.1.2 进行下载 限制的是 128kbit,下载速率为 13-16.3kB
172.19.1.2 进行下载 限制的是 3Mbit,下载速率达到 180-500kB
注:不匹配任何规则的数据包,将已root 设定的规则发送。

|
QoS and Traffic Shaping in Transparent Bridge mode
http://www.zeroshell.net/eng/qos/

|
既然能按照端口来分,那么也应该能按照vlan来分....不过,注意划分vlan的管理域和用户域就是了

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • weblogic可不可以当作jndi服务器使用?如果可以,请问如何管理?
  • 请问用ftp可以不可以把整个目录一起上传。
  • 学习unix,急需教程,请问哪里可以下载,或者谁可以提供这方面的材料!
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问jdk1.3的原代码在哪里可以得到?用什么可以看,notpad行不行??
  • 请问在servlet中用out.println输出的html可不可以用javascript写方法,如果可以,怎么用
  • 请问哪种UNIX可以装在PC上?UNIX系统下开发可以用什么语言?给分!
  • 请问在swing中的什么组件上,我可以画矩形和多边形,同时可以响应鼠标事件。
  • 请问那里有兼职的程序员可以做?(语言限于java)有网页制作的也可以呀!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!
  • 弱弱地问,请问从哪里可以下载到新版本常用的linux,可以直接制作成光盘进行安装吗?
  • 请问Linux下单个进程带有的线程数目的最大值在哪里可以查到呢,可以修改么?谢谢
  • 请问直接把linux光盘里面的内容放到硬盘上面可不可以安装?如果可以的话要用哪一个执行文件安装?
  • 请问:javabean里可不可以用JSP里的变量,可不可以用JSP里的组件。
  • 菜鸟问题:请问在哪里可以下载Gcc和Glade还有Glade怎么安装?还有在KDE环境下可以用Glade吗?Thanks!
  • 请问用jb7编写的程序是否可以超平台,即在win下写的程序是否可以在linux下运行?
  • 请问,联想昭阳下装liunx,指纹识别还有联想不用开机也可以用的功能还可以用吗?
  • 请问:linux可以像win98一样作为客户端登录到Win2000 Server上的域吗?如果可以,该如何设置呢
  • 请问怎么可以查看*rpm的文件
  • 请问jsp可以调用EJB吗?
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 请问linux下GUI开发的问题!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3