파트 3: 소켓 트래픽 우선순위와 QoS

이 기사에서는 카토 QoS 엔진이 작동하는 방식과 네트워크 대역폭 활용을 크게 개선하고 네트워크 성능을 최적화하는 방법을 설명합니다.

카토 QoS로 대역폭 관리하기

카토 관리 애플리케이션에서 BW 관리 프로필을 사용하여 다양한 트래픽 유형의 QoS 우선순위를 구성합니다. 각 프로필에는 QoS 우선순위와 트래픽 대역폭 제한이 모두 포함됩니다. 그런 다음 BW 관리 프로필을 네트워크 규칙에 할당하고 특정 유형의 트래픽을 우선 처리할 수 있습니다.

우선순위 값을 2에서 255 사이로 설정할 수 있으며, 0과 1은 카토 관리 트래픽에 예약되고, 255는 가장 낮은 우선순위로 예약됩니다. 우선순위 P10으로 대역폭 프로필을 구성하면 해당 트래픽이 우선순위 P20보다 더 높은 우선순위를 갖게 됩니다. 다른 애플리케이션에 대해 다른 우선순위를 제공하여 이 유형의 트래픽에 필요한 성능을 달성할 수 있습니다. 더 중요한 유형의 트래픽에는 더 낮은 우선순위 값을 할당하는 것이 좋습니다. 예를 들어, VoIP 트래픽이 RDP보다 계정에 더 중요하다면, VoIP 네트워크 규칙에 RDP 규칙보다 높은 우선순위를 할당하십시오.

참고: 계정을 위해 원격 포트 포워딩(RPF)을 구성하는 경우, RPF 트래픽은 자동으로 255의 가장 낮은 우선순위로 할당됩니다. RPF에 대한 자세한 내용은 계정을 위한 원격 포트 포워딩 구성을 참조하십시오.

카토가 BW 관리 정책에 따라 트래픽을 보내는 방법

카토 네트웍스는 업로드 및 다운로드 평균 속도를 제어하여 네트워크 성능을 최적화하는 표준 트래픽 셰이핑 기술을 사용합니다.

다음 다이어그램은 QoS 엔진이 다양한 트래픽 유형에 우선순위를 할당하는 방법을 보여줍니다.

mceclip0.png

BW 관리 알고리즘 구현

카토는 대역폭과 버스트성을 측정하기 위해 누적 버킷 알고리즘을 사용합니다. 트래픽 셰이퍼로 누적 버킷을 구현하면 네트워크 혼잡과 같이 들어오는 패킷 속도가 나가는 속도보다 클 때 패킷이 대기열에 들어가고 대기열이 가득 차면 패킷이 버려집니다. 패킷이 전송될 때 대기열에서 제거되고, FIFO 방식으로 새로운 패킷이 대기열에 들어갈 수 있습니다.

핵심 사항 - 트래픽이 우선순위에 따라 전송되는 방법

누적 버킷 알고리즘은 트래픽 속도를 측정하고 버킷이 가득 찼을 때를 식별합니다. 이러한 메트릭을 사용하여 물이 버킷을 채우는 예제로 우선 트래픽을 전송합니다:

  • 평균 속도 - 실제 BW 제한. 매 시계 틱마다 버킷에서 누수되는 물의 속도.

  • 버스트 용량 - 버킷 크기. 버킷이 패킷을 버리기 시작하기 전에 버킷이 운반할 수 있는 물의 총량.

  • 버스트 속도 – 트래픽 버스트 동안 버킷에 물이 들어갈 수 있는 속도. 버스트 속도는 제한되지 않으며, 어떤 버스트도 버킷에 들어갈 수 있습니다.

버킷이 가득 차지 않으면 모든 패킷이 전송됩니다. 그러나 버킷의 우선순위가 가득 찬 경우 해당 우선순위의 새로운 패킷이 대기열에 들어가고 버려질 수 있습니다. 각 우선순위에는 다른 대기열이 있으며, 패킷은 우선순위에 따라 순서대로(FIFO) 전송됩니다. 모든 대기열이 가득 차면 우선순위에 상관없이 모든 패킷이 버려집니다.

하지만 Cato는 많은 수의 패킷 버리기를 방지하기 위해 가중치 무작위 초기 방식을 구현합니다. TCP 트래픽의 경우, Cato는 송신 측 혼잡 알고리즘을 활성화하기 위해 데이터 패킷을 버리고 ACK 패킷은 버리지 않습니다. 그 결과, 송신자는 패킷 전송 속도를 줄입니다.

우선순위 대기열에서 트래픽이 전송되는 방법

소켓은 우선순위 대기열에서 패킷을 두 번의 반복을 통해 보냅니다: 하드 리미트 반복과 최고 노력 반복. 트래픽 셰이퍼는 먼저 설정된 BW 제한에 따라 패킷을 전송한 다음 나머지 패킷을 보내기 위해 최선을 다합니다. 매 1ms 틱마다 두 가지 반복을 수행합니다:

  1. 하드 리미트 반복 – 이 반복에서는 상위 우선순위부터 하위 우선순위까지 각 대기열을 평가하는 순서로 진행합니다. 각 우선순위 대기열에 대해 소켓은 설정된 QoS 제한에 따라 패킷을 전송합니다. 이 반복 중 링크의 총 BW 제한을 초과하면 소켓은 패킷 전송을 중지합니다.

  2. 최고 노력 반복 – 하드 리미트 반복에서 전송된 패킷이 총 대역폭 한도를 초과하지 않으면 소켓은 각 대기열을 다시 평가합니다. 상위 우선순위에서 하위 우선순위로 남아 있는 패킷을 전송합니다. 전체 대역폭을 초과하지 않고 링크의 전체 대역폭을 활용하려는 의도입니다.

트래픽 셰이퍼 반복 예시

이 섹션은 카토 QoS 엔진이 트래픽 대기열에서 패킷의 우선순위를 정하는 방법을 보여주는 예시를 보여줍니다.

패킷이 있는 5개의 우선순위 대기열

qos_queues.png

위 다이어그램은 소켓이 반복을 시작하기 전 5개의 우선순위 대기열에 있는 패킷을 보여줍니다.

QoS – 하드 리미트 반복

QoS_hard_limits.png

이 다이어그램은 하드 리미트 반복인 첫 번째 반복을 보여줍니다. P10, P20, P30, P40, 마지막으로 P255에서 시작합니다. 각 대기열의 사용 가능한 대역폭은: P10 대기열에서는 2개의 패킷, P20에서는 1개의 패킷, P30에서는 1개의 패킷, P40에서는 2개의 패킷, P255 대기열에서는 1개의 패킷입니다.

QoS – 최고 노력 반복

qos_best_effort.png

이 다이어그램은 두 번째 반복인 최고 노력 반복을 보여줍니다. 이번 반복에서는 P10에서 3개의 패킷이 전송되었고, 각각 P20, P30, P40, 마지막으로 P255에서 1개씩 전송되었습니다. 이 경우 모든 대역폭이 사용되며, P255 대기열의 1개의 패킷은 다음 틱에 남아 있습니다. 그런 다음 대기열에 새로운 패킷이 도착하고 알고리즘은 두 가지 반복을 다시 실행하여 남은 패킷을 전송합니다.

도움이 되었습니까?

10명 중 9명이 도움이 되었다고 했습니다.

댓글 0개