基于CAN的网络管理(network management) - 张丁的文章 - 知乎
https://zhuanlan.zhihu.com/p/45226069@TOC
车载网络总线管理的目的是使网络中的ECU节点有序地睡眠和唤醒,在没有通信需求的时候睡眠,可以节约电池的能量。

CAN总线上的网络管理,是一种无中心式的网络管理,网络中的每个节点都依赖于自己和别人的网络管理报文(NM PDU)来实现通信的睡眠和唤醒,这个NM PDU是周期性发送的,对于每个ECU来说,收到别的ECU发送的NM PDU则意味着当前的网络有通信需求,自己发出NM PDU则是告知别的ECU自己有通信需求。如果某个ECU打算进入Bus-Sleep-Mode,它就会通止发送NM PDU,在进入Bus-Sleep-Mode之前会有一段延时,如果在这段延时中没有收到任何NM PDU,则它就会转入Bus-Sleep-Mode状态了。

AUTOSAR中定义的网络管理PDU
上图定义了NM PDU的格式,byte 0标识ECU的节点地址,byte 1是控制信息。

CAN NM为ECU的网络管理定义了三种模式(Mode):

Bus-Sleep Mode
Prepare Bus-Sleep Mode
Network Mode
最后的Network Mode又分为三个状态(state),

Repeat Message State
Normal Operation State
Ready Sleep State
CAN总线上的网络管理的核心,就是ECU在这3种模式和3个状态之间的转换的状态机。

基于CAN的网络管理中ECU的NM状态机
跟着状态机走一遍,就会对这个过程有比较直观的了解了。

ECU最初处于Bus-Sleep Mode中,当它有了通信需求(比如接收其他ECU的NM报文,或者它的逻辑功能要求自己唤醒,比如车门控制器收到了遥控钥匙的信号),它就会进入Network Mode,Repeat Message状态是Network Mode的入口状态,到达这个状态之后,ECU会启动一个Repeat Message Timer,在这个Timer定义的时间内,ECU会一直处于Repeat Message状态。当这个timer结束后,如果有通信需求,ECU则进入Normal Operation状态,如果没有通信需求,则进入Ready Sleep 状态。Normal Operation状态就是ECU正常运行的状态,此时它的应用报文和NM报文都会正常收发。当ECU没有通信需求,它会瞬间进入Ready Sleep状态,在Ready Sleep中,如果又出现了通信需求,ECU则瞬间再回复到Normal Operation,如果在一个Timeout Timer中一直没有通信需求,ECU就进入Prepare Bus-Sleep Mode,在Prepare Bus-Sleep状态中,也会启动一个Timeout Timer,如果在这段时间内有了通信需求,ECU又会立即回到Repeat Message状态,如果过了这个timer还没有通信需求,则ECU会回到Bus-Sleep Mode中。

综上所述,ECU网络管理的实现的核心就是实现这个状态机,在AUTOSAR中,这些状态之间的跳变就是由AUTOSAR定义的各种接口函数实现的。

发布于 2018-09-24

基于CAN的网络管理相关推荐

  1. 基于CAN的网络管理NM(network management)

    感谢分享: https://zhuanlan.zhihu.com/p/45226069 车载网络总线管理的目的是使网络中的ECU节点有序地睡眠和唤醒,在没有通信需求的时候睡眠,可以节约电池的能量. C ...

  2. 基于SNMP的网络管理软件的使用

    目录 一.实验环境: 安装有snmpc网管系统的计算机一台 二.实验目的: 三. 实验内容 四. 设计与实现过程: (一)AT-SNMPc软件的安装 (二)AT-SNMPc**软件的任务配置与用户任务 ...

  3. 基于SNMP的MIB库访问实现的研究

    蔡国森 (北京工商大学  计算机学院) 摘要  SNMP是用于网络管理/代理之间的请求/应答协议.管理信息库(MIB)定义了由代理者维护的各种变量,它们由管理者来进行存取操作,从而实现具体的网络管理. ...

  4. 计算机网络实验步骤华北电力大学,华北电力大学网络管理实验

    <华北电力大学网络管理实验>由会员分享,可在线阅读,更多相关<华北电力大学网络管理实验(15页珍藏版)>请在人人文库网上搜索. 1.华北电力大学实 验 报 告|实验名称 网络管 ...

  5. AUTOSAR从入门到精通100讲(二十八)-AutoSar之CAN网络管理

    AUTOSAR中网络管理主要使用了CAN接口(CanIf),并提供通用网络管理接口(NmIf).CAN网络管理在CAN架构中所处的位置如图1,与其他模块的交互如图2.                 ...

  6. autosar网络管理_AP AUTOSAR平台设计(11)——网络管理

    点击蓝字右上角      关注置顶不迷路 Hello!大家好!欢迎来到<搞一下汽车电子>本篇是AP AUTOSAR平台设计(11)--网络管理如果觉得不错,"转发" & ...

  7. SNMP简单网络管理协议

    声明:以下内容是学习谌玺老师视频整理出来(http://edu.51cto.com/course/course_id-861.html) SNMP(Simple Network Management ...

  8. Cisco网络管理的35个常见问题及解答

    1 问题:CiscoWorks for Windows是否能够管理到其它厂家的网络产品 ? 答案:只要第3方厂家的网络产品支持标准的SNMP的协议,那么CiscoWorks for Windows能够 ...

  9. 网络管理维护(SNMP、RMON)期末考试大纲总结

    第一章 网络管理概论 网络管理 定义:是指监督.控制网络资源的使用和网络的各种活动:从而使网络性能达到最稳定的过程.即对网络的配置.运行状态和计费等所从事的全部操作和维护性活动. 过程内容 1 数据收 ...

最新文章

  1. python读取红外图
  2. 漏洞评估的优先级决定了网络安全保护的成本
  3. linux c++ 调用matlab,ubuntu系统下C++调用matlab程序的方法详解
  4. Shiro学习记录(详细)
  5. Visitor(访问者)--对象行为型模式
  6. python大列表分割成小列表_Python有什么方法将列表分割成大小均匀的块?求使用实例...
  7. Windows域控设置IE主页 默认打开百度 【全域策略生效】
  8. Shell 脚本调用另一个脚本的三种方法
  9. 计算机网络 IP:ABC类地址与 子网掩码(ABC类网络均有属于自己的私有IP段 节省32位IP资源 ) 网络地址 主机地址 子网 与子网掩码之间的关系换算 IP和子网掩码相互依存
  10. 原生JavaScript实现幻灯片效果
  11. 更新K3官改里面都FRP到0.20版本的方法
  12. MarkDown - Latex符号(箭头)的整理
  13. 女生学UI合适吗?橙色优学告诉你女生UI设计优势
  14. Stata:各类盈余管理指标估算方法
  15. python 视频播放 拖动_python + opencv鼠标拖动视频区域裁剪
  16. C++项目实战-先把项目跑起来看看
  17. alter命令的使用
  18. protel99常用元件的电气图形符号和封装形式(一)
  19. 8b/10b编码技术系列(一):Serdes、CDR、K码
  20. 窥探、窃取、威胁,恶意爬虫正在搞垮你的网站,这届“网络流氓”真不好对付

热门文章

  1. JS根据函数名字符串调用函数
  2. Android之简单本地音乐播放器
  3. matplotlib subplot函数介绍
  4. 独家爆料!在美团搞安全,是种怎样的体验?
  5. NODE_多文件上传
  6. Hinton传奇:退学当木匠,辞职反军方,终成一代AI教父
  7. 人工智能实验-动物识别系统
  8. 什么是Android手机
  9. 【Markdown使用技巧总结】-如何在Markdown文档中插入空格?
  10. 企业如何借助制造业ERP系统,做好生产排产管理?