NetX and NetX Duo are Express Logic’s high-performance implementations of TCP/IP protocol standards. NetX provides a streamlined, IPv4 capable TCP/IP stack, while NetX Duo is Express Logic’s new TCP/IP stack that provides both IPv4 and IPv6 capabilities in a dual-stack product. Both NetX and NetX Duo are fully integrated with ThreadX and are available for all supported processors. NetX and NetX Duo have a unique Piconet™ architecture. Combined with a zero-copy API, they are a perfect fit for today’s deeply embedded applications that require network connectivity.
NetX Duo conforms to RFC standards and offers complete interoperability with devices from other vendors. NetX Duo offers several new capabilities. For the first time, nodes can configure their interface addresses automatically through the Stateless Address Autoconfiguration protocol. Nodes also can use layered structures to enable devices more efficiently to process IPv6 headers. NetX Duo implements the following protocols:
- All IPv4 features available in NetX 5.x
- IPv6 header and extension header processing
- Neighbor Discovery Protocol
- Router Discovery Protocol
- Stateless Address Autoconfiguration
- Duplicate Address Detection
NetX Duo has achieved IPv6-Ready Logo certification, evidence that it has passed conformance and interoperability tests, administered and validated by the IPv6 Forum. There are two phases of testing, Phase-I and Phase-II. Phase-I is relatively basic and limited to verification of select IPv6 capabilities. Phase-II is much more rigorous and extensive, and is a superset of Phase-I.
Express Logic chose to seek Phase-II approval, which required NetX Duo to pass an extremely challenging set of 373 test cases, which cover the following RFCs:
- RFC 2460 – IPv6 Specification
- RFC 4861 – Neighbor Discovery for IPv6
- RFC 4862 – IPv6 Stateless Address Autoconfiguration
- RFC 1981 – Path MTU Discovery for IPv6
- RFC 4443 – ICMPv6
These test cases make sure the implementation conforms to core IPv6 operations.
The Phase-II Interoperability tests ensure that the implementation is able to work with other devices and routers. This test requires setting up a test network with multiple routers and hosts, and to validate that NetX Duo follows the IPv6 standard and correctly interacts with other hosts and routers.
NetX Duo has successfully performed these tests and has received official IPv6-Ready Logo certification, enabling Express Logic to join a select, small group of embedded software companies who can proudly display the IPv6 Ready logo, indicating that they have completed this rigorous testing and validation process.
NetX and NetX Duo provide a complete set of protocol components that comprise the TCP/IP standard, including the following:
- Full TCP/IP Networking
- IPv4 and IPv6 Support
- Flexible Packet Management
- Internet Protocol (IP)
- Address Resolution Protocol (ARP)
- Reverse Address Resolution Protocol (RARP)
- Internet Control Message Protocol (ICMP)
- Internet Group Management Protocol (IGMP)
- User Datagram Protocol (UDP)
- Transmission Control Protocol (TCP)
Application Layer protocols, including AutoIP, DHCP, DNS, mDNS, DNS-SD, FTP, HTTP, NAT, POP3, PPP, SMTP, SNMP, SNTP, Telnet, TFTP, and a BSD-compatible socket layer, also are available from Express Logic for NetX. In addition, our partners offer several related higher-level solutions, including SSL/SSH/TLC, UPnP/DLNA, and Application Servers, all fully integrated with NetX and NetX Duo.
Aditional components, including HTTPv6, FTPv6, DNSv6, Telnetv6, and DHCPv6 (client only) are available for NetX Duo, and more are coming soon.
NetX Duo (optionally) incorporates IPsec (Internet Protocol Security), a protocol suite for securing Internet Protocol (IP) communications by authenticating and encrypting each IP packet of a communication session. IPsec also includes protocols for establishing mutual authentication between agents at the beginning of the session and negotiation of cryptographic keys to be used during the session. IPsec protects any application traffic across an IP network. Applications do not need to be specifically designed to use IPsec.
NetX and NetX Duo are implemented as a C library. Only the features used by the application are brought into the final image. The minimal footprint of NetX is as small as 5KB on CISC processors.
Many TCP/IP implementations have a considerable number of function calls sprinkled throughout the packet processing path. Although this is fine for workstation software, it is not acceptable for performance critical embedded applications. The elimination of layered function calls and loosely coupled protocol components is what we call a piconet architecture.
NetX and NetX Duo provide zero-copy TCP/IP communication to eliminate processor cycles consumed by moving data to and from user buffers. This results in very high performance and frees processor cycles back to the application for useful activities.
In addition to the zero-copy, highly-optimized NetX API, NetX also provides a BSD sockets compatible API for applications with legacy BSD application code.
The application may create any number of packet pools in any number of memory areas . These zero-copy packets can be linked with packets from the same pool or even a different pool to accommodate larger payloads.
Basic UDP packets pass through NetX and NetX Duo without any copying and without any system context switches. Many commercial network stacks process all packets received within a system thread thereby adding a context switch to the packet overhead. In NetXand NetX Duo, simple UDP packets are delivered directly to waiting threads.
With its non-layering Piconet™ architecture and zero-copy API, NetX and NetX Duo’s packet processing speeds are exceptionally fast.
NetX and NetX Duo are very easy to use. The NetX and NetX Duo API is both intuitive and highly functional. NetX Duo also recognizes and processes NetX API calls for full compatibility. API names are made of real words and not the “alphabet soup” names that are common to other TCP/IP products. Building a NetX or NetX Duo application is easy. Simply include the header file in the application software and link the application objects with the NetX or NetX Duo library. The resulting image is ready for execution – it’s that simple!
NetX and NetX Duo are delivered with complete C source code so you can see exactly how they operate. If you are used to in-house TCP/IP stacks or had bad experiences with “black box” commercial products, this should be most comforting.
Express Logic products are designed for ease-of-use. Everything from well thought out APIs to simple startup procedures help you get up and running in a matter of hours! This coupled with advanced debugger integration, make our products the easy choice to win the race to market!