Networking and computing technologies are becoming advanced enough to enable a wealth of diverse applications that will drastically change our everyday lives. Some past examples of these developments include the World Wide Web and wireless data networking infrastructures. As is quite obvious, the World Wide Web has enabled a fundamental change in the way many people deal with day-to-day tasks. Through the web, one can now make on-line reservations for travel, pay bills through on-line banking services, and view personalized on-line newscasts. More recently, developments in wireless technologies have enabled anywhere, anytime access to information over wireless medium. As wireless technologies such as 3G continue to advance, the ability to support larger bandwidth applications will become possible.