NIC Memory Caching Scheme
Many of these Web clusters rely on high performance, low latency intra cluster
communication mechanisms, such as Virtual Interface Architecture (VIA) [30, 19] or
InfiniBand Architecture (IBA) , to reduce the communication overhead. In these
architectures, intelligent/programmable Network Interface Cards (NICs) are required to
facilitate direct communication with user applications [36, 60, 37, 16]. Therefore, NICs
have profound impact on the overall communication performance [26, 34, 46].
Traditionally, the on chip memory of a NIC, used for establishing and maintaining
connections in a cluster, is small in size. However, many new programmable NICs have
a large on chip memory to support more connections. For example, the InfiniHost III
Ex Host Channel Adapter (HCA) from Mellanox  can have up to 512MBytes of
on chip memory; the Voltaire HCA400LP , another InfiniBand enabled NIC, has
128MBytes of on chip memory; and the QM500 PCI X Network Adapter from Quadrics
 has 64MBytes of NIC memory. Despite their high capacity in supporting numerous
connections, many moderate size clusters do not fully utilize the NIC memory space.
Thus, in this chapter, we exploit potential usage of available NIC memory to investigate
the impact of NIC caching schemes on performance of clustered Web servers.