Product Description
smxNS (tm) is a compact TCP/IP networking stack for use with real-time embedded applications. smxNS can be configured to use only those clients, servers, protocols, device drivers, and link layers needed by the application. By judiciously selecting features and capabilities, the smxNS TCP/IP stack can be reduced to as little as 25KB code space, depending upon the processor.
smxNS implements a clean, modular design. Network layers provide standardized APIs, which present a common set of entry points for each layer in the network. Network applications can be written to use either the standard Berkeley Sockets API or our proprietary Dynamic Protocol Interface (DPI). DPI is a simplified API that takes little code space and is easy to use.
smxNS supports zero-copy packet processing for optimum performance and efficiency. Information to be sent is assembled in a single buffer, which is passed from layer to layer with no copying, and then sent out directly by the network controller. Likewise, a received packet is copied into a buffer which is passed from layer to layer with no copying. smxNS supports up to 256 network interfaces, and can route packets between them.
smxNS comes with a set of confidence tests and debugging aids that permit verification of proper operation on any platform. A choice of Ethernet drivers and link layers is available. These drivers provide support for the most popular Ethernet controllers. Complete source code is provided. The following protocols are included in the basic smxNS package: IP, TCP, UDP, ARP, RARP, BOOTP, ICMP, DHCPc, DNSc, Telnets, TFTP, and SLIP (c = client, s = server).
Protocols Separately Available
DHCP server delivers an IP address to a client host.
HTTP client allows retrieving a web page from a web server.
IGMP allows sending messages to multiple hosts in a multicast group.
NAT allows several local devices to share a single external IP address and combine multiple connections into a single Internet connection.
POP3 client enables an embedded device to receive email from an email server.
PPP is for establishing a link to a single remote host, such as an Internet Service Provider (ISP) via a serial or modem link.
PPPoE does same as PPP via an Ethernet link.
SMTP client enables an embedded device to send email.
SNMP Agent permits embedded device control from a remote network monitor. V1, 2, and 3 are supported. MIB compiler included.
Web Server allows an embedded system to present real-time information to desktop Web browsers. Provides authentication and dynamic page content. Included utility converts standard HTML pages to C files which can be loaded while running.
SSL/SSH provide security.
WiFI driver provides wireless connection to an embedded device.
WebC Web Browser provides a small footprint browser for network use on HTML-based GUIs.