Architecture for Control Networks (ACN) is a suite of for control of entertainment technology equipment, particularly as used in live performance or large scale installations. For example, lighting, audio or special effects equipment. ACN is maintained by Professional Lighting and Sound Association and its first official release was ANSI Standard E1.17-2006 - Entertainment Technology - Architecture for Control Networks. The standard was subsequently revised and released as ANSI E1.17-2010.
ACN was initially designed to be layered on top of and therefore will run over most transports including standard, inexpensive Ethernet and 802.11 (Wi-Fi) networks.
ACN defines a common protocol architecture, two major network protocols (SDT, DMP), a device description language (DDL) and a number of ‘E1.17 Profiles for Interoperability’ (known as EPIs or interoperability profiles) which define how elements of the ACN architecture must be used in a particular context to achieve interoperability. For example, by providing specific values or ranges for timing parameters to be used in a particular network environment.
The breakdown of ACN into sub-protocols, interoperability profiles and other small pieces has been criticized as making ACN hard to read and understand but it makes the architecture highly modular and cleanly layered and this has allowed many of the pieces to be operated in other contexts or replaced or revised without changing the other pieces. For example, DMP has been operated over TCP as well as over SDT as defined in the initial standard, DDL has been adapted with little change to describe devices accessed by DMX512 (ANSI E1.31/Streaming ACN), and several interoperability profiles have seen major revision or replacement without disturbing the other parts of the standard.
The common architecture specification defines a format of nested (PDUs), rather similar to TLV encoding, which are used in the main protocols. It then defines how a minimal Root Layer Protocol is used to splice the higher level protocols into a lower level transport and defines such a Root Layer Protocol using the PDU format for use on .
Session Data Transport (SDT) is a reliable multicast transport protocol which operates over which can be used to group peers within a network into sessions and deliver messages to them individually or as a group. Messages delivery is ordered and messages may be selectively sent reliably or unreliably on a message-by-message basis (reliability is very important for some data while avoiding the time and resource overhead of the reliability mechanism is beneficial for others). The reliability mechanism also provides online status so a component will detect when a connection is broken. SDT provides a high degree of fine tuning over the trade-off between latency, reliability levels and resource requirements and availability of large numbers of concurrent sessions means they are a powerful tool for grouping and managing components whose functions are related or whose communication requirements are similar.