高考考试网
当前位置: 首页 高考资讯

mtk平台的暗码(应用篇MTK7621HWNAT)

时间:2023-06-14 作者: 小编 阅读量: 1 栏目名: 高考资讯

接下来我们就一起去研究一下吧!

mtk平台的暗码?PPE - Packet Processing EngineFOE - Frame Offload Engine,今天小编就来聊一聊关于mtk平台的暗码?接下来我们就一起去研究一下吧!

mtk平台的暗码

名词解释

PPE - Packet Processing Engine

FOE - Frame Offload Engine

PDMA - Packet DMA

背景介绍

现在LEDE上已经对UBNT ERX支持了,但是其中对性能有很大提高的HNAT(Hardware NAT)功能还没有实现;这里就尝试把HNAT的支持移植到ERX上,以此来了解MT7621的 HW NAT功能。

框架结构

______________________

CPU

______________________

PDMA

______________________

PPE

______________________

GMAC1 | GMAC2

______________________

port 6 | port 5

---------------------------------

port 0,1,2,3, 4

______________________

在目前的LEDE代码里面只用了GMAC1,也就是port 5与GMAC2之间的link是force down的

基本工作流程

PPE Enabled: GMAC<->PPE<->CPU

PPE Disabled: GMAC<->CPU


  1. port 0(或1,2,3,4) -> switch -> port 6 -> GMAC1 -> PPE; 到此packet被送到PPE模块;

  2. PPE模块根据packet的,SRC IP:Port 和DST IP:Port,算得一个HASH ID,并把该HASH ID存到RX BD里面并由后续的驱动存到skb->cb里面,这个HASH ID是后面驱动处理的关键信息;

  3. PPE模块里面有4K条FOE entry用来记录每条NAT session;上面算出来的HASH ID就是用来索引这里的FOE entry的;同时FOE entry也会记录数据包的SRC IP:Port 和DST IP:Port;

  4. 由于这是第一个packet,因此此条flow的状态是未命中,未命中的情况是要送到CPU由软件去处理的;

  5. 至此,送至PDMA并产生中断,让CPU来处理这个包;

  6. CPU正常处理该报文,上送协议栈,并做正常的software的NAT,这些没什么不同;

  7. CPU软件的NAT做完之后,要通过以太网再发出去,在以太网驱动的xmit函数里面有个hook_tx, 这就是关键所在,重要的工作都是在hook_tx完成的;

  8. 在TX hook里面,分析skb的数据,因为此时的skb已经是经过NAT之后的IP和Port了;同时,由于skb是转发的情况,skb的data和header都是zero copy的,也就意味着可以从skb的cb里面取出在上面存入的HASH ID;

  9. 根据取出的HASH ID通过查找foe entry可以找到该数据包NAT之前的SRC IP:Port 和DST IP:Port,然后根据现在的数据包内的数据可以找出NAT之后的SRC IP:Port 和DST IP:Port;这样NAT之前和之后的SRC IP:Port 和DST IP:Port都有了,这就是一条完整的NAT session了;

  10. PPE也就知道该如何做NAT了,接下来在收到同样的packet,PPE就照葫芦画瓢的做NAT就是了;同时该条FOE entry的状态也会被设置为bind;


[187768.931427] ==========<Flow Table Entry=2146 (af1a9ea0)>===============

  • bind完成之后的package flow:

    1. port 0(或1,2,3,4) -> switch -> port 6 -> GMAC1 -> PPE

    2. PPE check the status为hit bind,则PPE按照FOE entry里面的描述做对应的NAT,并发送到对应的port(这里是GMAC1);就不必打扰CPU了;

      推荐阅读
    • 长曝光拍摄技巧和方法(它在拍摄中作用有哪些)

      在光圈固定的情况下,光线在相机内部停留时间的长短,同样是影响曝光的重要因素,而控制光线在相机内部停留时间长短的装置,我们称之为“快门”。如果把光圈比喻为水管的出水口径,那快门就是水管上阀门,在出水口大小固定的情况下,阀门开启时间的长短,决定这出水量的多少。通过以上讲解,我想大家应该对曝光有了一个初步的了解,通过对曝光,可以更容易的了解光圈、快门、感光度之间的关系,为下一步的学习打好基础。

    • 牛奶在发面中起到什么作用(快来看看这神奇的作用)

      下面更多详细答案一起来看看吧!牛奶在发面中起到什么作用牛奶在发面中可以起到提香作用和加快发面速度,使得做出来的馒头、面包会有一丝丝奶香。牛奶营养丰富、容易消化吸收、物美价廉、食用方便,是最“接近完美的食品”,人称“白色血液”,是最理想的天然食品。奶中的矿物质和微量元素都是溶解状态,而且各种矿物质的含量比例,特别是钙、磷的比例比较合适,很容易消化吸收。

    • 英孚少儿英语适合小学课程吗(英孚少儿英语怎么样)

      很多家长最近来咨询我,问我英孚的青少儿英语课程有没有效果,值不值得去报名!教学模式上:英孚采用6-10人的小班授课模式,双师教学,一周一次课,中教和外教轮流上,通过结合英语歌曲,游戏活动等方式来进行教学。

    • 瑞士名牌男士腕表(永不过时的经典之作)

      腕表采用了经过瑞士天文台认证的3135机芯,这枚机芯被誉为劳力士机芯之王,同时也是劳力士为数不多的自产机芯之一,并且沿用至今,期间没有做过大的改动,保持着原滋原味。机芯直径28.5毫米,厚6.00毫米,性能稳定,抗磁抗碰撞能力强。总的来说黑水鬼是一枚厚重沉稳的腕表,是阳刚男士的腕上首选。腕表搭载的是欧米茄2500同轴擒纵自动机芯,直径为25.6毫米,厚度为3.6毫米,拥有27个宝石数,能为腕表提供48小时的动力储备。

    • 支付宝买的重疾险可靠吗(支付宝的爆款重疾险究竟怎么样)

      健康福重疾险(保1年)是一款一年期重疾险,即投保后只保障一年。而长期重疾险,比如保到70岁或终身,只要投保时通过健康告知,即使保障期间内产品停售了,保障也还在。比如这款健康福少儿重疾2021(返保费),2岁的女孩买50万保额,交20年保30年,每年保费要两千多。新版健康福按照重疾新定义更新了条款,将法定的重疾病种增加至28种。且增加3种轻症,对定义做了统一规定,限定最高赔付30%保额。

    • 不甘示弱造句 争先恐后你追我赶不甘示弱造句

      17、比赛的优胜者给予表扬和鼓励,而落后者也会不甘示弱,他们会在下一次比赛中发奋努力,表现更好。

    • 花菜怎么做好吃又简单不放油(花菜怎样做最好吃)

      菜花也就是我们经常说的花菜。其实人家有名字,学名叫“花椰菜”,小名叫“菜花”。这种菜花爆炒了味道比没开花的口感爽脆,味道也要香许多,是那种越嚼越香的滋味。菜花是种比较喜油,而且适应各种烹制方法的蔬菜,因此上比较适应煎炒烹炸焖溜熬炖等等的各种“折腾”。下面就为大家分享一道“爆炒菜花”的家常做法,喜欢的朋友赶紧学习一下吧。然后把切好的花菜,放入装有清水的盆中,清洗干净捞出备用。

    • 太仓电动自行车蓝牌怎么上(柯桥人电动自行车)

      据了解,“浙江e行在线”构建了以电动自行车车架号、蓄电池序列号为唯一标识的“浙品码”数字化追溯链。“浙江e行在线”于近日在柯桥区推广,区市场监管局从销售商家入手,促使他们将销售的电动自行车进行赋码。今年4月,区市场监管综合行政执法队依据《浙江省电动自行车产品质量监督抽查评价规则》要求,对漓渚、兰亭等镇街的电动自行车经销商进行了抽查。相关执法人员说。

    • 线豆(线豆角的家常做法)

      步骤1食材:豇豆200克、梅干菜20克、肉末100克、大蒜2瓣、姜1克、大葱10克。调味料:食用油10克、盐1克、生抽2克、鸡精2克、料酒2克。步骤2梅干菜反复用清水洗净,洗去多余的盐分,挤干水分,切碎。步骤7热锅倒油,油温5成热时,下肉末,炒散,淋入料酒去腥,加葱、姜、蒜、梅干菜,炒香。步骤8豇豆软烂时,调入鸡精,炒匀即可。

    • 笔画越少的字越难处理(笔画越少的字越难写)

      笔画越少的字,反而越难写!你是否也有同感呢?这些字大多是独体字,在汉字里所占的比例虽然不多,但这却是汉字的基础!!!独体字虽然结果简单,字形变化多端,因此把握字形是写好独体字的关键。下面归纳总结了6大字形帮助大家更好理解!