文档库 最新最全的文档下载
当前位置:文档库 › goose报文分析

goose报文分析

goose报文分析
goose报文分析

GOOSE报文详解

Goose报文在网络上传输时采用的是OSI模型,但只用到OSI网络模型七层中的四层,应用层、表示层、数据链路层和物理层,传输层和网络层为空。应用层定义协议数据单元PDU,经过表示层编码后,不采用TCP/IP协议,而是直接映射到数据链路层和物理层。这种映射方式的目的是避免通信堆栈造成传输延时,从而保证报文传输、处理的快速性。

GOOSE报文在MAC层的帧结构包括:源MAC地址、目的地址即组播地址、报文类型、四字节Tag、APPID、报文长度、四字节的保留和GOOSEPDU。Goose具体报文格式如图0所示[0]。

图0 Goose报文格式

Goose举例报文(十六进制):

01 0C CD 01 00 51 00 1E 4F D3 AE 41 81 00 80 42 88 B8 00 33 00 90 00 00 00 00 61 81 85 80 08 67 6F 63 62 52 65 66 31 81 05 00 00 00 27 10 82 07 64 61 74 53 65 74 31 83 05 67 6F 49 44 31 84 08 4E F2 85 E1 F7 CE D9 00 85 05 00 00 00 00 01 86 05 00 00 00 00 01 87 01 00 88 05 00

00 00 00 01 89 01 00 8A 05 00 00 00 00 09 AB 36 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00

分析如下(可结合Ethereal解析):

1、01 0C CD 01 00 51

目的MAC地址

2、00 1E 4F D3 AE 41

源MAC地址

3、81 00 80 42

GOOSE报文支持IEEE 802.1Q/P优先级技术,IEEE 802.1Q为VLAN技术的标准,IEEE 802.1P为报文优先级标准。

这4个字节共同组成goose报文的tag位。Tag是有两个字节的TPID(标签协议标识)和2个字节的TCI(标签控制信息)组成。TPID配置为0x8100表示goose报文加入了优先级标识。TPID和TCI组成如图1所示:

图1:PID和TCI组成

TCI中12位VID,1位CFI和3位Priority(优先级)。12位VID可以配置4096个VLAN,CFI一般配置为0,3位Priority可以分为8个优先级:其中只配置了0-4级,5、6、7及保留未来使用。

4、88 B8

以太网类型值

0x88 B8为goose,0x88 B9为GSE,0x88 BA为采样值。如图3所示

图3 以太网类型值分配

5、00 33

APPID

两字节的最高两位对照图3解释。所以此处APPID=51(D)

6、00 90

长度=144(D)

长度字节数包含从APPID开始以太网PDU头和APDU(应用协议数据单元)的长度。长度是8+m,m是APDU的长度,m<1492。

为什么是8+m?这个8个字节分别是APPID 2个字节,长度2个字节,以及后面的保留1、保留2各两个字节。对应到本帧报文的8个字节为:00 33 00 90 00 00 00 00。

7、00 00 00 00

保留1、保留2。为将来的应用扩展使用,缺省值为0。

8、61 81 85

GoosePDU开始(APDU应用协议数据单元)

搞清楚这个,得看ASN.1编码,此处稍作解释。ASN.1的传输基于八位位组的字节序列来进行的,它的编码规则遵循标记TAG(也有称TYPE)、长度LENGTH、值V ALUE的格式,简称TLV,如图4所示。

图4 ASN.1编码格式

对图4解释:

TAG:

一般占1或者2个字节。TAG的组成如图5所示,

图5 TAG编码格式

Bit7 Bit6不解释,如上图。

Bit5:=0表示V ALUE为简单结构,即只包含数值内容。=1表示VALUE为复合结构,即V ALUE还包含了TLV结构,直至TLV结构中Bit5为0.

Bit4~0:由于最高的3位(7、6、5)作为它用,因此TAG(bit4~0)只能表示到11111(b)=31(D)。若想表示>31是,此时TAG就要占2个字节(第1个字节后面的被称为扩展字节)。此时TAG 编码格式如图6所示。

图6 大于31时TAG编码

对图6解释:

此时字节1中Bit7~5不变,Bit4~0全为1,字节2表示真正的TAG值,可表示0~255。

LENGTH:

紧跟TAG后面的length,它描述后续的V ALUE值是由多少个字节数所构成。若V ALUE 长度≤127,则LENGTH占1个字节,字节最高位为Bit7=0;若V ALUE长度>127,则LENGTH 第1个字节最高位Bit7=1,Bit6~0表示的是LENGTH本身所占的字节数,从第2个字节开始到最后1个字节表示的是V ALUE的长度。如图7所示。

图7 LENGTH编码格式

V ALUE:

值。实际所要传递的编码内容,具体编码规则,根据不同的标记类型,采用不用的编码规范。

因此,结合上述,对61 81 85解释为:TAG=0x61,APPLICATION应用,复合结构,tag 值为1。0x81最高位为1,表示V ALUE长度>127,LENGTH本身长度为1,即:0x85。后续V ALUE长度为0x85=133(D)个字节。

9、之后的字节排列顺序如图8所示

图8 IECGoosePDU报文格式

10、80 08 67 6F 63 62 52 65 66 31

gocbRef字符串

ASN.1编码格式TLV。80为TAG,08为LENGTH,后面的为V ALUE,67 6F 63 62 52 65 66 31转换成字符为gocbRef1。

11、81 05 00 00 00 27 10

timeAllowedtoLive(报文存活时间,单位ms)

ASN.1编码格式TLV。81为TAG,05为LENGTH,后面的为V ALUE,00 00 00 27 10转成10进制为10000,即10s。

Goose接收方的中断时间一般定为大于2* timeAllowedtoLive即报Goose中断告警。

由于Goose报文的重要性,即使外部状态不再变换,也应重发。此参数提示订阅者等待下一报文到来的最长时间。当等待事件大于timeAllowedtoLive值仍未收到有效报文时,订阅者认为通信联系失去,采用预先定义的默认值取代。

12、82 07 64 61 74 53 65 74 31

datSet字符串

ASN.1编码格式TLV。82为TAG,07为LENGTH,后面的为V ALUE,64 61 74 53 65 74 31转换成字符为datSet1。

13、83 05 67 6F 49 44 31

goID字符串

ASN.1编码格式TLV。83为TAG,05为LENGTH,后面的为V ALUE,67 6F 49 44 31转换成字符为goID1。

14、84 08 4E F2 85 E1 F7 CE D9 00

t,stnum加1时的时间,精确到毫秒。

Goose报文产生时的时标。通常作为驱动事件的发生时标(若有特殊要求,驱动事件的发生时标可另外包含在数据集中)。

ASN.1编码格式TLV。84为TAG,08为LENGTH,后面的为VALUE。

第8个字节代表品质因数。

15、85 05 00 00 00 00 01 86 05 00 00 00 00 01

stnum值85 05 00 00 00 00 01

sqnum值86 05 00 00 00 00 01

装置发送方:后面allData数据跟上一次的allData值不一致时stnum+1,sqnum=0。一致时stnum不变,sqnum+1。上电第1帧时stnum=1,sqnum=1。stnum、sqnum加到最大值时都从1开始。

装置接收方:上电时stnum=sqnum=0。

16、87 01 00

test位

当装置检修压板投入时,装置发送的GOOSE报文中的test应置位。Goose接收装置应将接收的Goose报文中的test位与装置自身的检修压板状态比较,只有两者一致时才将信号作为有效进行处理或动作。

17、88 05 00 00 00 00 01

confRev()

配置版本号(配置次数)。表示Data-Set配置改变的计数器,例如当Data-Set里某个成员被删除或成员重新排序等均会导致confRev数值改变。

18、89 01 00

ndsCom

表示此控制块配置的必要性,当属性dataset值为NULL时,ndsCom值应为TRUE,表示此控制块需进一步配置。

19、8A 05 00 00 00 00 09

numDatSetEntries

表示allData中有多少个数据项,此处表示有9个

20、AB 36

从这开始到结束为allData内容

TAG=0xAB,上下文关联,复合结构,即V ALUE也是有TLV组成。

LENGTH=0x36=54(D)

21、83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00

时间t表示最后一次状态变位发生的时间,是格林威治时间,即比当前时间晚了8个小时。时间品质反应最后一次状态变位发生时候的时间品质,而不是当前状态的时间品质。

22、83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00

83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00

同21

61850报文解析-深瑞版

61850报文解析说明 编写:陈林兴日期:2013年10月10日 本文档只涉及mms报文。 1.相关术语简介 IED:智能电子设备; icd:智能电子设备配置描述; SCD:变电站配置描述; cid:从SCD文件中导出与各自IED相关的内容形成文件,即实例化后的icd模型文件; SCL:变电站配置描述语言; AccessPoint:访问点; PHD:物理设备 LD:逻辑设备; LN:逻辑节点; FC:功能约束; FCD:功能约束数据; FCDA:功能约束数据属性; GOCB:GOOSE控制块; LLN0:逻辑节点0; SGCB:定值控制块; DO:数据对象; DA:数据属性。 2.icd/cid模型文件简介 2.1.模型文件结构 61850模型文件为树状层次:PHD(物理设备)→LD(逻辑设备)→LN(逻辑节点)→DO(数据对象)→DA(数据属性)。 图2-1-1 61850模型文件树状结构 SCL Header Communication IED

… 图2-1-2 icd 配置文件结构 图2-1-3 icd 配置文件结构示例 其中AccessPoint 下面包含S1(mms 服务)、G1(GOOSE 服务)、M1(SV 服务)访问点。以前的程序导入icd 时,需删除G1和M1访问点,目前PRS7000后台130801以后的程序,可过滤G1和M1访问点,无需删除。 2.2. i cd 模型文件内容与数据库信号的对应 2.2.1. 遥测信号 图2-2-1-1 7741导入icd 后遥测信号 遥测UC ,其mms 引用路径为:PRS7741/MEAS/MMXU1$MX$U$phsC$cVal$mag$f PRS7741:IEDName ; MEAS :LDName ,MEAS 表示测量LD ; MMXU1:逻辑节点类LNClass+序号Inst ,MMXU 表示测量量数据; MX :功能约束MX ; U$phsC : DOName ,表示C 相电压; cVal$mag$f :DAName 表示C 相电压幅值。 icd 中LD 下面数据集定义dataSet 的内容如图2-2-1-2: 图2-2-1-2 icd 遥测数据集定义 icd 中LN 下面实例化后的遥测数据内容如图2-2-1-3: 图2-2-1-3 遥测数据实例 LDevice2 LN1 LDevice1 LNn AccessPoint LN0 Authentication Server Services DataTypeTemplate LNodeType DOType DAType EnumType

sv goose报文解析

一,SV报文解析 SV报文在网络上传输时采用的是OSI模型,但只用到OSI网络模型七层中的四层,应用层、表示层、数据链路层和物理层,传输层和网络层为空。应用层定义协议数据单元PDU,经过表示层编码后,不采用TCP/IP协议,而是直接映射到数据链路层和物理层。 这种映射方式的目的是避免通信堆栈造成传输延时,从而保证报文传输、处理的快速性。 SV报文在MAC层的帧结构包括:源MAC地址、目的地址即组播地址、报文类型、四字节Tag、APPID、报文长度、四字节的保留和APDU。 SV的帧格式见下表: SV的APDU报文格式见下表

一帧SV报文: 01 0C CD 04 00 0200 C0 00 00 40 0288 BA40 0200 F2 00 00 00 0060 81 E7 80 01 01 A2 81 E1 30 81 DE 80 14 4D 4C 31 31 30 32 4D 55 2F 4C 4C 4E 30 2E 73 6D 76 63 62 30 82 02 07 F283 04 00 00 00 0185 01 0087 81 B8 00 00 05 DC 00 00 00 00 FF FF E1 A1 00 00 00 00 FF FF E1 A1 00 00 00 00 FF FF EB C1 00 00 00 00 00 00 0A 1F 00 00 00 00 FF FF F5 E1 00 00 00 00 00 00 00 00 00 00 00 00 FF FF EB C1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF 99 00 00 00 00 FF FF FE CA 00 00 00 00 FF FF E9 BF 00 00 00 00 FF FF F1 2A 00 00 00 00 FF FF D7 34 00 00 00 00 FF FF F1 2A 00 00 00 00 00 00 00 00 00 00 00 00 FF FF E2 54 00 00 00 00 FF FF E9 BF 00 00 00 00 FF FF FC 4B 00 00 00 00 FF FF DA E9 00 00 00 00 解析: 01 0C CD 04 00 02 00 C0 00 00 40 02 目的MAC和源MAC 88 BA网路数据类型,9-2报文

61850通讯过程:MMS制造报文系统和GOOSE报文

ZG电力自动化's Archiver cqtzj发表于 2007-11-28 12:32 61850通讯过程:MMS制造报文系统和GOOSE报文 欢迎大家来讨论MMS的实现过程 MMS是一种实时通信机制,61850 MMS制造报文系统和GOOSE报文通讯是基于61850数字化变电站的通讯基础。 MMS标准即ISO/IEC9506标准,由ISOTC184和IEC共同负责管理。MMS的目的是为了规范工业领域具有通信能力的智能传感器、智能电子设备(IED)、智能控制设备的通信行为,使出自不同制造商的设备之间具有互操作性(interoperation),使系统集成变得简单、方便。MMS规范分为五部分即服务规范、通信协议、工业机器人通信规范、过程控制通信规范、数字控制通信规范。MMS的特点是通过使用MMS使工业系统具有互操作性和独立性。其中互操作性是制定MMS的初衷即为设备和应用定义一套标准通信机制,使其在此通信体制下具有高度互操作性。独立性是指MMS不同于很多只适用于特定产品的专用通信系统,它是一个通用的、独立于专用设备的国际标准体系即它为用户提供了一个独立于所完成功能的通用通信环境。MMS提供了通过网络进行对等(peer-to-peer)实时通信的一套服务集。MMS作为通用通信协议可以用于多种通用工业控制设备,如可编程控制器和工业机器人等。MMS可以支持多种通信方式,包括以太网、令牌总线、RS—232C、OSI、TCP/IP、MiniMAP等, MMS也可通过网桥、路由器或网关连接到其他系统上。在国外,MMS技术广泛用于工业过程控制、工业机器人等领域。目前,MMS在电力系统远动通信协议中的应用越来越广泛。国际电工委员会第57技术委员会(IECTC57)新近推出的IEC60870—6TASE.2系列标准定义了EMS和SCADA等电力控制中心之间的通信协议,该协议采用面向对象建模技术,其底层直接映射到MMS上。IEC61850作为IECTC57制订的关于变电站自动化系统计算机通信网络和系统的标准,采用分层、面向对象建模等多种新技术,其底层也直接映射到MMS上。MMS技术作为许多国际标准的基石。 1.对象建模:对一个实际设备进行抽象,利用面向对象思想理解设备的逻辑构成。参考7-2中进行抽象建模,提炼出设备所含有的逻辑节点,每个逻辑节点所含的参数、属性,找出逻辑节点之间数据流向。整个过程需要对设备有大概的了解,知道设备可以被抽象为哪几个逻辑节点组成,特别是数据流向问题,还有该设备可能和哪些其他设备发生数据关系。参考7-1找出该设备与其他设备发生交换的时候需要哪些ACSI服务。最终形成一张该设备的按IEC 61850思想获得的逻辑抽象参数表与逻辑数据流程图。参考设备的逻辑抽象参数表与逻辑数据流程图,根据MMS协议与8-1实现映射,将逻辑节点映射成MMS中的域,特别是设备涉及的ACSI服务,很大一部分其实转映射成MMS中的读写服务。根据映射关系得出MMS映射逻辑抽象参数表与MMS服务与ACSI服务对照表。根据MMS服务与ACSI服务对照表,准备一个XML文件作为MMS的配置文件,记录该设备的MMS服务以及参数. 2.将MMS开发分为三部分 MMS的环境管理服务 ASN.1编解码 面向连接的传递机制(考虑Socket)(RPC)850

61850模型分析

61850模型及MMS报文分析基础 2012-02 参考文档: 1.《数字化变电站调试总结-马玉龙》 2. 《IEC61850标准》《IEC61850实施规》

目录 1、文件类型 (4) 1.1 ICD/CID文件结构 (4) 2模型验证 (4) 3、IED配置 (5) 3.1 IED和LD(Logical Device)相关信息 (5) 3.2 逻辑节点LN (Logical Node) (6) 3.3数据DO(Data Object)及数据属性DA(Data attribute) (8) 3.4 数据集:DOI /DAI的集合 (11) 3.5 报告控制块ReportControl: (12) 4 如何抓包 (13) 4.1 抓包工具 (13) 4.2 抓包方法 (13) 4.3 分析举例 (13) 5、MMS报文简析 (17) 5.1初始化相关 (17) 5.2报告相关 (22) 5.3录波相关 (30) 5.4控制相关 (33) 5.5定值相关 (36)

第一部分:模型文件基础 1、文件类型 IED(智能电子设备,指保护、测控等设备)应提供ICD文件,描述IED的能力及通信容,如是否具有定值、压板、动作信号等。 系统集成工具把各IED的ICD文件集成并进行实例化如IED名、信息点描述等形成站级模型文件-SCD文件,供站级(包括监控、远动、故障信息主子站)应用。 IED从SCD文件中导出本IED相关部分形成CID文件,即实例化后的IED模型文件,供IED运行时用。1.1 ICD/CID文件结构 -Header:历史版本信息等 -Communication:GOOSE配置等 -IED:定值、压板、动作信号等 -DataTypeTemplates :对象类型定义 2模型验证 xmlSpy可做一些语法方面的验证。 四方61850客户端工具软件可作进一步验证。

MMS入门篇(一)------IEC61850简单理解

1.测试工具:采用IecClient进行逐项覆盖IEC61850库中的功能,尤其是我们使用到 的功能,如点击获取数据的值,或者设置数据的值使用mms_ethereal截包分析 2.针对性测试:针对IEC61850库的某些特殊功能,可以为其编写单独下位机程序和专 门的xml文件。这种测试需要wince的应用开发环境,以及对库功能和使用比较熟悉 3.IEC61850-MMS整体结构: (1) 和其他通信协议一样,IEC61850也可分为服务器和客户端两部分,服务器提供 对应的服务,客户端则请求服务 (2) 服务器和客户端的划分都只是逻辑上的,并不规定他们的物理位置,同一台设 备,可能既具务服务器的功能,又具务客户端的功能 (3) 服务器和客户端的通信也高度抽象,不规定服务具体怎样被调用的,只规定了 服务接口,接口的实现由系统决定(可以为USB、Ethernet、当服务器和客户端位于同一台机器上也可直接进行内存拷贝)当前大部分以Ehternet为主 4.IEC61850-MMS协议分层: (1) MMS位于ISO七层模型的应用层,其高度抽象,为了便于理解,我们可以将其 分为两层:ASCI层(Abstract Service Communication Interface)、MMS层(Manufacturing Message Specification) (2) ASCI(Abstract Service Communication Interface)层定义了系统的逻辑功能,如:一 个设备中有多少个逻辑设备、多少个逻辑节点,每个逻辑节点的属性以及其支持的服务。 (3) ASCI(Abstract Service Communication Interface)层不关心客户和服务器怎么通信, 只关心服务器有哪些功能可以调用,哪些数据属性可以获取,哪些节点可以控制 (4) MMS层(Manufacturing Message Specification)定义了从ASCI到具体网络通信的 映射 (5) MMS层(Manufacturing Message Specification)不规定通信网络类型,也不规定通 信帧的具体格式,只规定通信帧的功能,通信模式 (6) 如: MMS规定了一个通信帧需包含哪些内容,这些内容代表什么意义,而不规 定这些内容以什么数据形式在网络上体现,因此可以采用不同的数据格式在各种网络上实现,但是服务和客户端要使用同样的数据格式和网络类型 5.IEC61850通信模型 (1) IEC61850通信报文由以下6类报文组成:类型1(快速报文)、类型1A(跳闸报文)、 类型2(中等速度报文)、类型3(低速报文)、类型4(原始数据报文)、类型5(文件传输功能)、类型6(时间同步报文) (2) 不同类型的报文由于其属性(如:数据量、重要性、实时性)不同而使用不同的传 输模式 (3) 1和1A类报文由于其实时性要求高所以被映射为专门的以太网类型 (4) 2、3、5类型报文则使用一般的TCP/IP协议 (5) 类型6报文由于其数据量大、实时性要求不高,可以和2、3、5报文区分开来 (6) 此外IEC61850中还采用了其他非标准协议,如用于时间同步的SNTP协议 (7) IEC61850采用的协议分类如下: 采样值(组播) --- SMV(IEC61850-9-2)、通用变电 站事件--- GOOSE、时间同步--- SNTP、核心ACSI服务--- MMS Protocol Sutie、通用变站状态事件--- GSSE

学会看报文二GOOSE

所谓的GOOSE就是通用面向对象的变电站事件(Generic Object Oriented Substation Event)。当发生任何状态变化时,智能电子设备将借助变化报告,高速多播一个二进制对象通用面向变电站事件对象(GOOSE)报告,该报告一般包含有:状态输入、起动和输出元件、继电器等实际和虚拟的每一个双点命令状态。 在第一次报告后,该报告一般以间隔2,4,8……60,000ms顺序重发。(第一重发延时不固定,可长可短)。 面向变电站通用事件对象报告允许高速传输跳闸信号,具有高传输成功概率 DL/T860.5所定义的报文类型和性能分类按照图1所示进行映射。 -类型1(快速报文) -类型1A(跳闸报文) -类型2(中速报文) -类型3(低速报文) -类型4(原始数据报文) -类型5(文件传输功能) -类型6(时间同步报文) 而为了变电站得变为信息能够快速的传递,及跳闸报文嫩够及时快速的传送给ICU(智能控制单元)所以GOOSE报文选用了类型1和类型1A的报文。 GOOSE报文的数据目的地址(对应下图的Destination)应包括一个多播MAC地址。GOOSE 报文的数据源地址(Source)应包括一个单播MAC地址。

因为电脑网卡的问题,V-lan优先级(PRIORITY)和V-lan的VID无法显示。所以报文一般只能看到目的MAC和APPID. GOOSE GOOSE标识 该可视串最大长度为65字节。该值与被GOOSE控制引用指定的GOOSE控制块的数值相同。 GOOSE控制引用control block reference 表示GOOSE数据的控制块路径

61850GOOSE报文分析

01 0C CD 01 00 04 44 4D 35 30 30 30 88 B8 10 04 01 18 00 00 00 00 61 82 01 0C 80 1A 50 52 53 2D 37 33 39 35 52 50 49 54 2F 4C 4C 4E 30 24 47 4F 24 67 6F 63 62 31 81 04 00 00 27 10 82 1A 50 52 53 2D 37 33 39 35 52 50 49 54 2F 4C 4C 4E 30 24 64 73 47 4F 4F 53 45 31 83 1A 54 45 4D 50 4C 41 54 45 52 50 49 54 2F 4C 4C 4E 30 24 47 4F 24 67 6F 63 62 31 84 08 00 00 0A 2B AF 4B 15 00 85 04 00 00 00 02 86 04 00 00 00 00 87 01 00 88 04 00 00 00 00 89 01 2C 8A 04 00 00 00 2D AB 81 87 83 01 01 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 83 01 00 80 1A 50 52 53 2D 37 33 39 35 52 50 49 54 2F 4C 4C 4E 30 24 47 4F 24 67 6F 63 62 31 GOOSE Control ReFerence字符串=PRS-7395RPIT/LLN0$GO$gocb1。代表这个包的控制块的名字。 281 04 00 00 27 10 Time Allowed to Live(报文存活时间,单位ms) =10000ms。 00 00 27 10转成10进制为10000,即10s。 GOOSE接收方的中断时间一般定为大于2* timeAllowedtoLive即报GOOSE中断告警。由于GOOSE报文的重要性,即使外部状态不再变换,也应重发。此参数提示订阅者等待下一报文到来的最长时间。当等待时间大于timeAllowedtoLive 值仍未收到有效报文时,订阅者认为通信联系失去,采用预先定义的默认值取代。我们就可以理解为持机等待时间。 82 1A 50 52 53 2D 37 33 39 35 52 50 49 54 2F 4C 4C 4E 30 24 64 73 47 4F 4F 53 45 31 DataSet字符串=PRS-7395RPIT/LLN0$dsGOOSE1。是指这个包所在的数据集。 83 1A 54 45 4D 50 4C 41 54 45 52 50 49 54 2F 4C 4C 4E 30 24 47 4F 24 67 6F 63 62 31 GOID字符串=TEMPLATERPIT/LLN0$GO$gocb1。 584 08 00 00 0A 2B AF 4B 15 00 t,StNum加1时的时间=1970-01-01 08:43:23.684739 Tq: 00,GOOSE报文产生时的时标。通常作为驱动事件的发生时标(若有特殊要求,驱动事件的发生时标可另外包含在数据集中)。 85 04 00 00 00 02 86 04 00 00 00 00 StNum值 85 04 00 00 00 02=2。SqNum 值 86 04 00 00 00 00=0。装置发送方:数据集成员值发生变化发送GOOSE报文时该序号StNum+1,SqNum=0。数据集成员值未变化时StNum不变,SqNum+1。上电第1帧时StNum=1,SqNum=1。StNum、SqNum加到最大值时都从1开始。 87 01 00 test位=0,即使检修位为0,本装置没有投入检修硬压板。当装置检

61850典型报文解析说明

61850典型报文解析说明 编写:欧灶军 1 平台 现利用ethereal报文抓捕工具抓取部分典型报文解析说明。 1.1报告类 COS 61850报告服务,是一项非常重要的ACSI服务,它通过SCSM映射为MMS协议中的InformationReport服务,我们在调试过程中通过捕包工具得到的61850报告报文,都是经过ASN.1编码后的InformationReport数据。 建好数据库,连接好装置后,启动SCADA服务器,并用ethereal抓报文,根据报告格式进行解析。例如抓到的SOE报告ID号为BR03_brcbSOE01,其中03与模板中定义的各种报告类型有关,例如在我使用的装置模板中这么定义的:brcbREC、brcbCHK、brcbSOE分别为BR01、BR02、BR03,01表示该报告已经实例化。由于InformationReport各成员的数据类型是确定的,根据ASN.1编码规则,各数据编码后的数据也是确定的: RptID编码后数据为:8a XX XX … XX; OptFlds编码后数据为:84 03 07 XX X0; SqNum编码后数据为:86 XX XX … XX; TimeOfEntry编码后数据为:8C 06 XX XX XX XX XX XX; DataSet编码后数据为:8a XX XX … XX; BufOvfl编码后数据为:83 01 XX; EntryID编码后数据为:89 XX XX … XX; ConfRev编码后数据为:86 XX XX … XX; SubSeqNum编码后数据为:86 XX XX … XX; MoreSegmentFollow编码后数据为:83 01 XX; Inclusion-bitstring编码后数据为:84 XX … XX; Data-Reference编码后数据为:8a XX … XX; Value取决于具体数据类型; ReasonCode编码后数据为:84 XX … XX; 下面以SOE报文为例,说明整个报告的含义,报文如下: 8a 0e 42 52 30 33 5f 62 72 63 62 53 4f 45 30 31 (RptID) 84 03 07 11 80(OptFlds) 89 08 00 00 00 00 00 00 00 20 (EntryID) 86 01 01 (ConfRev) 84 06 05 80 00 00 10 00 (Inclusion-bitstring) a2 12 83 01 01 84 03 03 00 00 91 08 49 f9 70 02 02 d0 e5 8a a2 13 84 02 06 40 84 03 03 00 00 91 08 49 f9 70 02 05 1e b8 8a (Values,共2个)

SVGOOSE报文解析

,SV报文解析 SV报文在网络上传输时采用的是OSI模型,但只用到OSI网络模型七层中的四层,应用层、表示层、数据链路层和物理层,传输层和网络层为空。 应用层定义协议数据单元PDU经过表示层编码后,不采用TCP/IP协议, 而是直接映射到数据链路层和物理层。 这种映射方式的目的是避免通信堆栈造成传输延时,从而保证报文传输、 处理的快速性。 SV报文在MAC!的帧结构包括:源MAC地址、目的地址即组播地址、报文类型、四字节Tag、APPID报文长度、四字节的保留和APDU

一帧SV报文: 01 0C CD 04 00 000 CO 00 00 40 0288 BA40 02 00 F2 00 00 00 0060 81 E7 80 01 01 A2 81 E1 30 81 DE 80 14 4D 4C 31 31 30 32 4D 55 2F 4C 4C 4E 30 2E 73 6D 76 63 62 3(82 02 07 F283 04 00 00 00 0185 01 0087 81 B8 00 00 05 DC 00 00 00 0(FF FF E1 A1 00 00 00 00 FF FF E1 A1 00 00 00 00 FF FF EB C1 00 00 00 00 00 00 0A 1F 00 00 00 00 FF FF F5 E1 00 00 00 00 00 00 00 00 00 00 00 00 FF FF EB C1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF 99 00 00 00 00 FF FF FE CA 00 00 00 00 FF FF E9 BF 00 00 00 00 FF FF F1 2A 00 00 00 00 FF FF D7 34 00 00 00 00 FF FF F1 2A 00 00 00 00 00 00 00 00 00 00 00 00 FF FF E2 54 00 00 00 00 FF FF E9 BF 00 00 00 00 FF FF FC 4B 00 00 00 00 FF FF DA E9 00 00 00 00 解析: 01 0C CD 04 00 02 00 C0 00 00 40 02 目的MAC和源MAC 88 BA网路数据类型,9-2报文 40 02 appid

IEC61850模型建模及MMS报文分析

IEC61850模型建模及MMS报文分析

2012-02 参考文档: 1.《数字化变电站调试总结-马玉龙》 2. 《IEC61850标准》《IEC61850实施规范》

目录 1、文件类型4 1.1 ICD/CID文件结构4 2模型验证4 3、IED配置4 3.1 IED和LD(Logical Device)有关信息 4 3.2 逻辑节点LN (Logical Node)5 3.3数据DO(Data Object)及数据属性DA(Data attribute)6 3.4 数据集:DOI /DAI的集合7 3.5 报告操纵块ReportControl:7 4 如何抓包8 4.1 抓包工具8 4.2 抓包方法8 4.3 分析举例9 5、MMS报文简析11 5.1初始化有关11 5.2报告有关13 5.3录波有关16 5.4操纵有关17 5.5定值有关18

第一部分:模型文件基础 1、文件类型 IED (智能电子设备,指爱护、测控等设备)应提供ICD 文件,描述I ED 的能力及通信内容,如是否具有定值、压板、动作信号等。 系统集成工具把各IED 的ICD 文件集成并进行实例化如IED 名、信息点描述等形成站级模型文件-SCD 文件,供站级(包括监控、远动、故障信息主子站)应用。 IED 从SCD 文件中导出本IED 有关部分形成CID 文件,即实例化后的IED 模型文件,供IED 运行时用。 1.1 ICD/CID 文件结构 -Header :历史版本信息等 -Communication :GOOSE 配置等 -IED :定值、压板、动作信号等 -DataTypeTemplates :对象类型定义 2模型验证 xmlSpy 可做一些语法方面的验证。 四方61850客户端工具软件可作进一步验证。 3、IED 配置 IEC61850模型总体-模型的分析Physical Device (network address)Logical Device MMXU1 MMXU3 DO DA Logical Nodes DA DO DA DO DA MMXU2 DO DA DA 注:本部分示例大部分取自培训资料包中的CSC326DES1.cid 。 3.1 IED 和LD(Logical Device)有关信息 icd 文件中的IED 名一样为Template cid 文件中的IED 名必须和子系统的csscfg.ini 配置一致 每个IED 包含1-n 个LDevice ,每个LD 包含1个LN0和几个LN 关于四方IED 的模型文件中有两个私有配置,当模型较大(cid 超过1M )装置可能无法正确启动,需要把这两个参数改大,CSC 高压爱护MST 61850库版本v3.40以后在串口输出中有提示信息。

.sv-goose报文解析

一,S V报文解析SV报文在网络上传输时采用的是OSI模型,但只用到OSI网络模型七层中的四层,应用层、表示层、数据链路层和物理层,传输层和网络层为空。应用层定义协议数据单元PDU,经过表示层编码后,不采用TCP/IP协议,而是直接映射到数据链路层和物理层。 这种映射方式的目的是避免通信堆栈造成传输延时,从而保证报文传输、处理的快速性。 SV报文在MAC层的帧结构包括:源MAC地址、目的地址即组播地址、报文类型、四字节Tag、APPID、报文长度、四字节的保留和APDU。 SV的帧格式见下表: SV的APDU报文格式见下表

一帧SV报文: 010CCD04000200C00000400288BA400200F2000000006081 E7800101A281E13081DE80144D4C313130324D552F4C4C4E 302E736D76636230820207F28304000000018501008781B8 000005DC00000000FFFFE1A100000000FFFFE1A100000000 FFFFEBC10000000000000A1F00000000FFFFF5E100000000 0000000000000000FFFFEBC1000000000000000000000000 000000000000000000000000000000000000000000000000 FFFFFF9900000000FFFFFECA00000000FFFFE9BF00000000 FFFFF12A00000000FFFFD73400000000FFFFF12A00000000 0000000000000000FFFFE25400000000FFFFE9BF00000000 FFFFFC4B00000000FFFFDAE900000000 解析: 010CCD04000200C000004002目的MAC和源MAC 88BA网路数据类型,9-2报文

IEC61850数据包分析

I E C61850 数 据 包 分 析

前言 (3) 1. 工具简介 (4) 1.1 抓包工具 (4) 1.2 抓包方法 (4) 1.3 分析举例 (4) 1.4 启动步骤 (6) 2. GOOSE报文分析 (9) 3. 9-2采样报文分析 (10) 4. MMS报文分析 (12) 4.1. 初始化 (12) 4.2. 后台读装置模型、以及装置的回答 (13) 4.3. 报告控制块使能 (14) 4.4. 监控后台或主站向装置写参数 (15) 4.5. 测试心跳连接的报文 (15) 4.6. 总召唤 (16) 4.7. 装置上送总召的遥测数据 (17) 4.8. 装置上送总召的遥信数据 (18) 4.9. 变位遥信上送: (19) 4.10. 遥测报文 (20) 4.11. 遥脉报文 (21) 4.12. 保护动作信号 (22) 4.13. 读波形文件列表 (24) 4.14. 调定值 (26) 4.15. 修改定值 (28) 4.16. 遥控压板 (35) 4.17. 遥控开关 (38) 附录1:IEC61850的GOOSE报文的帧格式: (41) 附录2:IEDsout使用注意事项 (44) 附录3:触发选项的规定 (44)

前言 随着IEC 61850变电站的增多,现场调试人员会越来越感到调试工具的匮乏,往往出现问题不能从根源上找原因,分析定位也无从下手。本文旨在采用mms ethereal抓包工具,从报文层面分析各种IEC 61850数据包,帮助大家解决一些实际问题。 有什么好的建议和想法请发邮件到duanyunxin@https://www.wendangku.net/doc/622835334.html,。 段运鑫 2011年6月

goose报文分析

GOOSE报文详解 Goose报文在网络上传输时采用的是OSI模型,但只用到OSI网络模型七层中的四层,应用层、表示层、数据链路层和物理层,传输层和网络层为空。应用层定义协议数据单元PDU,经过表示层编码后,不采用TCP/IP协议,而是直接映射到数据链路层和物理层。这种映射方式的目的是避免通信堆栈造成传输延时,从而保证报文传输、处理的快速性。 GOOSE报文在MAC层的帧结构包括:源MAC地址、目的地址即组播地址、报文类型、四字节Tag、APPID、报文长度、四字节的保留和GOOSEPDU。Goose具体报文格式如图0所示[0]。 图0 Goose报文格式 Goose举例报文(十六进制): 01 0C CD 01 00 51 00 1E 4F D3 AE 41 81 00 80 42 88 B8 00 33 00 90 00 00 00 00 61 81 85 80 08 67 6F 63 62 52 65 66 31 81 05 00 00 00 27 10 82 07 64 61 74 53 65 74 31 83 05 67 6F 49 44 31 84 08 4E F2 85 E1 F7 CE D9 00 85 05 00 00 00 00 01 86 05 00 00 00 00 01 87 01 00 88 05 00

00 00 00 01 89 01 00 8A 05 00 00 00 00 09 AB 36 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00 83 01 00 84 03 03 00 00 91 08 00 00 00 00 00 00 00 00 分析如下(可结合Ethereal解析): 1、01 0C CD 01 00 51 目的MAC地址 2、00 1E 4F D3 AE 41 源MAC地址 3、81 00 80 42 GOOSE报文支持IEEE 802.1Q/P优先级技术,IEEE 802.1Q为VLAN技术的标准,IEEE 802.1P为报文优先级标准。 这4个字节共同组成goose报文的tag位。Tag是有两个字节的TPID(标签协议标识)和2个字节的TCI(标签控制信息)组成。TPID配置为0x8100表示goose报文加入了优先级标识。TPID和TCI组成如图1所示: 图1:PID和TCI组成 TCI中12位VID,1位CFI和3位Priority(优先级)。12位VID可以配置4096个VLAN,CFI一般配置为0,3位Priority可以分为8个优先级:其中只配置了0-4级,5、6、7及保留未来使用。 4、88 B8 以太网类型值 0x88 B8为goose,0x88 B9为GSE,0x88 BA为采样值。如图3所示 图3 以太网类型值分配 5、00 33 APPID 两字节的最高两位对照图3解释。所以此处APPID=51(D) 6、00 90 长度=144(D) 长度字节数包含从APPID开始以太网PDU头和APDU(应用协议数据单元)的长度。长度是8+m,m是APDU的长度,m<1492。 为什么是8+m?这个8个字节分别是APPID 2个字节,长度2个字节,以及后面的保留1、保留2各两个字节。对应到本帧报文的8个字节为:00 33 00 90 00 00 00 00。 7、00 00 00 00 保留1、保留2。为将来的应用扩展使用,缺省值为0。 8、61 81 85

如何解读GOOSE报文

如何解读GOOSE报文 goose 附件: 我们以一个220kV线路保护PCS-931三相跳闸(同时发出启动失灵信号)的动作报文来分析。用MMS Ethereal软件打开文中附件的GOOSE报文: 进入工具栏的“File”→“Open” 左栏的“Directories”中选择文件路径,“Files”中选取文件后按“OK”确认 打开后报文如上图,我们需先对报文进行过滤 在“Filter”后的文本框中键入“iecgoose”(注意大小写),按回车提交过滤

过滤后显示的全部都是GOOSE 报文 图中“Time ”表示报文发生的的相对时间,“Source ”表示产生报文的源MAC 地址,“Destination ”表示报文的目的MAC 地址。 对照设计院提供的保护GOOSE 信号表中的组播地址找到我们需要查看的GOOSE 信号,在这里我们就以一个220kV 线路保护PCS-931的保护动作GOOSE 信号来进行分析。该GOOSE 的组播地址为01:0c:cd:01:14:1b 。 如上图示,在“Filter ”后的文本框中键入“eth.dst == 01:0c:cd:01:14:1b ”(注意大小写)过滤查看所有目的源地址为01:0c:cd:01:14:1b 的报文。 这是我们抓到报文中保护动作GOOSE 报文的一帧 注1:Time Allowed to Live 值一般为T0值的2倍,该参数主要用于GOOSE 断链的判断,在2倍的Time Allowed to Live 时间(在这里为20000毫秒即20秒)内未收到下一帧报文,AppID 表示应用ID 好,在此显示的是十进制数 Time Allowed to Live 表示GOOSE 报文的生存时间(注1) DataSetReference 表示该GOOSE 发送数据集的路径,具体解释见注2 GOOSEID 对应为GOOSE 控制块GSEControl 下的appID 值 Event Timestamp 表示事件时标,该值为时间发生的时间而非本段报文发送的时间 ControlBlockReference 表示GOOSE 控制块路径 StateNumber 为状态序号即StNum ,SequenceNumber 为顺序号即SqNum ,Test 表示报文是否为检修位 Number Dateset Entries 表示所传输数据集中数据的数量,Data 下的数据为数据集中各数据的传输值

模型及MMS报文分析

6 1 8 5 0 模型及M M S 报文分析基础 2012-02 参考文档: 1 .《数字化变电站调试总结 -马玉龙》 2.《 IEC61850 标准》《 IEC61850 实施规范》

1文件类型............................... 1.1ICD/CID文件结构 .......................................................... 2模型验证............................... 3、IED配置.............................. 3.1IED和LD(Logical Device相关信息 .......................................... 3.2逻辑节点LN (Logical Node) ............................................... 3.3数据DO( Data Object)及数据属性DA( Data attribute) ........................ 3.4数据集:DOI /DAI的集合.................................................... 3.5 报告控制块ReportControl: .................................................. 4如何抓包............................... 4.1抓包工具............................................................... 4.2抓包方法............................................................... 4.3分析举例............................................................... 5、MMS艮文简析............................. 5.1初始化相关............................................................... 5.2报告相关................................................................. 5.3录波相关................................................................. 5.4控制相关................................................................. 5.5定值相关.................................................................

GOOSE报文与goose文本的对应关系

GOOSE报文与goose文本的对应关系 UNIX系统项目部变电站组杜国斌 一.Goose文本的结构分析: 1.如右图截取的goose.txt文本中关于GOOSE发送部分: ①numGoCB用于配置goose发送的GoCB个数,其值一 般与GOOSE发送数据集个数保持一致; ②CoCBRef用于配置某个GoCB的引用路径,其引用名 需要在本IED下保持唯一性; ③AppID用于配置该GoCB的应用ID,需要全站唯一, 习惯上会将其配置成与CoCBRef一样,因IEDname 全站唯一,故可保证AppID全站唯一; ④DatSet用于配置该GoCB所关联的GOOSE发送数据集 的引用路径,一般为GOOSE LD下LLN0中的数据集; ⑤ConfRev用于说明该GoCB的版本号,目前装置发送 侧均配置的是默认值1,仅当特殊情况下才需修改; ⑥numDatSetEntries用于说明该GoCB所关联的GOOSE 发送数据集的总的成员个数; ⑦Addr用于配置GOOSE发送的组播MAC地址,需要全 站唯一; ⑧Priority用于配置不同VLAN的优先级,在不划分 VLAN的情况下,IEC推荐默认优先级为4,一共有7 个等级; ⑨VID用于说明该组播地址处于哪个VLAN中; ⑩Appid用于配置GOOSE子网报文的应用ID,全站唯 一,其与GoCB中的AppID有别; ?MinTime用于配置GOOSE发送机制中的间隔时间T1; ?MaxTime用于配置GOOSE发送机制中的间隔时间T0; ?[FCDA1]中说明GOOSE发送数据集中各成员的引用路 径、成员数据类型、成员内部变量名、以及成员输出信号是否经启动信号控制;

相关文档