Puncte:0

tc-mirred, potrivirile fluxului de redirecționare către o interfață falsă

drapel za

Scalez un dispozitiv de inspecție de securitate. Pasul de limitare a ratei este un proces cu un singur thread care analizează și extrage date din fluxurile de rețea.

Ca obiectiv pe termen scurt, aș dori să scalez acest lucru prin echilibrarea încărcăturii de la interfața de captare fizică la interfețele interioare fictive sau de atingere și apoi să am mai multe instanțe ale procesului cu un singur thread care rulează folosind acelea ca intrare. Fiecare instanță a procesului cu un singur fir necesită fluxuri de rețea complete (adică tuplu care se potrivește - TCP sau UDP). Nu-mi pasă de trafic după ce va atinge interfețele false - apoi este abandonat, așa că nu trebuie să fac vă faceți griji pentru căile de întoarcere sau orice altceva legat.

După câteva citite, cred că acțiunea de redirecționare bazată pe flux și tc-mirred ar putea fi soluția pe care o caut.

Deci, am ajuns până aici:

# Configurați interfețele
PHYS="eth1"
INT_COUNT=4 # Derivat din numărul de nuclee CPU
# Creați niște interfețe false
pentru i în {1..$INT_COUNT}
   do ip link add dummy$i tip dummy
   legătura ip setată dummy$i
Terminat

# Creați qdisc-ul
tc qdisc add dev $PHY intrare

# Filtru bazat pe tuplu de flux. Clasele sunt create automat datorită divizorului
tc filter add dev $PHYS părinte ffff: handle 1 \
   taste hash de flux src,dst,proto,proto-src,proto-dst \
   divizor $INT_COUNT

# Acum aplicați cumva acțiunea de redirecționare la clasele create
# pentru fiecare dintre interfețele false
pentru i în {1..$INT_COUNT}
   do tc filter add dev $PHYS parent ffff: protocol ip u32 match u32 0 0 \
         acțiune oglindită ieșire redirecționare dev dummy$i
Terminat

Este ultima parte pe care nu o pot înțelege. Clasele sunt create automat cu instrucțiunea divisor din filtrare, deoarece divizorul folosește modulo de hash, ar trebui să obțin clase la care pot face referire.

Cum pot spune „clasa „N”, mergi la dummyN”?

Am citit mult despre asta, dar cred că există o parte cheie pe care nu o înțeleg. Cred că am nevoie de fluiditate în acțiune, dar nu sunt sigur.

Orice sfaturi sau sugestii în acest sens ar fi foarte apreciate.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.