EtherNet/IP 协议结构
一、Ethernet/IP 协议
将标准的TCP/IP以太网延伸 到工业实时控制并和通用工业协议(CIP)结合,将很好地帮助用户获得更加开放集成的工业自动化和信息化的整体解决方案。EtherNet/IP 就是为实现这一目的的标准工业以太网技术。Ethernet/IP是一个面向工业自动化应用的工业应用层协议。它建立在标准是由ODVA(OpenDeviceNet VendorsAssociation)和ControlNet International 所推出的一种与TCP/IP 以太网相结合的工业以太网标准。

下图反应的 CIP 保证实时通讯与Internet协议并存。(EtherNet/IP是一种基于以太网和TCP/IP技术的工业以太网,其物理层和数据链路层使用以太网协议网络层和传输层使用TCP/IP协议族中的协议,应用层使用CIP和 TCP/IP协议)
将UDP报文映射到IP多播传送,实现高效的I/O交换,用TCP协议的流量控制点对点特性通过TCP通道传输非实时性显示报文。(以太网广播只能在交换机和网桥和集线器之间传输,不能穿透路由器,以太网广播报文被限制在一个子网内,不可能被扩散到Internet)
实践中 工业以太网的设备层,流通的数据是实时I/O数据,采用的UDP/IP协议来传递,其优先级较高(比TCP/IP优先级高)

1、CIP 是 Ethernet/IP和 DevieNet 、ControlNet三种网络都使用的构成部分,三者据用相同的应用层和应用对象库和设备描述(CIP协议族定义了一系列46个对象,但同时也存在不通用的 ----DeviceNet有一个 ControlNet有3个 EtherNet/IP有1个,其余的都是通用的)。因此一般上将这三种协议统称为CIP网络



2、EtherNet/IP 的通信机制
第一:通信模式 -------生产者/消费者
第二 :CIP报文通信的方式:
无连接通信-------基本的通信方式,设备的无连接通信资源有无连接报文管理器UCMM管理,无连接通信不需要任何设置或任何机制保持连接激活状态。
连接报文通信------可以用来传递I/O数据和显示报文,支持生产者/消费者的多点传输关系。
3、etherNet/IP 硬件总体结构
三星的模块: ARM9 S3C2410为CPU

目前磊说由于不可避免的原因 (目前,Ethernet/IP工业以太网的应用主要是在自动化领域的信息层和控制层)在设备层使用ODVA 支持的ControlNet 和DeviceNet .利用总线在设备层的抗干扰能力强的优点作为公益以太网的补充。
EtherNet/IP 基于Socket 在 层上定义数据模型,发送的数据包都是IP包
二、CIP协议结构
ODVA(Open DeviceNet Vendor Association) 和CI(ContrilNet International)共同推动了CIPTM (通用工业协议)的工业网络,包括了 EtherNet/IP 、 ControlNet 、 DeviceNet 。CIP协议本身的特点(实时性-------数据传输花的时间少、、确定性------数据传输的时间具有可预测性、 可重复性-----增加或减少网络节点,对数据花费时间影响较小、 可靠性------数据传输的正确率较高)
CIP 协议的特点:
报文: CIP协议是重要的特点是乐意传输多种类型的数据 (工业应用中需要传输的数据类型有I/O数据、互锁、配置、诊断故障、程序上传和下载-----不同的书卷类型对传输的性能要求不一样)-----》》》》所以报文被分成两种类型 显示报文和隐式报文

显示报文; --------用于传输对时间上没有苛刻要求的数据(程序的上传和下载、系统的维护、故障诊断、设备配置信息等--------》这种报文包含解读该报文所需的解读该报文的信息被称为显示报文)
隐式报文: --------用于传输I/O数据(隐式报文又称为I/O报文或者隐式I/O报文)

CIP协议通信重要特性就是与介质无关性,(对此可以在控制系统和I/O设备上实现协议的开放原因)这就保证了以后可以将其移植到更高性能的网络上实施。并且提供全部的功能。保证原有现场总线或者以太网技术的透明性和一致性。



现在发现,研究的这个协议里面涉及的东西太多,
EtherNet/IP 协议结构的更多相关文章
- 工业以太网EtherNet/IP协议安全分析整理
1. EtherNet/IP : 设备可以用户数据报协议(UDP)的隐式报文传送基于IO的资料 ,用户传输控制协议(TCP)显示报文上传和下参数,设定值,程式 ,用户主站的轮询 从站周期性的更 ...
- EtherNet/IP 协议应用层使用CIP协议&CIP协议中使用的TLS和DTLS(Network Infrastructure for EtherNet/IPTM: Introduction and Considerations)
- EtherNet/IP CIP协议
EtherNet/IP CIP协议 1.EtherNet/IP简述 EtherNet/IP(Ethernet/Indstrial Protocol,以太网/工业协议)是一种基于以太网和TCP/IP技术 ...
- 工控安全入门之Ethernet/IP
这一篇依然是协议层面的,协议层面会翻译三篇,下一篇是电力系统中用的比较多的DNP3.这一篇中大部分引用的资料都可以访问到,只有一篇reversemode.com上的writeup(http://rev ...
- 工控安全入门之 Ethernet/IP
工控安全入门之 Ethernet/IP Ethernet/IP 与 Modbus 相比,EtherNet/IP 是一个更现代化的标准协议.由工作组 ControlNet International 与 ...
- TCP/IP协议头部结构体(网摘小结)(转)
源:TCP/IP协议头部结构体(网摘小结) TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #de ...
- TCP/IP协议头部结构体
TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #define LITTLE_ENDIAN (1) ...
- #WEB安全基础 : HTTP协议 | 0x0 TCP/IP四层结构
学完HTML/CSS了? 做了这么多网页,但是你知道它们是怎么工作的吗? 作为你的朋友,我也对这些东西感兴趣,在写博客的同时也在和你一起学. 废话少说,进入正题 网络中的通信包括两个端分别为:客户端( ...
- Linux内核--网络栈实现分析(四)--网络层之IP协议(上)
本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7514017 更多请看专栏,地址 ...
随机推荐
- PHP——秒数转换为时分秒
前言 通讯记录需要用到的一个方法,就是将秒转为时分秒 方法 PHP有内置的方法,直接用即可,不过这个只是24小时以内.对于通讯录来说是够用了~ 示例 $v = 30; gmdate('H:i:s', ...
- Flask 源码流程,上下文管理
源码流程 创建对象 from flask import Flask """ 1 实例化对象 app """ app = Flask(__na ...
- Linux下截取指定时间段日志并输出到指定文件
sed -n '/2019-04-22 16:10:/,/2019-04-22 16:20:/p' log.log > bbb.txt
- PAT 甲级真题题解(63-120)
2019/4/3 1063 Set Similarity n个序列分别先放进集合里去重.在询问的时候,遍历A集合中每个数,判断下该数在B集合中是否存在,统计存在个数(分子),分母就是两个集合大小减去分 ...
- MySQL基于GTIDs的MySQL Replication
MySQL M-S GTID 基于GTIDs的MySQL Replication 什么是GTIDs以及有什么特定? 1.GTIDs(Global transaction identifiers)全局事 ...
- Python--基础二
Python基础:字符串str & 列表list & 元组tuple & 字典dict & 集合set Python 基础 2 字符串 str 字符串是以单引号或双引号 ...
- Centos6安装Percona-tools工具
Centos6安装Percona-tools工具 环境:centos6.x yum -y install perl-DBI yum -y install perl-DBD-MySQL yum -y i ...
- Tomcat系列(3)——Tomcat 组件及架构核心部分 4类主要组件(顶层,连接器,容器,嵌套)
1.架构图 2. 定义 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta ...
- [算法竞赛入门经典]Ancient Cipher, NEERC 2004,UVa1339
Description Ancient Roman empire had a strong government system with various departments, including ...
- JS数组(JSON)整合篇-方法整理
遍历:arr_Param.forEach(function (item, i) {}); 反序排序:arr_Param.reverse(); 合并数组:arr_Param.push.apply(arr ...