请大家看看,这个小程序尽请关注对不对对,为什么会内存泄漏

Linux 流量控制源码学习

红色粗体斜体,是流控相关的部分。

通用队列规则操作结构体

当前注册在系统中的所有队列规则qdisc_base

将全局变量Htb队列规则操作htb_qdisc_ops加入到全局变量当前注册在系统中的所有队列规则操作链表qdisc_base中。

Linux源码对应的函数调用如下:

对于原有的class进行移植,对于我们的实现不存在这种情况。

构造响应消息,通过netlink连接,发送响应消息到用户层。

  1. 释放该队列所关联的所有skb

Linux源码中创建class的函数调用如下所示,

Fwmark过滤器操作的注册

将全局变量过滤器操作cls_fw_ops加入到全局变量当前注册在系统中的所有过滤器链表tcf_proto_base。

入队的代码结构如下所示,

  • 基于优先级的当前是borrow模式的管理树
  • 基于优先级的当前是send模式的管理树

高效管理,见附录,红黑树

队列调整的计算方法(基于令牌桶的管理方法)

  • 如果class是叶子节点,则cl->level为0;如果他有父亲节点,并且父亲节点的level为0,则他的父亲节点的level设置有两种情况:如果他祖父节点存在,则设置为祖父节点的level -1;否则,设置为TC_HTB_MAXDEPTH – 1(数值为7)。

先介绍配置结构体tc_htb_opt参数:

说明:可以看出opt.buffer随配置的速率的增加而减少,极限值为 = 4000。

  • 如果当前时间q->now与cl->t_c之间的秒时间差超过2s;则判断时间差是否超过1分钟;如果没有超过一分钟,返回值为时间差(微秒为计算单位),如果超过一分钟返回值为1分钟;

计算令牌桶的方法(HTB_ACCNT宏定义函数)

令牌桶的一个令牌,指的是该tc class 发送1个byte需要的ticks。

  • 如果当前类的状态是发送状态,如果当前持有的ceil令牌数小于0,将当前的时间差设置为时间差减去令牌数,设置为状态可发送。
  • 如果当前类的状态不是发送状态,如果当前持有的ceil令牌数小于当前类cbuffer的负值,将当前的时间差设置为时间差减去令牌数,设置为状态可发送。

上面的两个条件是对上限的限制,所以,判断条件是ceil令牌数小于某个给定的值,而不是大于某个给定的值。

  • 如果当前类的状态是发送状态,如果当前持有的rate令牌数大于或等于当前类cbuffer的负值,设置为状态可发送。
  • 如果当前类的状态不是发送状态,如果当前持有的ceil令牌数大于或等于0,设置为状态可发送。
  • 其它情况设置该类的状态为HTB_MAY_BORROW状态,可以从他的父亲获取带宽。

至于class如何利用父类借用带宽,可以通过其父类是否在发送模式的状态树中决定。在htb_dequeue函数中会将所有的level都遍历到,如果父亲节点有剩余带宽可以使用,则它的子节点会继续进行报文发送的。

从上面的分析,和网上下面描述的理论基本上一致的:

根据所耗用的带宽,每个HTB类可能处与3种状态之一。

    黄色:类的实际带宽大于其limit-at,但小于等于max-limit。在此状态下,类被附于它父类inner feed的与它优先级相应的inner slot上;而父类的inner feed可能附于“祖父类”的相应优先级的inner slot(在父类也是黄色状态时)或者它(父类)所在层相应优先级的self slot(在父类是绿色状态时)上。在转换为这种状态时,类与他所在层的self feed“断开”,与他父类的inner feed“连接”。

大体的流程应该是这个样子,具体很多细节没有进行分析,时间和精力有限就分析到这里了。 

各位龙空的书友朋友,我弟特别喜欢读玄幻小说。读得多了,也就自己根据以前看的也写了一段,个人感觉还不错。
发到论坛,也是想听听各位书友朋友对这段的看法,请大家品评品评

在这个密林中逃窜他张大嘴呼吸着汗水早已湿透了衣襟,衣服上也能清晰地看到汗水干涸后的盐渍,也有干涸后的血渍。仿佛是在衣服上画的地图和逃命的血路。

头发散乱却也是乌黑靓丽少许鬓发和着汗液和干涸的血水粘在额头。让他感觉不舒服,但却连抬手擦拭一下的时间都没有,只是在努力逃命。

沈钦往后放看了一眼眼神带着七分憎恶两分无奈还有一分惊惧

沈钦体内的灵能已经消耗殆尽,无法与追兵抗衡,再说每一名追兵都比他要强上不少,与其正面战斗几乎没有赢面。沈钦也不会做这种无用之事。

能否能逃的了性命,沈钦实际也没多大信心,可不能不逃。逃不一定能活,但不逃只有死!

况且沈钦脑子运转极快,这几天来,追兵本来已经要追上他了,但是却被沈钦使用陷阱、引入险地,甚至是示弱后亲手暗算掉两名追兵。这样才使得他又多逃了好几天。

追杀他的是几名“师兄”,说是师兄,其实也是土匪。他们都是这片密林外围一处“修仙”洞府的弟子。

沈钦在两年前阴差阳错之下,无奈加入了这个洞府,成为了一名记名弟子,可这洞府虽然占地不小,却连上长老掌门也一共只有不到百名修行者。人物连沈钦之前上的私塾都比不上。

可毕竟是“修仙”,学的东西自然和私塾是有区别的。

“修仙”实际是凡俗对修行的叫法。凡人对于强大的、会法术的人都称作仙人。是一种对于未知的敬畏。对于强大的敬畏。而正确的叫法是应该叫“修行”。

修行是一条路不同的人路不尽相同却都是通往修行“目的地”的路。但却不是所有的路都是能到达终点的路。甚至,绝大部分的路,都是歧路,或断路,或布满未知危险之路。

修行在凡俗人眼中是仙人但在修行者眼中也是在苦海中争渡与凡俗无异

沈钦只在洞府长老的教导下入了门而已,对于修行他知道的不多,这些也只是长老说出来的。对于最后那句,如凡尘般,在苦海争渡。他是心有戚戚然。

凡俗人只以为仙人已摒弃了七情六欲无欲无求,逍遥自在、了无牵挂。可沈钦知道,那些所谓的“仙人”对于权势,对于力量的渴望已到了疯魔的地步。包括沈钦自己,都无比希望能得到震天骇地的力量。

凡俗人只以为仙人已摒弃了五谷杂粮,餐霞吸露,吸饮沆瀣,不食人间烟火,清静悠然;可哪里想到,他们是少吃五谷了,可食材只会更罕见。无论是沈钦从长老那见到的“灵心莲子羹”,还是从负责掌门起居的段师兄那听到的“水灵蛟”的角熬成的汤。都是名贵无比。凡俗人哪怕一辈子,十辈子见都见不到一回,更不说买不买得起了。

想到这里,沈钦眯了眯眼,捏紧拳头冷哼一声,略带稚气的脸上寒霜密布。随机又被眉头的阴郁所替代,因为他感觉到追兵又近了。

转过头去他已经看到了段师兄的冷笑。这个距离,实际已经快到了段师兄他们的法术攻击范围。

可段师兄力求稳妥并没有早早施法

并不是他没信心是这几天这个沈钦居然几次三番逃脱了他们必杀一击。虽说沈钦受伤不轻,可怎么也不能将其抓住。反而有两位师弟因为轻敌被沈钦偷袭得手丢了性命。

他们不愿将沈钦直接击毙,因为他们不敢确定要找的东西是否在沈钦身上,如果沈钦早将东西藏于他处,若是死了的话,还找不回来东西就得受掌门责难。

想到责难段师兄眼神中有了畏惧甚至身体都抖了抖由此步子都慢了几步

看到沈钦又远了,段师兄强行压下那些让他发抖的思想。低喝一声,带着众师弟潜心追杀沈钦。等到拿到东西以后,沈钦如何处置还不是随他?

这时后方传来一阵让他们耳膜几乎炸裂的轰鸣以及破空声

脚步不减,沈钦和段师兄都是望向天空,本来声音还是极远,可抬头的一瞬间,来人竟已到了他们头顶上空!

沈钦本还以为也是追兵,是长老或者掌门亲自出手追杀。正感叹明年的今日天许就是他的忌日,但却也没人能在节气中为他烧点纸钱。

不过感觉到来人如此强大,沈钦放心了,这样的人杰,绝不可能是那个小洞府的人!更不可能听命与那个小洞府!

来人破空至他们上空时,沈钦和段师兄已经无法再动一步。上空的人杰却没有望向下方,只转身看向来时的后方。人杰看起来状态不比沈钦好多少,绢纱金丝绣花服已经部分破碎粘着血液看起来却依然是仙风道骨他虚立空中,眼神凌厉,望着来时的方向。

当破空声传来时沈钦和段师兄已经被定在了密林中,看起来不应该是人杰故意这么做的,他没必要对几只蚂蚁这样做。应该是人杰在上空毫无保留的散发自身的气机,以期用最强的状态应对来敌。他的气机虽没有刻意针对沈钦他们,但如此强大的气机早已是沈钦一众人无法抗衡的力量。他们的肌体已无法有自己控制,双腿不由自主的抖动,心中大恸。

如此人杰,如何会被他们遇上?难道人杰要与人在此地决战?这可不是个好讯息。如果这样的话,仅是战斗的余波,就可以毁灭一片山脉,沈钦一众人那是怎样都是活不了的。

段师兄再次抬眼望了望上空的人杰,人杰自始至终没有关注下方的几只蝼蚁。这让段师兄稍微放下心来。在此看了看沈钦,沈钦也被无上气机定在前方。离他不远,以段师兄的实力,这几里路只需一息,一息就能赶到沈钦旁,将他制服。

仅考虑了一瞬间段师兄就下定决心毕其功于一役就在这个时候沈钦抓住。他相信,自己的境界比沈钦要高,实力要强上不少,对于这等气机的抵抗力自然更强。只需一息的时间,他相信自己能抗住这一息!

想到就做这是他段师兄的性格敢于冒险否则他就不会以入门不到五年就坐到那个位置除了大师兄就数他最受掌门器重

段师兄催动四肢百骸,集全身灵力,期望爆发自身潜力,赢得一息时间。周身灵力沸腾,段师兄捏拳印,抬脚准备向前冲去。他仿佛已经看到了沈钦在他手中如同一只鸡仔一般。哀求他给个痛快。仿佛已经看到了他将那件东西带回洞府敬献给掌门后给他的褒奖。仿佛已经看到了大师兄都对他言听计从,不敢有任何不满。

不幸的是这些幻想终究只是幻想他抬步的那一瞬间就已经泄劲因为他一口精血狂喷而出抬脚的那条腿膝盖骨都已碎裂他甚至没有抬起哪只脚,就已经倒在了地上。又是吐出了几大口血。

段师兄只是抬了抬脚就已经成为了一只快死的鸡仔,师弟们看到后眼睛里只有惊惧,更加不敢抗拒这股无上气机。只得恶狠狠的盯着前面的沈钦,就算怕空中的那位人杰,也没有忘记的自己的使命,带回沈钦偷走的东西。

沈钦看到段师兄如此高的修为都是没有任何反抗的能力,心中微凛。却抓紧时间调息。这股气机让人不敢生出抵抗之力,否则会被如这气机认为是挑衅,而重责。沈钦调息却不在内。他也没有选择,逃命这些天,他大大小小受了些伤,却没有任何时间调息疗伤,暂时甩开追兵也不敢调息,只能利用周围环境制作陷阱困住或者击杀、击伤追兵。

沈钦本是密林周边小镇一位猎户的儿子,在一次罕见的兽海中,父母身死,他被洞府外出的一位弟子救下,带回了洞府。也就有了后面的事。

制作抓捕野兽甚至是荒兽的陷阱还是会一些的,也能认识一些强大荒兽的领地,将追兵引入领地中,激怒荒兽后帮助自己逃脱的方法也都层出不穷。

可这些师弟也不是废物陷阱大多也只是短短拖慢了他们追杀的步伐却不能阻止。就连愤怒的强大荒兽,他们都能合力击败,或者合力逃脱。只可惜,这里只是密林外围,没有过于强大的荒兽,若是密林深处……深处处处是险地,逃命的沈钦也不敢深入,所以,只在外围奔逃。可这么多天都无法甩拖追兵,他已经有了深入密林冒险的想法。

这时又是一阵破空声传来想来空中的这位人杰也是被人追杀

可这位人杰如此天纵人物也会被追杀吗

人杰依然冷面看着后方面色却是越来越凝重他没有时间感叹自己如此天纵奇才竟落到这一步,只等对决后方来人。

人杰左手捏印,手渐成淡金色,看似这一印手无缚鸡之力,可面色却是更苍白,仿佛这一印用光了他所有的气力。

不等来人飞来他已经将印轻飘飘的向前印去。虽没有惊天动地之能的气机,但沈钦能从这一印中看到天地为之扭曲。神曦自手中化出随手打出化与天地间。当然不是这一印被化掉,而是这一印已溶于天地,借天地之势打向那个方向。

来了,来人人未至,拳先至,这一拳震天动地,整片山脉,整片密林都簌簌抖动,为这一拳喝彩。这一拳以地势为基,蕴含地势龙脉之力,如火山爆发般,由地而聚,聚向来人,再狂猛击出。至少来说,这一拳给下方观战一众人的压力远胜那一印。

段师兄毕竟见多识广,这一拳他虽从未见过,可也知道,若是掌门在那拳面前,甚至无法兴起抵抗的念头。他认为人杰多半会被这无上的一拳击毙,死无全尸!若是自己他日能达到这样的境界……多个念头瞬间从段师兄脑海闪过……

这一拳似乎是暴虐的龙脉般拳印前方已出现一颗龙头那是龙脉之力这片山脉虽小但龙脉之力非人力可抗衡若是借来龙脉之力说不准一拳就可击毙人杰观战的众人如此想

沈钦皱了皱眉,对着一拳所带的拳意也是十分惊凛,这一拳竟集结了大地之力,龙脉之力,之前在洞府的长老都是想都没想过的境界。这一拳仿佛给他打开了新的大门。虽然目前处在危险之中,但他也睁大了眼,生怕错过一点细节。

不过,人杰竟在此逗留等候追击之人,想必能胜过天外来人。人杰看起来身受重伤,却不继续逃离,想来是要击毙最先到达的追兵!

若他如此自信,沈钦虽然也看不懂那手印所蕴含的气机,但他相信那位人杰,绝不会送死!恐怕天外来人可能会把命交代在这里,至少也会被人杰击伤。

就连击出这一拳的天外来人也这样想他不信身受重伤的人杰能抗住这撼地一拳

他打出这一拳已带冷笑但却拳意不减狮子搏兔亦用全力何况是对决这样的人杰反而拳意加重了几分以十二分的气力向人杰击去

人杰的那一印轻飘飘的撞上或许更准确的说法是被拳印撞上大家都以为这一印会如捏印般轻飘飘的散去

可事实往往出乎意料,印没有散去,甚至依然轻飘飘向来人袭来,而拳印却是崩碎,对上看似没有气力的印,却如同四两拨千斤般,被轻易瓦解。

拳印遇上印后就没有了任何杀伤力,除了拳印崩碎后的暴虐气机,人杰一摆手,气机已经稳定下来,缓缓流向人杰,人杰一吸,气机已被人杰所吸收,本来因为捏印苍白的脸也有了一丝红润。

印继续向来人袭来来人看到这一切已知人杰不可力敌,竟想就此逃命可感受到哪一印已经锁定了他无论他如何闪躲都是无法避免既然如此他只得打起十二分的精神希望能抗住这一印

天外来人大喝一声“阻!”右手捏指,对着印使尽全力力气对着印指去。同时,身上飞出十几件神兵,挡在印与他之间。

印依然无可阻挡在天外来人前方神兵一件件寸寸碎裂无法阻挡印分毫,直到天外来人大叫一声,随后没了声息,也碎裂成了飞灰。

段师兄瞪大了眼,他没想到,震天撼地的一拳竟然比不上轻飘飘的手印!不止是比不上,连比的资格都没有!他用力咽了口唾沫,喃喃一句:“如此天纵人物!”后背已经满是冷汗。

人杰矗立片刻短叹一声,呢喃了一句,但众人没有听清。随即转身继续向着密林深处飞走

在他离开同时竟有数个方向的的人尾随追击而去沈钦甚至听到一句:“我们来晚了,陈长老竟然不敌他被杀!”

在他们消失的那一刻,沈钦已经拔腿逃走,他没有按照之前计划的逃命路线前往下一个荒兽领地,而是转向向着人杰消失的方向,对着密林深处而去。

追杀的段师兄重伤却咬紧牙关从怀中那处一瓶药吞下两粒片刻便好了大半,冷哼一声,丝毫不关心密林的危险继续追击而去剩下的师弟们看向密林深处他们知道密林深处有多危险踌躇片刻也跟上段师兄而去

我要回帖

更多关于 尽请关注对不对 的文章

 

随机推荐