예: ECN 구성
이 예에서는 출력 대기열에서 명시적 혼잡 알림(ECN)을 활성화하는 방법을 보여줍니다.
요구 사항
이 예에서는 다음과 같은 하드웨어 및 소프트웨어 구성 요소를 사용합니다.
하나의 스위치.
QFX 시리즈 또는 Junos OS 릴리스 14.1X53-D20용 Junos OS 릴리스 13.2X51-D25 이상
개요
ECN은 TCP/IP 기반 네트워크에서 두 단말 장치 간의 엔드 투 엔드 혼잡 알림을 지원합니다. 두 엔드포인트는 ECN 지원 발신자와 ECN 지원 수신기입니다. ECN이 제대로 작동하려면 단말 장치와 단말 장치 간의 모든 중간 디바이스에서 ECN을 활성화해야 합니다. ECN을 지원하지 않는 전송 경로의 모든 디바이스는 엔드 투 엔드 ECN 기능을 깰 수 있습니다.
WRED(Weighted Random Early Detection) 패킷 드롭 프로파일은 ECN이 활성화된 출력 대기열에 적용해야 합니다. ECN은 WRED 드롭 프로파일 임계값을 사용하여 출력 대기열에 혼잡이 발생할 때 패킷을 마크합니다.
ECN은 해당 패킷을 떨어뜨리는 대신 네트워크 혼잡 기간 동안 ECN 지원 패킷을 포워딩하여 패킷 손실을 줄입니다. (TCP는 패킷 드롭을 통해 혼잡에 대해 네트워크에 통보합니다.) 혼잡 기간 동안 ECN은 혼잡한 대기열에서 송신되는 ECN 지원 패킷을 표시합니다. 수신기가 혼잡을 경험하는 것으로 표시된 ECN 패킷을 수신하면 수신기는 혼잡 상태를 발신자에게 다시 반향합니다. 그런 다음 발신자는 혼잡을 지우기 위해 전송 속도를 줄입니다.
ECN은 기본적으로 비활성화됩니다. best-effort 트래픽에서 ECN을 활성화할 수 있습니다. ECN은 혼잡 통보를 위해 PFC(Priority-based flow control)를 사용하는 무손실 트래픽 큐에서 활성화되어서는 안되며, ECN은 엄격한 우선 순위의 트래픽 큐에서 활성화되어서는 안 됩니다.
출력 큐에서 ECN을 활성화하려면 큐 스케줄러에서 ECN을 활성화해야 할 뿐만 아니라 다음을 수행해야 합니다.
WRED 패킷 드롭 프로필을 구성합니다.
WRED 드롭 프로파일을 포함하고 ECN을 지원하는 큐 스케줄러를 구성합니다. (이 예에서는 ECN 및 드롭 프로파일 구성만 표시하며 스케줄러에서 대역폭, 우선 순위 및 버퍼 설정을 구성할 수도 있습니다.)
스케줄러 맵에서 큐 스케줄러를 포워딩 클래스(출력 큐)에 매핑합니다.
Junos OS 15.1부터 ETS(Enhanced Transmission Selection) 계층적 스케줄링이 지원됩니다. ETS(Enhanced Transmission Selection) 계층적 스케줄링을 사용하는 경우 포워딩 클래스 집합(우선 순위 그룹)에 포워딩 클래스를 추가하십시오.
ETS를 사용하는 경우 큐 스케줄러 맵을 트래픽 제어 프로파일(계층적 스케줄링을 위한 우선 순위 그룹 스케줄러)과 연결합니다.
ETS를 사용하는 경우 트래픽 제어 프로파일과 인터페이스에 설정된 포워딩 클래스를 적용하십시오. 이 인터페이스에서 출력 큐는 트래픽 제어 프로파일에 연결된 스케줄러 맵에 지정된 대로 포워딩 클래스에 매핑된 스케줄러를 사용합니다. 이를 통해 큐에서 ECN을 활성화하고 WRED 드롭 프로파일을 큐에 적용합니다.
포트 스케줄링을 사용하는 경우 스케줄러 맵을 인터페이스에 적용하십시오. 이 인터페이스에서 출력 큐는 스케줄러 맵의 포워딩 클래스에 매핑된 스케줄러를 사용하여 큐에서 ECN을 지원하고 WRED 드롭 프로필을 큐에 적용합니다.
표 1 에는 이 예의 구성 컴포넌트를 보여주고 있습니다.
구성 요소 |
설정 |
---|---|
하드웨어 |
QFX 시리즈 스위치 |
드롭 프로파일(2개의 채우기 레벨/드롭 확률 쌍) |
이름: |
스케줄러 |
이름: |
스케줄러 맵 |
이름:
참고:
기본적으로 포 |
포워딩 클래스 세트(ETS만 해당) |
이름: |
트래픽 제어 프로파일(ETS만 해당) |
이름: |
인터페이스(ETS만 해당) |
이름: |
인터페이스(포트 스케줄링 전용) |
이름: |
ETS 계층적 스케줄링을 지원하는 스위치만 포워딩 클래스 세트 및 트래픽 제어 프로파일 구성을 지원합니다. 직접 포트 스케줄링은 계층적 스케줄링 구조를 사용하지 않습니다.
QFX5100, EX4600, QFX3500 및 QFX3600 스위치와 QFabric 시스템에서는 WRED 드롭 프로파일이 ECN 지원되지 않는 트래픽의 패킷 드롭 동작(ECT가 아닌 패킷, ECN 비트 코드 00으로 표시)을 제어합니다.
QFX10000 스위치에서 ECN이 대기열에서 활성화되면 WRED 드롭 프로필은 ECN 임계값만 설정하며 비 ECN 패킷의 패킷 드롭을 제어하지 않습니다. ECN 지원 큐에서 QFX10000 스위치는 혼잡 기간 동안 비 ECN 패킷에서 tail-drop 알고리즘을 사용합니다. ECN을 활성화하지 않으면 큐가 WRED 패킷 드롭 메커니즘을 사용합니다.
구성
CLI 빠른 구성
드롭 프로파일을 신속하게 구성하고 ECN을 활성화한 스케줄러를 인터페이스의 출력 대기열에 매핑하려면 다음 명령을 복사하고, 텍스트 파일에 붙여넣기하고, 줄 바꿈을 제거하고, 네트워크 구성에 맞게 변수 및 세부 정보를 변경한 다음, 계층적 수준에서 CLI [edit]
에 명령을 복사 및 붙여넣습니다.
ETS 빠른 구성
[edit class-of-service] set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80 set schedulers be-sched explicit-congestion-notification set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp set schedulers be-sched transmit-rate percent 25 set schedulers be-sched buffer-size percent 25 set schedulers be-sched priority low set scheduler-maps be-map forwarding-class best-effort scheduler be-sched set forwarding-class-sets be-pg class best-effort set traffic-control-profiles be-tcp scheduler-map be-map set interfaces xe-0/0/20 forwarding-class-set be-pg output-traffic-control-profile be-tcp
포트 스케줄링 빠른 구성(QFX10000 스위치)
[edit class-of-service] set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80 set schedulers be-sched explicit-congestion-notification set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp set schedulers be-sched transmit-rate percent 25 set schedulers be-sched buffer-size percent 25 set schedulers be-sched priority low set scheduler-maps be-map forwarding-class best-effort scheduler be-sched set interfaces xe-0/0/20 scheduler-map be-map
ECN 구성
단계별 절차
ECN을 구성하려면 다음을 수행합니다.
WRED 패킷 드롭 프로파일
be-dp
을 구성합니다. 이 예에서는 드롭 시작점30
(%), 드롭 엔드 포인트75
(%), 최소 드롭 비율0
(%), 최대 드롭 비율80
(%)을 사용합니다.[edit class-of-service] user@switch# set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80
ECN을 지원하는 스케줄러
be-sched
를 생성하고 드롭 프로파일be-dp
을 스케줄러에 연결합니다.[edit class-of-service] user@switch# set schedulers be-sched explicit-congestion-notification user@switch# set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp user@switch# set be-sched transmit-rate percent 25 user be-sched transmit-rate percent 25 user@switch# set be-sched buffer-size percent 25 user@switch# set be-sched buffer-size percent 25 user@switch# set be-sched priority low
스케줄러 맵
be-map
을 사용하여 스케줄러be-sched
best-effort
를 포워딩 클래스(출력 큐 0)에 매핑:[edit class-of-service] user@switch# set scheduler-maps be-map forwarding-class best-effort scheduler be-sched
ETS를 사용하는 경우 포워딩 클래스 집합에 포워딩 클래스
best-effort
를be-pg
추가하십시오. 직접 포트 스케줄링을 사용하는 경우 다음 단계를 건너뛰십시오.[edit class-of-service] user@switch# set forwarding-class-sets be-pg class best-effort
ETS를 사용하는 경우 스케줄러 맵
be-map
을 트래픽 제어 프로파일be-tcp
과 연결합니다. 직접 포트 스케줄링을 사용하는 경우 다음 단계를 건너뛰십시오.[edit class-of-service] user@switch# set traffic-control-profiles be-tcp scheduler-map be-map
ETS를 사용하는 경우 트래픽 제어 프로파일
be-tcp
및 포워딩 클래스 세트를be-pg
best-effort 큐에서 ECN을 활성화하려는 인터페이스와 연결합니다.[edit class-of-service] user@switch# set interfaces xe-0/0/20 forwarding-class-set be-pg output-traffic-control-profile be-tcp
직접 포트 스케줄링을 사용하는 경우 스케줄러 맵
be-map
을 best-effort 큐에서 ECN을 활성화하려는 인터페이스와 연결합니다.[edit class-of-service] user@switch# set interfaces xe-0/0/20 scheduler-map be-map
확인
ECN이 활성화되었는지 검증
목적
스케줄러 맵be-map
에 대한 구성을 표시하여 ECN이 스케줄러 be-sched
에서 활성화되는지 확인합니다.
작업
운영 모드 명령을 show class-of-service scheduler-map be-map
사용하여 스케줄러 맵 구성을 표시합니다.
user@switch> show class-of-service scheduler-map be-map
Scheduler map: be-map, Index: 12240
Scheduler:be-sched, Forwarding class: best-effort, Index: 115
Transmit rate: 25 percent, Rate Limit: none, Buffer size: 25 percent,
Buffer Limit: none, Priority: low
Excess Priority: unspecified, Explicit Congestion Notification: enable
Drop profiles:
Loss priority Protocol Index Name
Low any 3312 be-dp
Medium-high any 1 <default-drop-profile>
High any 1 <default-drop-profile>
의미
show class-of-service scheduler-map
운영 명령은 스케줄러 맵과 연관된 스케줄러의 구성과 스케줄러에 매핑된 포워딩 클래스를 보여줍니다. 결과물은 다음을 보여줍니다.
스케줄러 맵과 연관된 스케줄러는 입니다
be-sched
.스케줄러 맵은 포워딩 클래스
best-effort
(출력 큐 0)에 적용됩니다.스케줄러는
be-sched
전송 속도25
(%), 큐 버퍼 크기25
(%) 및 드롭 우선 순위(drop priorit)를 가집니다low
.명시적 혼잡 알림 상태는 입니다
enable
.드롭 우선 순위가 낮은 트래픽에 사용되는 WRED 드롭 프로파일은 입니다
be-dp
.