Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[OpenBSD] Consommation de ressources sur un routeur

7 réponses
Avatar
Jérémy JUST
Bonjour,

J'ai monté un petit routeur domestique avec une Soekris (net4801)
sous OpenBSD. Ma configuration de PF est loin d'être optimisée (ça se
remarque rien qu'en regardant les règles une fois interprétées), et
je me demande si ça vaut réellement le coup de chercher à faire mieux.

En effet, quand je charge le réseau au maximum, par toutes les
interfaces du routeur, voilà ce que m'indique son top:

<<<<<<<<
load averages: 0.12, 0.09, 0.08
29 processes: 28 idle, 1 on processor
CPU states: 0.3% user, 0.0% nice, 0.4% system, 40.7% interrupt, 58.6% idle
Memory: Real: 12M/35M act/tot Free: 84M Swap: 0K/0K used/tot

PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND
22131 root 28 0 740K 1500K onproc - 0:00 0.54% top
18351 root 2 0 1060K 1816K sleep select 15:58 0.00% sendmail
3140 named 2 0 3336K 4016K idle select 13:17 0.00% named
17997 _pflogd 4 0 680K 336K sleep bpf 14:13 0.00% pflogd
21308 _ntp 2 0 472K 916K sleep poll 2:32 0.00% ntpd
29669 proxy 2 0 448K 892K idle kqread 1:58 0.00% ftp-proxy
21956 root 2 0 612K 856K idle select 0:45 0.00% cron
465 _syslogd 2 0 604K 796K sleep poll 0:34 0.00% syslogd
11019 root 10 0 65M 552K idle mfsidl 0:00 0.00% mount_mfs
>>>>>>>>

L'essentiel du CPU est en « interrupt ». Est-ce que ce champ est bien
lié aux interruptions matérielles?
Si PF était limitant, est-ce qu'on le verrait dans le champ « system »?



Follow-up sur fr.comp.os.bsd

--
Jérémy JUST <jeremy_just@netcourrier.com>

7 réponses

Avatar
Michel Parlebas

J'ai monté un petit routeur domestique avec une Soekris (net4801)
sous OpenBSD. Ma configuration de PF est loin d'être optimisée (ça se
remarque rien qu'en regardant les règles une fois interprétées), et
je me demande si ça vaut réellement le coup de chercher à faire mieux.



Un petit coup d'ALTQ tout de même pour fluidifier le trafic tel que
décrit sur

<http://www.benzedrine.cx/ackpri.html>

--
MP

Avatar
Jérémy JUST
Le Mon, 10 Mar 2008 07:36:32 +0100,

Un petit coup d'ALTQ tout de même pour fluidifier le trafic tel que
décrit sur
<http://www.benzedrine.cx/ackpri.html>


C'est déjà en place.
Mais effectivement, je pourrais essayer de voir s'il n'y a pas une
queue qui s'engorge.


Je reprends quand même ma question: si le filtrage par PF était
limitant, je le verrais dans le CPU occupé par le « system », non?


--
Jérémy JUST

Avatar
Arnal
Bonjour,

J'ai monté un petit routeur domestique avec une Soekris (net4801)
sous OpenBSD. Ma configuration de PF est loin d'être optimisée (ça se
remarque rien qu'en regardant les règles une fois interprétées), et
je me demande si ça vaut réellement le coup de chercher à faire mieux.

En effet, quand je charge le réseau au maximum, par toutes les
interfaces du routeur, voilà ce que m'indique son top:

<<<<<<<<
load averages: 0.12, 0.09, 0.08
29 processes: 28 idle, 1 on processor
CPU states: 0.3% user, 0.0% nice, 0.4% system, 40.7% interrupt, 58.6% idle
Memory: Real: 12M/35M act/tot Free: 84M Swap: 0K/0K used/tot

PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND
22131 root 28 0 740K 1500K onproc - 0:00 0.54% top
18351 root 2 0 1060K 1816K sleep select 15:58 0.00% sendmail
3140 named 2 0 3336K 4016K idle select 13:17 0.00% named
17997 _pflogd 4 0 680K 336K sleep bpf 14:13 0.00% pflogd
21308 _ntp 2 0 472K 916K sleep poll 2:32 0.00% ntpd
29669 proxy 2 0 448K 892K idle kqread 1:58 0.00% ftp-proxy
21956 root 2 0 612K 856K idle select 0:45 0.00% cron
465 _syslogd 2 0 604K 796K sleep poll 0:34 0.00% syslogd
11019 root 10 0 65M 552K idle mfsidl 0:00 0.00% mount_mfs

L'essentiel du CPU est en « interrupt ». Est-ce que ce champ est bien
lié aux interruptions matérielles?
Si PF était limitant, est-ce qu'on le verrait dans le champ « system »?



Follow-up sur fr.comp.os.bsd



Je répond rapidement :

Dans une liste de diff. (soekris je crois) le sujet a été abordé moulte
fois, le hardware génère beaucoup d'interruption et donc que la gestion
de celles ci ne permet pas forcément d'optimiser le débit mais ne sature
pas non plus le CPU.

Je peux rechercher le thread si besoin, mais voilà l'explication.

A+

Avatar
espie
In article ,
Jérémy JUST wrote:

Bonjour,

J'ai monté un petit routeur domestique avec une Soekris (net4801)
sous OpenBSD. Ma configuration de PF est loin d'être optimisée (ça se
remarque rien qu'en regardant les règles une fois interprétées), et
je me demande si ça vaut réellement le coup de chercher à faire mieux.

L'essentiel du CPU est en « interrupt ». Est-ce que ce champ est bien
lié aux interruptions matérielles?
Si PF était limitant, est-ce qu'on le verrait dans le champ « system »?


Tu n'as pas precise l'essentiel: quelle version d'OpenBSD ? Il y a eu
des ameliorations notables des perfs sur les soekris il y a quelques mois
(entre justement, le groupement du traitement des interruptions des cartes
reseau, et moins de copies sur pf).

Avatar
Jérémy JUST
On Thu, 13 Mar 2008 08:27:54 +0000 (UTC)
(Marc Espie) wrote:

Tu n'as pas precise l'essentiel: quelle version d'OpenBSD ?


Celle de novembre dernier (la 4.2, donc, de mémoire).


Il y a eu des ameliorations notables des perfs sur les soekris il y a
quelques mois (entre justement, le groupement du traitement des
interruptions des cartes reseau, et moins de copies sur pf).


J'avais lu ça l'été dernier. C'est pour ça que je me suis dépêché de
mettre à jour début novembre. Je ne sais pas si toutes les améliorations
figurent déjà dans cette version.
Ça ne m'a pas donné l'impression d'avoir révolutionné mon réseau; c'est
pourquoi j'ai voulu savoir si ce n'était pas mon jeu de règles qui était
tellement mal écrit qu'il surchargeait la CPU.

En fait, je ne cherche pas spécialement à optimiser à fond mon débit. Je
voudrais juste savoir si ça vaut le coup de me pencher sur mes règles. Si
la limitation est due au matériel, je considérerai que tout est OK.


--
Jérémy JUST

Avatar
Jérémy JUST
On Wed, 12 Mar 2008 06:52:12 +0100
Michel Parlebas wrote:

Dans l'hypothèse où le filtrage est limitant au maximum (block all), la
charge du CPU change-t-elle ?


Il vaudrait mieux tout autoriser sans filtrage, non?
Pour charger le réseau, j'utilise des applis classiques (ssh et wget) et
non des outils de test. Donc si la connexion n'arrive même pas à
s'établir, le trafic ne va jamais devenir important.


--
Jérémy JUST

Avatar
Jérémy JUST
On Thu, 13 Mar 2008 07:55:20 +0100
Arnal wrote:

Dans une liste de diff. (soekris je crois) le sujet a été abordé moulte
fois, le hardware génère beaucoup d'interruption et donc que la gestion
de celles ci ne permet pas forcément d'optimiser le débit mais ne sature
pas non plus le CPU.


En fait, je m'attendais à ce que la charge soit forte (là, elle tourne
autour de 0.15), même si le CPU est essentiellement libre. C'est pourquoi
je cherche à comprendre un peu mieux ce qui est derrière les différents
champs du top.

Dans mon esprit, le champ « load » fournit une estimation globale de la
charge, que ce soit au niveau des interruptions matérielles qu'au niveau
des I/O ou des CPU.
Et là, on dirait qu'il y a un truc limitant sans que la charge s'en
ressente.


Je peux rechercher le thread si besoin, mais voilà l'explication.


Merci, je suis abonné à la liste Soekris (mais je ne la lis pratiquement
pas), donc je devrais pouvoir le retrouver. Bonne idée.


--
Jérémy JUST