문제

Linux에서 네트워크 인터페이스 제어/조사에 대해 어디에서 배울 수 있습니까? 특정 응용 프로그램 업로드/다운로드 속도를 얻고 특정 응용 프로그램의 속도 제한을 시행하고 싶습니다.

특히 Python을 사용하여 트래픽 형성 응용 프로그램을 작성하는 데 도움이되는 정보를 원합니다.

도움이 되었습니까?

해결책

당신은 당신이 사용하는 iproute2 스위트를 원합니다. TC 명령. TC 명령은 다음과 같습니다

tc class add dev eth2 parent 1: classid 1:1 htb rate 100Mbit ceil 100Mbit quantum 1600

여기에 있습니다 기존의 Python 트래픽 모양의 응용 프로그램 그것은 iproute2를 사용합니다.

다른 팁

응용 프로그램이 특정 IP 주소 및/또는 일치 할 수있는 포트를 사용하지 않는 한 실제로 Linux 커널 도구를 사용하여 응용 프로그램 당 상당히 어려운 일입니다.

그것이 사실이라고 가정하면 당신은 당신이 읽어야합니다. iptables 그리고 특히 fwmarks. 또한 읽어야합니다 tc. 이 두 도구는 원하는 것을 수행 할 수 있습니다. 그만큼 Linux 고급 라우팅 및 교통 관제 시작하기에 좋은 곳입니다.

응용 프로그램이 예측 가능한 포트/IP 주소 세트를 사용하지 않는다고 가정하면 사용자 공간 셰이퍼를 사용해야합니다. 물방울. 이것은 응용 프로그램과 커널 사이에 자체적으로 삽입되며 사용자 공간에서 해당 응용 프로그램의 트래픽을 형성합니다.

이러한 도구에 대한 직접적인 파이썬 바인딩이 있다고 생각하지는 않지만 Python을 사용하여 스크립트하고 실행 파일을 직접 호출하는 것은 간단합니다.

파이썬을 사용하고 싶은 이유가 있습니까? 언급했듯이,이 목적을 위해 이미 개발 된 도구에만 핸드 오프 할 것입니다. 그러나 주변을 둘러 보면 다음과 같은 것들을 찾을 수 있습니다. Click! modular router, XORP, 그리고 당신이하고 싶은 일에 대한 드롭 인을 제공하는 다른 사람들 - 이미 제공 한 모든 제안은 말할 것도 없습니다 (예 : iptables 그리고 tc)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top