0% found this document useful (0 votes)
16 views10 pages

02 Protocols

Uploaded by

Deepika
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views10 pages

02 Protocols

Uploaded by

Deepika
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Last Time

! The Big Picture


» Goals:
Lecture 2 – Efficiency
Protocol Stacks and Layering – “ilities” (scalability, manageability, availability),
– Ease of creating applications
» Challenges:
– Scale
David Andersen
– Geography
School of Computer Science – Heterogeneity (** today’s focus!)
Carnegie Mellon University ! A few specific details:
» Circuits vs. packets
» Little bit about routing
15-441 Networking, Spring 2008
» Service model and how to construct services (** today!)
http://www.cs.cmu.edu/~dga/15-441/S08/
1 2

Today’s Lecture Why protocols and layering?

! Last time: “Big picture” ! Interoperability


! Today:
» General architectural principles for networks
! Reuse
» Introduces a few concrete models & examples ! Hiding underlying details
! Where we are going:
» Tuesday: Socket programming review++ (for project)
» Thursday: Application examples (still high level)
» After that: Burrowing into the details, ground up
! Today’s specifics:
» What is a protocol.
» Protocol stacks.
» Some history.
» Standards organizations.
» Application layer.

3 4
What is a Protocol Interfaces
Friendly greeting

! An agreement between ! Each protocol offers an interface to its users,


parties on how
communication should take Muttered reply and expects one from the layers on which it
place. builds
! Protocols may have to
define many aspects of the » Syntax and semantics strike again
communication. – Data formats
! Syntax: – Interface characteristics, e.g. IP service model
» Data encoding, language, etc.
Destination?
! Semantics: ! Protocols build upon each other
» Error handling, termination, Pittsburgh » Add value
ordering of requests, etc.
! Protocols at hardware, – E.g., a reliable protocol running on top of IP
software, all levels! » Reuse
! Example: Buying airline – E.g., OS provides TCP, so apps don’t have to rewrite
ticket by typing. Thank you
! Syntax: English, ascii,
lines delimited by “\n”
5 6

Protocol and
Service Levels A Layered Network Model
The Open Systems Interconnection (OSI) Model.

7 Application Application
Application 6 Presentation Presentation

5 Session Session
End-to-end 4 Transport Transport

3 Network Network Network


Core 2 Data link Data link Data link
Network
1 Physical Physical Physical

7 8
OSI Motivation OSI Functions

! Standard way of breaking up a system in a set of


components, but the components are organized as a set of ! (1) Physical: transmission of a bit stream.
layers.
» Only horizontal and vertical communication
! (2) Data link: flow control, framing, error
» Components/layers can be implemented and modified in isolation detection.
! Each layer offers a service to the higher layer, using the ! (3) Network: switching and routing.
services of the lower layer.
! “Peer” layers on different systems communicate via a ! (4) Transport: reliable end to end delivery.
protocol. ! (5) Session: managing logical connections.
» higher level protocols (e.g. TCP/IP, Appletalk) can run on multiple
lower layers ! (6) Presentation: data transformations.
» multiple higher level protocols can share a single physical network
! “It’s only a model!” - TCP/IP has been crazy successful, ! (7) Application: specific uses, e.g. mail, file
and it’s not based on a rigid OSI model. But the OSI model transfer, telnet, network management.
has been very successful at shaping thought.
Multiplexing takes place in multiple layers
9 10

Heterogenous Sources of
Looking at protocols Components

! Hop by hop / link protocols ! Application: web server/browser,


mail, distributed game,..
» Ethernet
! Presentation/session. Application
! End-to-end protocols » Often part of application
» TCP, apps, etc. » Sometimes a library Presentation
! Transport/network.
! Management / “control plane” protocols » Typically part of the operating system
Session
» Routing, etc. Datalink.
!
Transport
– Can be either link or e2e themselves » Often written by vendor of the network
interface hardware
– Definition somewhat vague. Network
! Physical.
! Standards » Hardware: card and link
Data link
» File formats, etc.
! E.g., JPEG, MPEG, MP3, … Physical

Categories not solid / religious, just a way to view things.

11 12
Motivation: Many many
Network Components Protocols for Interoperability
Application
Application ! Many implementations of many technologies:
Router Software ! Hosts running FreeBSD, Linux, Windows, MacOS, …
Operating System (many protocols) Operating System
! People using Mozilla, Explorer, Opera, …
Links ! Routers made by cisco, juniper, …
! Hardware made by IBM, Dell, Apple, …
! And it changes all the time.
! Phew!

Computer ! But they can all talk together because they use the
Network Interface same protocol(s)
Protocol Software Router Hardware » Application level protocols: HTTP, SMTP, POP, IMAP, etc.
Computer » Hardware protocols (ethernet, etc)
Bridge HW/SW

13 14

Protocols for Abstraction & Multiplexing and


Reuse Demultiplexing

! Multiple choices of protocol at many layers ! There may be multiple TCP TCP
» Physical: copper, fiber, air, carrier pigeon implementations of each
layer.
» Link: ethernet, token ring, SONET, FDDI » How does the receiver IP IP
» Transport: TCP, UDP, SCTP know what version of a
layer to use?
! But we don’t want to have to write “a web ! Each header includes a
(HTTP) browser for TCP networks running IP demultiplexing field that
over Ethernet on Copper” and another for the is used to identify the V/HL TOS Length
fiber version… next layer.
» Reuse! Abstraction! » Filled in by the sender ID Flags/Offset
» Protocols provide a standard interface to write to » Used by the receiver TTL Prot. H. Checksum
» Layers hide the details of the protocols below ! Multiplexing ooccurs at
multiple layers. E.g., IP, Source IP address
TCP, … Destination IP address
Options..

15 16
Limitations of the
Example: Sending a Web Page Layered Model

! Some layers are not always cleanly separated.


Http hdr Web page » Inter-layer dependencies in implementations for performance
Application reasons
» Some dependencies in the standards (header checksums)
Presentation ! Higher layers not always well defined.
... Session
!
» Session, presentation, application layers
Lower layers have “sublayers”.
Transport » Usually very well defined (e.g., SONET protocol)
Network ! Interfaces are not always well standardized.
TCP Application » It would be hard to mix and match layers from independent
Data link implementations, e.g., windows network apps on unix (w/out
header payload compatability library)
Physical » Many cross-layer assumptions, e.g. buffer management

17 18

The TCP/IP Model Local Area Network Protocols


IEEE 802 standards “refine” the OSI data link
layer.
Application Application Application
(plus
Presentation Presentation Upper
libraries)
Session Layer
Session Protocols
Transport TCP/UDP
Transport link service
IP/ICMP
Network access points
Network LLC
Data link Data link Data link MAC
Physical Physical Physical Physical

19 20
A TCP / IP / 802.3 Packet Internetworking Options
7 7 7 7
Application Ethernet preamble 6 6 6 6
5 5 5 5
Presentation MAC header 4 4 4 4
3 3 3 data link 3
Session LLC / SNAP header 2 physical 2 2 2 2
1 1 1 1 1 1 1
Transport IP header repeater bridge
(e.g. 802 MAC)
Network
Data link TCP header 7 7 7 7
6 6 6 6
Physical 5 5 5 5
4 network 4 4
... 4
3 3 3 3 3 3 3
Homework explores tradeoffs in Data 2 2 2 2 2 2 2 2
1 1 1 1 1 1 1 1
header sizes, etc., with different
router gateway
applications
21 22

Some History:
The Internet Protocol Suite The Early Days

! Early packet switching networks (61-72).


Application » Definition of packet switching
Applications » Early DARPA net: up to tens of nodes
Presentation Presentation – single network
Session Session – discovery of “interesting” applications
UDP TCP ! Internetworking (72-80).
Transport
Waist » Multiple networks with inter-networking: networks are
independent, but need some rules for interoperability
Network
» Key concepts: best effort service, “stateless” routers,
Data link Data Link decentralized control (very different from telephones!)
» Basis for Internet: TCP, IP, congestion control, DNS, …
Physical Physical » Rapid growth: 10 to 100000 hosts in 10 years
– Driven by NSF net, research communigy
The waist facilitates The Hourglass Model
Interoperability. 23 24
Recent History:
Commercialization Standardization

! Industry interest in networking encourages ! Key to network interoperability.


first commercial network deployment. ! A priori standards.
» In part also encouraged by NSFNET policies » Standards are defined first by a standards committee
» Risk of defining standards that are untested or
! Introduction of the Web makes networks unnecessary
more accessible. » Standard may be available before there is serious use of
» Killer application the technology
» Good user interface that is accessible to anybody ! De facto standards.
» Network access on every desktop and in every home » Standards is based on an existing systems
» Shockingly recent - 1989, caught on in ‘92 or so » Gives the company that developed the base system a big
advantage
» Often results in competing “standards” before the official
standard is established

25 26

The Internet Engineering


Relevant Standardization Bodies Task Force

! ITU-TS - Telecommunications Sector of the


International Telecommunications Union. ! The Internet society.
» government representatives (PTTs/State Department) » Oversees the operations of the Internet
» responsible for international “recommendations” ! Internet Engineering Task Force.
» decides what technology will be used in the Internet
! T1 - telecom committee reporting to American
» based on working groups that focus on specific issues
National Standards Institute.
» encourages wide participation
» T1/ANSI formulate US positions
» interpret/adapt ITU standards for US use, represents US ! Request for Comments.
in ISO » document that provides information or defines standard
! IEEE - Institute of Electrical and Electronics » requests feedback from the community
Engineers. » can be “promoted” to standard under certain conditions
– consensus in the committee
» responsible for many physical layer and datalink layer
standards – interoperating implementations
» Project 1 will look at the Internet Relay Chat (IRC) RFC
! ISO - International Standards Organization.
» covers a broad area
27 28
Higher Level Standards Designing applications

! Many session/application level operations are ! Application architecture


relevant to networks. » Client-server? (vs p2p vs all in one)
» encoding: MPEG, encryption, ... » Application requirements
» services: electronic mail, newsgroups, HTTP, ... ! Application level communication
» electronic commerce, ....
» TCP vs. UDP
! Standards are as important as for “lower- » Addressing
level” networks: interoperability. ! Application examples (Lecture 4).
» defined by some of the same bodies as the low-level
» ftp, http
standards, e.g. IETF
» End-to-end argument discussion

29 30

Applications and
Application-Layer Protocols Client-Server Paradigm
Typical network app has two pieces: client and server
! Application:communicating, application

distributed processes
transport
network
Client:
data link application
» Running in network hosts in physical
! Initiates contact with server transport
“user space” (“speaks first”) network
data link
» Exchange messages to ! Typically requests service from physical

implement app server,


request
» e.g., email, file transfer, the ! For Web, client is implemented in
Web browser; for e-mail, in mail reader

! Application-layer protocols Server:


! Provides requested service to
» One “piece” of an app
client
» Define messages exchanged application ! e.g., Web server sends requested reply
by apps and actions taken application transport
transport network
Web page, mail server delivers e-
» Use services provided by lower network data link mail application
data link transport
layer protocols physical
physical
network
data link
! SocketsAPI refresher next ! (We’ll cover p2p at semester end) physical
week (remember from 213)
31 32
What Transport Service User Datagram Protocol(UDP):
Does an Application Need? An Analogy
UDP Postal Mail
Data loss Timing ! Single socket to receive ! Single mailbox to receive letters
! Some applications (e.g., ! Some applications (e.g., messages ! Unreliable !
audio) can tolerate some Internet telephony, ! No guarantee of delivery
loss interactive games) ! Not necessarily in-order delivery
require low delay to be ! Not necessarily in-order delivery Letters sent independently
! Other applications (e.g., file !
transfer, telnet) require 100% “effective” ! Datagram – independent packets ! Must address each reply
reliable data transfer ! Must address each packet

Bandwidth
! Some applications (e.g., multimedia) require a minimum amount of
bandwidth to be “effective”
! Other applications (“elastic apps”) will make use of whatever
bandwidth they get
Example UDP applications
Multimedia, voice over IP

33 34

Transmission Control Transport Service Requirements


Protocol (TCP): An Analogy of Common Applications
TCP Telephone Call
Application Data loss Bandwidth Time Sensitive
! Reliable – guarantee delivery ! Guaranteed delivery
! Byte stream – in-order delivery ! In-order delivery
file transfer no loss elastic no
! Connection-oriented – single ! Connection-oriented
socket per connection e-mail no loss elastic no
! Setup connection followed by no
! Setup connection followed by conversation
web documents no loss elastic
data transfer real-time audio/ loss-tolerant audio: 5Kb-1Mb yes, 100’s msec
video video:10Kb-5Mb
stored audio/video loss-tolerant same as above yes, few secs
interactive games loss-tolerant few Kbps yes, 100’s msec
financial apps no loss elastic yes and no

Example TCP applications !Interactions between layers are important.


Web, Email, Telnet »persistent HTTP
»encryption and compression
35 »MPEG frame types. Loss & real-time video. 36
Server and Client Readings
Server and Client exchange messages over the
network through a common Socket API ! Read two papers on the motivations for the
Internet architecture:
Clients
user » “End-to-end arguments in system design”, Saltzer, Reed,
Server and Clark, ACM Transactions on Computer Systems,
ports space
November 1984.
» “The design philosophy of the DARPA Internet
Protocols”, Dave Clark, SIGCOMM 88.

TCP/UDP TCP/UDP
Socket API kernel ! In-class discussion:
space
» Briefly next Thursday
IP IP » Revisit the topic in the second half of the semester

Ethernet Adapter Ethernet Adapter hardware

37 38

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy