เบเบนเปเบกเบทเบฅเบฒเบเบฅเบฐเบญเบฝเบเปเบเปเบเบทเบเบเบฑเบเบเบตเบกเบกเบฒเบเปเบฝเบงเบเบฑเบเบเบฒเบเบเบฑเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบก Linux เปเบเบทเปเบญเบเบฑเบเบฅเบธเบเบฐเบชเบดเบเบเบดเบเบฒเบเบชเบนเบเบชเบธเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบฐเบกเบงเบเบเบปเบเบเปเบฒเบฎเปเบญเบเบเป HTTP. เบงเบดเบเบตเบเบฒเบเบเบตเปเบชเบฐเปเบซเบเบตเปเบฎเบฑเบเปเบซเปเบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบฐเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบเปเบเปเบเบเปเบเบต JSON เปเบเบเบญเบตเบเปเบชเปเบซเปเบญเบเบชเบฐเบซเบกเบธเบ libreactor เปเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบก Amazon EC2 (4 vCPU) เบเบฒเบ 224 เบเบฑเบเบเปเบฒเบฎเปเบญเบเบเป API เบเปเปเบงเบดเบเบฒเบเบตเบเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบกเบฒเบเบเบฐเบเบฒเบเบเบญเบ Amazon Linux 2 เบเบฑเบ kernel 4.14 เบซเบฒ 1.2 เบฅเปเบฒเบเบเปเบฒเบฎเปเบญเบเบเปเบเปเป. เบเบตเบชเบญเบเบซเบผเบฑเบเบเบฒเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบ (เปเบเบตเปเบกเบเบถเปเบ 436%), เปเบฅเบฐเบเบฑเบเบเปเบฒเปเบเบชเบนเปเบเบฒเบเบซเบผเบธเบเบเปเบญเบเบเบงเบฒเบกเบฅเปเบฒเบเปเบฒเปเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบฎเปเบญเบเบเป 79%. เบงเบดเบเบตเบเบฒเบเบเบตเปเบชเบฐเปเบซเบเบตเบเปเปเบชเบฐเปเบเบฒเบฐเบเบฑเบ libreactor เปเบฅเบฐเปเบฎเบฑเบเบงเบฝเบเปเบเปเบงเบฅเบฒเบเบตเปเปเบเปเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบ http เบญเบทเปเบเป, เบฅเบงเบกเบเบฑเบ nginx, Actix, Netty เปเบฅเบฐ Node.js (libreactor เบเบทเบเบเปเบฒเปเบเปเปเบเบเบฒเบเบเบปเบเบชเบญเบเปเบเบฒเบฐเบงเปเบฒเบเบฒเบเปเบเปเปเบเปเบเบเบญเบตเบเปเบชเปเบกเบฑเบเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบเบดเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเบเบตเบเบงเปเบฒ).
เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบทเปเบเบเบฒเบ:
- เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบฅเบฐเบซเบฑเบ libreactor. เบเบฒเบเปเบฅเบทเบญเบ R18 เบเบฒเบเบเบธเบ Techempower เปเบเปเบเบทเบเบเปเบฒเปเบเปเปเบเบฑเบเบเบทเปเบเบเบฒเบ, เปเบเบดเปเบเปเบเปเบเบทเบเบเบฑเบเบเบธเบเปเบเบเบเบฒเบเบเบญเบเบฅเบฐเบซเบฑเบเปเบเบทเปเบญเบเปเบฒเบเบฑเบเบเปเบฒเบเบงเบเบเบญเบ CPU cores เบเบตเปเปเบเป (เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบฅเบฑเปเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบเบ 25-27%), เบเบฐเบเบญเบเปเบ GCC เบเปเบงเบเบเบปเบงเปเบฅเบทเบญเบ "-O3" (เปเบเบตเปเบกเบเบถเปเบ 5-10%) เปเบฅเบฐ "-march-native" (5-10%), เปเบเบเบเบตเปเบเบฒเบเบญเปเบฒเบ / เบเบฝเบเบเบฒเบเปเบเบเปเบงเบ recv / เบชเบปเปเบ (5-10%) เปเบฅเบฐเบซเบผเบธเบเบเปเบญเบ overhead เปเบกเบทเปเบญเปเบเป pthreads (2-3%). . เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบเบฅเบงเบกเบซเบผเบฑเบเบเบฒเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบฅเบฐเบซเบฑเบเปเบกเปเบ 55%, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 224k req / s เปเบเบฑเบ 347k req / s.
- เบเบดเบเบเบฒเบเปเบเปเบเบฒเบเบเบฒเบเบเบปเบเบเปเบญเบเบเปเปเบเบฑเบเบเบงเบฒเบกเบญเปเบญเบเปเบญเบเบญเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบฒเบเปเบเบปเบฒ. เบเบฒเบเปเบเปเบเบฒเบฅเบฒเบกเบดเปเบเบต "nospectre_v1 nospectre_v2 pti=off mds=off tsx_async_abort=off" เปเบกเบทเปเบญเปเบซเบฅเบ kernel เบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบ 28%, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 347k req/s เปเบเบฑเบ 446k req/s. เปเบเบเบเปเบฒเบเบซเบฒเบ, เบเบฒเบเปเบเบตเปเบกเบเบถเปเบเบเบฒเบเบเบฒเบฅเบฒเบกเบดเปเบเบต "nospectre_v1" (เบเบฒเบเบเบปเบเบเปเบญเบเบเบฒเบ Spectre v1 + SWAPGS) เปเบกเปเบ 1-2%, "nospectre_v2" (เบเบฒเบเบเบปเบเบเปเบญเบเบเบฒเบ Spectre v2) - 15-20%, "pti = off" (Spectre v3 / Meltdown) - 6 %, "mds=off tsx_async_abort=off" (MDS/Zombieload เปเบฅเบฐ TSX Asynchronous Abort) - 6%. เบเบฒเบเบเบฑเปเบเบเปเบฒเปเบเบทเปเบญเบเปเบญเบเบเบฑเบ L1TF/Foreshadow (l1tf=flush), iTLB multihit, Speculative Store Bypass เปเบฅเบฐเบเบฒเบเปเบเบกเบเบต SRBDS เบเบทเบเบเบฐเปเบงเปเบเปเปเบเปเบฝเบเปเบเบ, เปเบเบดเปเบเบเปเปเบกเบตเบเบปเบเบเปเปเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบทเปเบญเบเบเบฒเบเบเบงเบเบกเบฑเบเบเปเปเบเบฑเบเบเบฑเบเบเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบตเปเบเบปเบเบชเบญเบ (เบเบปเบงเบขเปเบฒเบ, เบชเบฐเปเบเบฒเบฐเบเบฑเบ KVM, เบงเบฒเบเปเบงเป. virtualization เปเบฅเบฐเบฎเบนเบเปเบเบ CPU เบญเบทเปเบเป).
- เบเบฒเบเบเบดเบเบเบฒเบเบเบงเบเบชเบญเบเปเบฅเบฐเบเบปเบเปเบเบเบฒเบเบเบฑเบเบเบงเบฒเบเบเบฒเบเปเบเบฅเบฐเบเบปเบเปเบเบเปเบเปเบเปเบฒเบชเบฑเปเบ "auditctl -a never,task" เปเบฅเบฐเบฅเบฐเบเบธเบเบฒเบเปเบฅเบทเบญเบ "--security-opt seccomp=unconfined" เปเบกเบทเปเบญเปเบฅเบตเปเบกเบเบปเปเบ docker container. เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบเบฅเบงเบกเปเบกเปเบ 11%, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 446k req / s เปเบเบฑเบ 495k req / s.
- เบเบฒเบเบเบดเบเบเบฒเบเปเบเปเบเบฒเบ iptables/netfilter เปเบเบเบเบฒเบเบเบปเบเปเบฅเบตเบเบเบฒเบเปเบซเบผเบเปเบกเบเบนเบ kernel เบเบตเปเบเปเบฝเบงเบเปเบญเบ. เบเบงเบฒเบกเบเบดเบเบเบตเปเบเบฐเบเบดเบเบเบฒเบเบเปเบฒเบเบฒเบเปเบเบงเป, เปเบเบดเปเบเบเปเปเปเบเปเปเบเปเปเบเบเบฒเบเปเบเปเปเบเปเบเบตเบเปเบงเบตเบชเบฐเปเบเบฒเบฐ, เปเบเปเบเบทเบเบเบฐเบเบธเปเบเปเบเบเบเบปเบเปเบเปเบฎเบฑเบ profile, เบเบฑเบเบชเบดเบเปเบเบเบเบฑเบเบเบฑเบ nf_hook_slow เปเบเปเปเบงเบฅเบฒ 18% เบเบญเบเปเบงเบฅเบฒเบเบตเปเบเบฐเบเปเบฒเปเบเบตเบเบเบฒเบ. เบกเบฑเบเปเบเปเบเบทเบเบชเบฑเบเปเบเบเปเบซเบฑเบเบงเปเบฒ nftables เปเบฎเบฑเบเบงเบฝเบเบเบตเปเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบเบซเบผเบฒเบเบเปเบงเบฒ iptables, เปเบเป Amazon Linux เบเบฑเบเบชเบทเบเบเปเปเปเบเป iptables. เบซเบผเบฑเบเบเบฒเบเบเบฒเบเบเบดเบเบเบฒเบเปเบเปเบเบฒเบ iptables, เบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบตเปเบกเบเบถเปเบเปเบกเปเบ 22%, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 495k req/s เปเบเบฑเบ 603k req/s.
- เบซเบผเบธเบเบเปเบญเบเบเบฒเบเปเบเบทเปเบญเบเบเปเบฒเบเบเบปเบงเบเบฑเบเบเบฒเบเบฅเบฐเบซเบงเปเบฒเบเปเบเบ CPU เบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบเบทเปเบญเบเบฑเบเบเบธเบเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบเบเบฒเบเปเบเป cache เบเบญเบเปเบเปเบเบเปเบเบต. เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบเบเบฑเบเปเบเบฅเบฐเบเบฑเบเบเบญเบเบเบฐเบเบงเบเบเบฒเบ libreactor binding เบเบฑเบ CPU cores (CPU Pinning) เปเบฅเบฐเปเบเบเบเปเบฒเบเบเบฒเบ pinning kernel network handlers (Receive Side Scaling). เบเบปเบงเบขเปเบฒเบ, irqbalance เบเบทเบเบเบดเบเปเบเปเบเบฒเบ เปเบฅเบฐเบเบงเบฒเบกเปเบเปเบเบดเบเบเบญเบเบเบดเบงเบเบฑเบ CPU เปเบเปเบเบทเบเบเปเบฒเบเบปเบเบขเปเบฒเบเบเบฐเปเบเปเบเปเบ /proc/irq/$IRQ/smp_affinity_list. เปเบเบทเปเบญเปเบเปเบซเบผเบฑเบ CPU เบเบฝเบงเบเบฑเบเปเบเบทเปเบญเบเบฐเบกเบงเบเบเบปเบเบเบฐเบเบงเบเบเบฒเบ libreactor เปเบฅเบฐเปเบเบงเปเบเบทเบญเบเปเบฒเบเบเบญเบเปเบเบฑเบเปเบเบฑเบเบเบตเปเปเบเบปเปเบฒเบกเบฒ, เบเบปเบงเบเบฑเบเบเบฒเบ BPF เปเบเบเบเบณเบเบปเบเปเบญเบเบเบทเบเปเบเป, เปเบเบทเปเบญเบกเบเปเปเปเบเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบธเบ SO_ATTACH_REUSEPORT_CBPF เปเบกเบทเปเบญเบชเปเบฒเบเปเบเบปเปเบฒเบฎเบฑเบ. เปเบเบทเปเบญเบเบนเบเบกเบฑเบเบเบดเบงเบเบญเบเปเบเบฑเบเปเบเบฑเบเบเบฒเบญเบญเบเบเบฑเบ CPU, เบเบฒเบเบเบฑเปเบเบเปเบฒ /sys/class/net/eth0/queues/tx- เปเบเปเบเบทเบเบเปเบฝเบเปเบเบ. /xps_cpu. เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบเบฅเบงเบกเปเบกเปเบ 38%, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 603k req / s เปเบเบฑเบ 834k req / s.
- เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบเบเบฒเบเบเบฑเบเบเบฒเบเบเบฑเบเบเบงเบฒเบเปเบฅเบฐเบเบฒเบเบเปเบฒเปเบเปเบเบฒเบเบฅเบปเบเบเบฐเปเบเบเบชเบฝเบ. เบเบฒเบเปเบเบตเบเปเบเปเปเปเบ adaptive-rx เปเบเปเบเปเบงเบต ENA เปเบฅเบฐเบเบฒเบเบเบฑเบเบเบฒเบ sysctl net.core.busy_read เบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบเบตเปเบกเบเบถเปเบ 28% (เบเบฒเบเบชเบปเปเบเบเปเบฒเบเปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 834k req/s เปเบเบฑเบ 1.06M req/s, เปเบฅเบฐ latency เบซเบผเบธเบเบฅเบปเบเบเบฒเบ 361ฮผs เบซเบฒ 292ฮผs).
- เบเบฒเบเบเบดเบเบเบฒเบเบเปเบฅเบดเบเบฒเบเบฅเบฐเบเบปเบเบเบตเปเบเปเบฒเปเบเบชเบนเปเบเบฒเบเบเบดเบเบเบฑเปเบเบเบตเปเบเปเปเบเปเบฒเปเบเบฑเบเปเบ stack เปเบเบทเบญเบเปเบฒเบ. เบเบฒเบเบเบดเบเบเบฒเบเปเบเปเบเบฒเบ dhclient เปเบฅเบฐเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบตเปเบขเบนเป IP เบเปเบงเบเบเบปเบเปเบญเบเปเบฎเบฑเบเปเบซเปเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบ 6% เปเบเบตเปเบกเบเบถเปเบเปเบฅเบฐ passput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 1.06M req/s เปเบเบฑเบ 1.12M req/s. เปเบซเบเบเบปเบ dhclient เบเบปเบเบเบฐเบเบปเบเบเปเปเบเบฒเบเบเบฐเบเบดเบเบฑเบเปเบกเปเบเบขเบนเปเปเบเบเบฒเบเบงเบดเปเบเบฒเบฐเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเบเปเบเปเบเบฑเบญเบเปเบเบฑเบเบเบดเบ.
- เบเปเปเบชเบนเปเบเบฑเบ Spin Lock. เบเบฒเบเบเปเบฝเบ stack เปเบเบทเบญเบเปเบฒเบเปเบเบฑเบเปเบซเบกเบ "noqueue" เบเปเบฒเบ sysctl "net.core.default_qdisc=noqueue" เปเบฅเบฐ "tc qdisc เปเบเบ dev eth0 root mq" เปเบฎเบฑเบเปเบซเปเบเบฐเบชเบดเบเบเบดเบเบฒเบ 2% เปเบเบตเปเบกเบเบถเปเบ, เปเบฅเบฐ throughput เปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 1.12M req/s เปเบเบฑเบ 1.15M. req/s.
- เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเปเบฅเบฑเบเบเปเบญเบเบชเบธเบเบเปเบฒเบ, เปเบเบฑเปเบเบเบฒเบเบเบดเบเบเบฒเบเปเบเปเบเบฒเบ GRO (Generic Receive Offload) เบเปเบงเบเบเบณเบชเบฑเปเบ โethtool -K eth0 gro offโ เปเบฅเบฐเบเบฒเบเบเปเบฝเบเปเบเบเบฅเบฐเบเบปเบเบเบงเบเบเบธเบกเบเบงเบฒเบกเปเบญเบญเบฑเบเบเบญเบ cubic เบเปเบงเบ reno เปเบเบเปเบเป sysctl โnet.ipv4.tcp_congestion_control=renoโ. เบเบปเบเบเบฐเบฅเบดเบเปเบเบเบฅเบงเบกเปเบเบตเปเบกเบเบถเปเบ 4%. เบเบฒเบเบชเบปเปเบเบเปเบฒเบเปเบเบตเปเบกเบเบถเปเบเบเบฒเบ 1.15M req/s เปเบเบฑเบ 1.2M req/s.
เบเบญเบเปเบซเบเบทเบญเบเบฒเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบ, เบเบปเบเบเบงเบฒเบกเบเบฑเบเบชเบปเบเบเบฐเบเบฒเบงเบดเบเบตเบเบฒเบเบเบตเปเบเปเปเบเปเบฒเปเบเบชเบนเปเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบตเปเบเบฒเบเบงเปเบฒเบเบฐเปเบเบตเปเบกเบเบถเปเบ. เบชเปเบฒเบฅเบฑเบเบเบปเบงเบขเปเบฒเบ, เบเบฑเปเบเบเปเปเปเบเบเบตเปเปเบเปเบเปเปเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบ:
- เบเบฒเบเปเบฅเปเบ libreactor เปเบเบเบเปเบฒเบเบซเบฒเบเบเปเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบฒเบเปเบฅเปเบเบกเบฑเบเบขเบนเปเปเบเบเบฑเบ. เบเบฒเบเบเปเบฝเบ writev เบเปเบงเบเบเบฒเบเบชเบปเปเบ, เบเบฒเบเปเบเบตเปเบก maxevents เปเบ epoll_wait, เปเบฅเบฐเบเบฒเบเบเบปเบเบฅเบญเบเบเบฑเบเบฅเบธเปเบ เปเบฅเบฐเบเบธเบ GCC เบเปเปเบกเบตเบเบปเบ (เบเบปเบเบเบฐเบเบปเบเปเบกเปเบเปเบซเบฑเบเปเบเปเบเบฑเบเปเบเบเบชเปเบฒเบฅเบฑเบเบเบธเบ โ-O3โ เปเบฅเบฐ โ-march-nativeโ).
- เบเบฒเบเบญเบฑเบเปเบเบฃเบ kernel Linux เปเบเบฑเบเปเบงเบตเบเบฑเปเบ 4.19 เปเบฅเบฐ 5.4, เปเบเบเปเบเป SCHED_FIFO เปเบฅเบฐ SCHED_RR เบเบณเบเบปเบเปเบงเบฅเบฒ, เปเบนเบเปเบเป sysctl kernel.sched_min_granularity_ns, kernel.sched_wakeup_granularity_ns, transparent_hugepages=clockew_sourced, เบเบปเบเบเบฐเบเบปเบเบเปเปเบเบฒเบเปเบฎเบฑเบเบงเบฝเบ.
- เปเบเปเบเปเบงเบต ENA, เบเบฒเบเปเบเบตเบเปเบเปเปเปเบ Offload (segmentation, scatter-gather, rx/tx checksum), เบเบฒเบเบเปเปเบชเปเบฒเบเบเปเบงเบเบเบธเบ โ-O3โ, เปเบฅเบฐเบเบฒเบเปเบเปเบเบฒเบฅเบฒเบกเบดเปเบเบต ena.rx_queue_size เปเบฅเบฐ ena.force_large_llq_header เบเปเปเบกเบตเบเบปเบเบซเบเบฑเบเปเบฅเบตเบ.
- เบเบฒเบเบเปเบฝเบเปเบเบเปเบ stack เปเบเบทเบญเบเปเบฒเบเบเปเปเปเบเปเบเบฑเบเบเบธเบเบเบฐเบชเบดเบเบเบดเบเบฒเบ:
- เบเบดเบเบเบฒเบเปเบเปเบเบฒเบ IPv6: ipv6.disable=1
- เบเบดเบเปเบเปเบเบฒเบ VLAN: modprobe -rv 8021q
- เบเบดเบเบเบฒเบเบเบงเบเบชเบญเบเปเบซเบผเปเบเบเบตเปเบกเบฒเบเบญเบเปเบเบฑเบเปเบเบ
- net.ipv4.conf.all.rp_filter=0
- net.ipv4.conf.eth0.rp_filter=0
- net.ipv4.conf.all.accept_local=1 (เบเบปเบเบเบฐเบเบปเบเบเบฒเบเบฅเบปเบ)
- net.ipv4.tcp_sack = 0
- net.ipv4.tcp_dsack=0
- net.ipv4.tcp_mem/tcp_wmem/tcp_rmem
- net.core.netdev_budget
- net.core.dev_weight
- net.core.netdev_max_backlog
- net.ipv4.tcp_slow_start_after_idle=0
- net.ipv4.tcp_moderate_rcvbuf=0
- net.ipv4.tcp_timestamps=0
- net.ipv4.tcp_low_latency = 1
- SO_PRIORITY
- TCP_NODELAY
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru