Abstract
Traditional operating system interfaces and network protocol implementations force some system state to be kept on both sides of a connection. This state ties the connection to its endpoints, impedes transparent failover, permits denial-of-service attacks, and limits scalability. This article introduces a novel TCP-like transport protocol and a new interface to replace sockets that together enable all state to be kept on one endpoint, allowing the other endpoint, typically the server, to operate without any per-connection state. Called Trickles, this approach enables servers to scale well with increasing numbers of clients, consume fewer resources, and better resist denial-of-service attacks. Measurements on a full implementation in Linux indicate that Trickles achieves performance comparable to TCP/IP, interacts well with other flows, and scales well. Trickles also enables qualitatively different kinds of networked services. Services can be geographically replicated and contacted through an anycast primitive for improved availability and performance. Widely-deployed practices that currently have client-observable side effects, such as periodic server reboots, connection redirection, and failover, can be made transparent, and perform well, under Trickles. The protocol is secure against tampering and replay attacks, and the client interface is backward-compatible, requiring no changes to sockets-based client applications.
- Allman, M., Paxson, V., and Stevens, W. 1999. RFC 2581: TCP Congestion Control. Google Scholar
Digital Library
- Aura, T. and Nikander, P. 1997. Stateless connections. In Proceedings of the International Conference on Information and Communication Security. Beijing, China, 87--97. Google Scholar
Digital Library
- Ballani, H. and Francis, P. 2004. Towards a deployable IP anycast service. In Proceedings of the Workshop on Real, Large Distributed Systems. San Francisco, CA. Google Scholar
Digital Library
- Banga, G., Mogul, J. C., and Druschel, P. 1999. A scalable and explicit event delivery mechanism for UNIX. In Proceedings of the USENIX Annual Technical Conference. Monterey, CA, 253--265. Google Scholar
Digital Library
- Bavier, A., Bowman, M., Chun, B., Culler, D., Karlin, S., Muir, S., Peterson, L., Roscoe, T., Spalink, T., and Wawrzoniak, M. 2004. Operating systems support for planetary-scale network services. In Proceedings of the Symposium on Networked Systems Design and Implementation. San Francisco, CA. Google Scholar
Digital Library
- Bernstein, D. 2005. SYN Cookies. http://cr.yp.to/syncookies.html.Google Scholar
- Bloom, B. H. 1970. Space/time tradeoffs in hash coding with allowable errors. In Commun. ACM. Google Scholar
Digital Library
- Braden, R. 1994. RFC 1644: T/TCP -- TCP Extensions for Transactions. Google Scholar
Digital Library
- Carson, M. and Santay, D. 2005. NIST Net. http://www-x.antd.nist.gov/nistnet.Google Scholar
- Chakravorty, R., Banerjee, S., Rodriguez, P., Chesterfield, J., and Pratt, I. 2004. Performance optimizations for wireless wide-rea networks: comparative study and experimental evaluation. In Proceedings of the International Conference on Mobile Computing and Networking. Philadelphia, PA. Google Scholar
Digital Library
- Crane, D., Pascarello, E., and James, D. 2005. Ajax in Action. Manning Publications, New York, NY. Google Scholar
Digital Library
- Daemen, J. and Rijmen, V. 1999. AES Proposal: Rijndael. http://csrc.nist.gov/encryption/aes/rijndael/Rijndael.pdf.Google Scholar
- Ely, D., Spring, N., Wetherall, D., Savage, S., and Anderson, T. 2001. Robust congestion signaling. In Proceedings of the International Conference on Network Protocols. Riverside, CA, 332--341. Google Scholar
Digital Library
- Fan, L., Cao, P., and Almeida, J. 1998. Summary cache: a scalable wide-Area Web cache sharing protocol. In Proceedings of ACM SIGCOMM. Vancouver, Canada. Google Scholar
Digital Library
- Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and Berners-Lee, T. 1999. RFC 2616: Hypertext Transfer Protocol -- HTTP /1.1. Google Scholar
Digital Library
- Floyd, S. 1991. Connections with multiple congested gateways in packet-switched networks part 1: one-way traffic. SIGCOMM Comput. Commun. Rev. 21, 5, 30--47. Google Scholar
Digital Library
- Gupta, R., Chen, M., McCanne, S., and Walrand, J. 2000. A receiver-driven transport protocol for the web. In Proceedings of the INFORMS Telecommunications Conference. San Antonio, TX.Google Scholar
- Hacker, T. J., Noble, B. D., and Athey, B. D. 2002. The effects of systemic packet loss on aggregate TCP flows. In Proceedings of IEEE/ACM Supercomputing. Baltimore, MD. Google Scholar
Digital Library
- Hsieh, H.-Y., Kim, K.-H., Zhu, Y., and Sivakumar, R. 2003. A receiver-centric transport protocol for mobile hosts with heterogeneous wireless interfaces. In Proceedings of the International Conference on Mobile Computing and Networking. San Diego, CA. Google Scholar
Digital Library
- Jain, R. 1991. The Art of Computer Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling. John Wiley and Sons, Inc.Google Scholar
- Juels, A. 1999. Client puzzles: a cryptographic countermeasure against connection depletion attacks. In Proceedings of Networks and Distributed Security Systems. San Diego, CA.Google Scholar
- Krishnamurthy, B., Mogul, J. C., and Kristol, D. M. 1999. Key differences between HTTP/1.0 and HTTP/1.1. In Proceedings of the World Wide Web Conference. Toronto, Canada. Google Scholar
Digital Library
- Lemon, J. 2001. Kqueue: a generic and scalable event notification facility. In Proceedings of the USENIX Annual Technical Conference. Boston, MA. Google Scholar
Digital Library
- Mogul, J., Brakmo, L., Lowell, D. E., Subhraveti, D., and Moore, J. 2004. Unveiling the transport. SIGCOMM Comput. Commun. Rev. 34, 1, 99--106. Google Scholar
Digital Library
- National Internet Measurement Infrastructure. 2005. Distribution of packet drop rates. http://www.icir.org/models/NIMI-drop-rates.ps.Google Scholar
- Pai, V. S., Druschel, P., and Zwaenepoel, W. 1999. IO-Lite: a unified I/O buffering and caching system. In Proceedings of the Symposium on Operating Systems Design and Implementation. New Orleans, LA. Google Scholar
Digital Library
- Patel, P., Whitaker, A., Wetherall, D., Lepreau, J., and Stack, T. 2003. Upgrading transport protocols using untrusted mobile code. In Proceedings of the Symposium on Operating Systems Principles. Bolton Landing, NY. Google Scholar
Digital Library
- Rost, S., Byers, J., and Bestavros, A. 2001. Cyclone server architecture: streamlining the delivery of popular content. In Proceedings of the International Workshop on Web Caching and Content Distribution. Boston, MA.Google Scholar
- route|daemon9. 1998. T/TCP vulnerabilities. Phrack Magazine 8, 53.Google Scholar
- Savage, S., Cardwell, N., Wetherall, D., and Anderson, T. 1999. TCP congestion control with a misbehaving receiver. SIGCOMM Comput. Commun. Rev. 29, 5, 71--78. Google Scholar
Digital Library
- Semke, J., Mahdavi, J., and Mathis, M. 1998. Automatic TCP buffer tuning. In Proceedings of ACM SIGCOMM. Vancouver, Canada. Google Scholar
Digital Library
- Shieh, A., Myers, A. C., and Sirer, E. G. 2005. Trickles: a stateless network stack for improved scalability, resilience, and flexibility. In Proceedings of the Symposium on Networked Systems Design and Implementation. Boston, MA. Google Scholar
Digital Library
- Snoeren, A. C. 2002. A session-based approach to internet mobility. Ph.D. thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology.Google Scholar
- Standard Performance Evaluation Corporation. 1999. The SPECweb99 benchmark.Google Scholar
- Stoica, I. 2000. Stateless core: a scalable approach for quality of service in the internet. Ph.D. thesis, Department of Electrical and Computer Engineering, Carnegie Mellon University. Google Scholar
Digital Library
- Sultan, F. 2004. System support for service availability, remote healing and fault tolerance using lazy state propagation. Ph.D. thesis, Division of Computer and Information Sciences, Rutgers University. Google Scholar
Digital Library
- Sultan, F., Bohra, A., and Iftode, L. 2003. Service ontinuations: an operating system mechanism for dynamic migration of Internet service sessions. In Proceedings of the Symposium on Reliable Distributed Systems. Florence, Italy.Google Scholar
- Sun Microsystems. 1989. RFC 1094: NFS: Network File System Protocol Specification. Google Scholar
Digital Library
- Zúquete, A. 2002. Improving the functionality of SYN cookies. In Proceedings of the IFIP Communications and Multimedia Security Conference. Portoroz, Slovenia. Google Scholar
Digital Library
Index Terms
A stateless approach to connection-oriented protocols
Recommendations
Proposal for a connection-oriented internetwork protocol
Current OSI approaches to internetworking occur at the network layer, and can be split into two main divisions [1,2]: connectionless internetwork protocol intended for use over dissimilar networks, and relay approaches intended for interconnection of ...
A TCP-Friendly Stateless AQM Scheme for Fair Bandwidth Allocation
ICAS-ICNS '05: Proceedings of the Joint International Conference on Autonomic and Autonomous Systems and International Conference on Networking and ServicesQueue management, bandwidth share, and congestion control are very important to both robustness and fairness of the Internet. In this article, we investigate the problem of providing a fair bandwidth allocation to those flows that share congested link ...






Comments