Network Component  Version 7.3
MDK Middleware for IPv4 and IPv6 Networking
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Network Component Documentation

The Network Component v7 contains services, protocol sockets, and physical communication interfaces for creating IPv4 and IPv6 networking applications.

Network.png
Network Overview

The various services provide program templates for common networking tasks:

  • The HTTP Server supports static and dynamic page content using scripting, AJAX and SOAP technologies. Web resource files are accessed either via the File System (for component Web Server) or are directly stored in ROM (for component Web Server Compact). Using the ARM mbed TLS component, you can enable secure communication for both web servers using HTTPS.
  • FTP server/client and TFTP server/client are used for file transfer. TFTP supports only file upload and download and is typically used for boot-loading remote devices in a closed LAN. It has very low memory requirements. FTP provides full file access including sub-directories, log-in and a set of manipulation commands.
  • The Telnet Server realizes a simple Command Line Interface (CLI) over an IP network.
  • Devices are often monitored using the Simple Network Management Protocol (SNMP). The SNMP Agent helps to report vital information of a device to the network manager.
  • The DNS Client resolves domain names like www.arm.com to the respective IP address. It makes use of a freely configurable name server.
  • The SNTP Client synchronizes clocks and enables a device to get an accurate time signal over the data network.
  • The SMTP Client helps you to send out for example status updates or alerts via e-mail to freely configurable e-mail addresses.

All services rely on a network socket for communication. The Network Component supports these sockets:

  • TCP is a connection-oriented, reliable full-duplex protocol. This means that packets delivered using TCP are error-checked and delivered in the right order.
  • UDP is a transaction-oriented and stateless protocol. Data streaming or time-critical applications commonly use UDP. With UDP you can multicast a datagram to a group of devices.
  • The BSD Socket API is a programming interface, which implements a standard Berkeley Socket communication interface (using TCP and UDP sockets for communication).

The physical interface can be either Ethernet or a serial connection.

  • Ethernet Interface is widely used for connecting local area networks (LAN). It can utilize different media as means of transmission.
  • The serial connection supports two different protocols:
    • The SLIP Interface implements the Internet Protocol over a serial connection.
    • The PPP Interface connects two network devices directly and provides authentication.

A driver provides the interface to the microcontroller peripherals or external components (for example an external PHY chip).

  • For Ethernet an Ethernet MAC and an Ethernet PHY is required.
  • PPP or SLIP interfaces use a UART and a Modem.

The Network CORE is available in a Debug variant with extensive diagnostic messages. The Release variant omits this diagnostic information.

For mass production, the Runtime Configuration option can be used to assign individual network addresses to every device that is produced. Unique identifiers are required for proper network operation.

A list of implemented RFCs is also available.

MDK Editions

MDK Middleware is available to all users of MDK-Professional and MDK-Plus. The following table shows the differences in Network component availability:

MDK-Pro MDK-Plus MDK-Pro Net_v6
Network (IPv4) Available Available Available (v6 API)
Network (IPv4/IPv6) Available
Network (SSL/TLS) Available
Note
MDK Middleware v7.2.0 and above contains the network variant MDK-Pro Net_v6 which adds full support for the API of MDK Middleware v6.x. It supports IPv4 networking only and is only available to users of MDK-Professional. A compatibility mode is available for MDK-Professional and MDK-Plus that enables you to use the old API with only minor modifications in a v7 project.

Documentation

This user's guide contains the following chapters:

  • Creating a Network Application explains the necessary steps to develop a network project from scratch.
  • Secure Communication shows how to use mbed TLS together with the Network Component to secure your communication channels. It also explains how to create your own SSL/TLS certificates.
  • Network Examples are a good starting point for implementing your own networking device.
  • The Migration compares "migration guide" contains information how to migrate from previous versions to the Network Component v7.