在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FDIR簡介與工作原理

FPGA之家 ? 來源:FPGA之家 ? 作者:Guo, Junfeng ? 2022-07-31 10:37 ? 次閱讀

FDIR簡介

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

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

Intel 以太網Flow Director技術(Intel Ethernet Flow Director,簡稱FDIR)將數據包定向發送到對應應用所在core上,從而彌補了RSS的不足,可用來加速數據包到目的應用處理的過程。在新一代Intel 以太網800系列網絡適配器中,FDIR有了更多的規則空間硬件資源和更靈活的配置機制。

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

如同Linux提供了純軟件實現的RSS版本一樣,Linux也提供了純軟件實現的ATR(Application Targeting Routing)模式的Flow Director,稱為RFS(Receive Flow Steering)。盡管功能上等效,但是RFS無法達到FDIR對網絡性能的提升效果,因為它必須通過某個core來執行調度數據包,而且該core大概率不是目的應用所在的core。因此,ATR模式的FDIR可被看作RFS的智能卸載硬件加速方案。

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

FDIR工作原理

在網絡適配器硬件接收到數據包時,硬件Parser會通過Parse Graph狀態機對數據包進行解析提取出一些重要信息(如數據包類型)并填充在該數據包的descriptor中;

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

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

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

基于數據包提取出的Input Set,FDIR會查表進行精確匹配和優先級判斷,從而確定出對應的action。常見的action包括:1)Drop:根據FDIR表中對應規則的DROP Flag位決定是否drop該數據包。2)To Queue:將數據包發送至目的Queue,或在進行hash操作后發送至Queue Group(也叫Queue Region)中的某個Queue。3)Counter:對匹配的數據包進行統計計數,計數的方式有:基于個數、基于byte數據量、基于個數和byte數據量。

其中,FDIR匹配準則依據包括:1)Input Set向量域;2)數據包所屬的VSI;3)數據包所匹配的Profile。

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

FDIR使能機制

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

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

對FDIR Queue的初始化同樣是通過寫寄存器完成的,包括:分配FDIR VSI硬件資源;映射TC LAN Queue到VSI;初始化FDIR哈希表;初始化FDIR統計計數器;分配并初始化TX/RX LAN Queue;綁定中斷到VSI Queue;分配并初始化Ring Buffer;分配FDIR Profile資源等。

在DPDK中,FDIR規則可以通過rte_flow的組織形式runtime進行配置。每條規則中包含了必要的 Pattern和Action信息。

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

緊接著基于rte_flow規則中解析出的Input Set,分配Profile ID;注冊HW Profile;創建PTYPE Group的映射關系;在TCAM中添加對應的Field Vector。再之后driver根據解析出的Input Set的值分配Queue的Descriptor并對LAN+FDIR Descriptor進行填充,然后構建相應的FDIR Dummy Packet。

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

通過FDIR TX Queue將規則實體以特定的格式發送給網卡的firmware,并返回處理的狀態結果。

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

其中,每個FDIR規則實體的內容是由64 bytes數據構成,由以下參數組成:1)從數據包中提取的參數:48 bytes的Input Set;數據包所匹配的Profile等。2)從軟件Descriptor中接收到的參數:目的Queue;FDIR ID;數據包所屬的VSI;統計計數器;控制相關的Flag位等。3)自維護的存儲管理參數:PF/VF/VSI標志位;有效Flag位等。

FDIR應用場景舉例

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

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

結語

當前VMware或Microsoft并不支持FDIR功能。FDIR更適合在純“裸機(bare metal)” 上的Linux應用程序中提升網絡性能,特別是那些網絡通信量極大、處理小數據包極多的應用程序。在那些看重網絡性能的應用程序(例如Memcached)中,FIDR為以太網領域在高帶寬、低延遲等方向提供了顯著的性能增強。伴隨的好處也包括降低CPU占有率、節省功耗等,因而更適合配合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.

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 以太網
    +關注

    關注

    40

    文章

    5476

    瀏覽量

    173002
  • Linux
    +關注

    關注

    87

    文章

    11357

    瀏覽量

    210845

原文標題:基于Intel?以太網800系列網絡適配器的FDIR功能及原理介紹

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    移動電源的工作原理_移動電源結構

    移動電源的工作原理是將電能存儲在內置電池中,然后通過適當的電壓和電流輸出,為電子設備提供所需的電能。以下是關于移動電源工作原理的詳細解釋:
    的頭像 發表于 01-27 16:11 ?280次閱讀

    超級電容電池的工作原理

    超級電容電池是一種介于傳統電容器與電池之間的新型儲能裝置。其工作原理主要基于電荷分離和電場存儲,以下是關于超級電容電池工作原理的詳細解釋:
    的頭像 發表于 01-27 11:17 ?249次閱讀

    發電機的基本工作原理 發電機交流和直流工作原理

    發電機的基本工作原理 發電機的工作原理基于法拉第電磁感應定律,即當導體在磁場中移動時,會在導體中產生電動勢(電壓)。這種電動勢可以驅動電流流動,從而產生電能。 交流發電機的工作原理 交流發電機(AC
    的頭像 發表于 11-29 09:17 ?2764次閱讀

    母線工作原理

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

    輔助電源的工作原理

     輔助電源的工作原理主要涉及在主電源發生故障或不穩定時,自動切換到備用電源,以保證設備的持續供電。以下是關于輔助電源工作原理的詳細解釋:
    的頭像 發表于 10-21 14:56 ?594次閱讀

    電子煙PCBA工作原理概括

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

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

    成像器件,也稱為圖像傳感器,是一種將光信號轉換為電信號的設備,廣泛應用于攝影、視頻監控、醫學成像、衛星成像、工業檢測等領域。成像器件的工作原理涉及到光學、電子學、材料科學等多個學科的知識。 成像器件
    的頭像 發表于 10-14 14:05 ?535次閱讀

    鋅銀電池的工作原理

    鋅銀電池的工作原理主要基于鋅和銀兩種金屬之間的氧化還原反應。以下是鋅銀電池工作原理的詳細解釋:
    的頭像 發表于 10-03 14:59 ?1992次閱讀

    CAN總線控制器的工作原理

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

    光線示波器的工作原理

    光線示波器的工作原理主要基于電、磁、光和機械系統的綜合作用,其詳細過程如下:
    的頭像 發表于 09-21 16:09 ?811次閱讀

    串行接口的工作原理和結構

    串行接口(Serial Interface)的工作原理和結構是理解其在計算機與外部設備之間數據傳輸方式的重要基礎。以下將詳細闡述串行接口的工作原理及其典型結構。
    的頭像 發表于 08-25 17:01 ?2074次閱讀

    推挽驅動芯片的工作原理是什么

    推挽驅動芯片的工作原理是一個復雜而精細的過程,它涉及到電子元件的協同工作以及信號處理的多個層面。
    的頭像 發表于 08-23 14:49 ?1116次閱讀

    VCO的工作原理是什么

    VCO(Voltage-Controlled Oscillator,電壓控制振蕩器)的工作原理是基于電子器件的非線性特性,通過改變輸入電壓來調整輸出信號的頻率。以下是對VCO工作原理的詳細闡述,包括其電路結構、工作機制、性能參數
    的頭像 發表于 08-20 17:16 ?2806次閱讀

    驅動器的工作原理

    驅動器的工作原理 驅動器,又稱為執行器,是將電能、氣能、液壓能等能量轉換為機械能的裝置。驅動器廣泛應用于工業自動化、機器人、航空航天、汽車制造等領域。本文將詳細介紹驅動器的工作原理、分類、特點
    的頭像 發表于 06-10 16:08 ?2713次閱讀

    霍爾開關的工作原理及應用

    霍爾開關的工作原理及應用
    的頭像 發表于 04-09 10:29 ?3871次閱讀
    霍爾開關的<b class='flag-5'>工作原理</b>及應用
    主站蜘蛛池模板: 成人a毛片手机免费播放 | 久青草久青草高清在线播放 | 天天视频免费观看高清影视 | 久久精品视频网站 | 亚洲精品美女久久久aaa | 亚洲区在线播放 | 久久精品国产精品亚洲红杏 | www四虎| 曰本aaaaa毛片午夜网站 | 日韩写真在线 | 35pao免费视频| 亚洲国产成a人v在线观看 | 一级片免费在线观看视频 | 性欧美高清精品videos | 奇米9999 | 性欧美xxx 不卡视频 | 韩国免费三片在线视频 | 免费看成年视频网页 | 亚洲一区二区中文字5566 | 久久综合久久精品 | 色色色色色色色色色色色 | h黄视频在线观看 | 玖玖在线 | 日日夜夜狠狠 | 99婷婷| 视频一区视频二区在线观看 | 欧美草逼| 四虎影城 | 在线毛片网 | 国语一级毛片私人影院 | 欲色影院 | 亚洲天天在线 | 欧美地区一二三区 | 婷婷丁香在线观看 | 五月天激情丁香 | 97人人做人人添人人爱 | 福利视频免费观看 | tom影院亚洲国产日本一区 | 四虎成人精品在永久在线观看 | 在线视频三区 | 亚洲一区二区三区免费观看 |