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

Optimisation passerelle NetBSD 2.0 haut debit

6 réponses
Avatar
Alian
Hello,

J'ai un NetBSD 2.0 qui joue le role de passerelle Internet dans mon reseau.
Si je fais un wget vers internet depuis cette machine, je peux faire du 1Mo/s.
Par contre sur les postes clients, linux par exemple, je tombe a 160 ko/s.
Toutes les cartes du reseau sont en 100 Mb full duplex (3c905c), le switch
permet de faire du 2Gb, je ne vois aucune collision ni erreur sur ce switch
(j'ai une interface web qui permet de controler le traffic), via ntop sur le
netbsd je ne vois rien d'anormal ... Qqn a une idee ou part les 850 ko/s entre
la passerelle et les postes clients ?

Merchi pour toutes infos ...

Ah oui sur le NetBSD j'ai rajoute ca dans /etc/sysctl.conf:
net.inet.tcp.mss_ifmtu=1
# 1. Enable Path MTU discovery
net.inet.ip.mtudisc=1
# 2. TCP Extension (RFC1323): enabled by default
# 3. Increase TCP Window size to 64K for increase in network performance
net.inet.tcp.recvspace=65535
net.inet.tcp.sendspace=65535

si des fois ca joue sur le schmilblick ...
une partie du rc.conf:

# forward gateway
ifwatchd=YES
ipfilter=YES
ipnat=YES
ipmon=YES #Firewall logging
ipmon_flags="-Dsn"

# Connection Internet Free
dhclient=YES
dhclient_flags=ex1

6 réponses

Avatar
Pascal Cabaud
Alian wrote:
J'ai un NetBSD 2.0 qui joue le role de passerelle Internet dans mon reseau.
Si je fais un wget vers internet depuis cette machine, je peux faire du
1Mo/s.
Par contre sur les postes clients, linux par exemple, je tombe a 160 ko/s.
Toutes les cartes du reseau sont en 100 Mb full duplex (3c905c), le


Ces cartes supportent les checksum hard, tu les as activees ?
$ sudo ifconfig exX ip4csum tcp4csum udp4csum

switch permet de faire du 2Gb, je ne vois aucune collision ni erreur sur
ce switch (j'ai une interface web qui permet de controler le traffic),
via ntop sur le netbsd je ne vois rien d'anormal ... Qqn a une idee ou
part les 850 ko/s entre la passerelle et les postes clients ?
...snip...

ipmon_flags="-Dsn"


C'est quoi comme disque ? Comme machine ? Combien de RAM ? Il y a bcp de
choses qui tournent dessus ? Si tu fais du FTP depuis un client vers ta
passerelle, le debit est normal ou est-ce deja lentissime ?
"Accessoirement", comment sont redigees tes regles IPF et combien en as tu ?

--
pc

Avatar
Alian
Ces cartes supportent les checksum hard, tu les as activees ?
$ sudo ifconfig exX ip4csum tcp4csum udp4csum


Non, merci pour l'info, je viens de le faire. Cela m'a fait gagner 50ko/s, ainsi
que changer le cable RJ45 qui m'en a fait gagner 20. Me voici a 230ko/s. Bon,
plus que 770 :-)

ipmon_flags="-Dsn"


C'est quoi comme disque ?
Un "vieux" disque:


wd0 at atabus0 drive 0: <SAMSUNG SV0322A>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 3052 MB, 11024 cyl, 9 head, 63 sec, 512 bytes/sect x 6250608 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd0(viaide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data
transfers)

Quelles infos sont ecrites sur disque a part le log de packet rejetes ? 200ko/h
dans /var/log/message il va po mourrir.

Comme machine ?


K62/350

Combien de RAM ?


256

Il y a bcp de choses qui tournent dessus ?


Rien a part un dns pour mon lan de 15 machines.

Si tu fais du FTP depuis un client vers ta
passerelle, le debit est normal ou est-ce deja lentissime ?


Non, en faisant un test avec scp, j'ai dans les 2 sens 2.3Mb/s. C'est pas la
gloire mais je suppose que c'est les disques qui ne suivent pas.

"Accessoirement", comment sont redigees tes regles IPF et combien en as
tu ?


# Tout est defendu par defaut
block in log all
block out log all

# Ok pour boucle locale + carte reseau LAN
pass in on ex0 all
pass out on ex0 all
pass in on lo0 all
pass out on lo0 all

# Connections entrantes autorisees
# ntp
pass in on ex1 proto udp from any to any port = ntp

# ssh
pass in on ex1 proto tcp from any to any port = ssh flags S keep state

# lamule
pass in quick on ex1 proto tcp from any to any port = 4661 keep state keep frags
pass in quick on ex1 proto tcp from any to any port = 4662 keep state keep frags
pass in quick on ex1 proto udp from any to any port = 4665

# bittorrent
pass in quick on ex1 proto tcp from any to any port = 6882 keep state keep frags
pass in quick on ex1 proto tcp from any to any port = 6882 keep state keep frags

# dns
pass in on ex1 proto udp from any to any port = 53

# ftp clients
pass in on ex1 proto tcp from any to any port = ftp keep state
pass in on ex1 proto tcp from any to any port = ftp-data keep state
pass in on ex1 proto tcp from any port = ftp-data to any port > 1023 keep state
pass in on ex1 proto icmp from any to any icmp-type echo keep state

# counter & co
pass in on ex1 proto udp from any to any port 26999 >< 27016
pass in on ex1 proto tcp from any to any port 27029 >< 27040 keep state

# ntop
pass in proto tcp from any to any port = 3000 flags S keep state

# connexion sortante
# Tout autorise a part proto micro...
pass out on ex1 proto tcp from any to any keep state
pass out on ex1 proto icmp from any to any keep state
pass out on ex1 proto udp from any to any keep state
block out on ex1 proto tcp from any to any port 445
block out on ex1 proto tcp from any to any port 137 >< 139
block out on ex1 proto udp from any to any port 137 >< 139


Avatar
Pascal Cabaud
Alian wrote:

Il y a bcp de choses qui tournent dessus ?
Rien a part un dns pour mon lan de 15 machines.



Autant dire que la machine s'ennuie... ntop peut-etre ? Je ne pratique
pas, c'est lourd ?

Si tu fais du FTP depuis un client vers ta passerelle, le debit est
normal ou est-ce deja lentissime ?


Non, en faisant un test avec scp, j'ai dans les 2 sens 2.3Mb/s. C'est
pas la gloire mais je suppose que c'est les disques qui ne suivent pas.


Hum... j'ai pareil sur une Netra X1, c'est le CPU qui pedale, pas les
disques.

Bon, y a autre chose. Tente ca dans ton sysctl.conf :
kern.sbmaxƒ88608
net.inet.tcp.sendspace217968
net.inet.tcp.recvspace217968
net.inet.tcp.rstppslimit8
net.inet.tcp.init_win=8
net.inet.udp.sendspacee535
net.inet.udp.recvspacee535
net.inet.ip.forwarding=1
net.inet.ip.random_id=1
net.inet.ip.maxfragpackets–
net.inet.icmp.errppslimit2


Avatar
manu
Alian wrote:

J'ai un NetBSD 2.0 qui joue le role de passerelle Internet dans mon reseau.
Si je fais un wget vers internet depuis cette machine, je peux faire du 1Mo/s.
Par contre sur les postes clients, linux par exemple, je tombe a 160 ko/s.
Toutes les cartes du reseau sont en 100 Mb full duplex (3c905c), le switch
permet de faire du 2Gb, je ne vois aucune collision ni erreur sur ce switch
(j'ai une interface web qui permet de controler le traffic), via ntop sur le
netbsd je ne vois rien d'anormal ... Qqn a une idee ou part les 850 ko/s entre
la passerelle et les postes clients ?


Entre une machine Linux et la passerelle NetBSD, tu arrives à des
transfers raisonnables? (j'essaye de voir si le problème est à la
traversée de la passerelle, ou entre la passerelle et ton réseau
interne)

--
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz


Avatar
alian
Il y a bcp de choses qui tournent dessus ?


Rien a part un dns pour mon lan de 15 machines.


Autant dire que la machine s'ennuie... ntop peut-etre ? Je ne pratique
pas, c'est lourd ?


tcpdump + interface web. Barf non, le cpu est tranquille et sans ca donne les
memes resultats

Hum... j'ai pareil sur une Netra X1, c'est le CPU qui pedale, pas les
disques.

Bon, y a autre chose. Tente ca dans ton sysctl.conf :
kern.sbmaxƒ88608
net.inet.tcp.sendspace217968
net.inet.tcp.recvspace217968
net.inet.tcp.rstppslimit8
net.inet.tcp.init_win=8
net.inet.udp.sendspacee535
net.inet.udp.recvspacee535
net.inet.ip.forwarding=1
net.inet.ip.random_id=1
net.inet.ip.maxfragpackets–
net.inet.icmp.errppslimit2


Pas de changements ... merci quand meme pour la tentative :-)



Avatar
alian
Entre une machine Linux et la passerelle NetBSD, tu arrives à des
transfers raisonnables? (j'essaye de voir si le problème est à la
traversée de la passerelle, ou entre la passerelle et ton réseau
interne)


de ce cote la ca, comme cite dans un precedent mail je peux faire du 2.3Mo/s
entre la passerelle et un linux.

J'ai essaye de recompiler mon kernel en supprimant la gestion ipv6 et tous les
periph inutiles (son, scsi, isa, pcmcia, ...) et en activant
IPFILTER_DEFAULT_BLOCK, pareil. mmmmmh ... ca me laisse perplexe tout ca.

sysstat inet.ip me donne ca:

13102140 total packets received 13083403 total packets sent
138846 passed to upper layers 136228 generated locally
66 with bad checksums 0 output drops
26 too short for header 0 output fragments generated
0 too short for data 0 fragmentation failed
69 with invalid hlen 38 destinations unreachable
0 with invalid length 0 packets output via raw IP
2326 with invalid version 54577 total UDP packets sent
0 too large
0 option errors 123541 total UDP packets received
0 fragments received 0 too short for header
0 fragments dropped 0 invalid checksum
0 fragments timed out 0 invalid length
0 packets reassembled ok 68155 no socket for dest port
1036 no socket for broadcast
12947175 packets forwarded 0 socket buffer full
0 fast forwarded
288 unreachable dests
0 redirects generated