Font Size: a A A

Providing network programming primitives for Internet application construction

Posted on:2003-09-24Degree:Ph.DType:Dissertation
University:University of California, DavisCandidate:Haungs, Michael LauriceFull Text:PDF
GTID:1468390011479350Subject:Computer Science
Abstract/Summary:
Internet applications are distributed to deal effectively with the sheer volume of resources consumed during operation. They must run efficiently on hosts and networks that are dynamic and unreliable. To do this, distributed applications need to have the following characteristics: transparency, scalability, and reliability. Sadly, there is no kernel level support to aid network programmers in building these systems and they must rely on ad hoc redirection techniques, such as network address translation (NAT), DNS request routing, or middleware to handle Internet scale loads. A more permanent solution involves augmenting base OS communication services to support these applications. This is a significant divergence from existing research that advocates monolithic, application dependent solutions. Our intention is to provide a well understood and supported operation that can serve as a firm foundation for building scalable, fault tolerant systems or used to augment existing systems.; In this dissertation, we describe a new connection redirection mechanism that allows applications to change endpoints of communication channels. The mechanism enables load balancing, failover, dynamic reconfiguration, and circumventing bottlenecks or congestion in a server system. The mechanism supports redirections across LANs and WANs and is application-independent. Further, it does not introduce any central bottlenecks. We have implemented the redirection mechanism using a novel endpoint control session layer. The performance results show that the overhead of the mechanism is minimal. Our next generation primitive will allow network programmers to concentrate on the application logic of Internet applications instead of low level network complexity.
Keywords/Search Tags:Internet, Application, Network
Related items