Sample Projects
- Synthetic Web Traffic Generation:
Develop tools for server performance measurement. The tools
will run on multiple client machines and will generate
web load that faithfully simulates real-life patterns of
the aggregate load on a server. Special emphasis will be made
on faithfully reproducing WAN effects such as
packet loss, and statistical distribution of
round-trip delays among different web clients.
The tools will have adjustable parameters that control traffic
generation. A demonstration of the tools will be required on
a clustered server testbed. The tools will be a valuable
research contribution in terms of (i) understanding
web traffic patterns, and (ii) facilitating experimentation
with web servers on limited testbeds while simulating
a WAN-based environment.
- Web-Sim:
Develop a simulator of web servers. An extensive investigation
of server performance issues will precede simulator implementation.
The simulator should take into account effects such as file
caching, disk bandwidth, disk access latency, communication
bandwidth, maximum length of server socket queues, TCP effects,
operating system overheads (such as protocol processing),
overload behavior, CGI processing, etc. The simulator should be
easily extendible to allow studying new features. The correctness
of the simulator will be validated by comparing simulated
server performance to actual performance measurements of a real web
server subjected to the same load. The simulator will serve as
an important research tool for server designers by reducing the
need to implement experimental server prototypes.
- Automated Profiling Libraries:
There is great tendency to provide guarantees on the quality of
web server access in the same way guarantees are provided today
on product quality. A central hurdle in achieving performance
guarantees on the end-system is that of quantifying server
resource requirements due to input web traffic.
Currently, this quantification is achieved by
manual server instrumentation and profiling. In this project we
shall develop an architecture and tools
for automated server profiling.
The idea is to link the server with a ``profiling library'', then
subjecting it to normal load. The profiling library will
automatically monitor the load and execution overheads and compute
an accurate model of resource consumption. Knowledge of regression
analysis and estimation theory may come handy in developing
profiling tools.
- Protocols for Differentiated Services:
Conduct a study showing how HTTP can be used to provide
differentiated services (i.e., different levels of service
to different clients). The new adaptations should allow
ISPs or other authorized parties to define performance differentiation
policies (e.g., based on client subscription rates or other
importance metrics) that are enforced by authorized agents
and understood by the servers. The study
should separate policy from mechanism, and
address issues of trust (e.g., when unauthorized malicious
clients try to misuse differentiation policies to gain
performance advantage). It should also address issues of
server, cache and browser support.
- Guaranteed Clustered Web Hosting:
This project should design and implement a clustered server
architecture for performance guaranteed web hosting.
The clustered server
will host content on behalf of multiple independent parties.
Content owners will receive guarantees from the hosting server
on total servicable client rate and individual request service
time. The project may include development of server capacity
planning algorithms, request scheduling policies,
and policies for QoS-aware load sharing in the server farm.
- Next Generation Web Caching:
Current caching policies treat all clients and content alike.
In reality some clients or files may be more important than
others.
Develop web caching policies that take into account client
and/or content
importance. The cache will provide different response times
and hit rates based on individual client identity or
web content class. Develop cache resource allocation policies
that enable the aforementioned service prioritization.
- Active Caching:
With the increasing popularity of dynamic content, static
caching becomes less efficient. An increasing fraction of
web pages are generated dynamically from client request
parameters by running a server-side
script. As such, these pages cannot be cached.
Develop an active cache architecture that allows caching
CGI scripts (or ASPs) instead. Requests for these
scripts or ASPs can be served by executing the script in the
cache, instead of reverting to the origin server.
Last modified: Wed Jan 26 12:36:23 2000