Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Junos OS CoS 프로세스를 통한 패킷 플로우 개요

CoS를 Junos OS 파악하는 가장 좋은 방법은 CoS 프로세스를 통해 패킷이 어떻게 처리되는지 검토하는 것입니다. 이 주제에는 각 단계에 대한 설명과 프로세스를 보여주는 그림이 포함되어 있습니다.

다음 단계는 CoS 프로세스에 대해 설명합니다.

  1. 논리적 인터페이스에는 (계층 수준에서) [edit class-of-service interfaces] 서로 다른 유형의 한 개 이상의 분류자가 적용됩니다. 분류자 유형은 분류자가 검사하는 수신 패킷의 어떤 부분(예: EXP 비트, IEEE 802.1p 비트 또는 DSCP 비트)을 기반으로 합니다. 변환 테이블을 사용하여 수신에서 이러한 비트의 값을 다시 작성할 수 있습니다.

    참고:

    IQE PIC를 탑재한 주니퍼 네트웍스 M40e, M120, M320 멀티서비스 에지 라우터 및 T 시리즈 코어 라우터에서 수신에 대해 이러한 비트의 값만 재작성할 수 있습니다. 수신 시 이러한 비트의 값을 다시 쓰는 것에 대한 자세한 내용은 ToS 변환 테이블 구성을 참조하십시오.

  2. 분류자는 패킷을 포워딩 클래스에 할당하고 손실 우선순위( [edit class-of-service classifiers] 계층 수준에서)를 할당합니다.

  3. 각 포워딩 클래스는 (계층 수준에서) 대기열에 [edit class-of-service forwarding-classes] 할당됩니다.

  4. 입력(및 출력) 폴리서는 트래픽을 측정하고 트래픽 플로우가 서비스 수준을 초과할 경우 포워딩 클래스 및 손실 우선순위를 변경할 수 있습니다.

  5. 물리적 또는 논리적 인터페이스에는 (계층 수준에서) 스케줄러 맵이 [edit class-of-service interfaces] 적용되어 있습니다.

    [edit class-of-service interfaces] 계층 수준에서 scheduler-maprewrite-rules 문은 나가는 패킷에 영향을 미치고 문은 classifiers 수신 패킷에 영향을 미칩니다.

  6. 스케줄러는 출력 대기열에서 트래픽이 처리되는 방식을 정의합니다(예: 전송 속도, 버퍼 크기, 우선 순위, 드롭 프로파일( [edit class-of-service schedulers] 계층 수준에서).

  7. 스케줄러 맵은 (계층 수준에서) 각 포워딩 클래스에 스케줄러를 [edit class-of-service scheduler-maps] 할당합니다.

  8. drop-profile은 특정 스케줄러를 사용하는 패킷을 (계층 수준에서) [edit class-of-service drop-profiles] 드롭하는 방법을 적극적으로 정의합니다.

  9. 패킷이 (계층 수준에서) 구성된 재작성 규칙이 있는 논리적 인터페이스를 떠날 때 재작성 규칙이 효력을 [edit class-of-service rewrite-rules] 발생합니다. 재작성 규칙은 패킷의 포워딩 클래스 및 손실 우선순위에 따라 패킷(예: EXP 또는 DSCP 비트)에 정보를 기록합니다.

그림 1그림 2 는 Junos OS CoS 기능의 구성 요소를 보여주며, 이들이 상호 작용하는 시퀀스를 보여줍니다.

그림 1: CoS 분류자, 대기열 및 스케줄러 CoS Classifier, Queues, and Scheduler
그림 2: CoS 구성 요소를 Packet Flow Through CoS- Configurable Components 통한 패킷 플로우

그림 2의 각 외부 상자는 프로세스 구성 요소를 나타냅니다. 상위 행의 구성 요소는 인바운드 패킷에 적용되며, 하위 행의 구성 요소는 아웃바운드 패킷에 적용됩니다. 단선이 있는 화살표는 패킷 플로우 방향을 가리킵니다.

미들 박스(포워딩 클래스 및 손실 우선 순위)는 프로세스 구성 요소의 입력 또는 출력이 될 수 있는 두 가지 데이터 값을 나타냅니다. 점선이 있는 화살표는 입력 및 출력(또는 설정에 기반한 설정 및 작업)을 나타냅니다. 예를 들어, 멀티필드 분류기는 수신 패킷의 포워딩 클래스 및 손실 우선순위를 설정합니다. 즉, 포워딩 클래스 및 손실 우선순위는 분류자의 출력입니다. 따라서 화살표는 분류자에서 멀어지게 됐습니다. 스케줄러는 포워딩 클래스 및 손실 우선 순위 설정을 수신하고 해당 설정에 따라 발신 패킷을 대기열에 연결합니다. 즉, 포워딩 클래스 및 손실 우선 순위는 스케줄러에 대한 입력입니다. 따라서 화살표는 스케줄러를 가리킵니다.

일반적으로 일부 구성 요소 조합(전부는 아님)만 CoS 서비스 오퍼링을 정의하는 데 사용됩니다.

라우터 내의 패킷 플로우 개요

주니퍼 네트웍스 라우터의 아키텍처는 상세하게 다르지만 라우터 내의 패킷의 전체적인 플로우는 일관성을 유지합니다.

패킷이 주니퍼 네트웍스 라우터에 들어가면 패킷을 수신하는 PIC 또는 기타 인터페이스 유형이 네트워크에서 패킷을 검색하고 링크 레이어 정보가 유효한지 확인합니다. 그런 다음 패킷은 FPC(Flexible PIC Concentrator)와 같은 Concentrateor 디바이스로 전달되며, 여기서 데이터 링크 및 네트워크 레이어 정보가 확인됩니다. 또한 FPC는 패킷을 J 셀이라는 64바이트 단위로 분할할 책임이 있습니다. 그런 다음 알림 셀이 경로 조회 엔진으로 전송되는 동안 이러한 셀은 패킷 스토리지 메모리로 작성됩니다. 알림 셀에 나열된 대상 주소는 포워딩 테이블 있으며 패킷의 다음 홉은 결과 셀에 기록됩니다. 발신 인터페이스가 패킷을 전송할 준비가 될 때까지 이 결과 셀은 적절한 아웃바운드 FPC에서 대기됩니다. 그런 다음 FPC는 메모리에서 J 셀을 읽고 원래 패킷을 다시 형성하고 패킷을 나가는 PIC로 전송하여 네트워크로 다시 전송합니다.