chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FDIR簡(jiǎn)介與工作原理

FPGA之家 ? 來(lái)源:FPGA之家 ? 作者:Guo, Junfeng ? 2022-07-31 10:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FDIR簡(jiǎn)介

CPU單核時(shí)代,數(shù)據(jù)包經(jīng)由網(wǎng)卡接收后均被送往唯一的CPU進(jìn)行處理。隨著多核時(shí)代到來(lái),出現(xiàn)了負(fù)載均衡問(wèn)題(某些core過(guò)載,而另一些core空載的情況)。為解決該問(wèn)題,RSS(Receive Side Scaling)技術(shù)先通過(guò)hash操作將數(shù)據(jù)包發(fā)送到不同的core上進(jìn)行中斷處理,然后再經(jīng)由core間轉(zhuǎn)發(fā)將數(shù)據(jù)包發(fā)送到運(yùn)行目的應(yīng)用所在的core上。雖然負(fù)載看似在多core上均衡了,但由于hash的抗碰撞特性,大量數(shù)據(jù)包會(huì)被送到了不匹配的core上,因而數(shù)據(jù)包的core間轉(zhuǎn)發(fā)成為性能瓶頸。

e5593392-106a-11ed-ba43-dac502259ad0.png

Intel 以太網(wǎng)Flow Director技術(shù)(Intel Ethernet Flow Director,簡(jiǎn)稱(chēng)FDIR)將數(shù)據(jù)包定向發(fā)送到對(duì)應(yīng)應(yīng)用所在core上,從而彌補(bǔ)了RSS的不足,可用來(lái)加速數(shù)據(jù)包到目的應(yīng)用處理的過(guò)程。在新一代Intel 以太網(wǎng)800系列網(wǎng)絡(luò)適配器中,F(xiàn)DIR有了更多的規(guī)則空間硬件資源和更靈活的配置機(jī)制。

e56746c6-106a-11ed-ba43-dac502259ad0.png

如同Linux提供了純軟件實(shí)現(xiàn)的RSS版本一樣,Linux也提供了純軟件實(shí)現(xiàn)的ATR(Application Targeting Routing)模式的Flow Director,稱(chēng)為RFS(Receive Flow Steering)。盡管功能上等效,但是RFS無(wú)法達(dá)到FDIR對(duì)網(wǎng)絡(luò)性能的提升效果,因?yàn)樗仨毻ㄟ^(guò)某個(gè)core來(lái)執(zhí)行調(diào)度數(shù)據(jù)包,而且該core大概率不是目的應(yīng)用所在的core。因此,ATR模式的FDIR可被看作RFS的智能卸載硬件加速方案。

e57156c0-106a-11ed-ba43-dac502259ad0.png

FDIR工作原理

在網(wǎng)絡(luò)適配器硬件接收到數(shù)據(jù)包時(shí),硬件Parser會(huì)通過(guò)Parse Graph狀態(tài)機(jī)對(duì)數(shù)據(jù)包進(jìn)行解析提取出一些重要信息(如數(shù)據(jù)包類(lèi)型)并填充在該數(shù)據(jù)包的descriptor中;

e57b4220-106a-11ed-ba43-dac502259ad0.png

硬件Profile Chooser根據(jù)數(shù)據(jù)包的PTYPE、Flag位、所屬VSI等信息生成Profile ID;硬件Field Extractor根據(jù)該P(yáng)rofile ID提取出對(duì)應(yīng)的Field Vector;根據(jù)mask寄存器中的信息,對(duì)Field Vector中有效字段(word)進(jìn)行mask操作;根據(jù)Input Set寄存器中Field Vector到Input Set的映射關(guān)系,生成FDIR的Input Set。

e58e767e-106a-11ed-ba43-dac502259ad0.png

基于數(shù)據(jù)包提取出的Input Set,F(xiàn)DIR會(huì)查表進(jìn)行精確匹配和優(yōu)先級(jí)判斷,從而確定出對(duì)應(yīng)的action。常見(jiàn)的action包括:1)Drop:根據(jù)FDIR表中對(duì)應(yīng)規(guī)則的DROP Flag位決定是否drop該數(shù)據(jù)包。2)To Queue:將數(shù)據(jù)包發(fā)送至目的Queue,或在進(jìn)行hash操作后發(fā)送至Queue Group(也叫Queue Region)中的某個(gè)Queue。3)Counter:對(duì)匹配的數(shù)據(jù)包進(jìn)行統(tǒng)計(jì)計(jì)數(shù),計(jì)數(shù)的方式有:基于個(gè)數(shù)、基于byte數(shù)據(jù)量、基于個(gè)數(shù)和byte數(shù)據(jù)量。

其中,F(xiàn)DIR匹配準(zhǔn)則依據(jù)包括:1)Input Set向量域;2)數(shù)據(jù)包所屬的VSI;3)數(shù)據(jù)包所匹配的Profile。

e59ba2b8-106a-11ed-ba43-dac502259ad0.png

FDIR使能機(jī)制

Intel 以太網(wǎng)800系列網(wǎng)絡(luò)適配器最多可支持16k條FDIR規(guī)則,這些規(guī)則空間資源在硬件中是以 “獨(dú)占( guaranteed )” + “共享( best effort )” 的形式進(jìn)行分配的。其中,每個(gè)PF享有固定大小的獨(dú)占資源,該獨(dú)占資源又可被各PF下的VF分配使用;除去所有PF享有的獨(dú)占資源,其余的FDIR空間資源都作為共享資源,被所有PF及其VF所共享使用。例如,在4端口25G E810中,每個(gè)PF獨(dú)占資源有512,共享資源有14k(16k-512*4=14k)。獨(dú)占和共享資源的配置,是通過(guò)寫(xiě)寄存器實(shí)現(xiàn)的。

e5a58dfa-106a-11ed-ba43-dac502259ad0.png

對(duì)FDIR Queue的初始化同樣是通過(guò)寫(xiě)寄存器完成的,包括:分配FDIR VSI硬件資源;映射TC LAN Queue到VSI;初始化FDIR哈希表;初始化FDIR統(tǒng)計(jì)計(jì)數(shù)器;分配并初始化TX/RX LAN Queue;綁定中斷到VSI Queue;分配并初始化Ring Buffer;分配FDIR Profile資源等。

在DPDK中,F(xiàn)DIR規(guī)則可以通過(guò)rte_flow的組織形式runtime進(jìn)行配置。每條規(guī)則中包含了必要的 Pattern和Action信息。

e5b2526a-106a-11ed-ba43-dac502259ad0.png

緊接著基于rte_flow規(guī)則中解析出的Input Set,分配Profile ID;注冊(cè)HW Profile;創(chuàng)建PTYPE Group的映射關(guān)系;在TCAM中添加對(duì)應(yīng)的Field Vector。再之后driver根據(jù)解析出的Input Set的值分配Queue的Descriptor并對(duì)LAN+FDIR Descriptor進(jìn)行填充,然后構(gòu)建相應(yīng)的FDIR Dummy Packet。

e5bfb2f2-106a-11ed-ba43-dac502259ad0.png

通過(guò)FDIR TX Queue將規(guī)則實(shí)體以特定的格式發(fā)送給網(wǎng)卡的firmware,并返回處理的狀態(tài)結(jié)果。

e5d07362-106a-11ed-ba43-dac502259ad0.png

其中,每個(gè)FDIR規(guī)則實(shí)體的內(nèi)容是由64 bytes數(shù)據(jù)構(gòu)成,由以下參數(shù)組成:1)從數(shù)據(jù)包中提取的參數(shù):48 bytes的Input Set;數(shù)據(jù)包所匹配的Profile等。2)從軟件Descriptor中接收到的參數(shù):目的Queue;FDIR ID;數(shù)據(jù)包所屬的VSI;統(tǒng)計(jì)計(jì)數(shù)器;控制相關(guān)的Flag位等。3)自維護(hù)的存儲(chǔ)管理參數(shù):PF/VF/VSI標(biāo)志位;有效Flag位等。

FDIR應(yīng)用場(chǎng)景舉例

OVS Partial Offload:在HW中設(shè)置帶有mark ID的FDIR規(guī)則,匹配的數(shù)據(jù)包會(huì)在對(duì)應(yīng)的descriptor中記錄對(duì)應(yīng)的mark ID,上層的OVS可以基于此mark ID直接對(duì)該數(shù)據(jù)包的SKB進(jìn)行相應(yīng)的處理,從而省去了大量的解析查詢(xún)等操作并大大提升了性能。

e5dc14ec-106a-11ed-ba43-dac502259ad0.png

結(jié)語(yǔ)

當(dāng)前VMware或Microsoft并不支持FDIR功能。FDIR更適合在純“裸機(jī)(bare metal)” 上的Linux應(yīng)用程序中提升網(wǎng)絡(luò)性能,特別是那些網(wǎng)絡(luò)通信量極大、處理小數(shù)據(jù)包極多的應(yīng)用程序。在那些看重網(wǎng)絡(luò)性能的應(yīng)用程序(例如Memcached)中,F(xiàn)IDR為以太網(wǎng)領(lǐng)域在高帶寬、低延遲等方向提供了顯著的性能增強(qiáng)。伴隨的好處也包括降低CPU占有率、節(jié)省功耗等,因而更適合配合intel的高性能CPU使用。

e5ea7596-106a-11ed-ba43-dac502259ad0.png

參考資料

1. Columbia Park Ethernet IP Hardware Architecture Specification, Ethernet Products Group (EPG).

2. Introduction to intel Ethernet Flow Director and Memcached Performance, intel White Paper.

3. CVL Packet Processing, Qi Zhang.

4. DPDK Ethdev Foundation, Jingjing Wu, Beilei Xing.

5. Advanced AVF RSS & FDIR, Yahui Cao.

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 以太網(wǎng)
    +關(guān)注

    關(guān)注

    41

    文章

    5635

    瀏覽量

    176010
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213859

原文標(biāo)題:基于Intel?以太網(wǎng)800系列網(wǎng)絡(luò)適配器的FDIR功能及原理介紹

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    GPIO配置的工作原理是什么?

    我使用 EZ-USB 配置實(shí)用程序,我想知道是否有人知道 GPIO 配置的工作原理。 例如,GPIO0 可以用作傳感器復(fù)位,我知道這個(gè) GPIO0 用于重置傳感器,但我不明白的是選項(xiàng)用戶(hù) GPIO 例如GPIO 1可以是User GPIO0,這是什么意思呢?
    發(fā)表于 05-19 06:56

    微動(dòng)開(kāi)關(guān)的工作原理

    微動(dòng)開(kāi)關(guān)的工作原理
    的頭像 發(fā)表于 04-17 09:00 ?1191次閱讀

    移動(dòng)電源的工作原理_移動(dòng)電源結(jié)構(gòu)

    移動(dòng)電源的工作原理是將電能存儲(chǔ)在內(nèi)置電池中,然后通過(guò)適當(dāng)?shù)碾妷汉碗娏鬏敵?,為電子設(shè)備提供所需的電能。以下是關(guān)于移動(dòng)電源工作原理的詳細(xì)解釋?zhuān)?/div>
    的頭像 發(fā)表于 01-27 16:11 ?1462次閱讀

    超級(jí)電容電池的工作原理

    超級(jí)電容電池是一種介于傳統(tǒng)電容器與電池之間的新型儲(chǔ)能裝置。其工作原理主要基于電荷分離和電場(chǎng)存儲(chǔ),以下是關(guān)于超級(jí)電容電池工作原理的詳細(xì)解釋?zhuān)?/div>
    的頭像 發(fā)表于 01-27 11:17 ?1165次閱讀

    發(fā)電機(jī)的基本工作原理 發(fā)電機(jī)交流和直流工作原理

    發(fā)電機(jī)的基本工作原理 發(fā)電機(jī)的工作原理基于法拉第電磁感應(yīng)定律,即當(dāng)導(dǎo)體在磁場(chǎng)中移動(dòng)時(shí),會(huì)在導(dǎo)體中產(chǎn)生電動(dòng)勢(shì)(電壓)。這種電動(dòng)勢(shì)可以驅(qū)動(dòng)電流流動(dòng),從而產(chǎn)生電能。 交流發(fā)電機(jī)的工作原理 交流發(fā)電機(jī)(AC
    的頭像 發(fā)表于 11-29 09:17 ?4735次閱讀

    母線工作原理

    電子發(fā)燒友網(wǎng)站提供《母線工作原理.pdf》資料免費(fèi)下載
    發(fā)表于 10-26 11:08 ?0次下載
    母線<b class='flag-5'>工作原理</b>

    輔助電源的工作原理

     輔助電源的工作原理主要涉及在主電源發(fā)生故障或不穩(wěn)定時(shí),自動(dòng)切換到備用電源,以保證設(shè)備的持續(xù)供電。以下是關(guān)于輔助電源工作原理的詳細(xì)解釋?zhuān)?/div>
    的頭像 發(fā)表于 10-21 14:56 ?1278次閱讀

    電子煙PCBA工作原理概括

    電子煙PCBA板工作原理
    的頭像 發(fā)表于 10-19 09:53 ?3094次閱讀
    電子煙PCBA<b class='flag-5'>工作原理</b>概括

    成像器件的工作原理是什么

    成像器件,也稱(chēng)為圖像傳感器,是一種將光信號(hào)轉(zhuǎn)換為電信號(hào)的設(shè)備,廣泛應(yīng)用于攝影、視頻監(jiān)控、醫(yī)學(xué)成像、衛(wèi)星成像、工業(yè)檢測(cè)等領(lǐng)域。成像器件的工作原理涉及到光學(xué)、電子學(xué)、材料科學(xué)等多個(gè)學(xué)科的知識(shí)。 成像器件
    的頭像 發(fā)表于 10-14 14:05 ?1121次閱讀

    鋅銀電池的工作原理

    鋅銀電池的工作原理主要基于鋅和銀兩種金屬之間的氧化還原反應(yīng)。以下是鋅銀電池工作原理的詳細(xì)解釋?zhuān)?/div>
    的頭像 發(fā)表于 10-03 14:59 ?3662次閱讀

    CAN總線控制器的工作原理

    CAN(Controller Area Network,控制器局域網(wǎng))總線控制器的工作原理涉及多個(gè)方面,包括消息傳輸、沖突檢測(cè)與解決、總線仲裁等關(guān)鍵機(jī)制。以下是對(duì)CAN總線控制器工作原理的詳細(xì)解析,旨在全面闡述其工作原理和機(jī)制。
    的頭像 發(fā)表于 09-30 11:33 ?2040次閱讀

    光線示波器的工作原理

    光線示波器的工作原理主要基于電、磁、光和機(jī)械系統(tǒng)的綜合作用,其詳細(xì)過(guò)程如下:
    的頭像 發(fā)表于 09-21 16:09 ?1288次閱讀

    串行接口的工作原理和結(jié)構(gòu)

    串行接口(Serial Interface)的工作原理和結(jié)構(gòu)是理解其在計(jì)算機(jī)與外部設(shè)備之間數(shù)據(jù)傳輸方式的重要基礎(chǔ)。以下將詳細(xì)闡述串行接口的工作原理及其典型結(jié)構(gòu)。
    的頭像 發(fā)表于 08-25 17:01 ?2970次閱讀

    推挽驅(qū)動(dòng)芯片的工作原理是什么

    推挽驅(qū)動(dòng)芯片的工作原理是一個(gè)復(fù)雜而精細(xì)的過(guò)程,它涉及到電子元件的協(xié)同工作以及信號(hào)處理的多個(gè)層面。
    的頭像 發(fā)表于 08-23 14:49 ?1826次閱讀

    VCO的工作原理是什么

    VCO(Voltage-Controlled Oscillator,電壓控制振蕩器)的工作原理是基于電子器件的非線性特性,通過(guò)改變輸入電壓來(lái)調(diào)整輸出信號(hào)的頻率。以下是對(duì)VCO工作原理的詳細(xì)闡述,包括其電路結(jié)構(gòu)、工作機(jī)制、性能參數(shù)
    的頭像 發(fā)表于 08-20 17:16 ?4450次閱讀