Actions

Difference between revisions of "AlphaNet Data Protocol"

From Zenitel Wiki

(Introduction)
 
(340 intermediate revisions by 14 users not shown)
Line 1: Line 1:
== Introduction ==
+
{{AI}}
 +
{| align="right"
 +
| __TOC__
 +
|}
 +
The '''AlphaNet Data Protocol''' (ACDP protocol) is used for:
 +
* Data communication between ICX-AlphaCom servers in AlphaNet
 +
* Data communication between ICX-AlphaCom and External Devices such as [[RIO]]s and PC based Control Handlers
 +
* Advanced internal control of the ICX-AlphaCom. [[Event Handler]] can use DP messages as general [[Event Handler#Action Commands|Action Commands]].
  
#To the reader
 
The purpose of this document is to specify the Data link, Network and Application layer of the AlphaCom Data Protocol.
 
• The protocol is used for communication in an AlphaCom Network that may comprise several AlphaCom and TouchLine exchanges.
 
• The protocol is also used between the AlphaCom exchange and external devices, such as Remote I/O boxes, PC based Control Handler systems etc.
 
The Data Protocol is made generally available from software version AMC 06.00. Previous AMC softwares are NOT compatible with this protocol document.
 
##Word list
 
The following concepts are commonly used in the document:
 
Module: One AlphaCom “card cage”, contains up to 26 circuit boards (such as ASLT, AMC, APC, AGA).
 
Exchange: Up to 4 AlphaCom modules interconnected in a master/slave configuration. One of the modules plays the role as a master, while the other modules are slaves. Communication with the world outside (if other devices are connected) is via the master.
 
Node: The address of an Exchange. If several exchanges are interconnected (via the AlphaCom Data Protocol), then each exchange will have a unique node number.
 
Device: Examples of device types are AlphaCom module, RIO, AlphaPro, Control Handler. All such devices have a unique device address when interconnected. The AlphaCom and AlphaPro have fixed device address, while the device address of e.g. a RIO is configured (inside the RIO) for the particular application.
 
  
== Important terms of the data protocol ==
+
=== Protocol properties ===
 +
* '''Binary format''' for speed. Readable ASCII hex format can be used as an alternative for easier debugging
 +
* The '''[[physical layer]]''' of the protocol is RS485, RS422 or RS232. In AlphaCom E the protocol can also be encapsulated in TCP/IP.
 +
* '''[[Data link layer]]s''' with message checksum for reliability, and with acknowledgment and re-transmission of erroneous messages
 +
* '''[[Network layer]]''' for routability when several exchanges are connected
 +
* '''Variable length fields''' and optional fields so that the protocol can be used also in future systems with different requirements regarding number of digits in addresses, station numbers etc.
 +
* A systematic way of '''addressing exchange resources''' both as directory numbers and physical addresses
 +
* '''Addressed messages'''. Commands are addressed to a specific [[device]], and response is returned to the device issuing the command only. In addition, there is a few status [[Broadcast messages (ACDP) |broadcast messages]]
 +
* Addressed messages can be '''routed in a network'''. The input and output messages have identical frame format, and thus can be sent via transit exchanges. The same protocol is used both to control a single exchange, and as the AlphaNet protocol<br>
  
== Protocol Layers 1 to 3 ==
+
=== Message example ===
 +
Here is a HEX coded example of a message with network layer header and application data. This is basically what you send to the exchange in the “simple link layer” format.
 +
We assume that you use exchange node 01, the PC is device 01, and that there is a station 107 and 102.
 +
The message [[DIAL_DIGITS]] looks like this, with spaces between fields for clarity only:
  
== Application Layer ==
+
Network        Application  Application Message
 +
<u>layer header</u>  <u>header      </u>  <u>parameters&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>       
 +
<u>0101</u> <u>0141</u> <u>01</u>  <u>41</u> <u>1234</u> <u>0050</u>  <u>3201107F</u> <u>20102F</u>
 +
Src  Dest Hop  Cl Ref  Msg  P1      P2
 +
<u>dev </u> <u>dev </u> <u>cn</u>t  <u>ss</u> <u>    </u> <u>id  </u>  <u>Station </u> <u>Digits</u> to dial
 +
 
 +
=== Message Formats ===
 +
* [[Message Formats - Grouped by Function]]
 +
* [[Message Formats (Sortable)]]
 +
* [[Explanation of message format]]
 +
 
 +
 
 +
[[Category:Protocols]]
 +
[[Category:ACDP messages]]

Latest revision as of 14:10, 18 October 2023

AI.png

The AlphaNet Data Protocol (ACDP protocol) is used for:

  • Data communication between ICX-AlphaCom servers in AlphaNet
  • Data communication between ICX-AlphaCom and External Devices such as RIOs and PC based Control Handlers
  • Advanced internal control of the ICX-AlphaCom. Event Handler can use DP messages as general Action Commands.


Protocol properties

  • Binary format for speed. Readable ASCII hex format can be used as an alternative for easier debugging
  • The physical layer of the protocol is RS485, RS422 or RS232. In AlphaCom E the protocol can also be encapsulated in TCP/IP.
  • Data link layers with message checksum for reliability, and with acknowledgment and re-transmission of erroneous messages
  • Network layer for routability when several exchanges are connected
  • Variable length fields and optional fields so that the protocol can be used also in future systems with different requirements regarding number of digits in addresses, station numbers etc.
  • A systematic way of addressing exchange resources both as directory numbers and physical addresses
  • Addressed messages. Commands are addressed to a specific device, and response is returned to the device issuing the command only. In addition, there is a few status broadcast messages
  • Addressed messages can be routed in a network. The input and output messages have identical frame format, and thus can be sent via transit exchanges. The same protocol is used both to control a single exchange, and as the AlphaNet protocol

Message example

Here is a HEX coded example of a message with network layer header and application data. This is basically what you send to the exchange in the “simple link layer” format. We assume that you use exchange node 01, the PC is device 01, and that there is a station 107 and 102. The message DIAL_DIGITS looks like this, with spaces between fields for clarity only:

Network        Application   Application Message 
layer header   header        parameters              
0101 0141 01   41 1234 0050  3201107F 20102F
Src  Dest Hop  Cl Ref  Msg   P1       P2
dev  dev  cnt  ss      id    Station  Digits to dial

Message Formats