一种多核架构下流量限速无锁并发实现的方法

基本信息

申请号 CN202110122692.7 申请日 -
公开(公告)号 CN112799861A 公开(公告)日 2021-05-14
申请公布号 CN112799861A 申请公布日 2021-05-14
分类号 G06F9/54;H04L12/819 分类 计算;推算;计数;
发明人 靳龙 申请(专利权)人 上海弘积信息科技有限公司
代理机构 北京盛凡智荣知识产权代理有限公司 代理人 李朦
地址 201206 上海市浦东新区新金桥路58号银东大厦23A
法律状态 -

摘要

摘要 本发明公开了一种多核架构下流量限速无锁并发实现的方法,将令牌桶设计成循环免锁队列,队列长度为N;每一个处理数据流的CPU核分配一个令牌桶,处理数据流的核数为M;一个单独CPU核轮询访问M个免锁队列,往队列添加令牌;以C0表示添加令牌的CPU核,C0周期轮询给各个队列添加令牌,每个周期C0首先计算各个队列消耗令牌比例,把这个周期要添加的令牌按比例添加到各个队列中;处理数据流的CPU核,通过计算数据报大小获取自己队列的令牌,如果令牌不够,根据策略选择缓存或丢弃数据报文;本发明通过把令牌桶分布在不用CPU处理核上,把生产令牌核消费令牌分别处理,通过免锁队列实现令牌计算。