문제는 wget을 사용하여 다운로드 속도를 테스트할 때 항상 최종 클라이언트 시스템을 인터넷 핫스팟 대역폭의 약 1/3(1/3, 약 200/300kb)로 제한한다는 것입니다.
저는 Debian 7 Linux 라우터("서버"라는 이름)와 Wi-Fi 어댑터 2개를 구성했습니다.
- wlan0의 기존 Belkin Wi-Fi 카드 -> 33mhz(BCM4306)(54Mb/s)의 pci, Hostap을 사용하여 핫스팟으로 만들기
- wlan1 -> 다른 핫스팟에 연결된 USB의 새로운 RTL8192CU(54Mb/s)(넷박스, 인터넷에 연결되어 있지만 구성을 변경할 수 없음).
그래서 인터넷을 통한 경로는
laptop -> server -> hotspot -> internet
다음 구성을 사용하여 서버에 Netfilter를 구성했습니다.
#!/bin/sh
PATH=/sbin
EXTIF="wlan1"
INTIF="wlan0"
iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $EXTIF -o $INTIF -j ACCEPT
iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
qdisc가 기본값이며 다음과 같습니다.
root@server:~# tc qdisc show
qdisc mq 0: dev wlan0 root
qdisc pfifo_fast 0: dev wlan0 parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan0 parent :2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan0 parent :3 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan0 parent :4 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc mq 0: dev wlan1 root
qdisc pfifo_fast 0: dev wlan1 parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan1 parent :2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan1 parent :3 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev wlan1 parent :4 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
나는 노트북(debian 8)을 사용하여 Linux 라우터(서버)에 연결합니다.
서버에서 wget을 사용하여 다운로드를 테스트하면 1Mb/s에 도달했지만 노트북에서 다운로드를 테스트하려고 하면 해당 속도에 도달할 수 없습니다. 서버 전체 대역폭의 약 1/3로 제한되는 것 같습니다. 인터넷으로도CPU 로드서버 활용도는 여전히 낮습니다(<=1%).
tcp_window_scaling이 활성화되고 net.core.wmem_max= 1048576 net.core.rmem_max= 1048576
며칠 동안 여기저기 찾아보았지만 랩톱에서 최대 속도를 낼 수 있는 방법을 찾을 수 없습니다. 이 문제를 해결하는 방법에 대한 아이디어가 있는 사람이 있습니까? 현재 io 버스에 병목 현상이 있는 것으로 의심됩니다.