Optimizing TCP forwarder performance

Citation
O. Spatscheck et al., Optimizing TCP forwarder performance, IEEE ACM TN, 8(2), 2000, pp. 146-157
Citations number
14
Categorie Soggetti
Information Tecnology & Communication Systems
Journal title
IEEE-ACM TRANSACTIONS ON NETWORKING
ISSN journal
10636692 → ACNP
Volume
8
Issue
2
Year of publication
2000
Pages
146 - 157
Database
ISI
SICI code
1063-6692(200004)8:2<146:OTFP>2.0.ZU;2-N
Abstract
A TCP forwarder is a network node that establishes and forwards data betwee n a pair of TCP connections. An example of a TCP forwarder is a firewall th at places a proxy between a TCP connection to an external host and a TCP co nnection to an internal host, controlling access to a resource on the inter nal host. Once the proxy approves the access, it simply forwards data from one connection to the other, We use the term TCP forwarding to describe ind irect TCP communication via a proxy in general. This paper briefly characte rizes the behavior of TCP forwarding, and illustrates the role TCP forwardi ng plays in common network services like firewalls and HTTP proxies. We the n introduce an optimization technique, called connection splicing, that can be applied to a TCP forwarder, and report the results of a performance stu dy designed to evaluate its impact. Connection splicing improves TCP forwar ding performance by a factor of two to four, making it competitive with IP router performance on the same hardware.