Upload
jaimin
View
47
Download
0
Tags:
Embed Size (px)
DESCRIPTION
CSE 245: Computer Networks and Data Communication http://webct.uconn.edu. Jun-Hong Cui 08/30/2005. Outline. Course information What is a network protocol? A brief introduction to the Internet: past and present Summary. Course Information. Personnel Instructor - PowerPoint PPT Presentation
Citation preview
CSE 245: Computer Networks and Data Communication
http://webct.uconn.edu
Jun-Hong Cui
08/30/2005
2
Outline Course information What is a network protocol? A brief introduction to the Internet: past
and present Summary
3
Course Information Personnel
Instructor• Jun-Hong Cui, [email protected], ITEB 267• Office hours
– TuTh 2pm-3pm 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• Shireesh Thota, [email protected]• Office hours
– Time: MW 10am –11am– Location: ITEB 230
4
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 StevensAnd more (see handout)
Resource On-line resources (using NetID)
• http://webct.uconn.edu Class discussion forum
• Check WebCT (class discussions)
5
What Are the Goals Of This Course?
Understand how Internet works Its philosophy Its protocols and mechanisms
Learn network programming
And have fun!
6
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)
7
What Do You Need To Do? Your prerequisites
basic concepts of operating systems programming: C/C++ (Java???) Unix/Linux system experience probabilities, and basic algorithms
Your workload textbook reading for every lecture (*****) assignments
• 4 homework assignments• 2 programming projects
one mid-term exam, and one final exam
8
What Do You Need To Do? Homework: Do on your own Programming projects:
Proj. 1---HTTP Client/Server: group work (2 to 3 people in one group)
Proj. 2---Routing algorithm simulation: individual work
Can do advanced part for extra credits NO credit for late homework or projects
9
Grading
More important is what you learn than the grades
Homework 12% (3% each)
Projects 33% (proj1: 17%, proj2: 16% )
Class participation and in-class quizzes
5% (2 to 3 quizzes)
Mid-term exam 25%
Final exam 25%
10
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!!!
11
Class Attendance and Computers Attendance in Class is …
Responsibility of each Student May Result in Missing Hint/Clarification/Error on
Homework or Projects 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/
12
Class SurveyPlease take the class survey
help me to determine your backgroundhelp me to determine the depth and
topicsany suggestions on topics and schedule
Hand in at the end of the class
Questions?
14
Outline Course information What is a network protocol? A brief introduction to the Internet: past
and present Summary
15
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.
16
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
user mailbox
outgoing message queue
mailserver
useragent
useragent
useragentmail
server
useragentuser
agent
mailserver
useragent
SMTP
SMTPSMTP
POP3,IMAPSMTP
17
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)
18
Outline Course information What is a network protocol? A brief introduction to the Internet
past present
Summary
19
A Brief History of the Internet 1961
Kleinrock - queueing theory shows effectiveness of packet-switching (telephone network: circuit switching)
1968 Bolt Beranek and Newman, Inc. (BBN) was awarded Packet
Switch contract to build Interface Message Processors (IMPs) for ARPANET
20
1969 ARPANET commissioned: 4 nodes, 50kbps
A Brief History of the Internet
21
Initial Expansion of the ARPANET
Dec. 1969 March 1971July 1970
Apr. 1972 Sep. 1972
22
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 …
23
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
24
Growth of the Internet in Terms of Number of Hosts
Number of Hosts on the Internet:
Aug. 1981 213Oct. 1984 1,024Dec. 1987 28,174 Oct. 1990 313,000 Jul. 1993 1,776,000Jul. 1996 19,540,000Jul. 2000 93,047,000Jul. 2002 162,128,493 1
10100
1,00010,000
100,0001,000,000
10,000,000100,000,000
1,000,000,000
1981 1984 1987 1990 19931996 1999 2002
25
Outline Course information What is a network protocol? A brief introduction to the Internet
past present
Summary
26
Backbone:National ISP
Local/RegionalISP
Local/RegionalISP
Internet Physical Infrastructure
Residential Access
Modem DSL Cable
modem
Access to ISP, Backbone transmission T1/T3, OC-3, OC-12 ATM, SONET, WDM
Internet Service Providers Local/Regional/
National They exchange
packets at Point of Presence (POP)
Campus network access
Ethernet FDDI Wireless
27
ATT Global Backbone IP Network
From http://www.business.att.com
28From AT&T web site.
29
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
30
Hands-on Exercises Read the manual of ping and traceroute (or
tracert), and try them on an ECS machine1. % /bin/ping <machine_name>2. % /usr/sbin/traceroute <machine_name>
Look at the web sites of the routers you see through traceroute
Have fun …
Dot not forget to find your group members!