Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

On-Box Aggregation 개요

주니퍼 디바이스는 온박스 어그리게이션을 지원합니다. 인터페이스, CoS, MPLS, AF 및 AE 카운터가 디바이스에 의해 어그리게이션되고 디바이스는 텔레메트리 데이터를 수집기로 스트리밍합니다. 카운터가 컬렉터로 스트리밍되어 컬렉터에서 어그리게이션되는 오프박스 어그리게이션과 비교할 때 온박스 어그리게이션은 더 정확한 텔레메트리 데이터를 제공합니다. 또한 온박스 어그리게이션은 라인 카드 재설정 또는 LAG 멤버십 변경과 같은 시스템 이벤트를 인식합니다. 온박스 어그리게이션은 집진기에서 생산 오류를 줄입니다. 또한 데이터가 측정되는 특정 클라우드 기반 환경에서 전체 원격 분석 데이터 대역폭 사용률을 크게 줄입니다.

어그리게이션 로직

데이터 집계는 집계 모듈 프로세스에서 Google protobuf 메시지로 수신된 모든 패킷 포워딩 엔진 인스턴스에서 주어진 카운터 값을 간단히 추가하는 것입니다. 어그리게이션 모듈 프로세스는 수신된 구독 요청을 기반으로 여러 패킷 전달 엔진의 통계를 캐시합니다. 캐싱은 수신된 구독별로 수행됩니다.

데이터 집계에는 다음 사항이 적용됩니다.
  • 통계 데이터가 계기 유형인 경우 필드 값은 Average, Max 또는 Min이며 집계 모듈은 계기 유형 필드 값을 기준으로 집계 순서를 지정합니다.

  • 집계는 YANG 파일에 주석이 달린 카운터 및 게이지 데이터 유형 모두에 대해 수행됩니다.

  • 언제든지 캐시에서 사용할 수 있는 해당 패킷 포워딩 엔진에 대한 데이터 소스는 하나뿐입니다. 새 항목은 기존 캐시를 덮어씁니다.
  • 별도의 타이머가 데이터를 집계하거나 스트리밍하지 않습니다. 패킷 포워딩 엔진에서 샘플 데이터가 수신될 때마다 어그리게이션 및 스트리밍 시간은 이전에 전송된 어그리게이션 타임스탬프로 확인됩니다. 예를 들어:

  • 현재 타임스탬프 – 이전에 집계된 타임스탬프 > reporting_interval

  • 내보내기 타임스탬프는 집계된 데이터에 대한 타임스탬프 중앙값을 전달합니다.

  • na-grpcd 디먼의 레코드 캐싱은 구독이 유효한(활성) 동안에만 가능합니다. 구독이 비활성 상태이면 내보낸 집계된 텔레메트리 데이터가 라우팅 엔진 명령줄 인터페이스 통계와 일치하지 않을 수 있습니다. 다음 트리거로 인해 이러한 불일치가 발생할 수 있습니다.

    • 하위 멤버가 어그리게이션 인터페이스의 일부인 하나 이상의 FPC를 다시 시작합니다.

    • 집계 인터페이스에서 최대 n-1개의 하위 멤버(하나 이상의 하위 링크가 활성화됨) 삭제.

  • 마지막으로, 구독이 삭제되면 연결된 캐시도 삭제됩니다.

gNMI 또는 gRPC 스트림에서 라우팅 엔진의 첫 번째 간격이 여러 FPC로부터 하나의 샘플만 수신했을 수 있기 때문에 첫 번째 샘플은 집계된 통계 카운터 값을 포함하지 않을 수 있습니다. 그러나 두 번째 간격부터는 스트림이 모든 FPC에서 수신한 집계된 카운터 값을 포함합니다.

샘플 집계는 들어오는 샘플 중 하나를 기반으로 트리거됩니다. 그림 1에 표시된 샘플 S2가 지연됩니다. 이러한 지연으로 인해 A2 집계는 샘플의 중간 타임스탬프와 함께 이전 t0 샘플을 사용합니다. 이것은 t1'이라는 레이블이 지정됩니다(실제로는 t1이지만).

그림 1: 샘플 간격 Graph showing data aggregation over time with a dashed blue line and diamond markers. Orange line labeled Aggregated Stream connects points A1, A2, and A3. 집계

패킷 포워딩 엔진 데이터 내보내기

어그리게이션 기능은 기본적인 protobuf 기반 텔레메트리 인터페이스에 의존하여 패킷 포워딩 엔진에서 데이터를 내보냅니다. protobuf 기반 텔레메트리 스트림은 TelemetryStream (아래 참조)이라는 공통 최상위 봉투에 내보낼 데이터를 캡슐화합니다.

이 최상위 봉투는 combinator라는 작업에서 패킷 포워딩 엔진 통계 캐시를 구축하는 데 필요한 정보를 제공합니다. 결합자는 공통 인터페이스 ID와 대기열 ID를 가진 여러 데이터 인스턴스에서 논리적 조인을 수행하고 시스템 전체의 집계된 출력 대기열 통계를 생성합니다. 들어오는 모든 protobuf는 TelemetryStream protobuf의 센서, 구성 요소 및 패킷 포워딩 엔진 슬롯 필드를 사용하여 캐시로 구성됩니다. 결합자는 특정 센서에 대한 패킷 포워딩 엔진에서 최신 protobuf 내보내기를 캐싱하여 패킷 포워딩 엔진당 인스턴스 데이터를 추적합니다. 바이너리 protobuf를 집계 단위로 사용하면 protobuf 내에 포함된 각 카운터 컬렉션에 대한 캐싱 및 부기 오버헤드가 최소화됩니다.

패킷 전달 엔진에서 내보낸 텔레메트리 데이터의 타임스탬프는 집계 데이터 계산을 트리거합니다. 이전 집계 데이터 내보내기 이후의 경과 시간이 센서 새로 고침 간격을 초과하면 새 집계 값이 내보내집니다. 이 새 값은 집계된 값 내보내기를 트리거한 마지막 패킷 포워딩 엔진 샘플의 타임스탬프를 사용합니다. 이 방법을 사용하면 집계된 데이터를 얻기 위해 콤비네이터 내부에서 센서별 타이머를 실행할 필요가 없습니다. 또한 패킷 포워딩 엔진에서 마지막으로 수신된 데이터 내보내기를 캐싱하면 내보낸 집계 데이터의 "드리프트"가 최소화됩니다. 이는 지연된 패킷 포워딩 엔진 내보내기나 잠재적으로 패킷 포워딩 엔진에서 더 이상의 내보내기를 방해할 수 있는 운영 변경과 같은 경우에 특히 유용합니다.

집계된 데이터 샘플 식별

집계된 샘플은 값이 na-grpcd있는 헤더 필드 구성 요소로 식별할 수 있습니다. na-grpcd 데몬은 집계된 데이터를 생성합니다.

사용 팁

온박스 어그리게이션을 사용할 때 다음 사항을 고려하세요.

  • 패킷 및 바이트 속도 계산은 집계된 통계 타임스탬프 메시지를 기반으로 합니다. 타임스탬프 메시지는 하나의 라우팅 엔진에서 합성되지만 여러 FPC의 캐시된 데이터를 기반으로 하기 때문에 패킷 및 바이트 속도가 정확하지 않을 수 있습니다. 보고 간격 구성이 적절할 때 정확도가 더 높습니다(모범 사례 지침에 따라).

  • 패킷 전달 엔진에서 통계 메시지를 내보내지 않으면(예: 작동 상태가 다운됨) 집계 통계가 수집기로 내보내지지 않습니다.

  • AE 번들이 있는 텔레메트리 MPLS LSP 통계는 패킷 및 바이트 속도에서 5%의 편차를 가질 것으로 예상합니다.

지원되는 리소스 경로

온박스 어그리게이션은 다음과 같은 리소스 경로를 지원합니다.

  • /junos/시스템/라인 카드/인터페이스/트래픽/

  • /junos/system/linecard/interface/queue/

  • /junos/system/linecard/interface/logical/usage/

  • /junos/system/linecard/cos/interface/interface-set/output/queue/

  • /junos/services/label-switched-path/usage/

  • /qos/interfaces/interface/output/queues/queue/state/

  • /interfaces/interface/상태/카운터/

  • /interfaces/interface/subinterfaces/subinterface/state/counters/

  • /interfaces/interface/subinterfaces/subinterface/ipv4/state/counters/

  • /interfaces/interface/subinterfaces/subinterface/ipv6/state/counters/

  • /네트워크 인스턴스/네트워크 인스턴스/mpls/lsps/constrained-path/tunnels/tunnel/state/counters/

  • /junos/system/linecard/interface/queue/(CoS 네이티브 리소스 경로)

  • /junos/system/linecard/qmon-sw/(CoS 네이티브 리소스 경로)

  • /qos/interfaces/interface/output/queues/queue/state/ (CoS OpenConfig 리소스 경로)

  • /qos/interfaces/interface/input/virtual-output-queues/voq-interface/queues/queue/state/(CoS OpenConfig 리소스 경로)

  • /junos/system/linecard/interface/queue/(물리적 인터페이스 통계를 위한 기본 경로, 지원되는 AE 인터페이스)

  • /qos/interfaces/interface/output/queues/queue/state/ ( AE 인터페이스 지원)

리소스 경로, 지원되는 리프 및 이를 지원하는 디바이스 플랫폼에 대한 자세한 내용은 Junos YANG 데이터 모델 탐색기 를 참조하십시오.

변경 내역 표

기능 지원은 사용 중인 플랫폼과 릴리스에 따라 결정됩니다. 기능 탐색기 를 사용하여 플랫폼에서 기능이 지원되는지 확인하세요.

석방
묘사
23.2R1
Junos OS 릴리스 23.2R1부터 인터페이스, CoS, MPLS 및 어그리게이션 이더넷 카운터에서 온박스 어그리게이션이 지원됩니다. 지원되는 플랫폼에는 MX150, MX204, MX240, MX304, MX480, MX960, MX2008, MX2010, MX2020, MX10003, MX10004, MX10008, MX10016, vMX가 포함됩니다.