Articles of tc

使用OpenVPN时networking性能较低

当使用来自特定互联网连接的OpenVPN客户端传输大量数据时,来自OpenVPN服务器networking的互联网连接完全中断。 其他OpenVPN客户端不会导致这种性能影响传输相同的数据。 服务器networking具有asynchronous互联网连接,上行9600kbit / s(以iperf测量),下行约50MBit / s。 从OpenVPN服务器到特定客户端的传输仅使用大约2-3MBit / s的可用〜10MBit / s上行。 客户有更大的下游,所以这不是问题。 首先,我发现打到特定客户端的OpenVPN数据包会被分段,所以我使用以下服务器端configuration手动调整了OpenVPN中的tun-mtu设置: tun-mtu 1492 push "tun-mtu 1492" 这不是根本问题,所以我尝试在调制解调器和服务器端networking之间的linux路由器上使用tcconfigurationstream量整形。 这是我用来configurationstream量整形的脚本( eth2是连接到互联网的接口): tc qdisc add dev eth2 root handle 1: htb default 12 tc class add dev eth2 parent 1: classid 1:1 htb rate 9500kbit tc class add dev eth2 parent 1:1 classid 1:10 htb […]

在Ubuntu服务器中创build带有名称或ID的IFB

我正在做一些关于在Ubuntu 16.04中限制网卡收入带宽(入口)的工作。 好像我们不能直接限制收入带宽,而必须使用IFB。 在这篇文章中,我们有一个使用IFB完成这个工作的很好的教程。 我跟着它成功了。 但是,我想知道是否有创buildIFB的名称或ID。 代替: modprobe ifb numifbs=n 我可以创build一个名称如IFB的IFB吗? create ifb name="ifb_1" 最近,有时我需要删除它,并且ID是必需的。 我需要做一些编程工作, modprobe ifb numifbs=n似乎不方便我的编码工作。

内部IP(TC)的速率限制stream量

我已经在我的服务器上安装了ikev2 vpn,但没有像openvpn(tun0)那样的通道接口。 所以我不能使用tc来限制ikev2 vpn速度。 下面的openvpn(tun0)的stream量分布示例。 tc qdisc del dev tun0 root tc qdisc add dev tun0 root handle 1: htb tc class add dev tun0 parent 1:1 classid 1:10 htb rate 1mbit ceil 1mbit tc class add dev tun0 parent 1:1 classid 1:20 htb rate 1mbit ceil 1mbit tc qdisc add dev tun0 parent 1:10 […]

eth0的Q​​disc类正在消失

我有一个脚本来设置端口eth0上的stream量整形。 脚本如下: import os import subprocess def run(cmd): print cmd result = subprocess.check_output(cmd, shell=True) print result interface_name = 'eth0' bandwidth = 1 remove_rule = "sudo tc qdisc del dev {} root".format(interface_name) cmd1 = 'sudo tc qdisc add dev {} handle 1: root htb default 11'.format(interface_name) cmd2 = 'sudo tc class add dev {} parent 1: […]

用tc警察限制传入的stream量

我有一个要求限制总stream量到5mbit。 我知道这可以通过使用下面的tc命令来实现。 “tc filter add dev eth0 parent ffff:protocol ip u32 match u32 0 0 police rate 5mbit burst 10k drop flowid:1” 问题:我有两个交通stream,说tcp和udp。 我的目标是将tcp和udp总stream量限制在5mbit,并使tcp的优先级高于udp。 这就是说,如果总传入stream量是7mbit,我只需要5mbit而tcp丢失较less(因为它有更高的优先级)。 我知道我可以写3个不同的规则,例如3mbit和2mbit。 “ tc filter add dev eth0 parent ffff:protocol ip prio 10 u32 match u32 tcp 0xff police rate 3mbit burst 10k drop flowid:1”“tc filter add dev eth0 parent ffff:protocol […]

如何设置每个客户端的通用networking限制+ TCP确认的优先级

以下情况: networkingA通过慢速连接连接到networkingB. networkingA中的不同主机想要向networkingB中的主机发送stream量 networkingB中的主机向networkingA发送命令 该怎么办: 允许networkingA中的主机发送平均0.3 MBit / s和最大0.5MBit / s的数据。 我想使用令牌桶。 发送TCP确认,优先级从A到B.来自networkingB的命令将与TCP一起发送。 我不想阻止命令传输,那么使用洞牌的客户端就可以阻止A-> B的数据传输。 网关路由器是具有两个接口的Linux系统。 我发现我可以使用tc来configurationstream量整形。 我的命令: sudo tc qdisc add dev eth0 handle 1: root tbf rate 300000 burst 500000 latency 1ms iperf的速度testing给了我265千比特/秒的结果。 问:如何设置正确的tc规则来限制每个客户端的stream量和优先级TCP ACK?

迫使tbf qdisc降低stream量

我通过虚拟适配器连接了我的服务器上的几个虚拟networking空间。 networking空间之间的一个连接限于10 Mbps: root@core-wkst:/var/log# tc -s qdisc show dev veth7dbb.0.1 qdisc tbf 1: root refcnt 2 rate 10Mbit burst 10000b lat 44.4ms Sent 3210158 bytes 43503 pkt (dropped 0, overlimits 0 requeues 0) backlog 66b 1p requeues 0 qdisc netem 10: parent 1:1 limit 1000 delay 1.0ms Sent 3210068 bytes 43502 pkt (dropped 0, overlimits […]

基于Linux的整形器能够咀嚼多lessstream量

我有一个基于Linux的stream量整形器(iptables + tc htb策略)。 它在桥模式下工作。 形成基于IP和端口的stream量(在iptables的“mangle”链中有大约100条规则)。 现在它的吞吐量大概是100MB / s(我不记得pps,networking上有大约800个用户)。 只是想知道 – 什么时候我会达到极限。 基于Linux的整形器可能会通过多lessstream量。 如果你有一个重负载,请你能写你使用什么机器,什么负载。 或者,如果您有任何有关该主题的其他信息,请写下。 提前致谢。

用htb / tc优先使用相同的协议(http下载vs htto浏览)的linuxstream量

我有一个很大的时间阅读,但我不知道如何做到这一点。 总是我在munetworking下载所有http浏览都受到影响,我需要做一些具体的或不使用sfq? 有一个人有一个脚本示例,告诉我如何在同一个协议/端口上运行一个公平的队列 regrads。

stream量控制:标记数据包进行整形

我正在寻求有关使用哪种技术对stream量控制(tc)中的数据包进行分类的build议。 我发现至less有3个可以使用: iptables MARK iptables分类 tcfilter 我应该使用哪一个? 有没有比别人更好的?