특정 인터페이스에서 발신 대역폭 제한


32

인터페이스의 발신 대역폭을 제한하는 가장 쉬운 방법을 알고 싶습니다. 바쁜 시간 동안 서버 간의 파일 전송이 실패하지 않도록 나가는 포트 속도를 제한하고 싶습니다.

가장 쉬운 해결책은 무엇입니까? 사용할 수는 iptables있지만 간단한 설치 / 구성을 찾고 있습니다.


HTB는 훌륭하게 작동합니다. 매우 유연한 속도 제한. sourceforge.net/projects/htbinit

답변:


37

ethtool

을 사용하여 NIC 포트의 집계 속도를 변경할 수 있습니다 ethtool.

$ sudo ethtool -s eth0 speed 10

예를 들어 포트가 10MB로 설정됩니다.

경이

도구 wondershaper를 사용하여 수행 할 수도 있습니다 . 참고 : 속도는 초당 킬로 비트 여야합니다.

$ sudo wondershaper eth1 downspeed upspeed

예를 들면 다음과 같습니다.

$ sudo wondershaper eth0 10000 280

물방울

세 번째 옵션은 Trickle 입니다. Trickle은 사용자가 프로그램별로 또는 NIC를 완전히 제한하는 데몬으로 사용할 수 있습니다.

사용자 모드- 물방울 매뉴얼 페이지

$ sudo trickle -d 20 -u 20 wget http://www.google.com/bigfile

이것만으로 업 트래픽과 다운 트래픽 모두에 대해 20K / s를 조절할 wget수 있으며 다른 모든 것은 제한되지 않습니다.

데몬 모드- 속임수 페이지

데몬 모드에서 trickled프로그램 그룹을 고정 된 대역폭 제한으로 제한 할 수 있습니다. 데몬을 시작하려면 trickled 명령을 실행하십시오.

$ sudo trickled -d 20 -u 20

파이 샤퍼

네 번째 옵션은 pyshaper 입니다. GUI를 포함하고 시간이 지남에 따라 대역폭을 동적으로 모니터링하고 설정한다는 점에서 고유 한 옵션입니다. 자세한 내용 은 pyshaper 매뉴얼 페이지 를 확인하십시오.

                                            pyshaper gui

참고 문헌


커널이 지원하는 경우 cgroup을 통해 문제가있는 응용 프로그램의 대역폭 사용을 제한하는 것이 좋습니다.
Bratchley

wondershaper가 작동하지 않는 이유를 모르겠다 (원더 쉐이더 eth0 1000 1000에도`sudo trickled -d 20 -u 20`와 같은 인터넷 대역폭이 없음). 하나의 네트워크 인터페이스를 제한해야합니다. 특정 응용 프로그램뿐만 아니라 대역폭. 어떻게 할 수 있습니까?
Arash

물방울은 나를 위해 작동하지 않았지만 wondershaper는 속임수를 썼다!
peschü

1

Wondershaper는 2002 년에 마지막으로 편집되었지만 여전히 Fedora 21에서 작동합니다. 그러나 인수로 사용할 수있는 옵션은 두 가지뿐이므로 적어도 2002 년 4 월 16 일에 출시 된 다운로드 버전 1.1a가 아닌 여기에 지정된대로 명령 줄에서 업로드 / 다운로드 속도를 지정할 수 없습니다. 편집해야합니다. 파일이며 쉘 스크립트입니다. 작은 껍질을 아는 사람들에게는 어렵지 않습니다.

사용법은 :

wondershaper (이것은 파일의 값에 따라 대역폭을 설정합니다)

wondershaper status
wondershaper stop

링크가 활성화되어있는 동안 사용할 수 있습니다.


1

또 다른 옵션은 ' iproute2 '로, 성숙하고 광범위하게 사용 가능한 트래픽 라우팅 / 형성 도구 인 것으로 보입니다. RPM으로 찾았습니다 (아마도 다른 많은 패키지도 보이지 않았습니다). 이 글을 쓰는 시점에서 가장 최신 버전은 2016 년 1 월 25 일에 구축 된 4.4.0입니다.

구성 구문을 살펴보면 비교적 간단하지만 ( ifconfig또는 간단하지는 않지만 route)


6
귀하의 답변은 발신 대역폭을 제한하기 위해 실제로 iproute2를 사용하는 방법을 다루지 않습니다. 좀 더 자세히 설명해 주시겠습니까?
Michael
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.