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

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

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

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

Linux網(wǎng)絡(luò)性能瓶頸和解決方案

Linux閱碼場(chǎng) ? 來(lái)源:Linux閱碼場(chǎng) ? 作者:Linux閱碼場(chǎng) ? 2023-04-06 14:43 ? 次閱讀

我們的活動(dòng)在互聯(lián)網(wǎng)上每天都會(huì)產(chǎn)生海量的數(shù)據(jù)。我們知道這是一個(gè)“很大”的數(shù)字,但你知道到底有多大嗎?

據(jù)粗略估算,目前互聯(lián)網(wǎng)上每天新增的數(shù)據(jù)量超過(guò) 1.15 EB 。而預(yù)測(cè)到 2025 年,這一數(shù)字會(huì)增長(zhǎng)到 491 EB。如果看不出來(lái)這個(gè)數(shù)字有多大,那么看下這個(gè)單位換算公式:1 EB = 1*1024*1024*1024 GB。

因?yàn)?a href="http://m.xsypw.cn/soft/data/55-88/" target="_blank">物聯(lián)網(wǎng)也在超快地發(fā)展,無(wú)處不在的 IoT 設(shè)備會(huì)產(chǎn)生更多的數(shù)據(jù),所以互聯(lián)網(wǎng)數(shù)據(jù)會(huì)呈指數(shù)級(jí)增長(zhǎng)。那么無(wú)論是云計(jì)算、大數(shù)據(jù)分析應(yīng)用,還是 AI 處理,網(wǎng)絡(luò)傳輸能否及時(shí)“吞”下暴漲的數(shù)據(jù),就決定了服務(wù)的能力。

但目前承載互聯(lián)網(wǎng)服務(wù)的主流操作系統(tǒng) Linux卻存在網(wǎng)絡(luò)性能瓶頸,問(wèn)題出在哪里呢?

1Linux 網(wǎng)絡(luò)的瓶頸

當(dāng) Linux 在 20世紀(jì)90 年代初設(shè)計(jì)開發(fā) Linux 內(nèi)核時(shí),還無(wú)法預(yù)料到未來(lái)30年全球互聯(lián)網(wǎng)的規(guī)模,所以也不可能按現(xiàn)在的數(shù)據(jù)流量去做設(shè)計(jì)。而 Linux 內(nèi)核的基本結(jié)構(gòu)也保持到現(xiàn)在。

因此問(wèn)題就在于 Linux 內(nèi)核網(wǎng)絡(luò)協(xié)議棧的實(shí)現(xiàn),相對(duì)于當(dāng)下的數(shù)據(jù)吞吐量需求,有以下三個(gè)原因會(huì)產(chǎn)生網(wǎng)絡(luò)傳輸瓶頸:

應(yīng)用程序和網(wǎng)絡(luò)協(xié)議棧在交換數(shù)據(jù)時(shí),會(huì)頻繁地在用戶態(tài)與內(nèi)核態(tài)之間切換,導(dǎo)致延時(shí)產(chǎn)生;

數(shù)據(jù)要在用戶空間緩存與內(nèi)核空間緩存之間往來(lái)復(fù)制,耗費(fèi)時(shí)間;

內(nèi)核協(xié)議棧需要對(duì)數(shù)據(jù)進(jìn)行封裝和解析工作,占用 CPU 時(shí)鐘

48f54248-d43c-11ed-bfe3-dac502259ad0.png

內(nèi)核協(xié)議棧方案的數(shù)據(jù)流

辦法總比困難多,《Linux高性能網(wǎng)絡(luò)詳解:從DPDK、RDMA到XDP》一書就針對(duì)上述問(wèn)題給出了包括軟件與硬件的解決辦法。本書的作者是業(yè)內(nèi)資深專家,他在書中以理論結(jié)合實(shí)踐,說(shuō)明了 DPDK、RDMA、XDP 實(shí)現(xiàn) Linux 高性能網(wǎng)絡(luò)以及保障傳輸安全的方案。

2DPDK:低成本的高性能網(wǎng)絡(luò)技術(shù)

DPDK(Data Plane Development Kit,數(shù)據(jù)平面開發(fā)工具包)是在用戶態(tài)運(yùn)行的一組軟件庫(kù)和驅(qū)動(dòng)程序。它的一大優(yōu)點(diǎn)是可以在所有主要 CPU 體系上加速網(wǎng)絡(luò)數(shù)據(jù)包的處理,這樣一來(lái),現(xiàn)有硬件無(wú)須升級(jí),只要在內(nèi)核加裝相應(yīng)驅(qū)動(dòng)就可以提升網(wǎng)絡(luò)性能,是一種低成本的實(shí)現(xiàn)方案。

DPDK 技術(shù)原理是繞過(guò) Linux 內(nèi)核協(xié)議棧直接訪問(wèn)網(wǎng)卡硬件,從而提高網(wǎng)絡(luò)數(shù)據(jù)包的處理速度和吞吐量。DPDK 將網(wǎng)卡的數(shù)據(jù)包直接映射到用戶空間,然后使用高效的數(shù)據(jù)包處理庫(kù)進(jìn)行數(shù)據(jù)包的處理和轉(zhuǎn)發(fā),最后再將數(shù)據(jù)包發(fā)送回網(wǎng)卡。

在數(shù)據(jù)中心、云計(jì)算、虛擬化、網(wǎng)絡(luò)安全等應(yīng)用場(chǎng)景中,DPDK可以提高網(wǎng)絡(luò)應(yīng)用的性能和吞吐量、降低網(wǎng)絡(luò)延遲、提高網(wǎng)絡(luò)應(yīng)用的響應(yīng)速度和穩(wěn)定性,還可以支持多種網(wǎng)絡(luò)協(xié)議和數(shù)據(jù)包格式,具有很好的靈活性和可擴(kuò)展性。

DPDK 為處理數(shù)據(jù)包實(shí)現(xiàn)了一個(gè)“運(yùn)行到完成”(run to completion)的模型,在執(zhí)行數(shù)據(jù)平面處理邏輯之前,必須先分配所有資源,然后以邏輯核上執(zhí)行單元(線程)的形式運(yùn)行。該模型不支持調(diào)度器,以輪詢的方式訪問(wèn)所有設(shè)備。

DPDK 的核心是一組庫(kù),下圖是核心組件以及它們之間的依賴關(guān)系。

48fd0de8-d43c-11ed-bfe3-dac502259ad0.png

DPDK 核心組件

《Linux高性能網(wǎng)絡(luò)詳解:從DPDK、RDMA到XDP》詳細(xì)說(shuō)明了 DPDK 的內(nèi)存管理與優(yōu)化、DPDK 的編譯與運(yùn)行方法,介紹了測(cè)試和分析高性能網(wǎng)卡的工具與方法,是手把手式的貼心教程。這對(duì)于講述內(nèi)核驅(qū)動(dòng)開發(fā)來(lái)說(shuō),是相當(dāng)友好的學(xué)習(xí)體驗(yàn)。

接下來(lái),我們了解一種軟硬件結(jié)合的解決方案。

3RDMA:軟硬兼施的高性能網(wǎng)絡(luò)技術(shù)

RDMA(Remote Direct Memory Access,遠(yuǎn)程直接內(nèi)存訪問(wèn))提供了一種消息服務(wù),應(yīng)用程序可基于該服務(wù)直接讀寫遠(yuǎn)程計(jì)算機(jī)上的虛擬內(nèi)存。

RDMA 相對(duì)于 DPDK 技術(shù),不僅繞過(guò)了軟件協(xié)議棧,最大的優(yōu)點(diǎn)是將數(shù)據(jù)封裝和解析工作放在了網(wǎng)卡里,由硬件來(lái)實(shí)現(xiàn)。這樣就降低了 CPU 的負(fù)載,特別適合高性能計(jì)算場(chǎng)景,例如分布式神經(jīng)網(wǎng)絡(luò)計(jì)算。

它的工作原理是通過(guò)操作系統(tǒng)的通信機(jī)制建立通道,由應(yīng)用程序在用戶態(tài)直接操作硬件,數(shù)據(jù)無(wú)須流經(jīng)內(nèi)核,從而實(shí)現(xiàn)高效的網(wǎng)絡(luò)傳輸性能。

下面我們從數(shù)據(jù)在兩臺(tái)主機(jī)之間的傳輸過(guò)程來(lái)了解一下 RDMA 的工作方式:

發(fā)送端網(wǎng)卡從本機(jī)內(nèi)存用戶空間復(fù)制數(shù)據(jù)到硬件緩沖區(qū),并添加協(xié)議頭,完成封裝工作;

發(fā)送端網(wǎng)卡將數(shù)據(jù)通過(guò)網(wǎng)線或光纖將數(shù)據(jù)發(fā)往對(duì)端;

接收端網(wǎng)卡收到數(shù)據(jù)后,進(jìn)行協(xié)議解封裝,然后將數(shù)據(jù)從硬件緩沖區(qū)復(fù)制到本機(jī)用戶空間內(nèi)存中。

49088268-d43c-11ed-bfe3-dac502259ad0.png

RDMA 方案的數(shù)據(jù)流

由上述可知,采用 RDMA 方案可以穩(wěn)定獲得網(wǎng)卡最大速率傳輸能力,而不會(huì)因?yàn)?CPU 負(fù)載變化造成傳輸效能波動(dòng)。但在部署組網(wǎng)時(shí),必須采購(gòu)支持 RDMA 的特殊網(wǎng)卡。

《Linux高性能網(wǎng)絡(luò)詳解:從DPDK、RDMA到XDP》對(duì) RDMA 組網(wǎng)方案與性能評(píng)估測(cè)試有詳細(xì)說(shuō)明,對(duì)于提供高性能計(jì)算服務(wù)的企業(yè)極具參考價(jià)值。

4XDP:高效傳輸?shù)谋U?/p>

DPDK 在傳輸數(shù)據(jù)時(shí)采用了操作系統(tǒng)內(nèi)核旁路方式,這固然提升了效率,但也失去了操作系統(tǒng)安全機(jī)制提供的防護(hù)。這樣就存在數(shù)據(jù)被截獲、盜取的風(fēng)險(xiǎn),因此需要有對(duì)數(shù)據(jù)的保護(hù)措施,同時(shí)保證高效傳輸。

XDP(eXpress Data Path,快速數(shù)據(jù)通路)是一種 BPF 的程序/代碼,可以理解為掛載在 BPF 處理流程內(nèi)的掛鉤方法。它能夠在網(wǎng)絡(luò)數(shù)據(jù)到達(dá)網(wǎng)卡時(shí)就對(duì)其處理,而不過(guò)多占用 CPU 計(jì)算資源。

BPF 提供了在內(nèi)核事件與應(yīng)用程序事件發(fā)生時(shí)執(zhí)行一段程序的機(jī)制。這使得內(nèi)核可編程,XDP 即基于 BPF 特性為數(shù)據(jù)高速傳輸提供了保障。目前,XDP 已經(jīng)是 Linux 內(nèi)核的一部分,與現(xiàn)有的內(nèi)核網(wǎng)絡(luò)協(xié)議棧完全兼容,二者可以協(xié)同工作 。

XDP 的典型處理流程如下:

從網(wǎng)卡收到數(shù)據(jù)包,提取數(shù)據(jù)報(bào)頭信息;

讀取或更新一些元數(shù)據(jù);

根據(jù)需要修改或者重寫數(shù)據(jù)包;

根據(jù)策略決定是丟包、重傳,還是重定向至內(nèi)核協(xié)議棧等。

4913a6b6-d43c-11ed-bfe3-dac502259ad0.png

典型的 XDP 程序的執(zhí)行流程

XDP 擁有諸多優(yōu)點(diǎn)。第一,它由 Linux 內(nèi)核社區(qū)維護(hù),長(zhǎng)期使用有保障,也無(wú)須額外安裝組件;第二,它可以與內(nèi)核協(xié)同,可復(fù)用內(nèi)核安全模型;第三,BPF能夠識(shí)別并拒絕執(zhí)行不安全指令;第四,它不會(huì)獨(dú)占 CPU,節(jié)約計(jì)算資源。

所以,在規(guī)劃高性能網(wǎng)絡(luò)實(shí)施方案時(shí),需要將 DPDK 等技術(shù)與 XDP 相結(jié)合,盡可能地在性能與穩(wěn)定、安全之間取得最佳平衡。

5結(jié)語(yǔ)

對(duì)于企業(yè)來(lái)說(shuō),在規(guī)劃和實(shí)施網(wǎng)絡(luò)方案時(shí),一定要從自身業(yè)務(wù)特點(diǎn)出發(fā),切忌巨額投資之后卻是高射炮打蚊子的效果。這也需要技術(shù)團(tuán)隊(duì)對(duì) Linux 網(wǎng)絡(luò)技術(shù)原理有透徹理解,然后才能選擇最適合的技術(shù)方案。

例如,業(yè)務(wù)發(fā)展穩(wěn)定且已部署大量 Linux 服務(wù)器的企業(yè),為了提升網(wǎng)絡(luò)效能,可以選擇 DPDK、XDP 技術(shù)。對(duì)于意欲進(jìn)軍 AI 業(yè)務(wù)的新興企業(yè)來(lái)說(shuō),就要考慮充分解放算力,獲得最優(yōu)傳輸效能,可以選擇 RDMA 技術(shù)路線。而擁有諸多復(fù)雜服務(wù)的云計(jì)算廠商,則要混合部署多種網(wǎng)絡(luò)傳輸方案,同時(shí)保持穩(wěn)定和速率。

《Linux高性能網(wǎng)絡(luò)詳解:從DPDK、RDMA到XDP》就為實(shí)現(xiàn)上述需求提供了很好的指引。從對(duì) DPDK、RDMA、XDP 技術(shù)的原理說(shuō)明,到深入代碼級(jí)別的剖析,再以實(shí)例展示使用方法。企業(yè)據(jù)此就可以開展網(wǎng)絡(luò)環(huán)境評(píng)估、技術(shù)選型參考、規(guī)劃實(shí)施等工作。

在數(shù)據(jù)還將指數(shù)級(jí)暴增的未來(lái),互聯(lián)網(wǎng)企業(yè)都要未雨綢繆,及時(shí)調(diào)整網(wǎng)絡(luò)環(huán)境,消除網(wǎng)絡(luò)傳輸瓶頸,在未來(lái)贏得先機(jī)!

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 互聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    54

    文章

    11235

    瀏覽量

    105785
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11469

    瀏覽量

    212923
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7103

    瀏覽量

    125055
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    7780

    瀏覽量

    90479
  • 性能
    +關(guān)注

    關(guān)注

    0

    文章

    276

    瀏覽量

    19321

原文標(biāo)題:Linux網(wǎng)絡(luò)性能上不去?三招打通瓶頸,從此網(wǎng)絡(luò)高性能

文章出處:【微信號(hào):LinuxDev,微信公眾號(hào):Linux閱碼場(chǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

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

    2009最新LED路燈技術(shù)設(shè)計(jì)和解決方案

    2009年11月19-20日,OFweek光電新聞網(wǎng),LEDWeekly將舉辦“2009最新LED路燈技術(shù)設(shè)計(jì)和解決方案”系列在線研討會(huì)。歡迎朋友們參加, 詳細(xì)情況看這里~: http://webinar.ofweek.com/index.action?user.id=2 有興趣的朋友可以來(lái)參加! 
    發(fā)表于 11-08 23:57

    儀表放大器--常見(jiàn)的應(yīng)用問(wèn)題和解決方案

    儀表放大器--常見(jiàn)的應(yīng)用問(wèn)題和解決方案很完整的資料!
    發(fā)表于 12-15 09:53

    高效輕型線程對(duì)Linux實(shí)時(shí)性能有什么影響

    簡(jiǎn)介上個(gè)世紀(jì),研發(fā)人員投入了大量精力提高Linux實(shí)時(shí)性能和行為,最著名的是PREEMPT_RT Linux實(shí)時(shí)擴(kuò)展。最近,研發(fā)人員致力于研究適用于多核設(shè)備的Linux用戶空間
    發(fā)表于 05-16 10:45

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案
    發(fā)表于 09-17 06:53

    多核設(shè)備中的Linux實(shí)時(shí)性能怎么提高?

    解決方案允許從用戶空間中直接訪問(wèn)基礎(chǔ)硬件,從而可避免因?qū)?Linux 內(nèi)核引入用戶空間應(yīng)用而帶來(lái)的額外系統(tǒng)開銷。這些用戶空間擴(kuò)展(有多個(gè))已首先由電信/網(wǎng)絡(luò)性能 IP 數(shù)據(jù)包處理系統(tǒng)
    發(fā)表于 04-06 08:17

    EMI耦合類型和解決方案?

    、高性能和解決方案尺寸三個(gè)考慮因素通常相互沖突:只能優(yōu)先考慮一兩個(gè),而放棄第三個(gè),尤其當(dāng)設(shè)計(jì)期限臨近時(shí)。犧牲一些性能變得司空見(jiàn)慣;其實(shí)不應(yīng)該是這樣的。。
    發(fā)表于 10-22 14:10

    ADI鋰電池測(cè)試設(shè)備和解決方案

    ADI鋰電池測(cè)試設(shè)備和解決方案
    發(fā)表于 09-08 16:23 ?15次下載
    ADI鋰電池測(cè)試設(shè)備<b class='flag-5'>和解決方案</b>

    PFC+LLC的產(chǎn)品和解決方案分析

    PFC LLC英雄產(chǎn)品和解決方案
    的頭像 發(fā)表于 05-29 09:05 ?1.1w次閱讀
    PFC+LLC的產(chǎn)品<b class='flag-5'>和解決方案</b>分析

    Java:調(diào)用window的matlab遇到的問(wèn)題和解決方案

    Java:調(diào)用window的matlab遇到的問(wèn)題和解決方案
    的頭像 發(fā)表于 06-20 09:32 ?3589次閱讀
    Java:調(diào)用window的matlab遇到的問(wèn)題<b class='flag-5'>和解決方案</b>

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案
    發(fā)表于 03-19 04:28 ?4次下載
    無(wú)線傳感器<b class='flag-5'>網(wǎng)絡(luò)</b>的挑戰(zhàn)<b class='flag-5'>和解決方案</b>

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案

    無(wú)線傳感器網(wǎng)絡(luò)的挑戰(zhàn)和解決方案
    發(fā)表于 03-21 13:41 ?1次下載
    無(wú)線傳感器<b class='flag-5'>網(wǎng)絡(luò)</b>的挑戰(zhàn)<b class='flag-5'>和解決方案</b>

    針對(duì)微處理器的Linux基礎(chǔ)和解決方案

    供了關(guān)鍵資源的網(wǎng)絡(luò)鏈接,旨在幫助嵌入式 Linux 解決方案的開發(fā)人員運(yùn)行、構(gòu)建和使用這一功能豐富的生態(tài)系統(tǒng)。
    發(fā)表于 03-31 11:24 ?3次下載
    針對(duì)微處理器的<b class='flag-5'>Linux</b>基礎(chǔ)<b class='flag-5'>和解決方案</b>

    WP001-無(wú)線傳感器網(wǎng)絡(luò)面臨的挑戰(zhàn)和解決方案

    WP001-無(wú)線傳感器網(wǎng)絡(luò)面臨的挑戰(zhàn)和解決方案
    發(fā)表于 04-25 08:43 ?5次下載
    WP001-無(wú)線傳感器<b class='flag-5'>網(wǎng)絡(luò)</b>面臨的挑戰(zhàn)<b class='flag-5'>和解決方案</b>

    無(wú)線傳感器網(wǎng)絡(luò)面臨的挑戰(zhàn)和解決方案

    無(wú)線傳感器網(wǎng)絡(luò)面臨的挑戰(zhàn)和解決方案
    發(fā)表于 04-29 12:47 ?2次下載
    無(wú)線傳感器<b class='flag-5'>網(wǎng)絡(luò)</b>面臨的挑戰(zhàn)<b class='flag-5'>和解決方案</b>

    PCB金手指設(shè)計(jì)的常見(jiàn)問(wèn)題和解決方案

    PCB金手指設(shè)計(jì)的常見(jiàn)問(wèn)題和解決方案
    的頭像 發(fā)表于 12-25 10:09 ?3494次閱讀
    主站蜘蛛池模板: 亚洲成a人片在线观看导航 亚洲成a人片在线观看尤物 | 黄色在线视频网 | 久久久精品午夜免费不卡 | 717影院理论午夜伦不卡久久 | 久久免费福利视频 | 六月色播 | 国产色在线 | 亚洲 国产色综合天天综合网 | 一级特黄高清完整大片 | 狠狠狠狠狠狠狠狠 | 夜夜春宵翁熄性放纵古代 | 狠狠干精品| 黄 色 片免费观看 | 色激情综合 | 欧美最猛黑人xxxxwww | 国产小视频在线观看免费 | 亚洲国产精品综合久久2007 | 午夜在线播放 | 人人干狠狠干 | 操美女网址 | 91福利视频免费 | 激情丁香网| 欧美激情91 | 天堂视频网 | 在线视频播放大全 | 黄色大片日本 | 男人操女人在线观看 | 亚洲一区二区三区四区五区六区 | 国产三级精品播放 | 色妹子在线 | 5g成人影院| 免费黄色| 国产福利99 | 国产牛仔裤系列在线观看 | 35pao强力 | 亚洲欧美色视频 | 国产国拍亚洲精品mv在线观看 | 九九51精品国产免费看 | se97se成人亚洲网站 | 天天狠狠操 | 国产精品嫩草影院一二三区入口 | 特级黄 |