Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam
Jam mogę sprawdzić, co dokładnie jest dropowane na interfejsach? Trochę mnie niepokoją rosnące liczniki.
trochę danych:
john ~ # ifconfig eth2 eth2 Link encap:Ethernet HWaddr 68:05:ca:05:df:56 inet6 addr: fe80::6a05:caff:fe05:df56/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8479934656 errors:2874 dropped:8918540 overruns:0 frame:2874 TX packets:11456973052 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3128864432955 (2.8 TiB) TX bytes:12424605060751 (11.3 TiB) Interrupt:16 Memory:fc4c0000-fc4e0000 ~ # ifconfig eth3 eth3 Link encap:Ethernet HWaddr 68:05:ca:05:df:57 inet6 addr: fe80::6a05:caff:fe05:df57/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:657038007 errors:0 dropped:837 overruns:0 frame:0 TX packets:925140810 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:181447630449 (168.9 GiB) TX bytes:1049771992237 (977.6 GiB) Interrupt:17 Memory:fc480000-fc4a0000 john ~ # ifconfig vlan10 vlan10 Link encap:Ethernet HWaddr 68:05:ca:05:df:56 inet6 addr: fe80::6a05:caff:fe05:df56/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:935662398 errors:0 dropped:57468 overruns:0 frame:0 TX packets:1269455153 errors:0 dropped:51 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:227164218838 (211.5 GiB) TX bytes:1378613623401 (1.2 TiB) #lspci -v (dla ethernetu) 0e:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06) Subsystem: Intel Corporation PRO/1000 PT Dual Port Server Adapter Flags: bus master, fast devsel, latency 0, IRQ 114 Memory at fc480000 (32-bit, non-prefetchable) [size=128K] Memory at fc460000 (32-bit, non-prefetchable) [size=128K] I/O ports at ecc0 [size=32] Expansion ROM at c0000000 [disabled] [size=128K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 68-05-ca-ff-ff-05-df-56 Kernel driver in use: e1000e ~ $ sudo ethtool -S eth2 NIC statistics: rx_packets: 8509991737 tx_packets: 11498497042 rx_bytes: 3138561482108 tx_bytes: 12470043931908 rx_broadcast: 9917783 tx_broadcast: 0 rx_multicast: 11475 tx_multicast: 165 rx_errors: 2874 tx_errors: 0 tx_dropped: 0 multicast: 11475 collisions: 0 rx_length_errors: 2874 rx_over_errors: 0 rx_crc_errors: 0 rx_frame_errors: 0 rx_no_buffer_count: 5231332 rx_missed_errors: 8800005 tx_aborted_errors: 0 tx_carrier_errors: 0 tx_fifo_errors: 0 tx_heartbeat_errors: 0 tx_window_errors: 0 tx_abort_late_coll: 0 tx_deferred_ok: 0 tx_single_coll_ok: 0 tx_multi_coll_ok: 0 tx_timeout_count: 0 tx_restart_queue: 302723 rx_long_length_errors: 2874 rx_short_length_errors: 0 rx_align_errors: 0 tx_tcp_seg_good: 0 tx_tcp_seg_failed: 0 rx_flow_control_xon: 7 rx_flow_control_xoff: 7 tx_flow_control_xon: 0 tx_flow_control_xoff: 0 rx_long_byte_count: 3138561482108 rx_csum_offload_good: 8412302 rx_csum_offload_errors: 2235 rx_header_split: 0 alloc_rx_buff_failed: 0 tx_smbus: 0 rx_smbus: 0 dropped_smbus: 0 rx_dma_failed: 0 tx_dma_failed: 0 ~ $ sudo ethtool -S eth3 NIC statistics: rx_packets: 657937700 tx_packets: 926525982 rx_bytes: 181593092081 tx_bytes: 1051343800632 rx_broadcast: 213984 tx_broadcast: 0 rx_multicast: 42 tx_multicast: 6 rx_errors: 0 tx_errors: 0 tx_dropped: 0 multicast: 42 collisions: 0 rx_length_errors: 0 rx_over_errors: 0 rx_crc_errors: 0 rx_frame_errors: 0 rx_no_buffer_count: 0 rx_missed_errors: 0 tx_aborted_errors: 0 tx_carrier_errors: 0 tx_fifo_errors: 0 tx_heartbeat_errors: 0 tx_window_errors: 0 tx_abort_late_coll: 0 tx_deferred_ok: 0 tx_single_coll_ok: 0 tx_multi_coll_ok: 0 tx_timeout_count: 0 tx_restart_queue: 0 rx_long_length_errors: 0 rx_short_length_errors: 0 rx_align_errors: 0 tx_tcp_seg_good: 0 tx_tcp_seg_failed: 0 rx_flow_control_xon: 301 rx_flow_control_xoff: 301 tx_flow_control_xon: 0 tx_flow_control_xoff: 0 rx_long_byte_count: 181593092081 rx_csum_offload_good: 191625 rx_csum_offload_errors: 0 rx_header_split: 0 alloc_rx_buff_failed: 0 tx_smbus: 0 rx_smbus: 0 dropped_smbus: 0 rx_dma_failed: 0 tx_dma_failed: 0
eth2 jest fizycznym interfejsem do którego są powpinane vlany, jest ich kilkanaście i na każdym dropy, na każdym z vlanów jak i na eth2 słucha server pppoe. eth3 jest fizyczny bez vlanów na którym też słucha pppoe. ruch jest rzędu 400M TX i około 80M RX. Liczniki nie rosną bardzo szybko ale jednak rosną. Jak sprawdzić co jest dropowane?
z góry dzięki za pomoc.
Ostatnio edytowany przez Nicram (2013-12-04 19:41:27)
Offline
[quote=Pavlo950]Nie jestem pewien, ale - chcesz sprawdzić, co idzie przez konkretny interfejs?
Wireshark?[/quote]
nie, nie. chcę sprawdzić co jest dropowane. wiresharkiem/tcpdumpem zobaczę jedynie co wchodzi na interfejs. mi chodzi o zobaczenie co jest dropowane
Offline
iptables -j LOG --help
Albo RTFM:
http://pl.wikibooks.org/wiki/Sieci_w_Linuksie/Netfilter
Offline
Mi to wygląda na zbytnie obciążenie (przemawia za tym szczególnie duża wartość rx_no_buffer_count). Może to być spowodowane zbyt dużym ruchem, ale może także oznaczać, że systemowi brakuje zasobów do obsłużenia wszystkich przychodzących pakietów. Może być wiele przyczyn takiego stanu rzeczy, jak np. rozbudowany firewall, IDS, uruchomiony sniffer, logowanie całego ruchu etc.
Dla pewności możesz wrzucić wynik netstat -n, ale wszystko wskazuje właśnie na obciążenie. Przy dużym natężeniu ruchu możesz sprawdzić, co konsumuje dużo pamięci, CPU, IO.
Offline
[quote=jurgensen]Mi to wygląda na zbytnie obciążenie (przemawia za tym szczególnie duża wartość rx_no_buffer_count). Może to być spowodowane zbyt dużym ruchem, ale może także oznaczać, że systemowi brakuje zasobów do obsłużenia wszystkich przychodzących pakietów. Może być wiele przyczyn takiego stanu rzeczy, jak np. rozbudowany firewall, IDS, uruchomiony sniffer, logowanie całego ruchu etc.
Dla pewności możesz wrzucić wynik netstat -n, ale wszystko wskazuje właśnie na obciążenie. Przy dużym natężeniu ruchu możesz sprawdzić, co konsumuje dużo pamięci, CPU, IO.[/quote]
serwer nie jest obciążony
~ $ top top - 22:42:25 up 5 days, 6:58, 1 user, load average: 0.51, 0.51, 0.53 Tasks: 1555 total, 2 running, 1553 sleeping, 0 stopped, 0 zombie Cpu(s): 0.5%us, 0.4%sy, 0.0%ni, 94.3%id, 0.0%wa, 0.0%hi, 4.8%si, 0.0%st Mem: 16431900k total, 1582252k used, 14849648k free, 187360k buffers Swap: 15623176k total, 0k used, 15623176k free, 61104k cached
firewal też nie rozbudowany
$ sudo iptables -nL Chain INPUT (policy DROP) target prot opt source destination DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcpflags:! 0x17/0x02 state NEW DROP all -f 0.0.0.0/0 0.0.0.0/0 DROP all -- 0.0.0.0/0 0.0.0.0/0 state INVALID ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED ACCEPT 89 -- 0.0.0.0/0 0.0.0.0/0 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 match-set goodports dst ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 match-set goodports dst ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmptype 8 length 28:4096 Chain FORWARD (policy DROP) target prot opt source destination DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcpflags:! 0x17/0x02 state NEW DROP all -f 0.0.0.0/0 0.0.0.0/0 DROP all -- 0.0.0.0/0 0.0.0.0/0 state INVALID DROP all -- 0.0.0.0/0 !192.168.11.2/29 match-set blokowani src TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcpflags: 0x06/0x02 TCPMSS clamp to PMTU ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED DROP tcp -- 0.0.0.0/0 0.0.0.0/0 match-set bports src,dst DROP udp -- 0.0.0.0/0 0.0.0.0/0 match-set bports src,dst ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 match-set smtp src ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 match-set smtp dst DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 recent: UPDATE seconds: 60 name: SMTP side: source ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25 recent: SET name: SMTP side: source ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy ACCEPT) target prot opt source destination marcin@john ~ $ sudo iptables -t nat -nL Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 match-set oplaty src multiport dports 80,8080 to:192.168.11.2:8080 DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 match-set blokowani src multiport dports 80,8080 to:192.168.11.2:8080 Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination
co prawda ruchu trochę ma, ale bez przesady, 400Mbit/100Mbit
~ $ netstat -n Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 160 x.x.x.x:22 y.y.y.y:40795 ESTABLISHED tcp 0 0 10.0.0.3:55501 10.0.0.6:3306 TIME_WAIT Active UNIX domain sockets (w/o servers) Proto RefCnt Flags Type State I-Node Path unix 3 [ ] STREAM CONNECTED 3401334 /dev/log unix 3 [ ] STREAM CONNECTED 3400611 unix 3 [ ] STREAM CONNECTED 3402526 unix 3 [ ] STREAM CONNECTED 3402525 unix 3 [ ] STREAM CONNECTED 3401324 /dev/log unix 3 [ ] STREAM CONNECTED 3402524 unix 3 [ ] STREAM CONNECTED 3403819 /dev/log unix 3 [ ] STREAM CONNECTED 3400587 unix 3 [ ] STREAM CONNECTED 3397556 /dev/log unix 3 [ ] STREAM CONNECTED 3403285 unix 3 [ ] STREAM CONNECTED 3401282 /dev/log unix 3 [ ] STREAM CONNECTED 3402477 unix 3 [ ] STREAM CONNECTED 3403799 /dev/log unix 3 [ ] STREAM CONNECTED 3400568 unix 3 [ ] STREAM CONNECTED 3399494 /dev/log unix 3 [ ] STREAM CONNECTED 3398548 unix 3 [ ] STREAM CONNECTED 3397528 /dev/log unix 3 [ ] STREAM CONNECTED 3403262 unix 3 [ ] STREAM CONNECTED 3399483 /dev/log unix 3 [ ] STREAM CONNECTED 3398529 unix 3 [ ] STREAM CONNECTED 3399450 /dev/log unix 3 [ ] STREAM CONNECTED 3398477 unix 3 [ ] STREAM CONNECTED 3397476 /dev/log unix 3 [ ] STREAM CONNECTED 3403201 unix 3 [ ] STREAM CONNECTED 3396460 /dev/log unix 3 [ ] STREAM CONNECTED 3400362 unix 3 [ ] STREAM CONNECTED 3396442 /dev/log unix 3 [ ] STREAM CONNECTED 3400340 unix 3 [ ] STREAM CONNECTED 3399289 /dev/log unix 3 [ ] STREAM CONNECTED 3398278 unix 3 [ ] STREAM CONNECTED 3397341 /dev/log unix 3 [ ] STREAM CONNECTED 3403052 unix 3 [ ] STREAM CONNECTED 3396358 /dev/log unix 3 [ ] STREAM CONNECTED 3400242 unix 3 [ ] STREAM CONNECTED 3396298 /dev/log unix 3 [ ] STREAM CONNECTED 3400184 unix 3 [ ] STREAM CONNECTED 3396276 /dev/log unix 3 [ ] STREAM CONNECTED 3400134 unix 3 [ ] STREAM CONNECTED 3396258 /dev/log unix 3 [ ] STREAM CONNECTED 3400115 unix 3 [ ] STREAM CONNECTED 3399141 /dev/log unix 3 [ ] STREAM CONNECTED 3398145 unix 3 [ ] STREAM CONNECTED 3399111 /dev/log unix 3 [ ] STREAM CONNECTED 3398085 unix 3 [ ] STREAM CONNECTED 3396160 /dev/log unix 3 [ ] STREAM CONNECTED 3401925 unix 3 [ ] STREAM CONNECTED 3399031 /dev/log unix 3 [ ] STREAM CONNECTED 3398008 unix 3 [ ] STREAM CONNECTED 3397066 /dev/log unix 3 [ ] STREAM CONNECTED 3402780 unix 3 [ ] STREAM CONNECTED 3397055 /dev/log unix 3 [ ] STREAM CONNECTED 3395582 unix 3 [ ] STREAM CONNECTED 3398897 /dev/log unix 3 [ ] STREAM CONNECTED 3397871 unix 3 [ ] STREAM CONNECTED 3400736 /dev/log unix 3 [ ] STREAM CONNECTED 3401757 unix 3 [ ] STREAM CONNECTED 3396952 /dev/log unix 3 [ ] STREAM CONNECTED 3395468 unix 3 [ ] STREAM CONNECTED 3396943 /dev/log unix 3 [ ] STREAM CONNECTED 3395457 unix 3 [ ] STREAM CONNECTED 3396891 /dev/log unix 3 [ ] STREAM CONNECTED 3395383 unix 3 [ ] STREAM CONNECTED 3393442 /dev/log unix 3 [ ] STREAM CONNECTED 3394461 [... tego jest sporo ....] unix 3 [ ] STREAM CONNECTED 24133 /dev/log unix 3 [ ] STREAM CONNECTED 24132 unix 3 [ ] STREAM CONNECTED 19391 /dev/log unix 3 [ ] STREAM CONNECTED 20351 unix 3 [ ] STREAM CONNECTED 22287 /dev/log unix 3 [ ] STREAM CONNECTED 22286 unix 3 [ ] STREAM CONNECTED 23113 /dev/log unix 3 [ ] STREAM CONNECTED 22268 unix 3 [ ] STREAM CONNECTED 25088 /dev/log unix 3 [ ] STREAM CONNECTED 19354 unix 3 [ ] STREAM CONNECTED 19339 /dev/log unix 3 [ ] STREAM CONNECTED 19340 /dev/log unix 3 [ ] STREAM CONNECTED 25078 unix 3 [ ] STREAM CONNECTED 19338 unix 3 [ ] STREAM CONNECTED 23083 /dev/log unix 3 [ ] STREAM CONNECTED 22216 unix 3 [ ] STREAM CONNECTED 17846 /dev/log unix 3 [ ] STREAM CONNECTED 19573 unix 3 [ ] STREAM CONNECTED 4643 /dev/log unix 3 [ ] STREAM CONNECTED 14573 unix 3 [ ] STREAM CONNECTED 16490 /var/run/quagga/zserv.api unix 3 [ ] STREAM CONNECTED 5679 unix 3 [ ] STREAM CONNECTED 6707 /dev/log unix 3 [ ] STREAM CONNECTED 13099 unix 3 [ ] STREAM CONNECTED 6696 /dev/log unix 3 [ ] STREAM CONNECTED 13086 unix 3 [ ] STREAM CONNECTED 4633 /dev/log unix 3 [ ] STREAM CONNECTED 15485 unix 3 [ ] DGRAM 2843 unix 3 [ ] DGRAM 2842
może jeszcze przerywania dla eth
$ cat /proc/interrupts |grep eth 113: 440187532 440794459 445303087 445501852 447422444 446231820 442455761 441778020 PCI-MSI-edge eth2 114: 94042241 94201798 95058860 95137909 96262732 96090734 94919844 94665900 PCI-MSI-edge eth3 115: 625583129 624815405 619436669 619159382 616118439 617480033 622436529 623368558 PCI-MSI-edge eth0 116: 484561 485680 485888 486236 488859 489915 485522 485352 PCI-MSI-edge eth1
Ostatnio edytowany przez Nicram (2013-12-04 23:00:19)
Offline
Skoro liczniki nie rosną szybko, to pewnie są chwile wzmożonego ruchu, kiedy pakiety przychodzą szybciej, niż są przetwarzane przez hosta. Możesz w czasie wzmożonego ruchu odpalić netstata (możesz ograniczyć do TCP/UDP przez netstat -ntu) i obserwować wartości w Recv-Q. Możesz też wrzucić statystyki z netstat -s.
W przypaku przeciążenia nie ma prostego sposobu na sprawdzenie co jest dropowane (jeśli kolejka jest pełna, to nowe pakiety do niej już nie trafią). W przypadku TCP możesz obserwować czy pojawiają się retransmisje i wtedy będziesz widział, co nie dotarło (choć nie wiem, czy taka wiedza będzie użyteczna).
Offline
Mi się wydaje, ze to może być wina samej sieciówki, nie jest w stanie "obrobić" takiego ruchu :/ Może czas pomyśleć o wymianie, tylko na co?
Aczkolwiek producent pisze, iż jest to high performance :)
Ostatnio edytowany przez Nicram (2013-12-04 23:15:13)
Offline
Możesz spróbować wymienić sieciówkę na cokolwiek innego i sprawdzić. Nie wiem jednak, czy jest sens. Odrzucone zostało 0,1% pakietów. Możesz podłączyć coś, aby zbierało Ci statystyki, jaki ruch jest o jakich porach.
Jeśli masz jakieś logowanie ruchu/sniffer, możesz to rozdzielić na dwa serwery. Tzn, na porcie w switchu, gdzie masz serwer ustawić port mirroring i ruch sniffować na innym hoście.
To, co obciąża dodatkowo, to praca na VLANach. Raz, że ramki tagowane są większe, a dwa, że host musi wykonać dodatkową pracę z dodawaniem/kasowaniem taga.
Jeśli Ci się chce, możesz wrzucić inną kartę i sprawdzić. Jeśli zależy Ci na wydajności, możesz zaopatrzyć się w kartę z TOE. Jest to większy koszt, ale dużą cześć pracy wykonuje wtedy sama karta.
Offline
to że load avg masz niski nie oznacza że serwer nie jest obciążony ;) Możesz mieć "za duży" ruch na sieciówce (np flood udp czy cokolwiek innego). Obczaj przez mii-tool czy Ci się sieciówka dobrze ustawiła i iptables -j LOG. Tylko loga sobie ustaw na partycje na której masz duuuuuuużo miejsca. I po 1-2 dniach sprawdź co dropuje ;p albo zobacz kern.log/messages
Offline
[quote=winnetou]to że load avg masz niski nie oznacza że serwer nie jest obciążony ;) Możesz mieć "za duży" ruch na sieciówce (np flood udp czy cokolwiek innego). Obczaj przez mii-tool czy Ci się sieciówka dobrze ustawiła i iptables -j LOG. Tylko loga sobie ustaw na partycje na której masz duuuuuuużo miejsca. I po 1-2 dniach sprawdź co dropuje ;p albo zobacz kern.log/messages[/quote]
co to znaczy "duży" ruch na sieciówce? 10k pps to nie jest duży ruch.
zwiększyłem na sieciówce bufor na maksymalną wartość
~ $ sudo ethtool -g eth2 Ring parameters for eth2: Pre-set maximums: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096
dodatkowo przepiołem na inny port w cisco 6k5. chodzi to od 30 minut i dropy są a catlyst pokazuje:
cat6500#sh int g 1/31 GigabitEthernet1/31 is up, line protocol is up (connected) Hardware is C6k 1000Mb 802.3, address is 0019.5521.ee5e (bia 0019.5521.ee5e) Description: Trunki server PPPoE MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec, reliability 255/255, txload 8/255, rxload 32/255 Encapsulation ARPA, loopback not set Keepalive set (10 sec) Full-duplex, 1000Mb/s input flow-control is off, output flow-control is on Clock mode is auto ARP type: ARPA, ARP Timeout 04:00:00 Last input never, output 00:00:14, output hang never Last clearing of "show interface" counters never Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/40 (size/max) 5 minute input rate 128849000 bits/sec, 14343 packets/sec 5 minute output rate 33820000 bits/sec, 10645 packets/sec 16905472 packets input, 18338245079 bytes, 0 no buffer Received 6 broadcasts (6 multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 watchdog, 0 multicast, 0 pause input 0 input packets with dribble condition detected 12878916 packets output, 5238793845 bytes, 0 underruns 0 output errors, 0 collisions, 1 interface resets 0 babbles, 0 late collision, 0 deferred 0 lost carrier, 0 no carrier, 0 PAUSE output 0 output buffer failures, 0 output buffers swapped out
logowanie wszystkiego iptablesem trochę mija się z celem, jakby można było logować jedynie dropy to owszem. z drugiej strony nie koniecznie muszę coś zalogować, dany pakiet może nawet nie wejść do netfiltera by mógł być zalogowany, może być zdropowany przez samą kartę sieciową.
Ostatnio edytowany przez Nicram (2013-12-05 09:04:15)
Offline
Niestety dropy nadal się pojawiają :/ Może jakieś ustawienia w kernelu? na co zwrócić uwagę?
Offline
A jak z limitem połączeń ?
Porównaj
cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max
i
wc -l /proc/net/ip_conntrack
w godzinach szczytu
Sprawdź też logi - zwłaszcza kern.log
Przy takim ruchu - dodanie paru opcji w sysctl.conf jest już wskazane->niezbędne - zwłaszcza zwiększenie gc_thresh1/2/3 i xmem-ów
Offline
[quote=mrbartez]A jak z limitem połączeń ?
Porównaj
cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max
i
wc -l /proc/net/ip_conntrack
w godzinach szczytu
Sprawdź też logi - zwłaszcza kern.log[/quote]
conntrack się nie kończy
marcin@john ~ $ cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max 262144 marcin@john ~ $ sudo wc -l /proc/net/ip_conntrack 99397 /proc/net/ip_conntrack
kern.log milczy
[quote=mrbartez]Przy takim ruchu - dodanie paru opcji w sysctl.conf jest już wskazane->niezbędne - zwłaszcza zwiększenie gc_thresh1/2/3 i xmem-ów[/quote]
hmm, coś więcej na temat gc_thresh? jakie powinny być wartości?
Offline
W archiwach - jeśli są - również nie ma nic interesującego ? Gdyby karta nie wyrabiała to powinno coś być przy overruns.
Zresztą z tego co widzę to masz Intela PRO/1000 PT Dual - mam też takie karty w dwóch serwerach i jest ok - ruch na podobnym poziomie - a masz wpiętą do x1 czy x4 ?
Problem z gc jest logowany w kern.log ale testowo możesz sprawdzić - mój produkcyjny konfig sysctl.conf (doklej na końcu i z konsoli sysctl -p)
kernel.shmmax=4294967295 kernel.msgmax=65536 kernel.msgmnb=65536 net.ipv4.conf.default.rp_filter=1 net.ipv4.conf.default.accept_source_route=0 kernel.shmall=268435456 net.ipv4.tcp_syncookies=1 net.ipv4.neigh.default.base_reachable_time = 86400 net.ipv4.neigh.default.gc_stale_time = 86400 net.ipv4.tcp_no_metrics_save = 1 net.ipv4.tcp_moderate_rcvbuf = 1 net.core.netdev_max_backlog = 2500 net.core.rmem_default = 262144 net.core.wmem_default = 262144 net.ipv4.tcp_rmem = 4096 87380 8388608 net.ipv4.tcp_wmem = 4096 87380 8388608 net.ipv4.tcp_mem = 8388608 8388608 8388608 net.core.rmem_max = 8388608 net.core.wmem_max = 8388608 net.ipv4.neigh.default.gc_thresh1 = 4096 net.ipv4.neigh.default.gc_thresh2 = 8192 net.ipv4.neigh.default.gc_thresh3 = 16384 net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1
Offline
Dzięki. Część z tych ustawień już miałem.
Oto moje sysctl.conf - razem z Twoim:
kernel.shmall=268435456 kernel.shmmax=4294967295 kernel.msgmax=65536 kernel.msgmnb=65536 net.core.wmem_max=33554432 net.core.wmem_default=16777216 net.core.rmem_max=33554432 net.core.rmem_default=16777216 net.core.netdev_max_backlog = 50000 net.ipv4.conf.default.rp_filter=1 net.ipv4.conf.default.accept_source_route=0 net.ipv4.tcp_syncookies=1 net.ipv4.tcp_moderate_rcvbuf = 1 net.ipv4.tcp_mem = 8388608 8388608 8388608 net.ipv4.tcp_rmem= 10240 87380 33554432 net.ipv4.tcp_wmem= 10240 87380 33554432 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_timestamps = 1 net.ipv4.tcp_sack = 1 net.ipv4.tcp_max_syn_backlog=16777216 net.ipv4.tcp_no_metrics_save = 1 net.ipv4.ip_local_port_range = 1024 65000 net.ipv4.neigh.default.base_reachable_time = 86400 net.ipv4.neigh.default.gc_stale_time = 86400 net.ipv4.neigh.default.gc_thresh1 = 4096 net.ipv4.neigh.default.gc_thresh2 = 8192 net.ipv4.neigh.default.gc_thresh3 = 16384 net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1
Konfiguracja na 8GB ramu
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00106 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.149.250.19' WHERE u.id=1 |
0.00074 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.149.250.19', 1732752955) |
0.00072 | SELECT * FROM punbb_online WHERE logged<1732752655 |
0.00092 | SELECT topic_id FROM punbb_posts WHERE id=247479 |
0.00006 | SELECT id FROM punbb_posts WHERE topic_id=24756 ORDER BY posted |
0.00086 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=24756 AND t.moved_to IS NULL |
0.00009 | SELECT search_for, replace_with FROM punbb_censoring |
0.00337 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=24756 ORDER BY p.id LIMIT 0,25 |
0.00097 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=24756 |
Total query time: 0.00895 s |