tc是用来提供流量控制的强大工具,自己在进行DDoS攻击模拟、网络负载测试中一直使用!本文是简单的使用介绍, 流量控制工具TC详细说明有详细的介绍
概要
- 简介
- netem是linux内核版本提供的一个网络模拟功能模块
- tc 是 Linux 系统中的一个工具,全名为traffic control(流量控制)。tc 可以用来控制 netem 的工作模式
- 如果想使用 netem ,需要至少两个条件,一个是内核中的 netem 功能被包含,另一个是要有 tc 。
- 原理
- TC用于Linux内核的流量控制,主要是通过在输出端口处建立一个队列来实现流量控制。
- 一般只能限制网卡发送的数据包,不能限制网卡接收的数据包,所以可以通过改变发送次序来控制传输速率。Linux流量控制主要是在输出接口排列时进行处理和实现的
简单使用
以下功能一般是基于无类队列,可完成如下功能如下(故障模拟)
1. 模拟延迟传输
以使用netem(Token Bucket Filter)为例
tc qdisc add dev ens33 root netem delay 100ms
- 该命令将 ens33 网卡的传输设置为延迟100毫秒发送
tc qdisc del dev