Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

gNOI 服务概述

Junos 设备支持本主题中概述的 gNOI 服务和 RPC。

gRPC 网络操作接口 (gNOI) 定义用于在网络设备上执行操作命令的服务。OpenConfig 在原型定义文件中定义每个服务的操作 (RPC) 和数据结构(消息)。包含 gNOI RPC 完整列表的原型文件位于 https://github.com/openconfig/gnoi 的 OpenConfig gNOI GitHub 存储库中。Junos 设备支持一部分服务和 RPC,如以下部分所述。

支持的服务概述

表 1 概述了 Junos 设备上支持的 gNOI 服务。该表列出了对给定版本的 proto 文件的支持开始的版本。

表 1:支持的 gNOI 服务
服务 发布起始支持 原型文件版本

CertificateManagement

Junos OS Evolved 版本 22.2R1

0.2.0

Diag

Junos OS Evolved 版本 22.2R1

0.1.0

File

Junos OS Evolved 版本 22.2R1

0.1.0

Layer2

Junos OS 和 Junos OS 演化版 24.2R1

0.1.0
LinkQualification Junos OS 演化版 25.2X100D20 1.1.0

OS

Junos OS Evolved 版本 22.2R1

0.1.1

System

Junos OS Evolved 版本 22.2R1

1.0.0

证书管理服务

表 2:支持的 cert.proto RPC
RPC 描述 在版本中引入
CanGenerateCSR()

查询目标设备,以确定其是否可以生成具有指定密钥类型、密钥大小和证书类型的证书签名请求 (CSR)。支持的值:

  • 密钥类型:KT_RSA

  • 密钥尺寸:1024、2048、4096

  • 证书类型:CT_X509

如果 gNOI 服务器支持特定的密钥类型、密钥大小和证书类型,则返回 True

Junos OS 演化版 23.1R1

GenerateCSR()

生成并返回证书签名请求 (CSR)。

Junos OS 演化版 22.2R1

GetCertificates()

返回目标设备上加载的本地证书。

Junos OS 演化版 22.2R1

Install()

通过创建 CSR 请求,基于 CSR 生成证书并使用新证书 ID 加载证书,在目标设备上加载新证书。

Junos OS 演化版 22.2R1

LoadCertificate()

在目标设备上加载由证书颁发机构 (证书颁发机构) 签名的证书。

Junos OS 演化版 22.2R1

LoadCertificateAuthorityBundle()

在目标设备上加载 证书颁发机构证书包。

Junos OS 演化版 22.2R1

RevokeCertificates()

撤销目标设备上具有指定证书 ID 的证书。

Junos OS 演化版 23.1R1

Rotate()

创建 CSR 请求,基于 CSR 生成证书,并使用现有证书 ID 加载证书,以替换目标设备上的现有证书。

Junos OS 演化版 22.2R1

诊断(诊断)服务

表 3:支持的 diag.proto RPC
RPC 描述 在版本中引入
StartBERT()

在一组端口上启动 BERT。Junos 设备可针对 gNOI BERT 使用以下 PRBS 模式:

  • PRBS7
  • PRBS9
  • PRBS15
  • PRBS23
  • PRBS31

Junos OS 演化版 22.2R1

StopBert()

在一组端口上停止正在进行的 BERT。

Junos OS 演化版 22.2R1

GetBERTResult()

在 BERT 期间或完成后获取 BERT 结果。

Junos OS 演化版 22.2R1

文件服务

表 4:支持的 file.proto RPC
RPC 描述 在版本中引入
Get()

从目标读取和流式传输文件的内容。

该文件由顺序消息流式传输,每条消息最多包含 64KB 的数据。在关闭包含发送数据哈希的流之前,会发送最后一条消息。如果文件不存在或读取文件时出错,则该操作将返回错误。

Junos OS 演化版 22.2R1

Put()

将数据流式传输到目标上的文件。

该文件以顺序消息形式发送,每条消息最多包含 64KB 的数据。必须发送包含数据哈希的最终消息。

如果位置不存在或写入数据时出错,则该操作将返回错误。如果未收到校验和,目标将移除部分传输的文件。失败不会更改任何同名的现有文件。

Junos OS 演化版 22.2R1

Remove()

从目标中删除指定的文件。如果文件不存在、文件路径解析为目录或删除操作遇到错误,则该操作将返回错误。

Junos OS 演化版 22.2R1

Stat()

返回有关目标设备上文件的元数据。如果文件不存在或访问元数据时出错,则该操作将返回错误。

Junos OS 演化版 22.2R1

2 层服务

表 5:支持的 layer2.proto RPC
RPC 描述 在版本中引入
ClearLLDPInterface()

清除指定接口的所有 LLDP 邻接方。

Junos OS 和 Junos OS Evolved 24.2R1

链路资格认证服务

表 6:支持的 LinkQualification RPC
RPC 描述 在版本中引入
Capabilities‎()

返回设备是否满足执行测试的要求。

Junos OS 演化版 25.2X100D20

Create()

在一组接口上启动 PBLQ 测试。

Junos OS 演化版 25.2X100D20

Get()

返回测试结果。

Junos OS 演化版 25.2X100D20

List()

列出可用于指定接口的测试结果。

Junos OS 演化版 25.2X100D20

Delete()

删除指定的测试及其结果。如果测试正在进行中,此 RPC 将取消测试,然后删除测试。

Junos OS 演化版 25.2X100D20

操作系统 (OS) 服务

表 7:支持的 os.proto RPC
RPC 描述 在版本中引入
Activate()

设置下次重新启动时使用的软件版本。

Activate()如果省略该标志或设置为 False,则no_reboot重新启动目标。如果重新启动无法启动请求的软件版本,目标将回滚到之前的版本。

注意:

Junos 设备不支持 standby_supervisor 消息中的 ActivateRequest 字段。

注意:

在 Junos OS 演化版 25.2R1 之前, Activate() 可根据软件验证当前配置,安装软件,并将软件版本设置为下一个启动版本。

Junos OS 演化版 22.2R1

Install()

将软件安装包传输到目标,根据软件验证配置,然后安装(暂存)软件。

如果设备上已安装指定的软件映像,请根据软件映像验证当前配置,并将经过验证的配置存储为与该软件版本关联的运行配置。

注意:

Junos 设备不支持 standby_supervisor 消息中的 TransferRequest 字段。

注意:

在 Junos OS 演化版 25.2R1 Install() 之前,仅会将软件安装包传输到目标。

Junos OS 演化版 22.2R1

Verify()

检查正在运行的软件版本。当目标启动时,可能会多次调用此 RPC,直到成功。

注意:

Junos 设备不支持 verify_standby VerifyResponse。

Junos OS 演化版 22.2R1

系统服务

系统服务(Ping 和 Traceroute)

表 8:支持用于网络故障排除的 system.proto RPC
RPC 描述 在版本中引入
Ping()

对设备执行 Ping 操作。 Ping() RPC 支持 IPv4 和 IPv6 ping。此 RPC 在 ping 完成后流式传输回 ping 的结果。

默认数据包数:5

Junos OS 演化版 22.2R1

Traceroute()

在目标设备上执行 traceroute 命令并流式传输结果。

默认跃点计数:30

Junos OS 演化版 22.2R1

系统服务(重新启动)

表 9:支持用于重新启动的 system.proto RPC
RPC 描述 在版本中引入
Reboot()

重新启动目标。一次只能对目标执行一个重新启动请求。

您可以选择配置将来重新启动的延迟,单独重新启动子组件,并在重新启动时添加消息。延迟配置以纳秒为单位。

Junos 设备支持以下重新启动方法:

  • 冷 (1)

  • 掉电 (2)

  • 暂停 (3)

  • 加电 (7)

Junos OS 演化版 22.2R1

RebootStatus() 返回重新启动的状态。

Junos OS 演化版 22.2R1

CancelReboot() 取消挂起的重启请求。

Junos OS 演化版 22.2R1

系统服务(软件升级)

表 10:支持用于软件升级的 system.proto RPC
RPC 描述 在版本中引入
SetPackage()

在目标设备上安装软件映像。

Junos OS 演化版 22.2R1

系统服务(路由引擎切换)

表 11:支持用于路由引擎切换的 system.proto RPC
RPC 描述 在版本中引入
SwitchControlProcessor()

从当前路由引擎切换到指定的路由引擎。如果当前路由引擎和指定的路由引擎相同,则为 NOOP。如果目标不存在,则 RPC 将返回错误。

注意:

Junos 设备不支持control_processor SwitchControlProcessorResponse

Junos OS 演化版 22.2R1