gNOI 服务概述
总结 Junos 设备支持本主题中概述的 gNOI 服务和 RPC。
gRPC 网络操作接口 (gNOI) 定义了在网络设备上执行操作命令的服务。OpenConfig 在 proto 定义文件中定义每项服务的操作 (RPC) 和数据结构(消息)。包含 gNOI RPC 完整列表的 proto 文件位于 https://github.com/openconfig/gnoi 的 OpenConfig gNOI GitHub 存储库中。Junos 设备支持服务和 RPC 的子集,如下几节所述。
受支持的服务概述
表 1 概述了 Junos 设备支持的 gNOI 服务。下表列出了支持从给定版本的 proto 文件开始的版本。
服务 | 版本开始支持 | Proto 文件版本 |
---|---|---|
|
Junos OS 演化版 22.2R1 |
0.2.0 |
|
Junos OS 演化版 22.2R1 |
0.1.0 |
|
Junos OS 演化版 22.2R1 |
0.1.0 |
|
Junos OS 演化版 22.2R1 |
0.1.1 |
|
Junos OS 演化版 22.2R1 |
1.0.0 |
证书管理服务
版本中引入的 | RPC | 说明 |
---|---|---|
CanGenerateCSR() |
查询目标设备,以确定设备是否可以生成具有指定密钥类型、密钥大小和证书类型的证书签名请求 (CSR)。支持的值:
|
Junos OS Evolved 23.1R1 |
GenerateCSR() |
生成并返回证书签名请求 (CSR)。 |
Junos OS Evolved 22.2R1 |
GetCertificates() |
返回目标设备上加载的本地证书。 |
Junos OS Evolved 22.2R1 |
Install() |
在目标设备上加载新证书,具体方式是创建 CSR 请求,基于 CSR 生成证书,然后使用新证书 ID 加载证书。 |
Junos OS Evolved 22.2R1 |
LoadCertificate() |
在目标设备上加载由证书颁发机构 (CA) 签署的证书。 |
Junos OS Evolved 22.2R1 |
LoadCertificateAuthorityBundle() |
在目标设备上加载 CA 证书包。 |
Junos OS Evolved 22.2R1 |
RevokeCertificates() |
撤销目标设备上具有指定证书 ID 的证书。 |
Junos OS Evolved 23.1R1 |
Rotate() |
通过创建 CSR 请求,生成基于 CSR 的证书,并使用现有证书 ID 加载证书,来替换目标设备上的现有证书。 |
Junos OS Evolved 22.2R1 |
诊断 (Diag) 服务
版本中引入的 | RPC | 说明 |
---|---|---|
StartBERT() |
在一组端口上启动 BERT。Junos 设备支持以下 PRBS 模式用于 GNOIBERT:
|
Junos OS Evolved 22.2R1 |
StopBert() |
在一组端口上阻止已经正在进行的 BERT。 |
Junos OS Evolved 22.2R1 |
GetBERTResult() |
在 BERT 期间或完成之后获取 BERT 结果。 |
Junos OS Evolved 22.2R1 |
文件服务
版本中引入的 | RPC | 说明 |
---|---|---|
Get() |
从目标读取和流传输文件的内容。 该文件由连续消息流传输,每条消息包含多达 64KB 的数据。在关闭包含已发送数据的散列流之前发送最后一条消息。如果文件不存在或读取文件时出错,操作将返回错误。 |
Junos OS Evolved 22.2R1 |
Put() |
将数据流式传输到目标上的文件。 该文件以顺序消息发送,每条消息包含多达 64KB 的数据。必须发送包含数据散列的最终消息。 如果位置不存在或写入数据时出错,则操作将返回错误。如果未收到任何校验和,目标将移除部分传输的文件。故障不会改变任何同名现有文件。 |
Junos OS Evolved 22.2R1 |
Remove() |
从目标中移除指定的文件。如果文件不存在、文件路径解析到某个目录,或者删除操作遇到错误,则操作将返回错误。 |
Junos OS Evolved 22.2R1 |
Stat() |
返回有关目标设备上的文件的元数据。如果文件不存在,或者访问元数据时出错,则操作将返回错误。 |
Junos OS Evolved 22.2R1 |
操作系统 (OS) 服务
版本中引入的 | RPC | 说明 |
---|---|---|
Activate() |
设置下次重新启动时使用的操作系统版本。
注意:
Junos 设备不支持 |
Junos OS Evolved 22.2R1 |
Install() |
将软件映像传输到目标上。
注意:
Junos 设备不支持 |
Junos OS Evolved 22.2R1 |
Verify() |
检查运行的操作系统版本。此 RPC 可能会在目标启动时多次调用,直至成功。
注意:
Junos 设备不支持 |
Junos OS Evolved 22.2R1 |
系统服务
系统服务(Ping 和 Traceroute)
版本中引入的 | RPC | 说明 |
---|---|---|
Ping() |
Ping 设备。 默认数据包数:5 |
Junos OS Evolved 22.2R1 |
Traceroute() |
在目标设备上执行 traceroute 命令并回流式传输结果。 默认跃点计数:30 |
Junos OS Evolved 22.2R1 |
系统服务(重新启动)
版本中引入的 | RPC | 说明 |
---|---|---|
Reboot() |
重新启动目标。一次只能对目标执行一次重新启动请求。 您可以选择配置将来重新启动的延迟,单独重新启动子组件,并在重新启动开始时添加消息。以纳秒为单位配置延迟。 Junos 设备支持以下重新启动方法:
|
Junos OS Evolved 22.2R1 |
RebootStatus() |
返回重新启动的状态。 | Junos OS Evolved 22.2R1 |
CancelReboot() |
取消悬而未决的重新启动请求。 | Junos OS Evolved 22.2R1 |
系统服务(软件升级)
版本中引入的 | RPC | 说明 |
---|---|---|
SetPackage() |
在目标设备上安装软件映像。 |
Junos OS Evolved 22.2R1 |
系统服务(路由引擎切换)
版本中引入的 | RPC | 说明 |
---|---|---|
SwitchControlProcessor() |
从当前路由引擎切换到指定的路由引擎。如果当前和指定的路由引擎相同,则为 NOOP。如果目标不存在,RPC 将返回错误。
注意:
Junos 设备不支持 |
Junos OS Evolved 22.2R1 |