Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSE 291 System Services for the World Wide Web Winter 2000 Geoffrey M. Voelker.

Similar presentations


Presentation on theme: "CSE 291 System Services for the World Wide Web Winter 2000 Geoffrey M. Voelker."— Presentation transcript:

1 CSE 291 System Services for the World Wide Web Winter 2000 Geoffrey M. Voelker

2 January 11, 2000CSE 291 Intro2 Class Goal l Provide background for doing experimental systems research in wide-area systems such as the Web u Architectures for wide-area distributed systems »What are good models for structuring systems to support apps? u Understanding system behavior »What are the workloads? u Enhancing performance »Caching, prefetching u New opportunities »Multimedia, XML l Read, evaluate, present a variety of research papers l Do projects on interesting problems in area

3 January 11, 2000CSE 291 Intro3 Today l Course structure u Presentations u Evaluations u Projects l Course contents u Web intro u Topics and papers

4 January 11, 2000CSE 291 Intro4 Presentations l We will present papers in class for discussion u Roughly 2 papers per 1.5 hour class (sometimes 3) l Everyone presents (including me) u How many depends on # students registered u I will present Thursday’s papers and do my share during the rest of the quarter l Look over schedule between now and Thursday l We’ll allocate papers on Thursday

5 January 11, 2000CSE 291 Intro5 Evaluations l You must submit evaluations of papers u Email them to me by noon of day of class u No evals if you have to present l Brief (½ page) u Summary of paper (research problem, conclusions) u What you learned u Any ideas that occurred to you u Your frank opinion of topic and/or work l If this gets to be too burdensome, might notch it down to one evaluation per day

6 January 11, 2000CSE 291 Intro6 Class Participation l The presentations are for fostering discussion …so I expect you to participate in discussions l Presenters u Come prepared with discussion questions l Rest of us u Use your evaluations as a basis for discussion

7 January 11, 2000CSE 291 Intro7 Class Project l For those signed up for four units l Work in pairs l Schedule in handout, on the Web u Roughly 5 weeks setup, 5 weeks working l Start thinking about what you might want to work on, who you might want to work with l I’ll have a list of topics, but I also encourage you to use your own l Your final will be a class presentation on your project

8 January 11, 2000CSE 291 Intro8 Course Contents l Topics u Wide-area system architectures u Naming u Scalable servers u Workload characterizations u Caching, prefetching u Protocols u Security u Emerging applications l Overview of Web to help put things into context

9 January 11, 2000CSE 291 Intro9 How does the Web work? l The canonical example in your Web browser Click here l “here” is a Uniform Resource Locator (URL) http://www-cse.ucsd.edu l It names the location of an object on a server

10 January 11, 2000CSE 291 Intro10 In Action… ClientServer http://www-cse.ucsd.edu u Client resolves name of server (www-cse.ucsd.edu) u Establishes a connection with the server u Sends the server the name of the object (null) u Server returns the object HTTP

11 January 11, 2000CSE 291 Intro11 Naming l How should objects be named? u URLs name locations…if an object moves, the URL breaks l Location-independent names seem like the obvious way to go u Why don’t we use them (e.g., URIs)? u How do we make them work, esp. in the face of mobility? l How it works now, how it might work in the future u DNS [Mockapetris88] u DNS for URIs [Daniel96] u Names as programs [Vahdat99] u Finding replicas [Guyton95], [vanSteen98]

12 January 11, 2000CSE 291 Intro12 Communication ClientServer http://www-cse.ucsd.edu u Communication between the client and server is done via HTTP over TCP/IP HTTP

13 January 11, 2000CSE 291 Intro13 Protocols l What kind of transport protocol should the Web use? l HTTP 1.0 u One TCP connection/object u Complaints: inefficient, slow, burdensome… l HTTP 1.1 u One TCP connection/many objects (persistent connections) u Solves all problems, right? Huge amount of complexity »Clients, proxies, servers l How do they compare? u Protocol differences [Krishnamurthy99], performance comparison [Nielsen97], effects on servers [Manley97], overhead of TCP connections [Caceres98]

14 January 11, 2000CSE 291 Intro14 Scalable Servers Server u Of course, you are not the only person accessing the server…

15 January 11, 2000CSE 291 Intro15 Scalable Servers l How do you build servers to handle millions of hits a day? u Web servers: Flash [Pai99], scheduling [Crovella99] u Mail servers: EarthLink [Christenson97, Saito99] u Principles: Transcend, HotBot [Fox97] u Techniques: Load balancing [Pai98]

16 January 11, 2000CSE 291 Intro16 Web Caching u Gee, is there some way to offload those busy servers? u Use caches to exploit reference locality among clients ClientsProxy CacheServers

17 January 11, 2000CSE 291 Intro17 Caching l How should we build caching systems for the Web? u Seminal paper [Chankhunthod96] u Proxy caches [Duska97] u Akamai hack [Karger99] u Cooperative caching [Tewari99, Fan98, Wolman99] u Popularity distributions [Breslau99]

18 January 11, 2000CSE 291 Intro18 Prefetching l The fastest way to download a page is to fetch it before it is accessed l How do you know what will be accessed? l How much bandwidth can you afford for mistakes? u Performances bounds [Kroeger97] u Survey paper w/ practical approach [Duchamp99]

19 January 11, 2000CSE 291 Intro19 Security l We can’t just assume we’re in a back room anymore l How do we secure access to resources? u Infrastructure: SDSI [Rivest96] u Wide-area service: CRISIS [Belani98] u Computational grids: Globus [Foster98] u E-commerce: SSL [Wagner96] u Downloaded code: Java [Wallach97]

20 January 11, 2000CSE 291 Intro20 Workload Characterizations l How can you fix it if you don’t look inside? u Is the Web slow because of the network, the server, CPU- hogging browsers? l What is the behavior of clients, proxies, and servers? u Golden fleece: Invariants across populations and time u E.g., Zipf-like distribution of object popularities l How can we use workloads to shape the systems we design? u Characterization survey [Pitkow98] u Rate of change [Douglis97] »Key to data dissemination (caching, prefetching, etc.)

21 January 11, 2000CSE 291 Intro21 Emerging Applications l HTML, gif, jpeg, etc. are all old news l What’s the new, cool stuff? l Multimedia u Streaming multimedia next big thing (20% b/w in UW traces) u Workloads [Mena00], tools [Caceres99], delivery [Eager00] l XML u I don’t know what it is, so I’d like to learn u Papers TBD

22 January 11, 2000CSE 291 Intro22 Architectures l The Web is basically a simple read-only data access system u Click, fetch, click, fetch, click, fetch… l Why not fully generalize it into a universal wide-area distributed system? u The Web as an operating system: WebOS [Vahdat98] u Wide-area computational grids: Legion [Lewis96, Grimshaw98], Globe [vanSteen97], Globus [Foster97, Foster98]

23 January 11, 2000CSE 291 Intro23 ClientsProxy CacheServers Hits Misses


Download ppt "CSE 291 System Services for the World Wide Web Winter 2000 Geoffrey M. Voelker."

Similar presentations


Ads by Google