Mentat Products
Mentat
Mentat TCP/IP

Overview

Mentat TCP™ is a high-performance, fully compliant implementation of the TCP/IP protocol suite offering IPv6, IPSec, and other leading-edge functionality. Mentat TCP is available as a source code product designed for easy integration into any operating environment.

With the ability to deliver unmatched performance and high reliability, Mentat TCP has become the leading portable implementation of TCP/IP. Mentat TCP can be found as an integral component of many computer and real-time operating systems including Hewlett-Packard HP-UX and Apple Mac OS. Originally written for Sun Microsystems, Mentat TCP forms the base of the native TCP/IP stack on Solaris. In addition, Mentat TCP has been ported to Linux, Microsoft Windows NT, Wind River VxWorks, SCO UnixWare, and many other operating systems.

Mentat TCP provides all kernel-level TCP/IP functionality and will operate in any System V, Release 4 (SVR4) STREAMS environment. On systems without a native STREAMS, the full benefits of Mentat TCP can be achieved in combination with the industry-leading Mentat Portable Streams™ (MPS®).

Mentat TCP Frequently Asked Questions

RFCs Supported by Mentat TCP

 

Home

Design and Performance

Mentat TCP is designed for efficiency and high performance, and optimized for maximum throughput and the highest transaction speeds. Packet retransmissions, unresolved routes, and similar conditions are handled as out-of-line special cases.

The architecture of Mentat TCP is structured to facilitate multiprocessing. Multiple threads can execute in different modules, even in the same stream, with minimal synchronization checks. Packet fan-out at the IP layer permits multiple processors to drive data packets simultaneously on multiple streams.

Operating systems running Mentat TCP achieve the highest levels of performance and multiprocessor scaling, and lead the pack in standardized networking benchmark tests. Written entirely in ANSI C, Mentat TCP is easily ported to any operating system with an SVR4 compatible STREAMS environment. Port-specific issues such as byte ordering, memory alignment, and synchronization primitives are isolated into macros and system dependent header files. Experienced engineers can implement basic functionality on an SVR4-based operating system within a day, and can have a fully integrated, tested, and productized version available within a couple of months.

Additional information on Mentat TCP, including a Mentat TCP Frequently Asked Questions and performance test results, are available on this web site. Please contact Mentat concerning the platform of interest to you.

 

Mentat TCP Components

Core Modules
TCP, UDP, and IP, including gateway routing, ICMP, and Multicast support.
ARP Module
Implements ARP protocol as an independent module. Well-defined interface accessible to other protocols.
Raw IP Module
Provides applications with direct access to IP for use with ICMP and private protocols.
BSD Sockets Interface
Sockets support includes either a Sockets library with associated module, or a kernel Sockets system call layer offered in conjunction with Mentat Portable Streams.
XTI/TLI Interface
Includes library and associated module which provides a TLI or XTI interface. The library can be configured to function according to UNIX TLI semantics or X/Open XTI semantics.
Utility programs
Programs to configure and verify TCP/IP operation.
 

 

Feature Summary

Full conformance with all relevant RFCs. A list of supported RFCs is available here.
Dual IPv4 and IPv6 functionality: Includes both the IPv4 protocol and the next generation IPv6 protocol. Systems can be configured to use only IPv4 or both protocols in parallel.
IP Security: IPSec functionality includes AH and ESP, with DES, Triple DES, MD5, and SHA1 security transforms. (Due to export restrictions, encryption functionality may only be available to U.S.-based licensees.)
Binary replacement capability: Binary compatible TCP/IP replacement port is possible on SVR4, Linux and other operating systems, allowing applications and utilities to utilize Mentat TCP without recompilation.
IP Multicast support, including Multicast forwarding.
Full support for BSD ioctls and socket options.
Full MIB-II support.
64-bit compatibility.
Advanced features: Includes Large Windows (RFC 1323), Fast Restart, Fast Recovery (RFC 2001), time stamps, checksum offload support, neighbor discovery, and Path MTU discovery.

 

Programming Interfaces

Mentat TCP supports the STREAMS-standard Transport Provider Interface (TPI) as its application-side interface. This design provides access to the protocol from any user library or upper level module written to conform to TPI. Above TPI, Mentat TCP includes both TLI/XTI and BSD Sockets interfaces.

Mentat TCP uses the Data Link Provider Interface (DLPI), version 2.0, to communicate with STREAMS-based network device drivers. By using this interface definition, Mentat TCP works transparently with a variety of device drivers.

 

Architecture

Mentat TCP is designed as a set of STREAMS modules, as shown in the accompanying STREAMS configuration diagram.

Device streams are created by a TCP/IP configuration process which opens three DLPI streams for each device. The process pushes both IPv4 and ARP modules on one stream, an IPv6 module on a second stream, and ARP on the third. The IPv4 and IPv6 streams receive IP datagrams from the appropriate devices. ARP is pushed on the IPv4 stream to allow IP to pass address resolution requests directly to the ARP module, while the ARP stream processes ARP packets from the device. All device streams are persistently linked under a placeholder multiplexor.

When an application opens an interface to a transport provider, the result is a new instance of IP, with the transport module, TCP or UDP, pushed above it. A suitable interface module for XTI/TLI or Sockets is pushed as well.

 

TCP/IP STREAMS Configuration Diagram

 

 

For more information on Mentat TCP or for details on product licensing, please contact Mentat at:

Mentat Inc.
1145 Gayley Ave. Suite 315
Los Angeles, CA 90024 USA

phone: (310) 208-2650 ext. 28
toll free: 888-4MENTAT (888-463-6828)
fax: (310) 208-3724
email: info@mentat.com


Mentat Logo

Home | Top of this page | TCP/IP Perfomance Comparison | TCP FAQ | TCP RFC

© 1999 Mentat Inc. All rights reserved.