Features

Kristen Data Comms (KDC) provides a comprehensive set of features for building distributed applications. From executable software Agents and flexible communication protocols to serialization, encryption, and cross-language support, KDC simplifies the development of networked systems.

The following table highlights KDC’s core capabilities and the technologies that make them possible.

KDC Feature Description
Agents Send executable Agents—programming logic and data—from sender to receiver.
Design Patterns Command, Visitor, Dependency Injection, Builder, Adapter, and Observer/Listener.
Communication Modes Synchronous and asynchronous communication.
Protocols TCP, UDP, Multicast, HTTP, and WebSockets.
Protocol Flexibility The same Agent can visit multiple receivers using same or different protocols. For example, Sender sends via TCP across the WAN to a TCP server. TCP server broadcasts the agent via Multicast on the LAN.
Native Objects Agents containing code and data are native to their programming language.
Serialization JSON, user-supplied Protocol Buffers, or native Kristen Protobuf.
Kristen Protobuf Automatically converts a POJO into a generic Protocol Buffer representation.
Language Support Java, JavaScript clients, and Python clients.
Compression & Encryption Enable compression and encryption through simple configuration parameters.
No Middleware Required No Object Request Broker (ORB) or intermediate server required.
No IDL Required No Interface Definition Language required.
Ease of Use Easy to learn, configure, and use.
Security Agent classes must be available on the sender and receiver’s classpath.