Portál AbcLinuxu, 7. května 2025 19:58
eth0: RTL8169sb/8110sb
eth1: RTL8169sc/8110sc
Moduly:
r8169 38884 0
mii 6368 1 r8169
rychlosti:
eth0: negotiated 100baseTx-FD flow-control, link ok
eth1: negotiated 1000baseT-FD flow-control, link ok
Těch 100MBit u první je správně, modem umí jen 100MBit LAN (vzhledem k 25MBit internetu dostačuje).
Nevíte náhodou někdo jestli není problém s Realtek ovladači v jádře ? Nějak se mi to nelíbí a už jsme vyměnili 3 desky, ale bohužel realtek byl zatím všude.
Řešení dotazu:
1) Na obou stranách se pomoci utilit "mii-tool" nebo "ethtool" přesvěčte, že máte 1G FD a siťovky jsou natvrdo propojeny kabelem bez switche. Je dobré být v textovém režimu bez grafiky
2) Určitě k měření nepoužívejte iptraf. Silně zkresluje výsledky v momentě, kdy je procesor dosti vytížen (ono záleží na výkonu CPU). Dobrý výsledky jsem měl s programem vnstat, iftop jsem nezkoušel.
3) Při testu si pusťte utilitu "iostat -m 1" a pokud uvidíte, že CPU je vytížen, tak se utilitou "mpstat 1" blíže podívejte čim je vytížen. Určitě výsledky z obou programů sem můžete hodit.
4) Po testu se podívejte na statistiku v "ifconfig". Dulezité parametry jsou errors dropped overruns a musí byt nulové.
5) K měření je dobré nejdříve použít nějaký "UDP bombardovací" prográmek a otestovat zvlášť vysílací strany a pak i proti sobě (nebo využít modulu pktgen, ten vymáčkne z eth driveru opravdu vše). Protože kopírováním souboru se do přenosu zaplítájí další utility (ftp, nfs, samba, atd) a ethernetí driver v tom může být nevině.
6) Co se týče driverů r8169 tak jsou 2. Jeden od výrobce s verzí 6.něconěco.... a druhý co je v jádře pod verzí LK2.3 NAPI (to NAPI šlo kdysi vypínat). U obou není problém vytáhnout 600Mb i na slabším PC (1.6GHz, 512MB RAM). Bohužel už nedokážu říct, u kterého se projevovali nedostatky. Určitě jeden měl problém, kdy se zaseklo vysílání a "TX timeout" špatně resetoval LAN chip.
Pokud chcete ověřit LAN kartu, tak nejříve s UDP paketama nebo ideálně zapojit modul pktgen (jeho zprovozněni chce pevný nervy, ale pokud máte připraveny skripty, tak je to už rutina)
eth0: negotiated 100baseTx-FD flow-control, link ok eth1: negotiated 1000baseT-FD flow-control, link ok
2) - nepoužívám, použil jsem FTP přenos (proftpd + win klient)
3) - je to jádro Conroe, vytížení bylo průměrně 0.7% jednoho ze dvou jader
4) - errory & dropps = 0
5) - můžu použít cokoli, scp, ftp, samba, nfs ... rychlost neměnná, rozdíl v rychlosti SAMBA vs. FTP je cca 10% kvuli režii
6) - já používám od výrobce poslední :( ... PC Intel Celeron-Dualcore 2.5GHz (Conroe), 2GB RAM, 64bit Ubuntu.
Můžete prosím otestovat to pomocí UDP. Samotný test přenosu souborů přes služby ftp, nfs či cokoliv jinýho je opravdu o ničem. Klidně použijte utilitu ttcp
Např.: "dd if=/dev/zero bs=1M | ttcp -t -u -p 5001 vzdálené_IP"
Klidně místo dd dejte "cat opravdu_velky_soubor" (ale bude se tam plést režie disku). Příkazy postupně přidávejte, ale s jiným portem -p (jeden příkaz nedokaže až na full zatížit LANku). Zkuste na serveru vysílání, kolik vyždímáte, co CPU a co vysledek ifconfig.
Pak zkuste na serveru rychlost prijmu. Na vzdáleným dejte ty příkazy, ale s IP serveru a serveru spustte třeba (nebo eth v promiskuitním módu):
"ttcp -r -u -p 5001 > /dev/null"
Změřte statistiku hlavně ifconfig jak bude vypadat. Pokud bude DROP na velikých číslech a CPU bude mít pořád leháro, tak problém bude v tom PCI bridgi nebo spíše, že ta Realtek LAN karta se řádně nedomluví s PCI bridgem.
root@xyz:~# lspci 00:00.0 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge 00:00.1 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge 00:00.2 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge 00:00.3 Host bridge: VIA Technologies, Inc. PT890 Host Bridge 00:00.4 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge 00:00.7 Host bridge: VIA Technologies, Inc. CN700/VN800/P4M800CE/Pro Host Bridge 00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge 00:08.0 PCI bridge: Hint Corp HB6 Universal PCI-PCI bridge (non-transparent mode) (rev 15) 00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10) 00:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10) 00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10)
eth0: negotiated 100baseTx-FD flow-controlCo vidíš? Tak vidíš.
protože se jedná o PCI 2.2 (minimálně) a tam je nejvyšší možná rychlost přenosu 533 MB/s pri použití 66 MHz signalizaceAFAIK to, ze deska ma PCI 2.2 neznamena, ze nutne podporuje nejvyssi moznou rychlost. Prevazna vetsina mainboardu (az na specializovane serverove) ma stale jen 33 MHz, 32 bit PCI sbernici.
Takže zkusit FTP s vhodnou volbou serveru a klienta, ještě lépe NFSS NFS jsem zas ja mel spatne zkusenosti, co se tyce vytizeni linky. FTP je v tomto ohledu spolehlive. Nebo jeste lepe tcpspray + echo/discard server.
Jasně, že vytížení CPU je trochu vyššíTrochy vyssi vytizeni bylo u rtl8139, ktere melo (pry) striktnejsi pozadavky na alignment, takze bylo nutne data navic jednou v pameti kopirovat. O nejakem podobnem problemu u rtl8168/8169) nevim, takze nevidim, proc by melo byt vyssi vytizeni.
ethtool -k eth1
Offload parameters for eth1:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off
Dííííky.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.