Lub Internet Engineering Task Force (IETF), uas yog lub luag haujlwm rau kev txhim kho Internet raws tu qauv thiab architecture, tau ua tiav RFC rau BPF cov lus qhia teeb tsa thiab luam tawm cov kev qhia tshwj xeeb raws li tus cim RFC 9669. RFC tau muab cov xwm txheej ntawm ib tug "Tshaj Tawm Tus Qauv", tom qab uas ua haujlwm yuav pib muab RFC cov xwm txheej ntawm cov qauv qauv, uas txhais tau tias ua kom ruaj khov thiab ua tiav tag nrho cov lus hais.
Cov lus qhia tshwj xeeb uas tau tshaj tawm piav qhia txog cov lus qhia BPF bytecode thiab lub tshuab virtual qis-qib siv hauv Linux kernel subsystem eBPF los ua cov neeg ua haujlwm sab nraud uas muaj peev xwm hloov pauv tus cwj pwm ntawm lub kaw lus yam tsis tas yuav hloov kho kernel code. Yeej, eBPF siv lub processor virtual yooj yim nrog nws tus kheej cov npe sau, RISC-zoo li cov lus qhia, stack, thiab program counter. Cov kev pab cuam BPF feem ntau yog sau ua ib pawg ntawm C hom lus thiab tom qab ntawd muab tso ua ke rau hauv bytecode uas tsim nyog rau kev ua tiav hauv tshuab virtualLub tshuab virtual tuaj yeem ua tiav cov kev pab cuam BPF siv kev txhais lus lossis kev sau ua ke (JIT) los txhais cov bytecode rau hauv cov lus qhia ntawm lub tshuab.
Nws xav tias kev tsim cov qauv ntawm BPF cov lus qhia teeb tsa yuav txhawb kev tsim cov kev siv sab nraud uas sib xws nrog lub tshuab virtual eBPF thiab muaj peev xwm khiav cov kev pab cuam BPF sau rau Linux kernel. Kev ua haujlwm tab tom ua los tsim cov no cov tshuab virtual Muaj ib txhia chaw tsim khoom siv network adapter tab tom tsim cov cuab yeej kho vajtse kom nrawm dua rau BPF network packet handlers. Lub tswv yim yog los nthuav cov peev xwm ntawm XDP (eXpress Data Path) subsystem kom khiav BPF cov kev pab cuam tsis yog ntawm theem tsav tsheb network xwb, tab sis kuj ntawm lub network adapter.
Piv txwv li, Netronome tau ntxiv BPF kev txhawb nqa rau Netronome Agilio CX SmartNIC adapter thiab muab ib qho piv txwv ntawm universal BPF cov kev pabcuam uas tuaj yeem ua tiav tsis yog siv CPU hauv cov ntsiav nrog txhua tus tsav tsheb XDP, tab sis kuj ntawm daim npav network. sab, uas tso cai rau koj los txiav txim siab txog kev xa rov qab, hloov kho lossis hloov pauv cov pob ntawv yam tsis tau nkim CPU cov peev txheej. Cais, XRP (eXpress Resubmission Path) thev naus laus zis tau tsim, uas ua rau nws muaj peev xwm siv BPF txav qee qhov kev ua haujlwm nrog NVMe drives, xws li ua haujlwm nrog indexes thiab cov ntaub ntawv sib sau, mus rau qib NVMe tsav tsheb lossis mus rau lwm lub cuab yeej.
Nws tau raug sau tseg tias kev siv dav dav ntawm cov peev txheej zoo li no tau cuam tshuam los ntawm kev pheej hmoo cuam tshuam nrog cov teeb meem sib raug zoo thiab xav tau los saib xyuas lub xeev ntawm eBPF hauv cov ntsiav. Vim tias cov kev pheej hmoo no, qee cov tuam txhab lag luam tau ncua sijhawm koom nrog BPF kho vajtse acceleration rau hauv lawv cov khoom siv kom txog rau thaum tus qauv tsim.
Tau qhov twg los: opennet.ru
