3.1.3.1 Setting Configuration

A node MUST be configured with the following information before connecting to a mesh.

  • ListenIPAddress: A unicast IPV4 or IPV6 address that is valid for the node that will be used to accept connection requests. If no ListenIPAddress is specified, the application is requesting support for multihoming, and the node SHOULD accept connection requests on all active network interfaces.

  • Port: The port number on which the local node's TCP listener is opened. This information is published in the discovery service that is used by other nodes in the mesh to connect to the local node.

  • Mesh name: This is also passed to the discovery service to find other nodes in the mesh.

  • Discovery service connection information: This is used to obtain the endpoint information of other nodes in the mesh.

  • Channel type information: Channel type definitions that the node will handle. At least one channel type definition must be provided in order for the node to receive and send messages. For each channel type, the configuration must be provided, as follows:

    • ChannelType URI: A properly formatted channel type URI

    • ¬†MessageDispatcher callback: A callback function that processes the messages

    • ¬†MessageValidator callback: The message security verification callback

  • Security mode and security configuration: The node must have all necessary security information to connect to the mesh if the mesh is configured to support security. All nodes participating in a single mesh MUST have the same security configuration.

    For each new connection where the ConnectionState data element is set to the Connected value, the node MUST initialize LinkUtilityIndex to zero to indicate the usefulness of the connection.