Information Library for Solaris 2.6 (Intel Platform Edition)

Network/Web Server Performance

Previous efforts in improving network throughput had focused on improving throughput for long-lived connections. These efforts resulted in the highest NFS server performance numbers in the industry. The web server area represents an entirely different paradigm since it emphasizes short-lived connections with little bandwidth demand during the connection. Some of the work for the Solaris 2.6 release to greatly improve that aspect of performance was packaged and released as the Solaris Internet Server Supplement (SISS) for the Solaris 2.5.1 release.

Web server performance improvements were achieved in several places, ranging from the socket interface layer, the TCP/IP protocol stack, and the STREAMS framework. The socket interface layer was redesigned as a file system (sockfs), thereby removing the need to duplicate socket code in the socket library as well as the STREAMS socket module. This significantly improved the performance for the short-lived connections that are common on the Web. The TCP/IP changes consist both of improvements to efficiently handle large numbers of connections as well as further improvements to the multithreading of the opening and closing of connections and sockets. Finally, the STREAMS framework has been restructured to allow more efficient opening and closing of TCP/IP sockets.

The Standard Performance Evaluation Corporation (SPEC) has released SPECweb96, a standardized benchmark for comparing web server performance. The benchmark is designed to provide comparable measures of how well systems can handle HTTP GET requests. SPEC based the work load on analysis of server logs from Web sites ranging from a small personal server up through some of the Internet's most-popular servers. Built upon the framework of the SPEC SFS benchmark, SPECweb96 can coordinate the driving of HTTP protocol requests from single- or multiple-client systems. For the latest Solaris 2.6 SPECweb96 submissions and more information on SPECweb96 benchmarks, please visit the SPEC web site: http://www.specbench.org.

Kernel Sockets

The kernel sockets implementation provides improved compatibility with SunOSTM 4.x and BSD sockets, enabling higher socket performance.

TCP Large Windows

TCP large windows provides the support described in RFC1323. It is designed to improve performance over high bandwidth networks such as ATM, or high-delay networks such as satellite links, by expanding the amount of data that can be outstanding in a TCP session from 65535 bytes to approximately 1 Gbyte.

Zero Copy TCP/Hardware Checksum

Zero copy TCP/hardware checksum functionality can be used to increase TCP throughput in certain situations. It does so by avoiding the copying of data and by using hardware checksum logic in the network interface when available. Currently, the only network interface that contains the hardware checksum logic is the SunATM 622 interface.

For more information, see Transport Interfaces Programming Guide.