[发明专利]单队列多流业务整形的系统和方法有效

专利信息
申请号: 201611272965.1 申请日: 2016-12-30
公开(公告)号: CN107181698B 公开(公告)日: 2021-09-03
发明(设计)人: 卡洛·孔塔瓦利 申请(专利权)人: 谷歌有限责任公司
主分类号: H04L12/815 分类号: H04L12/815;H04L12/823;H04L12/879;H04L12/861
代理公司: 中原信达知识产权代理有限责任公司 11219 代理人: 周亚荣;安翔
地址: 美国加利*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 队列 业务 整形 系统 方法
【说明书】:

本申请涉及用于避免队头阻塞的具有延迟完成的单队列多流业务整形的系统和方法。提供了用于在网络设备中执行业务整形的系统和方法。网络设备的网络接口驱动器能够按照第一顺序在传输队列中存储与从多个流所接收的分组相关联的描述符。网络接口驱动器能够将描述符传递到业务整形模块。响应于确定网卡已经成功传送所接收的分组中来自第一流的分组,在将来自第一流的附加数据分组转发到网络接口驱动器之前,网络接口驱动器能够将与该分组相对应的分组传输完成消息通信到等待接收分组传输完成消息的软件应用。网络接口驱动器能够按照不同于第一顺序的第二顺序来将与从该多个流所接收的分组相对应的分组传输完成消息通信到软件应用。

背景技术

业务整形是通过放慢被确定为比优先的业务流更不重要或比优先的业务流更不期望的业务流来调控网络数据业务的技术。存在两种放慢流的通用机制:第一种,放弃或丢弃某些分组,以及第二种,将分组延迟。分组放弃机制被广泛使用并且在众多情况下被当作唯一可行的方案。例如,如果由计算机连接到的单独的设备来执行,业务整形能够通过选择性地放弃分组来执行。

替选地,分组延迟机制能够免除分组放弃或者减少所放弃分组的数目。例如,当分组被延迟时,反馈机制能够发挥“反压力”,即,发送反馈到发送模块(例如,设备或软件组件)以使得发送模块降低其发送分组的速率。在没有这样的“反压力”的情况下,业务整形模块将需要以更快的速率保持接收分组,并且需要缓冲他们,直到其能够以正确的速率来发送他们。缺少这样的“反压力”将不仅防止应用立即知晓业务拥塞,而且还使得分组传输系统的整体吞吐量和性能降级。

发明内容

在一个方面中,给出了一种包括网络设备的系统。网络设备包括:网络接口驱动器、数据业务整形模块以及网卡。网络接口驱动器被配置为发送由软件应用所生成并且转发的第一数据分组集合以由网卡传输,按照第一顺序在主传输队列中存储与所接收的第一数据分组集合相关联的描述符,以及将与所接收的第一数据分组集合相关联的描述符传递到在网卡和至少一个处理器中的一者上执行的数据业务整形模块。响应于确定网卡已经成功传送所接收的第一分组集合中的分组,网络接口驱动器被配置为在将附加数据分组转发到网络接口驱动器之前,将分组传输完成消息通信到等待接收来自网络接口驱动器的分组传输完成消息的软件应用。数据业务整形模块被配置为维持多个业务整形队列,每个业务整形队列具有至少一个相关联的传输速率规则。数据业务整形模块进一步被配置为接收来自主传输队列的由网络接口驱动器所传递的数据分组的描述符,确定网卡的传输将被延迟,以及响应于这样的确定,从主传输队列中移除描述符并且基于分类的结果将其存储在对应的业务整形队列中。数据业务整形模块进一步被配置为使得网卡根据与相应的业务整形队列相关联的传输速率规则来传送与存储在辅助业务整形队列中的描述符相关联的数据分组,以及向网络接口驱动器通知以不同于第一顺序的第二顺序对数据分组的成功传输。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于谷歌有限责任公司,未经谷歌有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611272965.1/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top