[发明专利]Linux系统下基于802.1p的数据帧绝对优先级调度方法有效
申请号: | 201110401547.9 | 申请日: | 2011-12-06 |
公开(公告)号: | CN102404226A | 公开(公告)日: | 2012-04-04 |
发明(设计)人: | 阳琳峰;王志军;周转运;李长春 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 北京捷诚信通专利事务所(普通合伙) 11221 | 代理人: | 魏殿绅;庞炳良 |
地址: | 430074 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | linux 系统 基于 802.1 数据 绝对 优先级 调度 方法 | ||
1.Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,包括以下步骤:
A10、在网络设备驱动层,完成数据帧中优先级字段数值与skb->nfmark的映射;
A20、根据数据帧中的以太网类型,将数据帧引导进入Linux内核中的NF_IP_POSTROUTING hook点;
A30、对从NF_IP_POSTROUTING hook点取出的数据帧,应用流量控制工具,通过htb与prio组合队列进行优先级调度。
2.如权利要求1所述的Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,步骤A10的具体步骤为,
A101、Linux系统宽带网络接入设备接收数据帧,并将数据帧转入网络设备驱动层;
A102、检测数据帧是否携带VLAN标签,如果带有VLAN 标签,则将VLAN 标签中的优先级值映射为对应的skb->nfmark值;如果数据帧不带VLAN TAG,则相应的skb->nfmark值为0。
3.如权利要求1所述的Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,步骤A20包括以下步骤:
A201、用户根据需要调度的以太网类型,向linux内核空间配置QoS调度的以太网类型链表;
A202、利用函数br_nf_post_routing检测数据帧的以太网类型,与以太网类型链表进行匹配,如果匹配不成功,则由Linux内核桥直接转发;否则转步骤A203;
A203、将数据帧引导进入Linux内核中的NF_IP_POSTROUTING hook点。
4.如权利要求1所述的Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,步骤A30包括以下步骤:
A301、添加一条iptables规则,根据数据帧的输出端口标识,将该数据帧引导进入相应输出端口的中介队列设备IMQ;
A302、在中介队列设备IMQ中添加htb与prio的组合队列;
A303、以所述skb->nfmark值为依据,利用TC过滤器将数据帧压入htb与prio组合队列不同优先级子队列中。
5.如权利要求3所述的Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,在步骤A202中,将数据帧引导进入NF_IP_POSTROUTING hook点时,同时将数据帧中的skb->ether_type_tc_flags值设置为0x1。
6.如权利要求4所述的Linux系统下基于802.1p的数据帧绝对优先级调度方法,其特征在于,步骤A303的具体步骤为:
A3031、利用函数ipt_route_hook遍历iptables规则,判断从哪些输出端口输出的数据帧需要进行QoS调度,需要进行QoS调度的数据帧转入步骤A3032,不需要调度的数据帧转入步骤A3033;
A3032、从NF_IP_POSTROUTING hook点取出数据帧,根据skb->nfmark值,将数据帧映射到不同的优先级队列中,htb与prio组合队列优先转发高优先级队列中的数据帧,丢弃超出带宽的低优先级队列中的数据帧;
A3033、完成数据帧中skb->nfmark与优先级值的逆映射,并从相应的输出端口输出。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110401547.9/1.html,转载请声明来源钻瓜专利网。