introduction lecture 1 cs193i – internet technologies summer 2004 stanford university
TRANSCRIPT
IntroductionIntroductionLecture 1Lecture 1
cs193i – Internet cs193i – Internet TechnologiesTechnologies
Summer 2004Summer 2004
Stanford UniversityStanford University
OutlineOutline
What is the Internet?What is the Internet? Where did it come from?Where did it come from? What are we going to discuss in What are we going to discuss in
cs193i?cs193i? BreakBreak Networking basicsNetworking basics Physical InfrastructurePhysical Infrastructure
The Ever-changing The Ever-changing InternetInternet
Different colors based on IP addressDifferent colors based on IP addresshttp://research.lumeta.com/ches/maphttp://research.lumeta.com/ches/map
What is the Internet?What is the Internet?
WWWWWW Video conferencingVideo conferencing ftpftp telnettelnet EmailEmail Instant messagingInstant messaging ……
What is the Internet?What is the Internet?
WWWWWW Video conferencingVideo conferencing ftpftp telnettelnet EmailEmail Instant messagingInstant messaging ……
A communication infrastructureA communication infrastructure
Usefulness is in exchanging informationUsefulness is in exchanging information
“On-line interactive communities... will be
communities not of common location, but of common
interest.... the total number of users...will be large
enough to support extensive general purpose
[computers]. All of these will be interconnected by
telecommunications channels... [to] constitute a labile
network of networks--ever changing in both content
and configuration.”
J. C. R. Licklider
Where Did It Come Where Did It Come From?From?
It was invented by Al Gore. It was invented by Al Gore. JUST KIDDING!JUST KIDDING! Early 1960’s - DARPA (ARPA in 1960’s) project
headed by Licklider Late 1960’s - ARPANET & research on packet
switching by Roberts First node installed by BBN at UCLA in September 1969 1969 - Four host computers (UCLA, SRI, UCSB, University
of Utah)
Get more info at:http://www.isoc.org/internet/history/http://www.packet.cc/internet.html
ARPANET, 1980ARPANET, 1980
http://mappa.mundi.net/maps/maps_001/
History of the InternetHistory of the Internet 1969 - RFCs begun by S. Crocker
(http://rfc.sunsite.dk/) 1972 - Email by Ray Tomlinson & Larry Roberts 1970’s - TCP by Vint Cerf & Bob Kahn
Evolved into TCP/IP, and UDP 1980s – Hardware Explosion (LANs, PCs, and 1980s – Hardware Explosion (LANs, PCs, and
workstations)workstations) 1983 – Ethernet by Metcalfe1983 – Ethernet by Metcalfe
DNS – Distributed and scalable mechanism for DNS – Distributed and scalable mechanism for resolving host names into IP addressesresolving host names into IP addresses
UC Berkeley implements TCP/IP into Unix BSDUC Berkeley implements TCP/IP into Unix BSD 1985 – Internet used by researchers and 1985 – Internet used by researchers and
developersdevelopers
History of the InternetHistory of the Internet
Tim Berners-Lee at CERN in 1989Tim Berners-Lee at CERN in 1989 Proposal for WWW in 1990Proposal for WWW in 1990 First web page on November 13, 1990First web page on November 13, 1990
Hypertext - Text that contains links to other text. Ted Nelson’s Xanadu Vannevar Bush’s Memex
(http://www.theatlantic.com/unbound/flashbks/computer/bushf.htm)
W3CGet more info at:http://www.isoc.org/internet/history/
What will cs193i cover?What will cs193i cover?
Basic Networking IssuesBasic Networking Issues Network Interoperability and StandardsNetwork Interoperability and Standards
TCP/IPTCP/IP Sockets and Client/Server StructuresSockets and Client/Server Structures ServicesServices ApplicationsApplications
HTML, HTTP, CGI, ServletsHTML, HTTP, CGI, Servlets Security and PrivacySecurity and Privacy Advanced TopicsAdvanced Topics
Course StaffCourse Staff
Kelly A. ShawKelly A. Shaw InstructorInstructor Professor at Univ. of Professor at Univ. of
Richmond in FallRichmond in Fall PhD Candidate w/ PhD Candidate w/
Distinction in Distinction in TeachingTeaching
BS from Duke BS from Duke UniversityUniversity
Gates 255Gates 255 Office hours: MW 2-Office hours: MW 2-
4pm4pm
Silas Boyd-Silas Boyd-WickizerWickizer Teaching AssistantTeaching Assistant Office hours: TTh 4-Office hours: TTh 4-
6pm6pm
Sweet hallSweet hall
Meeting TimesMeeting Times
LectureLecture MW 4:15-6:05 McCullough 115MW 4:15-6:05 McCullough 115 Broadcast Live on E3Broadcast Live on E3 Stanford OnlineStanford Online
Two review sessions - TBATwo review sessions - TBA PerlPerl JavaJava
Reading MaterialsReading Materials
No required textbookNo required textbook Recommended:Recommended:
Core Web ProgrammingCore Web Programming by Marty Hall by Marty Hall and Larry Brown. and Larry Brown.
HandoutsHandouts On-line onlyOn-line only
Course DetailsCourse Details
GradingGrading 50% Homework (4 assignments)50% Homework (4 assignments) 5% Labs (4 labs)5% Labs (4 labs) 10% Midterm10% Midterm 30% Final30% Final 5% Class participation (if not SCPD)5% Class participation (if not SCPD)
May work in groups of 1 or 2 studentsMay work in groups of 1 or 2 students C/NC studentsC/NC students
Homework AssignmentsHomework Assignments HW #1HW #1
POP email clientPOP email client Server/Client pair with authenticationServer/Client pair with authentication
HW #2HW #2 Simple Web ClientSimple Web Client Simple Web ServerSimple Web Server
HW #3HW #3 CGI ProgrammingCGI Programming (e.g. for maintaining Netflix Movie Queue)(e.g. for maintaining Netflix Movie Queue)
HW #4HW #4 Java / JSP / Servlets and JavascriptJava / JSP / Servlets and Javascript Amazon.edu BookstoreAmazon.edu Bookstore
Administrative DetailsAdministrative Details
Contacting staffContacting staff [email protected]@lists.stanford.ed
uu NewsgroupNewsgroup
su.class.cs193isu.class.cs193i Grading/testing on Leland systemsGrading/testing on Leland systems Honor CodeHonor Code
Five Minute Break Five Minute Break
Communicating Via the Communicating Via the InternetInternet
Network
MSN Messenger
How’s theweather inSeattle, Mar?
Bits and BytesBits and Bytes Computer Data is stored in Binary
Binary Digits (bits) Base 2 representation1011100001101010
Every 8 bits == 1 Byte10111000 01101010 (2 bytes (once known as octet))
Hexadecimal == Base 16 representation1011 1000 0110 1010 B 8 6 A
Decimal == Base 10 (we have 10 fingers)0...9, A = 10, B= 11, C = 12, D = 13, E = 14, F = 15
Bits and BytesBits and Bytes
Kilobyte (2^10=1024 Bytes, 10^3=1000 Bytes in networking)
Megabyte (2^20 Bytes, 10^6 in Networking)
Gigabyte (2^30 Bytes, 10^9 in Networking)
Terabyte (2^40, 10^12) Petabyte (2^50, 10^15)
Latency Latency How long minimum communication takes in How long minimum communication takes in
seconds (s)seconds (s) Round trip vs. single tripRound trip vs. single trip More difficult to overcome than bandwidthMore difficult to overcome than bandwidth
Bandwidth Bandwidth Number of bits per time unit usually seconds (bps)Number of bits per time unit usually seconds (bps)
Performance: Latency Performance: Latency and Bandwidthand Bandwidth
bandwidth
latency
link
Any-to-Any Any-to-Any CommunicationCommunication
nn2 2 Network Effect (Metcalfe’s Law)Network Effect (Metcalfe’s Law) Total utility of system proportional to nTotal utility of system proportional to n22
Think about Orkut, MSN MessengerThink about Orkut, MSN Messenger
BabelBabel Internet consists Internet consists
of many different of many different types of networkstypes of networks EthernetEthernet Token ringToken ring
Different types of Different types of operating systems operating systems and other and other softwaresoftware
How do they work How do they work together?together? StandardsStandards
Token-ring
How’s theweather inSeattle, Mar?
MSN Messenger
Network
Ethernet
Divide Work into LayersDivide Work into Layers
0 1 0 1 0 0101001010
ba
01010 01010
physically encode bits on “wire” physically encode bits on “wire”
connect segments, address connect segments, address (locating points on graph) and (locating points on graph) and route (navigating graph)route (navigating graph)
make network simple and reliablemake network simple and reliable
Link Level
Ethernet, token ring
Network
IP
End-to-End
TCP, UDP
Application
HTTP, SMTP, FTP,TELNET, DNS
Sending Data Along Sending Data Along WiresWires
Connection-orientedConnection-oriented Circuit switchedCircuit switched
Persistent connection set up between sender Persistent connection set up between sender and receiverand receiver
Example: telephone systemExample: telephone system ConnectionlessConnectionless
Packet switchedPacket switched Data partitioned into packets and Data partitioned into packets and
sent individually from sender to receiversent individually from sender to receiver Reassembled at receiverReassembled at receiver
Message
H Data H Data H Data H Data
Comparison of Switching Comparison of Switching TechnologiesTechnologies
Circuit switchedCircuit switched AdvantagesAdvantages
Only route onceOnly route once Latency and Latency and
bandwidth constantbandwidth constant DisadvantagesDisadvantages
Idle resources Idle resources unavailable for other unavailable for other connectionsconnections
Large setup timeLarge setup time Single point of failureSingle point of failure
Distributed stateDistributed state
Packet switchedPacket switched AdvantagesAdvantages
Efficient use of Efficient use of wireswires
Small startup Small startup overheadoverhead
DisadvantagesDisadvantages Route each packetRoute each packet Per packet Per packet
overheadoverhead BurstyBursty
EthernetEthernet Bob Metcalfe at Xerox PARC Used for local area networks (LANs)Used for local area networks (LANs)
Physically near one anotherPhysically near one another 200 computers within 100 meters200 computers within 100 meters
Broadcast mediumBroadcast medium Single wire connects all computersSingle wire connects all computers
Each computer has unique 48-bit MAC addressEach computer has unique 48-bit MAC address All computers constantly listenAll computers constantly listen
““Carrier Sense, Multiple Access with Carrier Sense, Multiple Access with Collision Detect”Collision Detect” Sender waits until wire unused before sendingSender waits until wire unused before sending If hears collision, stops, waits random time, If hears collision, stops, waits random time,
retransmitsretransmits
EthernetEthernet
Ethernet VariationsEthernet Variations
Ethernet PropertiesEthernet Properties
Shared Distributed (not Centralized) Insecure Unpredictable Latency & Bandwidth But it works!
Under light load (<30%), appears to be Under light load (<30%), appears to be point-to-pointpoint-to-point
Alternative to Ethernet:Alternative to Ethernet:Token RingToken Ring
Alternative introduced by Alternative introduced by IBM (1980s)IBM (1980s)
““Passing the Conch Shell”Passing the Conch Shell”
Next TimeNext Time
Network LayerNetwork Layer IPIP
End-to-End or Transport LayerEnd-to-End or Transport Layer TCPTCP