ISO/IEC 14908-1:2012
(Main)Information technology — Control network protocol — Part 1: Protocol stack
Information technology — Control network protocol — Part 1: Protocol stack
ISO/IEC 14908-1:2012 specifies a communication protocol for local area control networks. The protocol provides peer-to-peer communication for networked control and is suitable for implementing both peer-to-peer and master-slave control strategies. ISO/IEC 14908-1:2012 describes services in layers 2 to 7. In the layer 2 (data link layer) specification, it also describes the Medium Access Control (MAC) sublayer interface to the physical layer. The physical layer provides a choice of transmission media. The interface described in ISO/IEC 14908-1:2012 supports multiple transmission media at the physical layer. In the layer 7 specification, it includes a description of the types of messages used by applications to exchange application and network management data.
Technologies de l'information — Protocole de réseau de contrôle — Partie 1: Pile de protocole
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 14908-1
First edition
2012-11-01
Information technology — Control
network protocol —
Part 1:
Protocol stack
Technologies de l'information — Protocole de réseau de contrôle —
Partie 1: Pile de protocole
Reference number
ISO/IEC 14908-1:2012(E)
©
ISO/IEC 2012
---------------------- Page: 1 ----------------------
ISO/IEC 14908-1:2012(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2012
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2012 — All rights reserved
---------------------- Page: 2 ----------------------
- 1 - 14908-1 © ISO/IEC:2012 (E)
Contents page
Foreword . 7
Introduction . 8
1 Scope . 9
2 Normative references . 9
3 Terms and definitions . 9
4 Symbols and abbreviations . 11
4.1 Symbols and graphical representations . 11
4.2 Abbreviations . 12
5 Overview of protocol layering . 13
6 MAC sublayer . 15
6.1 Service provided . 15
6.2 Interface to the link layer . 15
6.3 Interface to the physical layer . 16
6.4 MPDU format . 17
6.5 Predictive p-persistent CSMA — overview description . 17
6.6 Idle channel detection . 18
6.7 Randomising . 19
6.8 Backlog estimation . 19
6.9 Optional priority . 20
6.10 Optional collision detection . 21
6.11 Beta1, Beta2 and Preamble Timings . 21
7 Link layer . 23
7.1 Assumptions . 23
7.2 Service provided . 24
7.3 CRC . 24
7.4 Transmit algorithm . 25
8 Network layer . 26
8.1 Assumptions . 26
8.2 Service provided . 27
8.3 Service interface . 27
8.4 Internal structuring of the network layer . 28
8.5 NPDU format . 28
8.6 Address recognition . 29
8.7 Routers . 29
8.8 Routing algorithm . 30
8.9 Learning algorithm — subnets . 30
9 Transaction control sublayer . 30
9.1 Assumptions . 30
9.2 Service provided . 31
9.3 Service interface . 31
9.4 State variables . 31
9.5 Transaction control algorithm . 32
10 Transport layer . 32
10.1 Assumptions . 32
10.2 Service provided . 32
10.3 Service interface . 33
10.4 TPDU types and formats . 33
---------------------- Page: 3 ----------------------
14908-1 © ISO/IEC:2012 (E) - 2 -
10.5 Protocol diagram . 35
10.6 Transport protocol state variables . 35
10.7 Send algorithm . 35
10.8 Receive algorithm . 36
10.9 Receive transaction record pool size and configuration engineering . 36
10.9.1 General . 36
10.9.2 Number of retries . 36
10.9.3 Transport layer timers. 37
11 Session layer . 38
11.1 Assumptions . 38
11.2 Service Provided . 38
11.3 Service interface . 39
11.4 Internal structure of the session layer . 40
11.5 SPDU types and formats . 41
11.6 Protocol timing diagrams . 42
11.7 Request-response state variables . 44
11.8 Request-response protocol — client part . 45
11.9 Request-response protocol — server part . 45
11.10 Request-response protocol timers . 45
11.11 Authentication protocol . 46
11.12 Encryption algorithm . 46
11.13 Retries and the role of the checksum function . 46
11.14 Random Number Generation . 47
11.15 Using Authentication . 47
12 Presentation/application layer . 47
12.1 Assumptions . 47
12.2 Service provided . 47
12.3 Service interface . 48
12.4 APDU types and formats . 49
12.5 Protocol diagrams . 50
12.6 Application protocol state variables . 51
12.7 Request - response messaging in offline state . 51
12.8 Network variables . 52
12.8.1 General . 52
12.8.2 Network variable processing . 52
12.9 Error notification to the application program . 53
12.9.1 General . 53
12.9.2 Error notification for messages . 53
12.9.3 Error notification for network variables . 53
13 Network management & diagnostics . 53
13.1 Assumptions . 53
13.2 Services provided . 54
13.3 Network management and diagnostics application structure . 54
13.4 Node states . 54
13.5 Using the network management services. 55
13.5.1 General . 55
13.5.2 Addressing considerations . 55
13.5.3 Making network configuration changes . 56
13.5.4 Downloading an Application Program . 56
13.5.5 Error handling conditions (informative) . 56
13.6 Using router network management commands . 59
13.7 NMPDU formats and types . 60
13.7.1 General . 60
13.7.2 Query ID . 60
13.7.3 Respond to query . 61
13.7.4 Update domain . 61
13.7.5 Leave domain . 61
13.7.6 Update key . 61
---------------------- Page: 4 ----------------------
- 3 - 14908-1 © ISO/IEC:2012 (E)
13.7.7 Update address . 62
13.7.8 Query address . 62
13.7.9 Query network variable configuration . 62
13.7.10 Update group address . 62
13.7.11 Query domain . 62
13.7.12 Update network variable configuration . 62
13.7.13 Set node mode . 63
13.7.14 Read memory . 63
13.7.15 Write memory . 63
13.7.16 Checksum recalculate. 63
13.7.17 Install . 64
13.7.18 Memory refresh . 78
13.7.19 Query SI . 78
13.7.20 Network variable value fetch . 79
13.7.21 Manual service request message . 79
13.7.22 Network management escape code . 79
13.7.23 Router mode . 80
13.7.24 Router clear group or subnet table . 80
13.7.25 Router group or subnet table download . 80
13.7.26 Router group forward . 80
13.7.27 Router subnet forward . 80
13.7.28 Router Do Not forward group . 80
13.7.29 Router Do Not forward subnet . 80
13.7.30 Router group or subnet table report . 80
13.7.31 Router status . 81
13.7.32 Router half escape code . 81
13.8 DPDU types and formats . 81
13.8.1 General . 81
13.8.2 Query status . 81
13.8.3 Proxy status . 85
13.8.4 Clear status . 85
13.8.5 Query transceiver status . 85
Annex A (normative) Reference implementation . 86
A.1 General . 86
A.2 Predictive CSMA algorithm . 86
A.3 LPDU transmit algorithm .141
A.4 LPDU receive algorithm .143
A.5 Routing algorithm .144
A.6 Learning algorithm .145
A.7 Transaction control algorithm .145
A.8 Network layer algorithm.152
A.9 TPDU and SPDU send algorithm with authentication .168
A.10 Application Layer .223
A.11 Network Management Commands .278
A.12 Configuration data structures .315
A.13 Include files for the reference implementation .334
A.14 Application protocol state variables and address recognition Structures .363
A.15 Query-id data structures .366
A.16 Respond to query data structure .366
A.17 Update somain data structures .367
A.18 Leave domain data structures .367
A.19 Update key data structures .367
A.20 Update address data structures .367
A.21 Query address data structures .368
A.22 Query NV Cnfg data structures .369
A.23 Update group address data structures .369
A.24 Query domain data structures .369
A.25 Update network variable configuration data structures .370
A.26 Set node mode data structures .370
---------------------- Page: 5 ----------------------
14908-1 © ISO/IEC:2012 (E) - 4 -
A.27 Read memory data structures .370
A.28 Write memory data structures .371
A.29 Checksum recalculate data structures .371
A.30 Install command data structures .371
A.31 Memory refresh data structures .380
A.32 Query SI data structures .380
A.33 NV fetch data structures .380
A.34 Manual service request message ddata structures .380
A.35 Product query data structures .381
A.36 Router mode data structures .381
A.37 Router table clear group or subnet table data structures .381
A.38 Router group or subnet download data structures .381
A.39 Router group forward data structures .382
A.40 Router subnet forward data structures .382
A.41 Router group No-Forward data structures .382
A.42 Router subnet No-Forward data structures .382
A.43 Group / subnet table report data structures .383
A.44 Router status data structures .383
A.45 Query status data structures .383
A.46 Proxy status data structures .384
A.47 Clear status data structures .384
A.48 Query transceiver status data structures .384
Annex B (normative) Additional Data Structures .385
B.1 General .385
B.1.1 System image .385
B.1.2 Application image .385
B.1.3 Network image .386
B.2 Read-only structures .386
B.2.1 Fixed read-only data structures .386
B.2.2 Read-only structure field descriptions .387
B.3 Domain table .390
B.3.1 Domain table field descriptions .391
B.4 Address table .391
B.4.1 Declaration of group address format .392
B.4.2 Group address field descriptions .392
B.4.3 Declaration of subnet/node address format .392
B.4.4 Subnet/node address field descriptions .393
B.4.5 Declaration of broadcast address format .393
B.4.6 Broadcast address field descriptions .393
B.4.7 Declaration of turnaround address format .393
B.4.8 Turnaround address field descriptions .394
B.4.9 Declaration of protocol processor’s address format .394
B.4.10 Protocol processor address field descriptions .
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.