当前位置: 首页 > article >正文

【OMCI实践】【案例分享】通过OLT升级ONT未自动重启问题分析

引言

通过OLT升级ONT是一种常见维护操作,是不少运营商的ONT入网测试的必测项目。近期开发反馈一款ONT在客户的OLT环境通过omci升级未成功,需要手动重启才切换到目标软件。经过排查最终确认,在下载版本后ONT上报的版本号不正确,OLT误判断版本文件未正确下载,于是没有下发激活版本的操作,导致升级不成功。

抓取升级过程的omci消息,发现OLT下载版本文件后,并没有下发激活版本的操作,导致升级未完成需要手动重启。进一步分析发现,在下载版本后ONT上报的版本号不正确,导致OLT没有下发激活版本的操作。

故障现象

现象1:OLT下发升级指令后,提示升级失败;

现象2:从客户提供的串口日志看,固件已经下载并写到ONT的flash,固件校验没有报错,不过写完后并没有自动重启;

现象3:手动重启后,ONT显示运行版本是升级的目标版本

总的来说,ONT的固件已经完整下载并成功写到flash,问题卡在ONT没有自动重启完成升级操作。

分析排查

OLT升级ONT版本,根据OMCI消息可以分以下五步:

1)OLT下发Start Software Download 操作,告知ONT要开始下载版本文件;ONT回复确认;

2)OLT通过Download Section操作下载版本;

3)OLT下发 End Software Download 操作,告知ONT结束下载版本;ONT回复确认;

4)OLT下发Get操作,获取ONT的备版本信息;ONT回复备版本信息,即刚刚下载的版本;

5)OLT下发Activate Software 操作,让ONT切换到备版本;ONT回复确认,然后开始重启并切换到备版本,完成升级操作。

根据ONT重启后切换到目标版本,说明固件已经完整地下载到ONT,升级的步骤3已经完成,问题可能在步骤4和步骤5.

抓取升级过程的omci报文,发现omci报文交互只到了步骤4,ONT回复备版本信息后,OLT没有下发Activate Software 操作

检查ONT回复版本信息的消息,发现version字段末尾含有“2024”异常字节,ONT的版本号中没有这两个字节。

software image受管实体的Version字段的长度是14字节,即版本号最大支持14个字符,当版本号长度小于14时,末尾用0填充。

至此,可以确认ONT在下载版本后,上报错误的版本号给OLT,OLT发现跟升级的目标版本不一致,终止升级过程,没有下发激活版本的操作。

解决效果

开发更新版本解决ONT上报错误版本号的问题后,重新升级抓取omci报文,可以看到OLT会下发Activate Software 操作,随后ONT自动重启,切换到目标升级版本。


[OMCI实践]7360 OLT局端升级ONT的OMCI交互过程-CSDN博客


原创不易,你的支持是我最大的动力,欢迎大家点赞,收藏,关注!


http://www.kler.cn/a/594040.html

相关文章:

  • LeetCode 热题 100_跳跃游戏 II(79_45_中等_C++)(贪心算法)
  • LeeCode题库第五十八题
  • 信号的捕捉(操作部分)
  • C#从入门到精通(1)
  • yarn install 出现certificate has expired报错问题
  • 算法题(102):八皇后
  • centos7/8/9安装dockerdocker-compose
  • 车载以太网网络测试-17【传输层-TCP】
  • 理想发布的下一代自动驾驶架构MindVLA是什么?
  • 【HarmonyOS Next之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(七) -> JS动画(二)
  • 进程地址空间(上)【Linux】
  • prompt工程
  • 【LangChain入门 4 Prompts组件】提示词追加示例 FewShotPromptTemplate和示例选择器ExampleSelector
  • docker部署dify
  • xss-labs第八、九关卡以及XSS GAME的Ok,Boomer关卡
  • uniapp中的vue组件与组件使用差异
  • 如何使用webpack预加载 CSS 中定义的资源和预加载 CSS 文件
  • 微分方程求解及推导过程
  • 微软Data Formulator:用AI重塑数据可视化的未来
  • 联想拯救者触摸板会每次开机都自动关闭、联想笔记本触摸板关闭、笔记本电脑触摸板自动关闭的解决方法