
TCP/IP Networking
A compact, reliable, high-performance TCP/IP protocol stack
designed for embedded applications, featuring dual IPv4 and IPv6 support.
Return to the µC/OS Overview
Features
Key Features
Micrium's TCP/IP stack includes the following features:
- Supports multiple interfaces and multiple IP addresses per interface (multihoming)
- Support IPv4 and IPv6
- BSD socket API with most popular socket option
- Scalable to contain only required features and minimize memory footprint.
- SSL/TLS socket option (sold separately).
- High performance/bandwidth
IPv6 Support
Micrium's TCP/IP stack provides IPv6 support, allowing embedded devices to have unique IP addresses across the Internet. With IPv6, your embedded device can take advantage of the new Neighbor Discovery Protocol (NDP), and superior multicast support.
Switching to IPv6 is easy, and µC/OS allows for simultaneous use of IPv4 and IPv6. Micrium provides its IPv4 and IPv6 network stacks separately, and they can be used in your product individually or in tandem.
Micrum’s support for IPv6 includes:
- IPv6 Node
- SLAAC (IPv6 stateless address autoconfiguration )
- IPv6 Multicast (MLD)
- Neighbour Discovery Protocol (NDP)
- ICMPv6 (echo request/response)
SSL Module (optional)
The SSL / TLS specification is the world's most widely-implemented security protocol.
Micrium's SSL module is ideal for IoT devices — such as medical equipment, industrial sensors, smart grid devices, camcorders, and many others — that need to transport data securely over the Internet.
Our SSL module is built for efficiency and high performance with support for TLS 1.2 and TLS certificate management. The memory footprint is remarkably small: 60K of RAM is required per secured socket.
This module is available as an option.
Contact Micrium to learn more about our SSL module, developed by our partner Mocana.
Specifications and RFC Compliance
Specifications
Micrium's TCP/IP specifications include, but are not limited to, the following:
Supported processors |
Wide-ranging support. Nearly every processor works with Micrium's TCP/IP stack. |
Related network applications |
DHCP Client, DNS Client, HTTP Client, HTTP Server, FTP Client, TFTP Server, TFTP Client, SMTP Client, SNMP Agent, SNTP Client, TELNET Server. |
Real-time kernel |
Required. Micrium’s μC/OS-III or μC/OS-II suggested and supported. |
Transport layer |
TCP and/or UDP |
Protocols supported |
Multicast transmission and reception (IGMPv2), IPv6 Multicast (MLD), ICMPv6, ARP, Neighbor Discovery Protocol (NDP) |
Interface type |
Ethernet (802.3 and Ethernet), Wi-Fi, Loopback |
Socket API |
Two sets of socket APIs: one proprietary and another a standard BSD socket. |
Stack Compliance
Micrium uses Ixia’s IxANVL to validate the compliance of the stack with the networking RFCs. IxANVL is used by Developers and manufacturers of networking equipment and Internet devices to validate protocol compliance and interoperability.
The table below lists the different RFCs supported by Micrium's TCP/IP.
Transport |
- UDP (RFC #768)
- TCP (RFC #793, #813, #879, #896, #2001, #2584, #2988)
- TCP Congestion Control (RFC #5681)
- TCP’s Retransmission Timer (RFC #6298)
|
IPv4 |
- Internet Protocol Specification (IPv4) (RFC #791, #950, #1071, #3927)
- IP Datagram Reassembly Algorithms (RFC #815)
- Ethernet Address Resolution Protocol (ARP) (RFC #826)
- Internet Control Message Protocol Specification (ICMP) (RFC #792)
- Host Extensions for IP Multicasting (RFC #1112)
- Internet Group Management Protocol, Version 2 (IGMPv2) (RFC #2113)
|
IPv6 |
- IPv6 Specification (RFC #2460, #2464, #4291)
- IPv6 Node Requirements (RFC #4294)
- Internet Control Message Protocol Version 6 (ICMPv6) (RFC #4443)
- Neighbor Discovery for IP version 6 (NDP) (RFC #4861)
- Multicast Listener Discovery (MLD) for IPv6 (RFC #2710)
- Basic Socket Interface Extensions for IPv6 (RFC #3493)
- Default Address Selection for Internet Protocol version 6 (RFC #3484)
|
Interface |
Ethernet (RFC #894, #1042) |
TCP/IP Layers
Micrium's TCP/IP requires the presence of a kernel for task scheduling and mutual exclusion. To meet this requirement, Micrium provides source code to allow network applications to readily accommodate μC/OS-II and μC/OS-III.
Drivers
Drivers for Network Controllers
Micrium's TCP/IP provides drivers for the following controllers:
The tables below show the list of hardware architectures from our silicon partners for which we provide controller support. It also indicates its location indicating if it is part of the microcontroller (MCU), part of a field-programmable gate array (FPGA), or external to the device (External).
If you don’t see the driver you are looking for please contact our sales department. We can give you the latest information on new driver development.
Ethernet
Micrium's TCP/IP provides these Ethernet controller drivers:
Manufacturer |
Driver |
Device Family |
Location |
MAC Type |
Altera |
TSE |
Stratix V, Stratix IV, Arria V, Arria II, Cyclone V, Cyclone IV & HardCopy IV |
FPGA |
Ethernet 10/100/1000 |
Altera |
HPS EMAC |
Altera SoC |
HPS |
Ethernet 10/100/1000 |
Atmel |
AT91RM9200 |
RM9200 |
MCU |
Ethernet 10/100 |
Atmel |
GEM |
ATSAMA5 |
MCU |
Ethernet 10/100/1000 |
Atmel |
MACB |
AVR32 |
MCU |
Ethernet 10/100 |
Atmel |
MACB_AP7000 |
AVR32 AP7000 |
MCU |
Ethernet 10/100 |
Davicom |
DM9000 |
- |
External |
Ethernet 10/100 |
Freescale |
FEC |
- |
MCU |
Ethernet 10/100 |
Freescale |
FEC_MPC55xx |
MPC55xx |
MCU |
Ethernet 10/100 |
Freescale |
MACNet |
Kinetis |
MCU |
Ethernet 10/100 |
STMicroelectronics Fujitsu NXP |
GMAC |
STM32Fxxxx MB9BFD10T MB9BF610T MB9BF210T LPC185x LPC183x LPC435x LPC433x |
MCU |
Ethernet 10/100 |
Luminary Micro |
LM3S9Bxx |
LM3S9B9x |
MCU |
Ethernet 10/100 |
Luminary Micro |
LM3Sxxxx |
LM3Sxxxx |
MCU |
Ethernet 10/100 |
Microchip |
PIC32 |
PIC32MX6/7 |
MCU |
Ethernet 10/100 |
Microsemi |
A2Fx00 |
A2Fx00 |
MCU |
Ethernet 10/100 |
NXP |
LPCxxxx |
LPC17xx LPC23xx LPC24xx LPC32x0 |
MCU |
Ethernet 10/100 |
Renesas |
H8S2472 |
H8S2472 |
MCU |
Ethernet 10/100 |
Renesas |
RX-EtherC |
RX62N RX63N |
MCU |
Ethernet 10/100 |
Renesas |
RZ-EtherC |
RZ/A1 |
MCU |
Ethernet 10/100 |
Renesas |
SH-EtherC |
SH-Ether |
MCU |
Ethernet 10/100 |
SMSC |
LAN911x |
LAN911x |
External |
Ethernet 10/100 |
STMicroelectronics |
STM32Fxxx |
STM32Fxxx |
MCU |
Ethernet 10/100 |
STMicroelectronics |
STR912 |
STR912 |
MCU |
Ethernet 10/100 |
Texas Instruments |
OMAP-L1x |
OMAP-L137 OMAP-L138 |
MCU |
Ethernet 10/100 |
Toshiba |
TMPM369 |
TMPM369 |
MCU |
Ethernet 10/100 |
Xilinx |
EtherLite |
6/7-Series Ultrascale Ultrascale+ |
FPGA |
Ethernet 10/100 |
Xilinx |
GEM |
Zynq-7000 |
MCU |
Ethernet 10/100/1000 |
Xilinx |
XPS_LL_TEMAC |
Virtex-5 LX, Virtex-5 LXT, Virtex-5 SXT, Virtex-4 FX, Virtex-4 LX, Virtex-4 SX, Spartan-6, Spartan-3A, Spartan-3A DSP, Spartan-3AN & Virtex-6 |
FPGA |
Ethernet 10/100/1000 |
µC/USBD |
CDC EEM |
Host CDC EEM |
External |
USB |
Wi-Fi
Micrium's TCP/IP provides these Wi-Fi controller drivers:
Manufacturer |
Driver |
Device Family |
Location |
MAC Type |
Gainspan |
GS2xxx |
GS2xxx |
External |
WiFi – SPI |
Qualcomm-Atheros |
QCA400x |
GT202 | QCA400x |
External |
WiFi – SPI |
Redpine Signals |
RS9110n2x |
RS9110-N-11-2x-(xx) |
External |
Wi-Fi |
PHY
Micrium's TCP/IP provides these physical layer (PHY) drivers:
Manufacturer |
Driver |
PHY Chip |
Media Interface |
Media Interface Location |
- |
Generic |
- |
(R)MII |
EMAC |
Texas Instruments |
DP83848C |
DP83848C |
(R)MII |
EMAC |
Texas Instruments |
DP83640 |
DP83640 |
(R)MII |
EMAC |
AMD |
AM79C874 |
AM79C874 |
(R)MII |
EMAC |
Marvell |
88E1111 |
88E1111 |
GMII/RGMII/MII |
EMAC |
Micrel |
KSZ9021RN/RL |
KSZ9021R |
GMII/RGMII/MII |
EMAC |
Network Applications
DHCP Client |
Dynamic Host Configuration Protocol – client
- Transmit and receive option is supported
- IPv4 Only
|
DNS Client |
Domain Name System – client
- Support IPv4 and IPv6
- Auto select best address
- Integrated cache
|
FTP Client |
File Transfer Protocol – client
- Support authentication.
- Transfer via buffers or files (file system required).
- Support SSL (Secure Sockets Layer)
|
HTTP Client |
Hypertext Transfer Protocol – Web client
- Full support for HTTP 1.1 (RFC 2616)
- All HTTP methods suported (GET, POST, PUT, DELETE, HEAD, OPTIONS, and TRACE)
- Support for WebSocket
- Support for persistent connections
- HTTP header field processing (HTTP cookies)
- HTTP query string processing
- Support multiple simultaneous connection with multiple HTTP Server
|
HTTP Server |
Hypertext Transfer Protocol – Web server
- Supports multi connection - up to 255 client connections
- Supports any file system, or can be used via a static file system, which is provided
- Highly customizable via hook functions
- Include add-on for advanced functionalities such as Authentication Module and REST Framework
|
MQTT Client |
MQTT messaging protocol
- Supports multiple simultaneous connections with multiple MQTT brokers
- Support for multiple message in the air simultaneously
- Unlimited number of connections and messages
- Support all Qualities of Service (QoS-0, QoS-1 & QoS-2)
|
SMTP Client |
Simple Mail Transfer Protocol – client
- Support for SSL/TLS
- Support Authentication
|
SNMP Agent |
Simple Network Management Protocol Agent.
This application is provided by DMH Software. More details available here.
- Delivered as a source code SDK in highly portable ANSI C, or as a binary SDK
- SNMPv3 support
- Includes MIB compiler
- Full implementation of SNMP Version 3 Agent with USM, VACM and SNMPv3 application MIBs
|
SNTP Client |
Simple Network Time Protocol – client |
Telnet Server |
Telnet – server
- Integrated with uCOS-Shell
- Support authentication uCOS-Common
- Support SSL (Secure Sockets Layer).
|
TFTP Client |
Trivial File Transfer Protocol – client
- Transfer and reception via buffers or files (file system required).
|
TFTP Server |
Trivial File Transfer Protocol – server
- Support any file system; a file system is required.
|
Licensing
Licensing Packages That Meet Your Needs
Micrium embedded components are priced as individual modules or as bundled solutions. Check out our licensing page for more information.
Documentation
Micrium's user documentation is available online on the Micrium documentation site.
Contact us today and start working with µC/OS
View the complete site map
© 2017 Silicon Labs. All rights reserved.