
저는 cgroups & tc를 사용하여 프로세스의 대역폭을 제한하기 위해 인터넷(ServerFault 포함)의 모든 곳에서 찾은 "표준" 방식을 사용하고 있습니다.
실제로 제가 본 것은 제가 설정한 제한이 tc
실제로는 약 10배 더 많다는 것입니다. 이 스크린샷을 참조하세요.
나는 100kbit(100kbps 아님)로 설정했으므로 rate
아래 ceil
wget에서 초당 약 10KB를 표시할 것으로 예상됩니다. 대신 500kbps가 표시됩니다.
내 htp 속도를 100으로 업데이트하면kbps(초당 100KB) 속도가 10까지 올라가는 것을 봅니다.메가바이트/초, 이는 100배 이상입니다.
tc class change dev ens3 classid 1:1 htb rate 100kbps
# the curl in the other terminal now shoots up to 9.6MB/s
image.iso.1 53%[================> ] 346,72M **9,48MB/s** tps 49s
이것이 내 htb 구성과 일관성이 없는 이유를 이해할 수 없습니다. 내가 뭘 잘못하고 있는지 아시나요?
답변1
tc를 사용하면 업로드 속도가 결정됩니다. wget을 사용하면 다운로드 속도를 테스트하고 있습니다. 테스트에서 귀하는 클라이언트가 보낸 TCP ACK를 형성하므로 귀하의 경우 데이터/ack 비율이 1:100이라는 결론을 내릴 수 있습니다.
tc를 사용하여 수신 흐름을 ifb 인터페이스로 리디렉션하고 이를 형성하여 다운로드 속도를 조절할 수 있습니다.여기이를 수행하는 방법에 대한 예가 있습니다.