Transcript intro
CSE 245: Computer Networks and
Data Communications
http://vista.uconn.edu
Jun-Hong Cui
08/29/2006
Outline
Course information
What is a network protocol?
A brief introduction to the Internet: past
and present
Summary
2
Course Information
Personnel
Instructor
• Jun-Hong Cui, [email protected], ITEB 267
• Office hours
– Tu/Th 10:30am-11:30am or by appointments
– Feel free to stop by if you see my door open
– e-mail is the best way to communicate with me
Teaching assistant
• James Zheng Peng, [email protected]
• Office hours
– Time: TBA
– Location: ITEB 230
3
Course Information
Textbook
Computer Networking: A Top-Down Approach
Featuring the Internet,
3/e by Kurose and Ross
-Buy through Co-Op or On-line
-Make good use of On-line materials
Reference books
Computer Networks,
4/e by Andrew Tanenbaum
Unix Network Programming
by W. Richard Stevens
And more (see handout)
Resource
On-line resources (using NetID)
• http://vista.uconn.edu
Class discussion forum
• Check WebCT (class discussions)
4
What Are the Goals of This Course?
Understand how Internet works
Its philosophy
Its protocols and mechanisms
Learn network programming
And have fun!
5
What Will We Cover?
Introduction (3 lectures)
Internet architecture and design philosophy
Applications (5 lectures)
HTTP, Email, DNS + socket programming (+ C programming)
transport services (5 lectures)
reliability; congestion control; transport protocols:
TCP/UDP
network services (5 lectures)
routing; network protocols: IP/IPv6
link and physical layers (5 lectures)
multiple access; ARP; Ethernet, hubs and bridges
wireless & mobile networks, multimedia networking
network security (if time permits)
6
What Do You Need To Do?
Your prerequisites
basic concepts of operating systems
programming: C/C++ (tested by proj0)
Unix/Linux system experience
probabilities, and basic algorithms
Your workload
textbook reading for every lecture (*****)
assignments
• 5 homework assignments
• 3 programming projects
two mid-term exams, and one final exam
7
What Do You Need To Do?
Homework: Do on your own
Programming projects:
Proj. 0--- C/C++ Programming (not graded)
Proj. 1--- HTTP Client (group work)
Proj. 2--- HTTP Server (group work)
Proj. 3--- Routing Simulation
Can do advanced part for extra credits
Proj. 1 and Proj. 2 can be done in a small group (up to 2
people), and others are individual work
Late policy:
20% deduction (1 day), 40% (2 days), 80% (3 days), …
8
Grading
Homework
15% (3% each)
Projects
30% (10% each)
Mid-term exam 1
10%
Mid-term exam 2
20%
Final exam
25%
More important is what you learn than the grades
9
Academic Policy
Homework and projects should be done on
your own unless specified as group work
In any homework or project, copying from
other students (or groups) or solution books
are prohibited. Refer to handout for details.
We follow the University Policy on Academic
Integrity!!!
10
Class Attendance and Computers
Attendance in class …
Is Responsibility of each Student
Absence may Result in Missing Hint/Clarification/Error on
Homework or Projects
May Announce Change in Due Date or Exam Date
I Might NOT Make ALL information to WebCT
Computers for projects …
Use Unix/Linux machines in ECS (TA grading)
Unix/Linux labs in ITEB and Engineering II
Apply for an ECS Unix/Linux account on-line
Use SSH to remotely login those Unix/Linux boxes
Test on these machines before you hand in your projects
More info: http://www.engr.uconn.edu/ecs/linux/
11
Class Survey
Please take the class survey
help me to determine your background
help me to determine depth and topics
any suggestions on topics and schedule
Hand in at the end of the class
12
Questions?
Outline
Course information
What is a network protocol?
A brief introduction to the Internet: past
and present
Summary
14
What is a Network Protocol?
A network protocol defines the format and
the order of messages exchanged between
two or more communicating entities, as well
as the actions taken on the transmission
and/or receipt of a message or other
event.
15
An Example: Simple Mail
Transfer Protocol (SMTP)
Messages from a client to a mail server
HELO
MAIL FROM: <address>
RCPT TO: <address>
DATA
<This is the text end with a
line with a single .>
QUIT
Messages from a mail server to a client
status code
• The first digit of the response broadly
indicates the success, failure, or
progress of the previous command.
– 1xx - Informative message
– 2xx - Command ok
– 3xx - Command ok so far, send the rest
of it.
– 4xx - Command was correct, but couldn't
be performed for some reason.
– 5xx - Command unimplemented, or
incorrect, or a serious program error
occurred.
content
outgoing
message queue
user mailbox
mail
server
user
agent
SMTP
SMTP
mail
server
user
agent
SMTP
POP3,
IMAP
SMTP
user
agent
mail
server
user
agent
user
agent
user
agent
16
Internet Standardization Process
All standards of the Internet are published as RFC
(Request for Comments)
but not all RFCs are Internet Standards !
available: http://www.ietf.org
A typical (but not the only) way of standardization:
Internet draft
RFC
Proposed standard
Draft standard (requires 2 working implementations)
Internet standard (declared by Internet Architecture
Board)
17
Outline
Course information
What is a network protocol?
A brief introduction to the Internet
past
present
Summary
18
A Brief History of the Internet
1961
Kleinrock - queueing theory shows effectiveness of packetswitching (telephone network: circuit switching)
1968
Bolt Beranek and Newman, Inc. (BBN) was awarded Packet Switch
contract to build Interface Message Processors (IMPs) for
ARPANET
19
A Brief History of the Internet
1969
ARPANET commissioned: 4 nodes, 50kbps
20
Initial Expansion of the ARPANET
Dec. 1969
July 1970
Apr. 1972
March 1971
Sep. 1972
21
Multiple Networks
1974: Initial design of TCP to connect multiple
networks
1986: NSF builds NSFNET as backbone, links 6
supercomputing centers, 56 kbps; this allows an
explosion of connections, especially from
universities
1987: 10,000 hosts
1988: NSFNET backbone upgrades to 1.5Mbps
1989: 100,000 hosts
WELCOME by Leonard Kleinrock …
22
Web and Commercialization of the Internet
1990: ARPANET ceases to exist
1991: NSF lifts restrictions on the commercial use of
the Net; Berners-Lee of European Organization for
Nuclear Research (CERN) released World Wide Web
1992: 1 million hosts
1994: NSF reverts back to research network (vBNS);
the backbone of the Internet consists of multiple
private backbones
Today: backbones run at 10Gbps, 100s millions
computers in 150 countries
23
Growth of the Internet
in Terms of Number of Hosts
Number of Hosts on the 1,000,000,000
Internet:
100,000,000
Aug. 1981
213
10,000,000
Oct. 1984
1,024
1,000,000
Dec. 1987
28,174
100,000
10,000
Oct. 1990
313,000
1,000
Jul. 1993
1,776,000
100
Jul. 1996 19,540,000
10
Jul. 2000 93,047,000
1
Jul. 2002 162,128,493
1981 1984 1987 1990 1993 1996 1999 2002
24
Outline
Course information
What is a network protocol?
A brief introduction to the Internet
past
present
Summary
25
Internet Physical Infrastructure
Local/Regional
ISP
Residential
Access
Modem
DSL
Cable modem
Campus
network access
Ethernet
FDDI
Wireless
Access to ISP,
Backbone
transmission
Local/Regional
ISP
Backbone:
National ISP
Internet Service
T1/T3, OC-3, OC-12
ATM, SONET, WDM
Providers
Local/Regional/
National
They exchange
packets at Point of
Presence (POP)
26
ATT Global Backbone IP Network
From http://www.business.att.com
27
From AT&T web site.
28
Summary
Course information
Concept of network protocol
The past:
The Internet started as ARPANET in late 1960s
The initial link bandwidth was 50 kbps
The number of hosts at the end of 1969 was 4
Current:
The number of hosts connected to the Internet grows
at an exponential speed
The backbone speed of the current Internet is about
10 Gbps
The number of hosts attached to the Internet in July
2002 was about 162 millions
29
Hands-on Exercises
Read the manual of ping and traceroute (or
tracert), and try them on an ECS machine
1.
2.
% /bin/ping <machine_name>
% /usr/sbin/traceroute <machine_name>
Look at the web sites of the routers you see
through traceroute
Have fun …
Check WebCT Vista for Proj. 0
Buy your textbook on-line (cheaper & faster)
Dot not forget to find your group members!
30