Java could play a bigger part in networking for the Internet of things. The Kona Project, proposed on openjdk.java.net this week, would define and implement Java APIs for networking technologies and protocols commonly used in IoT.
"The primary goal of the project would be to define APIs that can be efficiently implemented and used on embedded devices," said Oracle official Riaz Aimandi in a posting to the openjdk mailing list. "These APIs would be defined in such a way that they could be potentially used with Java ME (Micro Edition), although the project would initially focus on the implementation for Java SE (Standard Edition)." Current plans call for creating the project outside of the Java Community Process, the formal process for amending official Java specifications.
The project's first protocol would be Constrained Application Protocol (CoAP), to be contributed by ARM as a specialized Web transfer protocol for use in IoT. "[The proposal] should have support for UDP connector with Datagram Transport Layer Security (DTLS) handled outside of other CoAP APIs," Aimandi said in the posting.
Other connectors, such as TCP, could be added afterward, along with technologies such as Bluetooth. Aimandi suggests both Oracle and ARM participate in Kona. He did not respond an email inquiry about Kona from InfoWorld on Wednesday.
An analyst at Forrester Research, Jeffrey Hammond, cited the lack of standardized communications protocols in IoT and a need for reference implementations: "There are dozens of existing industry-specific communication protocols for machine-to-machine communication. As IoT emerges, we're also seeing a number of new communication protocols. CoAP is one, MQTT is another I've run into. At this point it's unclear whether we'll end up with a second generation of the IoT equivalent of a ‘Tower of Babel' or see cross-industry consolidation around a few -- probably open -- standard protocols like COAP or MQTT." With reference implementations in popular languages like Java or C, the industry could tilt away from the "existing mess that the machine-to-machine world finds itself in," Hammond said.
Oracle and, lately, the Eclipse Foundation have been promoting Java's usage in the Internet of things, which could potentially enable billions of devices ranging from refrigerators to TVs to cars. But Java faces myriad competition, with platforms like Google's Java-based Android, Microsoft's Windows Embedded, and Apple iOS in the mix.