Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

JET 개요

JET(Juniper Extension Toolkit)는 Junos 디바이스의 타사 애플리케이션 개발자를 위한 최신 프로그래밍 인터페이스를 제공합니다. 이 솔루션은 관리 및 컨트롤 플레인 기능을 사용자 지정할 수 있도록 주니퍼 네트웍스 Junos 운영체제(Junos OS) 및 진화한 Junos OS에 표준 기반 인터페이스를 제공하는 데 중점을 둡니다.

또한 JET에는 개발자가 온디바이스 JET 애플리케이션을 작성할 수 있도록 라이브러리 및 기타 도구와 함께 도구 체인이 포함되어 있습니다.

JET의 장점

  • 모든 Junos 디바이스와 상호 작용할 수 있는 API를 제공합니다.

  • 여러 언어로 API 개발을 지원합니다.

  • Junos 디바이스에서 실행되는 애플리케이션을 개발하기 위한 도구를 제공합니다.

  • JET 애플리케이션이 선택된 시스템 이벤트에 응답할 수 있도록 하는 이벤트 알림 방법을 사용합니다.

JET 아키텍처

JET는 개발자가 Junos OS 및 Junos OS Evolved의 기능을 확장하는 애플리케이션을 만들 수 있도록 지원하는 프레임워크입니다. 예를 들어, JET 애플리케이션은 애플리케이션별 상태를 표시하는 새로운 운영 명령을 추가하여 Junos CLI를 확장할 수 있습니다. JET 애플리케이션은 Junos 디바이스 또는 운영 환경의 다른 디바이스에서 실행할 수 있으며 네트워크를 통해 Junos 디바이스에 연결할 수 있습니다.

JET 애플리케이션은 표준 기반 전송 채널에서 요청-응답 및 알림 서비스를 통해 Junos OS 및 Junos OS Evolved와 상호 작용합니다. 그림 1 은 요청-응답 및 알림 서비스를 보여 줍니다.

그림 1: JET 요청-응답 및 알림 서비스 Diagram of Junos Extensible Toolkit architecture showing communication flow among JET apps, Junos kernel, and processes like RPD, DFWD, DCD, MGD using gRPC and MQTT protocols.

표 1에서는 요청-응답 및 알림 서비스에 대해 설명합니다.

표 1: JET 애플리케이션은 서비스를 통해 Junos OS와 상호 작용

서비스

묘사

요청-응답—애플리케이션은 요청을 발행하고 Junos OS의 응답을 기다릴 수 있습니다.

Junos OS에서 실행되는 JET 서비스 프로세스(jsd)는 요청-응답 서비스를 제공합니다. jsd가 요청을 수신하면(기본적으로 TCP 포트 32767에서) JET 애플리케이션을 서비스하기 위해 새 세션을 만듭니다. 클라이언트와 서버가 모두 작동 중이고 서로 통신하는 한 세션은 활성 상태로 유지됩니다. 세션의 수명 동안 jsd는 여러 API를 실행할 수 있습니다. JSD는 최대 8개의 활성 클라이언트 세션을 지원하고 이러한 세션에서 API를 병렬로 실행할 수 있습니다.

메모:

jsd와의 보안 통신을 위해 RSA 인증서, 특히 TLSv1.2(최소)를 사용합니다.

알림 - 애플리케이션은 Junos OS에서 발생하는 이벤트에 대한 비동기 알림을 수신할 수 있습니다.

JET는 게시-구독 기반 메시징 프로토콜과 알림 브로커를 제공합니다. JET 애플리케이션은 알림 브로커에 등록하고 메시지를 수신하기 위해 관심 있는 주제에 대해 브로커에 알릴 수 있습니다. 브로커는 메시지 주제에 따라 관심 있는 클라이언트에게 메시지를 배포하는 일을 담당합니다. Junos OS 프로세스는 이벤트(예: eventd)를 게시하고, 게시자로 브로커에 연결하고, 이벤트를 게시합니다.

JET는 MQTT(Message Queue Telemetry Transport) 프로토콜( https://mqtt.org/ 참조) 메서드를 사용하여 알림 서비스를 구현합니다.

JET 및 gRPC

JET는 RPC(원격 프로시저 호출)에 대한 gRPC 프레임워크를 지원합니다. JET는 요청-응답 서비스를 사용하도록 설정하는 메커니즘으로 언어 간 서비스에 gRPC를 사용합니다. 또한 gRPC는 프로그래밍 언어에 구애받지 않는 API를 정의하는 메커니즘을 제공합니다. 자세한 내용은 https://www.grpc.io/ 를 참조하십시오.