网络子系统45_ip协议tos处理
2024-08-24 01:44:08
//ip报头tos字段,一个字节
// 二进制位:[0 1 2] [3] [4] [5] [6] [7]
// 1.[0 1 2] 表示优先级:
// 000 路由
// 001 优先级
// 010 立即
// 011 火速
// 100 火速覆盖
// 101 紧急
// 110 互联网控制
// 111 网络控制
// 2.[3] 表示时延
// 0 普通
// 1 最小
// 3.[4] 吞吐量
// 0 普通
// 1 最大
// 4.[5] 可靠性
// 0 普通
// 1.最大
// 5.[6] 开销
// 0 普通
// 1 最小
// 6.[7] 保留,恒为0 //由ip报头的tos字段,计算skb的优先级,用于在规则队列中选择优先级队列
1.1 static inline char rt_tos2priority(u8 tos)
{
return ip_tos2prio[IPTOS_TOS(tos)>>1];
} //获取tos的[3,4,5,6]比特位,右移一位,转换为0~15范围的数
1.2
#define IPTOS_TOS_MASK 0x1E
#define IPTOS_TOS(tos) ((tos)&IPTOS_TOS_MASK) //
1.3 __u8 ip_tos2prio[16] = {
TC_PRIO_BESTEFFORT,
ECN_OR_COST(FILLER),
TC_PRIO_BESTEFFORT,
ECN_OR_COST(BESTEFFORT),
TC_PRIO_BULK,
ECN_OR_COST(BULK),
TC_PRIO_BULK,
ECN_OR_COST(BULK),
TC_PRIO_INTERACTIVE,
ECN_OR_COST(INTERACTIVE),
TC_PRIO_INTERACTIVE,
ECN_OR_COST(INTERACTIVE),
TC_PRIO_INTERACTIVE_BULK,
ECN_OR_COST(INTERACTIVE_BULK),
TC_PRIO_INTERACTIVE_BULK,
ECN_OR_COST(INTERACTIVE_BULK)
};
最新文章
- C++11 auto_ptr 的问题
- OpenGL 小游戏 贪吃蛇1(2D)
- mybaties 查询 语句正确 但是查不到结果
- access数据库select查询top时无效的解决办法
- QAQ OI生涯の最后一个月
- Qt窗口句柄
- jQuery.data的是jQuery的数据缓存系统
- 显示linux开机时间的脚本
- ThinkPHP自定义分页模板
- AVL 树
- notes for lxf(一)
- java课堂笔记2
- linux神器strace
- is_null, empty, isset的区别
- 更改 Windows VM 的可用性集
- java 字符串String
- python学习之类和实例的属性;装饰器@property
- IOS-网络(GET请求和POST请求、HTTP通信过程、请求超时、URL转码)
- 【MVVM 原生】原生MVVM的使用
- Linux下jdk安装过程