cse 124: networked services - computer science · 2010-09-25 · course projects ucsd cse 124...
TRANSCRIPT
WELCOME TO
CSE 124: NETWORKED SERVICES
FALL „10
B. S. Manoj, Ph.D
http://CalSysNet.calit2.net
Lecture 1
9/23/2010
UCSD CSE 124 Networked Services Fall 2010 1
Contents
9/23/2010UCSD CSE 124 Networked Services Fall 2010
2
Course Goals
Resources
Audience
Main objectives
Grading
History of the Internet
Growth of Internet
Introduction to the Internet
Summary
Course Resources
9/23/2010UCSD CSE 124 Networked Services Fall 2010
3
Instructor:
B. S. Manoj (a.k.a Manoj Balakrishnan) [email protected]
Office Hours: By appointment (Email for appointment)
Teaching Assistant
Ricky Ghov (email: [email protected] )
Office Hours: TBA
Course Web Page
Later today it will be updated in http://cseweb.ucsd.edu/classes/fa10/cse124
Audience
9/23/2010UCSD CSE 124 Networked Services Fall 2010
4
Those who want to learn to innovate in advancing services over future network systems
Those with interest in Graduate school
Those with top industrial positions in mind
Microsoft, Google, Yahoo, Qualcomm, Akamai, IBM, Apple, etc.
Those who want to have real hands-on expertise
Main objectives
9/23/2010UCSD CSE 124 Networked Services Fall 2010
5
To gain knowledge in networking and distributed systems
Lectures, textbooks, and homework
To understand where are we headed
Review and writeup of latest research publications in the area
Get to know how to build large scale network systems
Programming projects
From simple to reality translation of novel ideas
To learn to innovate Through innovation project
What we prefer not to do
9/23/2010UCSD CSE 124 Networked Services Fall 2010
6
To teach basic programming
Familiarity with Operating Systems is necessary
Good programming skills with C/C++ is required
To debug source codes that you write
We might sometimes be of help, but not guaranteed
Grading Plan
9/23/2010UCSD CSE 124 Networked Services Fall 2010
7
25% Homework
Assignments (1-2)
Paper evaluations and write-up (5-6 papers)
35% exams
15% midterm
20% final exam
35% Programming projects (2 mandatory, one optional)
15%: Project 1: HTTP server
20%: Project II: Innovation project
Hadoop hands-on exercise (depending on the cluster availability)
5% Attendance Class participation
Popup questions, to listed names, from paper writeup
Paper evaluations and discussions
9/23/2010UCSD CSE 124 Networked Services Fall 2010
8
Over the entire course 5-6 papers will be provided for evaluation and summarization
Mostly from Communications of the ACM, ACM SIGCOMM or other highly rated conferences
An evaluation 1-page write-ups to be prepared per paper and submitted
12 point font, one inch margin all sides, ACM single column style
Details will be provided later
Points that may be noted (IEEE anti-plagiarism policy in effect)
Important contribution of the paper (in your own words)
Important limitations or errors (logical or technical, not typographical or grammatical) in the paper
How it can further be improved (on your own, briefly)
Course Projects
9/23/2010UCSD CSE 124 Networked Services Fall 2010
9
Two projects for the entire course span
Project 1
Build an HTTP server in C/C++
Team size: 2
Support both HTTP/1.0 and a subset of HTTP/1.1
Due date: TBA
Project 2
Innovation Project (1 or 2 choices will be provided)
You may choose your own project (provided they are novel and feasible within the time frame)
Instructor approval required
Innovation Projects are required to be presented in the class
10 minutes (6 minutes for presentation, 3 minutes for discussion, and 1 minute for conclusion)
Tentative syllabus
9/23/2010UCSD CSE 124 Networked Services Fall 2010
10
Introduction. History of the Internet. Network Services and Application layer protocols. Hyper Text Transfer Protocol (HTTP), E-mail Applications. Voice over IP. Network layer and Internet Protocol (IP). Transmission Control Protocol (TCP). Congestion and flow control. Modern network services. Data center networking. Giant scale services. Cluster computing. Network file servers. Replication. Fault tolerance. Load balancing. Network security. Streaming services. Content Distribution Networks. Peer-to-Peer networking. Distributed Hash Tables. Google File System. Hadoop. PlanetLab. GENI.
Introduction to the Internet
9/23/2010UCSD CSE 124 Networked Services Fall 2010
11
History of Internet
9/23/2010UCSD CSE 124 Networked Services Fall 2010
12
1960s-70s: Development of packet switching
1970s-80s: Early proprietary networks and internetworking
1980s-90s: Proliferation of networks
1990s-2000s: Explosion of the networks
2000-2010s: Internet grew as a major utility (and threat)
2010-beyond: Network Transformations to new forms
Origins and The ARPANET (Internet) in 1969
9/23/2010UCSD CSE 124 Networked Services Fall 2010
13
Rand Corporation: "On Distributed Communications: 1.
Introduction to Distributed Communications Network"
(August 1964)
The Internet in 2005
9/23/2010UCSD CSE 124 Networked Services Fall 2010
14
Host level graph
Only a fraction!
Source: www.opte.org
9/23/2010UCSD CSE 124 Networked Services Fall 2010
15
9/23/2010UCSD CSE 124 Networked Services Fall 2010
16
9/23/2010UCSD CSE 124 Networked Services Fall 2010
17
Internet Growth
9/23/2010UCSD CSE 124 Networked Services Fall 2010
18
1977: 111 hosts on Internet
1981: 213 hosts
1983: 562 hosts
1984: 1,000 hosts
1986: 5,000 hosts
1987: 10,000 hosts
1989: 100,000 hosts
1992: 1,000,000 hosts
2001: 150 – 175 million hosts
2002: over 200 million hosts
2006: over 430 million hosts
2008: over 541 million hosts
Jan 2009: over 625 million hosts
2010: over 1.97 billion users (hosts?)
2011: ?
Source: The Internet Society and www.swivel.com
Growth of the Internet
9/23/2010UCSD CSE 124 Networked Services Fall 2010
19
The Internet Society, Google, and Swivel.com
0
100000000
200000000
300000000
400000000
500000000
600000000
700000000
Num
ber
of
ho
sts
The Growth of Internet
Growth and modern communications
9/23/2010UCSD CSE 124 Networked Services Fall 2010
20
50 million user population
Radio: 38 years
TV: 13 years
The Internet: 4 years!!! (Once it was open to the Public,)
Giant scale services on the Internet
Facebook (2004): 3 year 8 months (10 months to reach 1 million users)
Twitter (2008): 3 years and 2 month (<1 month for 1 million users)
Google Voice (2010): 1day (1 million) -1week (10 million)
07/12/2010ARO CogNet Bi-weekly Meeting
Issues with the grown up Internet
Entry barrier to deploy new architectures/services to the
Internet is high
High cost of setting up
How to architecturally enhance the Internet?
We need agreement from all ISPs, Vendors, even
Governments!
Internet faces Ossification
Growth kills itself
21
The grown up Internet problem:
Ossification
Analysis Simulation / Emulation Experiment At Scale
With Real Users
Deployment
(models) (code)
(results)
(measurements)
22
We will look at PlanetLab, NSF GENI approaches
Claude Shannon
Published a “A Mathematical Theory of Communication” in 1948.
In 1948 with the publication of A Mathematical Theory of Communication, Shannon characterized a channel by a single parameter; the channel capacity.
His paper established fundamental limits on the efficiency of communication over noisy channels, and presented the challenge of finding families of codes that achieve capacity. The method of random coding does not produce an explicit example of a good code, and in fact it has taken fifty years for coding theorists to discover codes that come close to these fundamental limits on telephone line channels.
Created the idea that all information could be represented using 1s and 0s. Called these fundamental units BITS.
Created the concept data transmission in BITS per second.
Widely credited as the Father of Information Theory.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 23
Source: http://www.research.att.com/~njas/doc/ces5.html and the Internet Society
Leonard Kleinrock
Kleinrock published his first paper on digital network communications, Information Flow in Large Communication Nets, in July, 1961.
He developed his ideas further in his 1963 Ph.D. thesis, and then published a comprehensive analytical treatment of digital networks in his book Communication Nets in 1964.
In 1966, Roberts was mandated to develop the ARPANET, and used Kleinrock'sCommunication Nets to help convince his colleagues that a wide area digital communication network was possible.
In October, 1968, Roberts gave a contract to Kleinrock's team as the ideal group to perform ARPANET performance measurement and find areas for improvement.
On a historical day in early September, 1969, a team at Kleinrock's group connected one of their SDS Sigma 7 computers to an Interface Message Processor, thereby becoming the first node on the ARPANET, and the first computer ever on the Internet.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 24
Source: Dr. Kleinrock’s Homepage and the Internet Society
LO! Behold!
9/23/2010UCSD CSE 124 Networked Services Fall 2010
25
L O G
First successfully sent message over the Internet: LO
LO! and Behold (means: look! - behold! )
Used especially to announce things that are
considered startling or important.
Separately used in Bible Genesis 15:3 (King James
version,)
Used together first in 1808 on an English Royal letter
in the Correspondence 1787–1870.
Paul Baran In 1959 Paul Baran joined RAND and started working on survivable, wide
area communications networks so they could reorganize and respond after a
nuclear attack, diminishing the attractiveness of a first nuclear strike option
by the Soviet Union.
The results of which were first presented to the Air Force in the summer of
1961 as briefing B-265, then as a series of eleven comprehensive papers
titled On Distributed Communications in 1964.
Baran's study describes a remarkably detailed architecture for a distributed,
survivable, packet switched communications network. The network is
designed to withstand almost any degree of destruction to individual
components without loss of end-to-end communications. Since each
computer could be connected to one or more other computers, it was
assumed that any link of the network could fail at any time, and the network
therefore had no central control or administration.
Baran's architecture was well designed to provide reliability and helped to
convince the US Military that wide area digital computer networks were a
promising technology. 9/23/2010
UCSD CSE 124 Networked Services
Fall 2010 26Source: Livinginternet.com and the Internet Society
Lawrence Roberts
Lawrence Roberts obtained his B.S., M.S., and Ph.D. degrees from MIT, and then joined the Lincoln Laboratory, where he carried out research into computer networks. In a pivotal meeting in November, 1964, Roberts met with J.C.R. Licklider, who inspired Roberts with his dream to build a wide area communications network.
In February, 1965, Ivan Sutherland, gave a contract to Roberts to develop a computer network. In July, Roberts gave a contract to Thomas Marill to program the network. In October, 1965, the Lincoln Labs TX-2 computer talked to their SDC's Q32 computer in one of the worlds first digital network communications.
In October, 1966, Roberts and Marill published a paper titled Toward a Cooperative Network of Time-Shared Computers at the Fall AFIPS Conference, documenting their networking experiments.
Also in 1966, DARPA head Charlie Hertzfeld promised IPTO Director Bob Taylor a million dollars to build a distributed communications network that would come to be called the ARPANET.
In April, 1967, Roberts held an "ARPANET Design Session" at the IPTO Principal Investigator meeting in Ann Arbor, Michigan. The standards for identification and authentication of users, transmission of characters, and error checking and retransmission procedures were outlined at this meeting.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 27
Source: Livinginternet.com
Vinton Cerf and Robert Kahn
In 1972, Vinton Cerf was a DARPA scientist at Stanford University
and he joined Robert Kahn as Principal Investigator on a project to
design the next generation networking protocol for the ARPANET.
Cerf and Kahn drafted a paper describing their network design,
titled "A Protocol for Packet Network Interconnection", in 1973 and
then finalized and published in the IEEE Transactions of
Communications Technology, in May, 1974.
Cerf, Kahn, and Stanford graduate students Yogen Dalal and Carl
Sunshine published the first technical specification of TCP/IP as
an as RFC 675, in December, 1974.
TCP is split into TCP and IP in 1978.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 28
Source: Livinginternet.com
Tim Berners-Lee
The inventor of HTML. Graduate of Oxford University,
England, Tim is now with the Laboratory for Computer
Science ( LCS)at the Massachusetts Institute of
Technology ( MIT).
In 1989 he invented the World Wide Web, an internet-
based hypermedia initiative for global information
sharing, while working at CERN, the European Particle
Physics Laboratory.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 29
Source: w3c.org and The Internet Society.
Mark Andreesen
Marc Andreesen, National Center for Supercomputing Applications (NCSA) at the University of Illinois, identified that most browsers were designed for UNIX machines and were available only for academics.
In 1992, Andreesen and Eric Bina, developed new browser Mosaic that let
Images and text to appear on the same page
A graphical interface with clickable buttons that let users navigate easily
The hyper-link. In earlier browsers hypertext links had reference numbers that the user typed in to navigate to the linked document. Hyper-links allowed the user to simply click on a link to retrieve a document.
In 1993, Mosaic made it to the front page of the New York Times business section saying “an application program so different and so obviously useful that it can create a new industry from scratch.”
In mid-1994, Mosaic Communications Corp. was officially incorporated in Mountain View, California where he led the development of Netscape, the leading Internet browser for another decade.
9/23/2010UCSD CSE 124 Networked Services
Fall 2010 30
Source: www.ibiblio.org/pioneers
and the Internet Society.
Innovations soon followed
9/23/2010UCSD CSE 124 Networked Services Fall 2010
31
Yahoo.com; the web indexing service
Hotmail.com; first web-based email service
Google.com; transformed search service as one of the most important activity on the net
Akamai.net; content distribution service as one of the key elements in the internet
Peer-to-peer networks came to be as a novel alternative communication approach
PlanetLab became a large scale world-wide overlay network testbed
NSF started GENI (GENI.NET) Global Environment for Network Innovations for a future Internet
“Cool” internet appliances
9/23/2010UCSD CSE 124 Networked Services Fall 2010
1-32
World’s smallest web server
http://www-ccs.cs.umass.edu/~shri/iPic.html
IP picture frame
http://www.ceiva.com/
Web-enabled toaster +
weather forecaster
Internet phones
Introduction to the Internet
9/23/2010UCSD CSE 124 Networked Services Fall 2010
33
What is the Internet?
A network of networks
Each network may be under an autonomous organization
Network of a large number heterogeneous networks
Wireless, fiber, copper, satellite, sensor, etc.
From big super computers to tiny sensors
Sometimes even human beings
Assisted living as an inevitability
A headless network formed by millions of heterogeneous devices
No single administrative control is feasible
High reliability and availability
Highly vulnerable for security
A giant network formed by
Access networks (Network edge)
Core Network (The backbone of the Internet)
An important infrastructure for modern services
E-commerce, E-governance, Telemedicine, assisted living, reliable distributed computing, and a host of other yet-to-be identified services
What‟s the Internet: another “nuts and bolts” view
millions of connected computing
devices: hosts = end systems
running network apps
9/23/2010
1-34
UCSD CSE 124 Networked Services Fall 2010
Home network
Institutional network
Mobile network
Global ISP
Regional ISP communication links
fiber, copper, radio, satellite
transmission rate = bandwidth
routers: forward packets (chunks of data)
What‟s the Internet: “nuts and bolts” view
protocols control sending,
receiving of msgs
e.g., TCP, IP, HTTP, Skype, Ethernet
Internet: “network of networks”
loosely hierarchical
public Internet versus private
intranet
Internet standards
RFC: Request for comments
IETF: Internet Engineering Task
Force
IEEE standards
9/23/2010
1-35
UCSD CSE 124 Networked Services Fall 2010
Home network
Institutional network
Mobile network
Global ISP
Regional ISP
What‟s the Internet: a service view
communication infrastructure enables distributed applications:
Web, VoIP, email, games, e-commerce, file sharing
communication services provided to apps:
reliable data delivery from source to destination
“best effort” (unreliable) data delivery
Voice, video, radio
application services
E-commerce, telemedicine, internet information processing, distributed gaming, P2P file sharing,
9/23/2010
1-36
UCSD CSE 124 Networked Services Fall 2010
Communication requirements
Some information (An idea) for eg., Hi
Sufficient Energy to transmit (voice, or electrical energy)
A medium to transmit
Air, copper, fiber, RF spectrum etc.
A network is a collection of media that are assembled in certain specific order or form to enable end-to-end communication
A set of rules to make the communication meaningful
Hi must be recognized with proper syntax and semantics
Network protocols define the rules of communication over a network
9/23/2010
37
UCSD CSE 124 Networked Services Fall 2010
What‟s a protocol?
human protocols:
“what‟s the time?”
“I have a question”
introductions
… specific msgs sent
… specific actions taken
when msgs received, or
other events
network protocols:
machines rather than
humans
all communication activity
in Internet governed by
protocols
9/23/2010
1-38
UCSD CSE 124 Networked Services Fall 2010
Definition 1: protocols define format, order of msgs sent and received among network
entities, and actions taken on msgtransmission, receipt
Definition 2: A communication protocol defines the rules that are associated with the
syntax, semantics, and actions associated with messages and events that must be
followed for effective communication between network devices.
What‟s a protocol?
a human protocol and a computer network protocol:
9/23/2010
1-39
UCSD CSE 124 Networked Services Fall 2010
Q: Other human protocols?
Hi
Hi
Got thetime?2:00
TCP connectionrequest
TCP connectionresponse
Get http://www.awl.com/kurose-ross
<file>
time
Summary
UCSD CSE 124 Networked Services Fall 2010
1-40
This course is about networking with focus on
services
More in later lectures
References
Kurose and Rose chapter 1
Web sources mentioned in the slides
9/23/2010