CSCE 790: Computer Network Security
Download
Report
Transcript CSCE 790: Computer Network Security
CSCE 515:
Computer Network Programming
Chin-Tser Huang
[email protected]
University of South Carolina
About Me
Chin-Tser Huang
Ph.D. in Computer Sciences, 2003,
University of Texas at Austin
My second year with USC
Research in network security, network
protocol design and verification, distributed
systems
My web page can be found at
http://www.cse.sc.edu/~huangct
1/11/2005
(C) 2005 Chin-Tser Huang
2
About the Course
A course focusing on programming
aspects of computer networks
Course will be divided into two parallel
themes
Network architecture and protocols
Network programming issues in Java
1/11/2005
(C) 2005 Chin-Tser Huang
3
Course Information Online
http://www.cse.sc.edu/~huangct/CSCE
515S05/index.htm
Look for information about
Topics and schedule
Projects and homeworks
Grading rules
Useful links
1/11/2005
(C) 2005 Chin-Tser Huang
4
Why You Should Take This Course
Network applications are becoming more and
more important to our life
You want to have a clear understanding of
network architecture and TCP/IP suite
You also want to have good ability in
network-based software design and
implementation
You have chances to implement the skills
learned in the classes
1/11/2005
(C) 2005 Chin-Tser Huang
5
Your Best Strategy
Come to every lecture
Keep yourself exposed to articles related to
network protocols and network programming
Finish each assigned reading before coming
to class
Do not wait till last minute to prepare for
exam or work on project
Enjoy the fun!
1/11/2005
(C) 2005 Chin-Tser Huang
6
What Is Going On…
…when your computer receive a
message from your partner?
?
m
Internet
x
1/11/2005
y
(C) 2005 Chin-Tser Huang
7
What Is Going On…
First, your partner needs to construct
the message and send it to the network
m
Internet
x
1/11/2005
y
(C) 2005 Chin-Tser Huang
8
What Is Going On…
Then, routers in the Internet
collaborate to forward the message
toward your computer
m
Internet
x
1/11/2005
y
(C) 2005 Chin-Tser Huang
9
What Is Going On…
Finally, your computer needs to
determine which application should
receive the message
telnet
?
ftp
m
browser
Internet
x
1/11/2005
y
(C) 2005 Chin-Tser Huang
10
Other Issues Beyond This
Multicast or broadcast?
Proxy?
Security features?
…
1/11/2005
(C) 2005 Chin-Tser Huang
11
Network Protocols
Abstractions of communication between two
processes over a network
Define message formats
Define legitimate sequence of messages
Take care of physical details of different
network hardware and machines
Separate tasks in complex communication
networks
For example, FTP and ARP
1/11/2005
(C) 2005 Chin-Tser Huang
12
Protocol Layering
Many problems need to be solved in a
communication network
These problems can be divided into
smaller sets and different protocols are
designed for each set of problem
Protocols can be organized into layers
to keep them easy to manage
1/11/2005
(C) 2005 Chin-Tser Huang
13
Properties of Protocol Layer
Functions of each layer are independent
of functions of other layers
Thus each layer is like a module and can
be developed independently
Each layer builds on services provided
by lower layers
Thus no need to worry about details of
lower layers -- transparent to this layer
1/11/2005
(C) 2005 Chin-Tser Huang
14
Protocol Stack: OSI Model
Application
Presentation
Session
Transport
Network
Data link
Physical
1/11/2005
(C) 2005 Chin-Tser Huang
15
Communicating End Hosts
Host
Host
Application
Application
Presentation
Presentation
Session
Session
Transport
Router
Transport
Network
Network
Network
Data link
Data link
Data link
Physical
Physical
Physical
1/11/2005
(C) 2005 Chin-Tser Huang
16
Next Class
Seven layers in OSI reference model
Corresponding Internet architecture
Application programming interface (API)
Read TI Ch. 1, JNP Ch. 1
1/11/2005
(C) 2005 Chin-Tser Huang
17