前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OSEK直接网络管理(三)

OSEK直接网络管理(三)

作者头像
xbai921031
发布2022-05-25 15:25:56
9360
发布2022-05-25 15:25:56
举报

1.NM参数

图1 NM参数

以上这些参数都是存储在非易失性存储器里面,也可通过诊断节点进行修改。

2.网络状态

图2 网络状态编码

还有一个扩展的网络状态,这部分由用户自定义。

3.配置管理

直接网络管理节点监测基于分散式的配置管理,各个过程可以用一个状态转换图来描述。这种算法可用于:

  • 常规NM通信,例如,根据通信序列传输ring消息
  • 非常规NM通信,例如,启动和limphome/failure模式

4.监测计数器

根据计数器的数值可以确定节点是否可操作。

5.状态转换图(NMAwake)

OSEK NM(NMAwake)的基本状态有:

  • NMReset
  • NMNormal
  • NMLimpHome

(1)NMReset

在NMReset状态,节点在网络里通知其存在,开始发送alive消息,NM状态转换至NMNormal状态。

(2)NMNormal

在这个状态下,NM开始周期性地使ring消息在节点之间传送,间隔时间为TTyp(参见图1)。如果有节点无法接收或者传送任何NM消息,则进入NMLimpHome状态。

(3)NMLimpHome

在这个状态下,NM使节点通过发送LimpHome消息来通知网络的LimpHome状态,两个LimpHome消息之间的时间间隔为TError(参见图1)。直到节点可以正常发送并且接收其他节点发来的消息时为止。

图3 NM(NMAwake)状态转换示意图

  • NMrxcount

用来监测接收消息是否出错,如果接收到上一个节点的ring消息,这个计数器会清零。

  • NMtxcount

用来监测发送消息是否出错,如果节点正常发送NM消息,这个计数器会清零。

6.NMNormal状态下逻辑环 瞬态->稳态 转换示例

假设最初在逻辑环中有两个节点,编号为1和2,起初这两个节点组成一个“稳定”的逻辑环结构,下面引入以下两种场景:

(1)在网络中动态增加一个新的节点,编号为3

(2)故障出现导致编号为1的节点从逻辑环中消失

图4 逻辑环增减节点示意

(1)属于一个“稳态”的逻辑环结构,ring消息在节点1和节点2之间来回传递,以表示网络处于正常状态;

(2)这时候来一个新的节点3表示要加入网络,节点3发送一个alive消息,这时节点2将ring消息传递给节点3,节点3将ring消息传回给节点2,这时候就发现节点1被跳过了,节点1发一个alive消息表示自己还在网络里;

(3)节点1发送alive消息后,节点3将ring消息传递给节点1,然后节点1重新加入逻辑环,三个节点按照1->2->3->1的顺序循环进行ring消息的传递;

(4)故障出现,节点1在逻辑环中消失;

(5)进入逻辑环“瞬态”,节点2向节点3发送ring消息;

(6)进入逻辑环“稳态”,节点2和节点3循环进行ring消息的传送。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击的程序喵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档