DHTP Connections
The DataHub Transfer Protocol
The DataHub Transfer Protocol (DHTP) is used by Cogent DataHub™ software, the Cogent DataHub service for Azure, ETK, and connected clients to send and receive data in real time over TCP across a LAN, WAN, or the Internet. Originally built upon HTTP, DHTP also supports SSL and WebSocket protocols. In continuous development for over 20 years, DHTP is open and documented in two parts, as the DataHub APIs and the DataHub Command Set.
Examples
As shown in the above diagram, DHTP may be used for the following connection types:
- Tunnelling from DataHub instance to DataHub instance on LANs and WANs
- Custom programs connecting to the DataHub program, to integrate virtually any application
- DataHub software to DataHub service for Azure service for OT to IT connections and access to remote locations
- ETK to DataHub program for on-premise connections and edge processing
Applied DHTP Features
The DataHub service for Azure and DataHub software use DHTP to provide these important IIoT features:
- Low Bandwidth & Low Latency: Consumes minimal bandwidth, while functioning with the lowest possible latency
- Ability to Scale: Can support hundreds or thousands of interconnected data sources and users
- Real-Time: Adds virtually no latency to the data transmission
- Intelligent Overload Handling: A broker (DataHub program, DataHub service for Azure, or ETK) responds appropriately when a data user is unable to keep up with the incoming data rate
- Quality of Service: Guarantees consistency of data, preserved through multiple hops
DHTP Protocol Features
DHTP communications between and among DataHub software, DataHub service for Azure, ETK, and their clients meet the following criteria for secure, robust industrial and IIoT data communications:
- Closed Firewalls: Keeps all firewall ports closed for both data sources and data users
- Interoperable Data Format: Encodes the data so that clients and servers do not need to know each other’s protocols
- Can Daisy Chain Servers: Multiple instances of brokers (DataHub software, DataHub service for Azure, or ETK) can be connected to support a wide range of collection and distribution architectures
- Propagation of Failure Notifications: Each client application can know with certainty if and when a connection anywhere along the data path has been lost, and when it recovers
- Simple: Message syntax is simple enough to be implemented even on resource-constrained devices
- Streamable: Messages can be concatenated and streamed without requiring intervening acknowledgements. This allows clients and servers to communicate asynchronously, reducing latency and significantly improving throughput