Network Core Engine¶
The Net module defines a low-level network framework for embedded devices. This module allows you to manage connection (TCP)- or connectionless (UDP)-oriented protocols for client/server networking applications.
The Net library includes two sub-protocols:
- UDP: a connectionless-oriented protocol that allows communication with the server or client side in a non-reliable way. No handshake mechanisms, no guarantee on delivery, and no order in packet sending.
- TCP: a connection-oriented protocol that allows communication with the server or client side in a reliable way. Handshakes mechanism used, bytes ordered, and error checking performed upon delivery.
LLNET_NETWORKINTERFACE_impl.h(see LLNET: Network).
Network is an additional module. In the platform configuration file,
check NET to install this module. When checked, the properties file
net/net.properties is required during platform creation to
configure the module. This configuration step is used to customize the
kind of TCP/IP native stack used and the Domain Name System (DNS)
The properties file must / can contain the following properties:
stack[optional, default value is “custom”]: Defines the kind of TCP/IP interface used in the C project.
custom: Select this configuration to make a “from scratch” implementation glue between the C Network Core Engine and the C project TCP/IP interface.
bsd: Select this configuration to use a BSD-like library helper to implement the glue between the C Network Core Engine and the C project TCP/IP interface. This property requires that the C project provides a TCP/IP native stack with a Berkeley Sockets API and a
dns[optional, default value is “native”]: Defines the kind of Domain Name System implementation used.
native: Select this configuration to implement the glue between the C Network Core Engine DNS part and the C project TCP/IP interface.
soft: Select this configuration if you want a software implementation of the DNS part. Only the IPs list of the DNS server must be provided by the C Network Core Engine glue.
The Net API Module must be added to the module.ivy of the MicroEJ Application project to use the Net library.
<dependency org="ej.api" name="net" rev="1.1.1"/>
This library provides a set of options. Refer to the chapter Application Options which lists all available options.