tc:traffic control
tc工具是基于Linux 内核内置的 Traffic Control框架。tc与TC框架的关系类似于iptable和netfilter的关系。
TC框架与netfilter的区别:
netfilter,被设计用来在网络协议栈的内核路径上过滤数据包,在一条路上的关卡一样,在5个关键点设置了关卡,结果就是若干动作:接受,丢弃,排队,导入其他路径等。
TC则不同,它旨在对数据包或者数据流提供一种服务,如限速,整形等。
TC主要是在输出端口处建立一个队列进行流量控制,控制的方式是基于路由,即基于目的IP地址或目的子网的网络号的流量控制。
配置和使用TC,分一下几步:
1、建立队列:一般情况下,针对一个网卡只需建立一个队列,
2、建立分类:分类建立在队列上,子类可继承父类的
3、建立过滤器:过滤器主要服务于分类,一般只针对根分类提供过滤器,为每个子分类提供路由映射。
4、建立路由: