CS 680 Internet Systems Research Sami Rollins Spring 2007
Administrative Information Class web page Introductions –What do you hope to get out of this class?
What is the Internet?
History of the Internet 1960s – circuit switched phone network – not useful for timesharing computers 1961 – Kleinrock publishes paper on packet switching 1967 – Roberts publishes plan for ARPAnet 1969 – first node (UCLA) on ARPAnet followed by SRI, UCSB, and Utah 1972 – Kahn demonstrates ARPAnet which uses the network-control protocol (NCP) to communicate 1972 – Tomlinson writes first program
History of the Internet early to mid-70s – other networks introduced 1973 – Metcalfe begins work on Ethernet 1974 – Kahn and Cerf explore how to connect several networks – begin development of TCP/IP
History of the Internet early 80s – many efforts, including NSFNET, to build networks to link universities “flag day” for transition from NCP to TCP/IP late 80s – DNS maps IP address to name
History of the Internet 90s – ARPAnet ceases to exist, NSFNET decommissioned and Internet backbone traffic carried by commercial ISPs 1989 – Berners-Lee invents WWW based on ideas by Bush (1945) and Nelson (60s)
Research What is research? How is research different from what you do in your other classes? –New ideas –Proof that they work
Research in CS Traditionally, three areas in CS –Theory –Systems –Applications/AI
Systems Research Motivation –What's the problem and why is it interesting? Design –What is your solution and how is it new and interesting? Implementation –How do you make your solution actually solve a problem? Provides proof-of-concept, though there are likely to be other implementations. Evaluation –Is your solution really better than other solutions? How do you measure its performance (metrics)? What affects its behavior (parameters)?
Example: A New Algorithm/Architecture Examples: routing for P2P search, ranking of web search results, back-end cluster architecture Motivation – old algorithms are too slow, use too many resources, don't work for a particular scenario Design – how does your algorithm/architecture work, how do components interact in your system Implementation – how do you prove your algorithm/architecture is feasible? Evaluation – compare to other existing algorithms or to a naive approach, may evaluate via simulation
Example: A Measurement Study Examples: gather data about traffic on P2P networks Motivation – understand how people use applications/systems/networks to facilitate better design Design – anything interesting about how data is gathered? Implementation – how is your data gathering tool implemented? Evaluation (Results) – lots of graphs classifying data
Example: Totally New System Examples: Turducken Motivation – can be hard to define, often “cool to have” Design/Implementation – were you about to actually build it? Evaluation – can be really hard! nothing to compare to
Related Work Very important! Anything you think of has been thought of before Don't do work that's already been done Find out what other people are doing!
Related Work Conferences are main publication venue for CS –Sigcom, Infocom, Mobicom, OSDI, NSDI, SOSP, Usenix, MobiSys, WWW, Ubicomp, Pervasive, SigIR, ACM Multimedia, Mobihoc, Sigmetrics, ICDCS Journals – Transactions on X
Reading Papers Once is never enough Identify contribution –How is this work new? How could you improve upon this work?
Summary Format (Benson) What are the most important points made in the paper (at least 3)? What are the main weaknesses of the paper? Do you believe the assumptions and results? If not, why not? If possible, compare this work with other work that you have heard about. If you chased down additional information on this topic, what was it? List three questions or points that you plan to bring up in the discussion. Place a number for each item below corresponding to your evaluation. –Quality of presentation, Technical contribution, Novelty of ideas, Overall
Latex Lots of on-line tutorials Miktex for windows To compile into pdf document: pdflatex eval.tex