4 - modular view
4 - modular view
SUNY AT BUFFALO; CSE489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 1
This Lecture
SUNY AT BUFFALO; CSE489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 2
What Is a Protocol?
Hi TCP connection
req
Hi
TCP connection
Got the response
time? Get http://www.awl.com/kurose-ross
2:00
<file>
time
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 7
An Example Protocol: HTTP
GET /dir/page.html HTTP/1.1! HTTP/1.1 200 OK!
HOST: www.buffalo.edu! Date: Wed, 29 Aug 2001 08:14:59
Connection: close! GMT!
User-agent: Mozilla/4.0! Server: Apache/1.3.20 Ben-SSL/
Accept-language:fr! 1.44 (Unix) PHP/4.0.6!
‘\n’! Connection: close!
Content-Type: text/html!
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 8
Protocol Architectures
! The Internet is extremely complicated
! Just imagine what happens in every detail how those
“simple” HTTP request and response get through the
network
! Key idea in CS: Modularize
! To simplify network design complexity,
! Organize protocols and the hardwares/softwares that
implement the protocols in to layers
! Each layer is a software and/or hardware module
! Upper layers use services provided by lower layers
! The protocol layers form a protocol stack
(protocol suite, protocol architecture)
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 9
A Practical Example
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 10
A More Practical Example
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 11
Our view in the first few weeks
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 12
A Theoretical Figure
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 14
Service Characteristics
! Connection-Oriented
! Connection established, used, and released
(think of telephony systems)
! Connectionless
! Each packet carries the destination address, that’s it
(think of postal systems)
! Reliable
! I ensure the packet gets there, sooner or later
! Unreliable
! I will try my best to serve you
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 15
In Reality
Questions:
! Discuss Pros and Cons of these two types
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 16
Service Primitives
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 17
Service Access Points
! How do two processes on two computers identify
themselves to each other ?
! Answer: use a triple
(protocol, ip_address, port_number) = socket
e.g. (TCP, 192.168.0.1, 80)
! (Actually a socket is a quintuple, more later)
! In general: each entity of a layer access lower layer’s
services via Service Access Points
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 18
Services vs. Protocols
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 21
Our Protocol Stack
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 22
Summary
! Lots of basic concepts introduced
! Essential ones:
! Circuit switching vs. packet switching
! Small packets vs. large packets
! Protocols
! Protocol Architectures, TCP/IP Stack
! Services
SUNY AT BUFFALO; CSE 489/589 – MODERN NETWORKING CONCEPTS; Fall 2010; INSTRUCTOR: HUNG Q. NGO 25