gNOI 服务概述
Junos 设备支持本主题中概述的 gNOI 服务和 RPC。
gRPC 网络操作接口 (gNOI) 定义用于在网络设备上执行操作命令的服务。OpenConfig 在原型定义文件中定义每个服务的操作 (RPC) 和数据结构(消息)。包含 gNOI RPC 完整列表的原型文件位于 https://github.com/openconfig/gnoi 的 OpenConfig gNOI GitHub 存储库中。Junos 设备支持一部分服务和 RPC,如以下部分所述。
支持的服务概述
表 1 概述了 Junos 设备上支持的 gNOI 服务。该表列出了对给定版本的 proto 文件的支持开始的版本。
| 服务 | 发布起始支持 | 原型文件版本 |
|---|---|---|
|
|
Junos OS Evolved 版本 22.2R1 |
0.2.0 |
|
|
Junos OS Evolved 版本 22.2R1 |
0.1.0 |
|
|
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 |
|
|
Junos OS Evolved 版本 22.2R1 |
0.1.1 |
|
|
Junos OS Evolved 版本 22.2R1 |
1.0.0 |
证书管理服务
| RPC | 描述 | 在版本中引入 |
|---|---|---|
CanGenerateCSR() |
查询目标设备,以确定其是否可以生成具有指定密钥类型、密钥大小和证书类型的证书签名请求 (CSR)。支持的值:
如果 gNOI 服务器支持特定的密钥类型、密钥大小和证书类型,则返回 |
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 |
诊断(诊断)服务
| RPC | 描述 | 在版本中引入 |
|---|---|---|
StartBERT() |
在一组端口上启动 BERT。Junos 设备可针对 gNOI BERT 使用以下 PRBS 模式:
|
Junos OS 演化版 22.2R1 |
StopBert() |
在一组端口上停止正在进行的 BERT。 |
Junos OS 演化版 22.2R1 |
GetBERTResult() |
在 BERT 期间或完成后获取 BERT 结果。 |
Junos OS 演化版 22.2R1 |
文件服务
| RPC | 描述 | 在版本中引入 |
|---|---|---|
Get() |
从目标读取和流式传输文件的内容。 该文件由顺序消息流式传输,每条消息最多包含 64KB 的数据。在关闭包含发送数据哈希的流之前,会发送最后一条消息。如果文件不存在或读取文件时出错,则该操作将返回错误。 |
Junos OS 演化版 22.2R1 |
Put() |
将数据流式传输到目标上的文件。 该文件以顺序消息形式发送,每条消息最多包含 64KB 的数据。必须发送包含数据哈希的最终消息。 如果位置不存在或写入数据时出错,则该操作将返回错误。如果未收到校验和,目标将移除部分传输的文件。失败不会更改任何同名的现有文件。 |
Junos OS 演化版 22.2R1 |
Remove() |
从目标中删除指定的文件。如果文件不存在、文件路径解析为目录或删除操作遇到错误,则该操作将返回错误。 |
Junos OS 演化版 22.2R1 |
Stat() |
返回有关目标设备上文件的元数据。如果文件不存在或访问元数据时出错,则该操作将返回错误。 |
Junos OS 演化版 22.2R1 |
2 层服务
| RPC | 描述 | 在版本中引入 |
|---|---|---|
ClearLLDPInterface() |
清除指定接口的所有 LLDP 邻接方。 |
Junos OS 和 Junos OS Evolved 24.2R1 |
链路资格认证服务
| 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) 服务
| RPC | 描述 | 在版本中引入 |
|---|---|---|
Activate() |
设置下次重新启动时使用的软件版本。
注意:
Junos 设备不支持
注意:
在 Junos OS 演化版 25.2R1 之前, |
Junos OS 演化版 22.2R1 |
Install() |
将软件安装包传输到目标,根据软件验证配置,然后安装(暂存)软件。 如果设备上已安装指定的软件映像,请根据软件映像验证当前配置,并将经过验证的配置存储为与该软件版本关联的运行配置。
注意:
Junos 设备不支持
注意:
在 Junos OS 演化版 25.2R1 |
Junos OS 演化版 22.2R1 |
Verify() |
检查正在运行的软件版本。当目标启动时,可能会多次调用此 RPC,直到成功。
注意:
Junos 设备不支持 |
Junos OS 演化版 22.2R1 |
系统服务
系统服务(Ping 和 Traceroute)
| RPC | 描述 | 在版本中引入 |
|---|---|---|
Ping() |
对设备执行 Ping 操作。 默认数据包数:5 |
Junos OS 演化版 22.2R1 |
Traceroute() |
在目标设备上执行 traceroute 命令并流式传输结果。 默认跃点计数:30 |
Junos OS 演化版 22.2R1 |
系统服务(重新启动)
| RPC | 描述 | 在版本中引入 |
|---|---|---|
Reboot() |
重新启动目标。一次只能对目标执行一个重新启动请求。 您可以选择配置将来重新启动的延迟,单独重新启动子组件,并在重新启动时添加消息。延迟配置以纳秒为单位。 Junos 设备支持以下重新启动方法:
|
Junos OS 演化版 22.2R1 |
RebootStatus() |
返回重新启动的状态。 | Junos OS 演化版 22.2R1 |
CancelReboot() |
取消挂起的重启请求。 | Junos OS 演化版 22.2R1 |
系统服务(软件升级)
| RPC | 描述 | 在版本中引入 |
|---|---|---|
SetPackage() |
在目标设备上安装软件映像。 |
Junos OS 演化版 22.2R1 |
系统服务(路由引擎切换)
| RPC | 描述 | 在版本中引入 |
|---|---|---|
SwitchControlProcessor() |
从当前路由引擎切换到指定的路由引擎。如果当前路由引擎和指定的路由引擎相同,则为 NOOP。如果目标不存在,则 RPC 将返回错误。
注意:
Junos 设备不支持 |
Junos OS 演化版 22.2R1 |