CycloneTCP is a dual IPv4/IPv6 stack dedicated to embedded applications. CycloneTCP conforms to RFC standards and offers seamless interoperability with existing TCP/IP systems. By supporting IPv6, CycloneTCP eases deployment of next-generation Internet. The stack is distributed as a full ANSI C and highly maintainable source code. CycloneTCP is available either as open source (GPLv2, Evaluation) or under a royalty-free commercial license.
Key Features
- Dual stack (IPv4 and/or IPv6)
- Built-in support for multiple network interfaces
- Flexible memory footprint (built-time configuration to embed only the necessary features)
- Configurable memory model (static memory pool or heap memory allocation)
- Portable architecture (no processor dependencies)
- Straightforward port to any RTOS
- Highly maintainable source code
- Debugging and trace functionality to ease development and integration
- BSD style socket API
- Blocking/non-blocking socket operation and event-driven functions (select and poll)
- Efficient data transfer through zero copy
- Well-crafted TCP module with selective acknowledgement (SACK) and congestion control
- Raw socket interface
- IP fragmentation and reassembly support
- Support for virtual interfaces (multiple MAC addresses per physical interface)
- Support for multi-homed hosts (multiple IPv4 addresses per interface)
- Ethernet port multiplication using VLAN tagging or tail tagging
- VLAN support (802.1q and 802.1ad)
- USB Device RNDIS class driver (for STM32 microcontrollers)
- Demo projects available on STM32 evaluation boards (Nucleo, Discovery, Eval)
Supported Protocols
- DNS client
- NetBIOS client and responder
- LLMNR client and responder
- mDNS client and responder
- DNS-SD responder (DNS-based service discovery)
- DHCP client and server
- Auto-IP (dynamic configuration of IPv4 link-local addresses)
- DHCPv6 client and relay agent
- SLAAC (IPv6 stateless address autoconfiguration)
- Multicast support (IGMPv2 and MLDv1)
- FTP / FTPS client and server (implicit TLS and explicit TLS modes supported)
- HTTP / HTTPS client
- HTTP / HTTPS server with SSI, CGI scripting and WebSocket support
- HTTP/2 client (including HPACK compression, server push and https scheme)
- MQTT v3.1.1 client (TCP, TLS, WebSocket and secure WebSocket transport layers supported)
- MQTT-SN client (UDP and DTLS transport layers supported)
- CoAP client and server (DTLS-secured CoAP, Observe and Block-Wise Transfers supported)
- SMTP client
- SNTP client (network time synchronization)
- SNMP agent (SNMPv1, SNMPv2c and SNMPv3 supported)
- Remote management of SNMP users and access rights (SNMP-USM-MIB and SNMP-VACM-MIB)
- Standard MIBs: MIB-II, IF-MIB, IP-MIB, TCP-MIB, UDP-MIB, SNMPv2-MIB
- TFTP client and server
- Modbus/TCP client and server (Modbus/TCP security supported)
- WebSocket client and server (WebSocket connections tunneled over SSL/TLS supported)
- PPP (Point-to-Point Protocol)
License: Open Source (GPLv2, Evaluation) or Commercial
Supported Devices | STM32,STM32MP1,SPC5 |
Software Function | Connect |
Middleware | MQTT, TCP/IP, UDP/IP |
Deliverable | Source |
License Type | Commercial with free trial version |
Site |
Served Countries:
Worldwide