0% found this document useful (0 votes)
145 views3 pages

CycloneTCP Datasheet

CycloneTCP is an open-source embedded TCP/IP stack that supports both IPv4 and IPv6. It implements many common network protocols and provides a BSD socket API. The full source code is distributed under an ANSI C license and is highly portable across different operating systems and processor architectures.

Uploaded by

musat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
145 views3 pages

CycloneTCP Datasheet

CycloneTCP is an open-source embedded TCP/IP stack that supports both IPv4 and IPv6. It implements many common network protocols and provides a BSD socket API. The full source code is distributed under an ANSI C license and is highly portable across different operating systems and processor architectures.

Uploaded by

musat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

CycloneTCP v2.3.

0
Embedded TCP/IP Stack (IPv4/IPv6)

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.

Main 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 (SMSC switches) or tail tagging (Micrel switches)
VLAN support (802.1Q and 802.1ad)
USB Device RNDIS class driver (for STM32 microcontrollers)

© 2010-2023 Oryx Embedded www.oryx-embedded.com


CycloneTCP v2.3.0
Embedded TCP/IP Stack (IPv4/IPv6)

Supported Protocols Supported Processors


LLDP agent compliant with 801.1AB-2005 (TX- ARM Cortex-M3
only, RX-only and TX/RX modes supported) ARM Cortex-M33
ARM Cortex-M4
DNS client
ARM Cortex-M7
NetBIOS client and responder
ARM Cortex-R4
LLMNR client and responder ARM Cortex-A5
mDNS client and responder ARM Cortex-A8
DNS-SD responder (DNS-based service ARM Cortex-A9
discovery) Legacy ARM7TDMI / ARM926EJ-S
DHCP client and server RISC-V
Auto-IP (dynamic configuration of IPv4 link-local MIPS M4K
addresses) MIPS microAptiv / M-Class
Infineon TriCore AURIX
DHCPv6 client and relay agent
PowerPC e200
SLAAC (IPv6 stateless address
Coldfire V2
autoconfiguration) RX600
Multicast support (IGMPv2 and MLDv1) AVR32
FTP / FTPS client and server (implicit TLS and Xtensa LX6
explicit TLS modes supported)
HTTP / HTTPS client Supported Compilers / Toolchains
HTTP / HTTPS server with SSI, CGI scripting and GNU GCC / Makefile
WebSocket support AC6 System Workbench for STM32 (SW4STM32)
HTTP/2 client (including HPACK compression, HighTec Toolset for TriCore
server push and https scheme) IAR Embedded Workbench
MQTT v3.1.1 client (TCP, TLS, WebSocket and Infineon DAVE
Keil MDK-ARM
secure WebSocket transport layers supported)
Microchip Studio (Atmel Studio) & MPLAB X
MQTT-SN client (UDP and DTLS transport layers
Microsoft Visual Studio
supported) NXP MCUXpresso
CoAP client (DTLS-secured CoAP, Observe and Renesas e2Studio
Block-Wise Transfers supported) Segger Embedded Studio
CoAP server (DTLS-secured CoAP supported) ST STM32CubeIDE & TrueSTUDIO
SMTP client Tasking VX-Compiler for TriCore
SNTP client (network time synchronization) TI Code Composer Studio (CSS)
SNMP agent (SNMPv1, SNMPv2c and SNMPv3
supported)
Supported Operating Systems
Remote management of SNMP users and access Amazon FreeRTOS
rights (SNMP-USM-MIB and SNMP-VACM-MIB) ChibiOS/RT
CMSIS-RTOS
Standard MIBs: MIB-II, IF-MIB, IP-MIB, TCP-MIB,
CMSIS-RTOS2
UDP-MIB, SNMPv2-MIB, LLDP-MIB
CMX-RTX
TFTP client and server Keil RTXv4 and RTXv5
Syslog client Micrium µC/OS-II and µC/OS-III
Modbus/TCP client and server (Modbus/TCP Microsoft Azure RTOS (ThreadX)
security supported) Segger embOS
WebSocket client and server (WebSocket TI-RTOS (SYS/BIOS)
connections tunneled over SSL/TLS supported) Zephyr RTOS
PPP (Point-to-Point Protocol) Bare Metal programming (without RTOS)

© 2010-2023 Oryx Embedded www.oryx-embedded.com


CycloneTCP v2.3.0
Embedded TCP/IP Stack (IPv4/IPv6)

Data Link Layer (PPP) Application Layer


RFC 1332: The PPP Internet Protocol Control RFC 959: File Transfer Protocol (FTP)
Protocol (IPCP) RFC 1035: Domain Names – Implementation and Specification
RFC 1334: PPP Authentication Protocols RFC 1157: A Simple Network Management Protocol (SNMP)
RFC 1661: The Point-to-Point Protocol (PPP) RFC 1213: Management Information Base for Network
RFC 1662: PPP in HDLC-like Framing Management of TCP/IP-based internets (MIB-II)
RFC 1994: PPP Challenge Handshake Authentication
RFC 1350: The TFTP Protocol (Revision 2)
Protocol (CHAP)
RFC 1769: Simple Network Time Protocol (SNTP)
RFC 2472: IP Version 6 over PPP
RFC 1905: Protocol Operations for Version 2 of the Simple
Network Management Protocol (SNMPv2)
Network Layer (IPv4) RFC 1945: Hypertext Transfer Protocol - HTTP/1.0
RFC 791: Internet Protocol Specification RFC 2131: Dynamic Host Configuration Protocol
RFC 792: Internet Control Message Protocol RFC 2132: DHCP Options and BOOTP Vendor Extensions
Specification RFC 2616: Hypertext Transfer Protocol - HTTP/1.1
RFC 815: IP Datagram Reassembly Algorithms RFC 2617: HTTP Authentication: Basic and Digest Access
RFC 826: Ethernet Address Resolution Protocol Authentication
RFC 1112: Host Extensions for IP Multicasting RFC 2818: HTTP Over TLS
RFC 1122: Requirements for Internet Hosts -
RFC 2863: The Interfaces Group MIB
Communication Layers
RFC 3164: The BSD syslog Protocol
RFC 2113: IP Router Alert Option
RFC 3207: SMTP Service Extension for Secure SMTP over
RFC 2236: Internet Group Management Protocol,
Version 2 Transport Layer Security
RFC 3927: Dynamic Configuration of IPv4 Link-Local RFC 3315: Dynamic Host Configuration Protocol for IPv6
Addresses (DHCPv6)
RFC 5227: IPv4 Address Conflict Detection RFC 3410: Introduction and Applicability Statements for
Internet Standard Management Framework
Network Layer (IPv6) RFC 3411: An Architecture for Describing SNMP Management
Frameworks
RFC 2460: Internet Protocol, Version 6 (IPv6) RFC 3412: Message Processing and Dispatching for the SNMP
Specification
RFC 3413: Simple Network Management Protocol (SNMP)
RFC 2464: Transmission of IPv6 Packets over
Applications
Ethernet Networks
RFC 2710: Multicast Listener Discovery (MLD) for RFC 3414: User-based Security Model (USM) for version 3 of
IPv6 the Simple Network Management Protocol (SNMPv3)
RFC 3484: Default Address Selection for Internet RFC 3415: View-based Access Control Model (VACM) for the
Protocol version 6 (IPv6) Simple Network Management Protocol (SNMP)
RFC 3493: Basic Socket Interface Extensions for IPv6 RFC 3418: Management Information Base (MIB) for the Simple
RFC 4291: IP Version 6 Addressing Architecture Network Management Protocol (SNMP)
RFC 4294: IPv6 Node Requirements RFC 3584: Coexistence between Version 1, Version 2, and
RFC 4443: Internet Control Message Protocol Version 3 of SNMP Framework
Version 6 (ICMPv6) Specification RFC 3646: DNS Configuration options for DHCPv6
RFC 4861: Neighbor Discovery for IP version 6 (IPv6) RFC 3826: AES Cipher Algorithm in the SNMP User-based
RFC 4862: IPv6 Stateless Address Autoconfiguration Security Model
RFC 6106: IPv6 Router Advertisement Options for RFC 4022: MIB for the Transmission Control Protocol (TCP)
DNS Configuration
RFC 4113: MIB for the User Datagram Protocol (UDP)
RFC 4293: MIB for the Internet Protocol (IP)
Transport Layer RFC 4795: Link-local Multicast Name Resolution (LLMNR)
RFC 768: User Datagram Protocol RFC 4954: SMTP Service Extension for Authentication
RFC 793: Transmission Control Protocol RFC 5321: Simple Mail Transfer Protocol
RFC 2018: TCP Selective Acknowledgment Options RFC 6455: The WebSocket Protocol
RFC 5681: TCP Congestion Control RFC 6528: Defending against Sequence Number Attacks
RFC 6298: Computing TCP's Retransmission Timer RFC 6762: Multicast DNS
RFC 6528: Defending against Sequence Number RFC 6763: DNS-Based Service Discovery
Attacks RFC 7252: The Constrained Application Protocol (CoAP)
RFC 9293: Transmission Control Protocol (TCP) RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
RFC 7541: HPACK Header Compression for HTTP/2
IEEE RFC 7641: Observing Resources in the Constrained Application
IEEE Std 802.1AB-2005: IEEE Standard for Local and Protocol (CoAP)
metropolitan area networks - Station and Media RFC 7860: HMAC-SHA-2 Authentication Protocols in the User-
Access Control Connectivity Discovery based Security Model
RFC 7959: Block-Wise Transfers in the Constrained Application
Protocol (CoAP)

© 2010-2023 Oryx Embedded www.oryx-embedded.com

You might also like