59
Network Architecture- Layering- Protocols by Dr. Nguyen Minh Hoang [email protected] Jan 2013

Lec1 NWArchitecture Layers Protocols r1

  • Upload
    iric911

  • View
    22

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lec1 NWArchitecture Layers Protocols r1

Network Architecture- Layering- Protocols

byDr. Nguyen Minh [email protected]

Jan 2013

Page 2: Lec1 NWArchitecture Layers Protocols r1

2

Outline

Review What/Why is layering? What is Network Protocol? ISO/OSI layering and Internet

layering Summary

Page 3: Lec1 NWArchitecture Layers Protocols r1

3

Reference Book

Computer Network by A. S. Tanenbaum

Page 4: Lec1 NWArchitecture Layers Protocols r1

4

Review

circuit-switchednetworks

(e.g. telephone)

communication networks

switchednetworks

broadcastnetworks

packet-switched networks

datagram networks

(e.g. Internet)

virtual circuit-switched networks(e.g. ATM)

Page 5: Lec1 NWArchitecture Layers Protocols r1

5

Broadcast vs. Switched Communication Networks Broadcast networks

Nodes share a common channel; information transmitted by a node is received by all other nodes in the network

Examples: TV, radio Switched networks

Information is transmitted to a small sub-set (usually only one) of the nodes

Page 6: Lec1 NWArchitecture Layers Protocols r1

6

Review: Packet Switching vs. Circuit Switching

Advantages of packet switching over circuit switching

most important advantage of packet-switching over circuit switching is statistical multiplexing, and therefore efficient bandwidth usage

no call setup (for datagram switching only) no per-flow state information (for datagram switching

only) simple to implement

Disadvantages of packet switching potential congestion: packet delay and high loss

protocols needed for reliable data transfer, congestion control

packet header overhead per packet processing overhead

Page 7: Lec1 NWArchitecture Layers Protocols r1

7

Protocol “Layers”

Networks are complex!

many “pieces”: hardware

hosts routers links of various

media

software applications protocols

Question: Is there any hope of

organizing the structure of networks?

Or at least our discussion of

networks?

Page 8: Lec1 NWArchitecture Layers Protocols r1

8

What is Layering?

A technique to organize a network system into a succession of logically distinct entities, such that the service provided by one entity is solely based on the service provided by the previous (lower level) entity.

Page 9: Lec1 NWArchitecture Layers Protocols r1

9

ISO/OSI Concepts

ISO – International Standard Organization OSI – Open System Interconnection

Service – says what a layer does Interface – says how to access the

service Protocol – says how the service is

implemented a set of rules and formats that govern the

communications between two peers

Page 10: Lec1 NWArchitecture Layers Protocols r1

10

An Example of Layering

Page 11: Lec1 NWArchitecture Layers Protocols r1

11

Why Layering?

Dealing with complex systems: Explicit structure allows identification of the

relationship among a complex system’s pieces layered reference model for discussion

Modularization eases maintenance, updating of system change of implementation of a layer’s

service transparent to rest of system e.g., change in routing protocol doesn’t

affect rest of system

Page 12: Lec1 NWArchitecture Layers Protocols r1

12

An Example: No Layering

No layering: each new application has to be re-implemented for every network technology!

Telnet FTP

packetradio

coaxial cable

fiberoptic

Application

TransmissionMedia

HTTP

Page 13: Lec1 NWArchitecture Layers Protocols r1

13

An Example: Benefit of Layering

Solution: introduce an intermediate layer that provides a common abstraction for various network technologies

HTTPTelnet FTP

packetradio

coaxial cable

fiberoptic

Application

TransmissionMedia

Transport& Network

Page 14: Lec1 NWArchitecture Layers Protocols r1

14

Disadvantages of Layering

Information hiding – inefficient implementations

Page 15: Lec1 NWArchitecture Layers Protocols r1

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.

Page 16: Lec1 NWArchitecture Layers Protocols r1

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 codeThe 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

useragent

mailserver

useragentuser

agent

mailserver

useragent

SMTP

SMTP

SMTP

POP3,IMAPSMTP

Page 17: Lec1 NWArchitecture Layers Protocols r1

17

What Is Networking?

Involves connecting hosts/terminals/computers for the purpose of sharing information and resources

Requires a great deal of technology

Offers many possible choices for physical connections and related software

Page 18: Lec1 NWArchitecture Layers Protocols r1

18

Networking Fundamentals

Consists of two or more hosts/terminals/computers connected to each other by wire or cable to transmit data back and forth

Primary motivation arises from a need for individuals to share data quickly and efficiently

Page 19: Lec1 NWArchitecture Layers Protocols r1

19

Primary Benefits of Networking

Permits groups of users to exchange information routinely and to route data from one individual to another Single consistent master copy of data

files Improves human communication

Electronic mail (e-mail) Enables device sharing

Page 20: Lec1 NWArchitecture Layers Protocols r1

20

ISO OSI Reference Model Seven layers

Lower two layers are peer-to-peer Network layer involves multiple switches Next four layers are end-to-end

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium A Physical medium B

Host 1 Intermediate switch Host 2

Page 21: Lec1 NWArchitecture Layers Protocols r1

21

Physical Layer (1)

Service: moves information between two systems connected by a physical link

Interface: specifies how to send a bit Protocol: coding scheme used to

represent a bit, voltage levels, duration of a bit

Examples: coaxial cable, optical fiber links; transmitters, receivers

Page 22: Lec1 NWArchitecture Layers Protocols r1

22

Datalink Layer (2) Service:

framing, i.e., attach frames separator send data frames between peers others:

arbitrates the access to common physical media ensures reliable transmission provides flow control

Interface: sends a data unit (packet) to a machine connected to the same physical media

Protocol: layer addresses, implement Medium Access Control (MAC) (e.g., CSMA/CD)…

Page 23: Lec1 NWArchitecture Layers Protocols r1

23

Network Layer (3)

Service: delivers a packet to a specified destination performs fragmentation/reassembly of packets others:

packet scheduling buffer management

Interface: sends a packet to a specified destination

Protocol: defines global unique addresses; constructs routing tables; implement packet forwarding; fragments/reassembles packets

Page 24: Lec1 NWArchitecture Layers Protocols r1

24

Data and Control Planes

Data plane: concerned with packet forwarding buffer management packet scheduling

Control Plane: concerned with installing and maintaining the states for the data plane

Page 25: Lec1 NWArchitecture Layers Protocols r1

25

Transport Layer (4)

Service: provides an in-order, error-free, and flow and

congestion controlled end-to-end connection multiplex/demuliplex packets

Interface: sends a packet to a destination Protocol: implements reliability, as well as flow

and congestion control Examples: TCP and UDP

TCP: in-order, error free, flow and congestion control

Page 26: Lec1 NWArchitecture Layers Protocols r1

26

Session Layer (5)

Service: full-duplex access management, e.g., token control synchronization, e.g., provide check points for

long transfers Interface: depends on service Protocols: token management; insert

checkpoints, implement roll-back functions

Page 27: Lec1 NWArchitecture Layers Protocols r1

27

Presentation Layer (6)

Service: converts data between various representations

Interface: depends on service Protocol: defines data formats and

rules to convert from one format to another

Page 28: Lec1 NWArchitecture Layers Protocols r1

28

Application Layer (7)

Service: any service provided to end users

Interface: depends on the application

Protocol: depends on the application

Examples: FTP, Telnet, WWW

Page 29: Lec1 NWArchitecture Layers Protocols r1

29

Physical Communication

Communication goes down to physical network, then to peer, then up to relevant layer

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium

Host A Host B

Router

Page 30: Lec1 NWArchitecture Layers Protocols r1

30

Encapsulation A layer can use only the service provided by the

layer immediate below it Each layer may change and add a header to data

packet

data

data

data

data

data

data

data

data

data

data

data

data

data

data

Page 31: Lec1 NWArchitecture Layers Protocols r1

31

Internet Protocol Architecture The TCP/IP protocol

suite is the basis for the networks that we call the Internet.

The TCP/IP suite has five layers: Application, Transport, Network, and (Data) Link Layer, Physical Layer

Computers (hosts) implement all five layers. Routers (gateways) only have the bottom three layers.

ApplicationLayer

TransportLayer

NetworkLayer

(Data) LinkLayer

telnet, ftp, email

TCP, UDP

IP, ICMP, IGMP

Device Drivers

User space

Kernel space

Page 32: Lec1 NWArchitecture Layers Protocols r1

32

Internet Protocol Layers

Five layers Application: supporting network

applications ftp, smtp, http

Transport: host-host data transfer tcp, udp

Network: routing of datagram from source to destination

ip, routing protocols Link: data transfer between

neighboring network elements ppp, ethernet

Physical: bits “on the wire”

application

transport

network

link

physical

Page 33: Lec1 NWArchitecture Layers Protocols r1

33

Internet Layering and OSI Layering

OSI: conceptually define: service, interface, protocol

Internet: provide a successful implementation

Application

Presentation

Session

Transport

Network

Datalink

Physical

Internet

Host-to-network

Transport

Application

IP

LAN Packetradio

TCP UDP

Telnet FTP DNS

Page 34: Lec1 NWArchitecture Layers Protocols r1

34

Application

TCP

IP

EthernetDriver

User data

User dataApplicationHeader

Application dataTCP Header

Application dataTCP HeaderIP Header

Application dataTCP HeaderIP HeaderEthernetHeader

EthernetTrailer

IP datagram

TCP segment

Ethernet frame

Encapsulation As data is moving down the protocol stack,

each protocol is adding layer-specific control information.

Page 35: Lec1 NWArchitecture Layers Protocols r1

35

Protocol Peer Relationship

Lower three layers are hop-by-hop Next two layers are end-to-end

Application

Transport

Network

Datalink

Physical

Application

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium

Page 36: Lec1 NWArchitecture Layers Protocols r1

36

Layering: Logical Communication

E.g.: application take command from

user encode the

command to generate messages

send messages to peer

For example, HELO, MAIL FROM, RCPT TO are messages between two SMTP peers

Page 37: Lec1 NWArchitecture Layers Protocols r1

37

Layering: Logical Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

dataE.g.: transport take data from

application add

addressing, reliability check info to form “datagram”

send datagram to peer

wait for peer to ack receipt

data

transport

transport

ack

Page 38: Lec1 NWArchitecture Layers Protocols r1

38

Layering: Physical Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

Page 39: Lec1 NWArchitecture Layers Protocols r1

39

Protocol Layering and Data

Each layer takes data from above adds header information to create new data

unit passes new data unit to layer below

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

source destination

M

M

M

M

Ht

HtHn

HtHnHl

M

M

M

M

Ht

HtHn

HtHnHl

message

segment

datagram

frame

Page 40: Lec1 NWArchitecture Layers Protocols r1

40

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

The Hourglass Architecture of the Internet

Network layer is the highest layer supported by all network components

Note: Additional protocols like routing protocols (RIP, OSPF) needed to make IP work

Page 41: Lec1 NWArchitecture Layers Protocols r1

41

Implications of Hourglass

A single Internet layer module, a single “language”: Allows all networks to interoperate

all networks technologies that support IP can exchange packets

Allows all applications to function on all networks all applications that can run on IP can use any network

Simultaneous developments above and below IP

Page 42: Lec1 NWArchitecture Layers Protocols r1

42

Link Layer: Services Provided by Ethernet

Multiplexing/demultiplexing send frames to the network

layer Multiple access control

send frame to peer sharing the common channel

Error detection

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

Page 43: Lec1 NWArchitecture Layers Protocols r1

43

Network Layer: Services Provided by IP

Multiplexing/demultiplexing send packets to the transport

Routing best-effort to send packets from

source to destination Fragmentation and

reassembling partition a fragment into smaller

packets removed in IPv6

Does not provide reliability, or reservation

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

Page 44: Lec1 NWArchitecture Layers Protocols r1

44

Network Layer: IPv4 Header

Page 45: Lec1 NWArchitecture Layers Protocols r1

45

Transport Layer: Services Provided by TCP

Multiplexing/demultiplexing Reliable transport

between sending and receiving process

setup required between sender and receiver: a connection-oriented service

Flow control sender won’t overwhelm receiver

Congestion control throttle sender when network

overloaded Does not provide

timing, minimum bandwidth guarantees

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

Page 46: Lec1 NWArchitecture Layers Protocols r1

46

TCP Header

Page 47: Lec1 NWArchitecture Layers Protocols r1

47

Services Provided by UDP

Connectionless service Does not provide: connection setup, reliability, flow

control, congestion control, timing, or bandwidth guarantee

Q: Why is there a UDP?

Page 48: Lec1 NWArchitecture Layers Protocols r1

48

Summary: Layering

Key technique to implement communication protocols; provides Modularity

Key design decision: what functionality to put in each layer?

Page 49: Lec1 NWArchitecture Layers Protocols r1

49

Assignment 1, due 05 Oct 05

Problems 1.3, 1.5, 1.7, 1.8, 1.9, 1.11, 1.12, 1.15 (pp. 69-71 of text book)

Submission: email to [email protected] with subject: Assignment 1 – your class – your name

Due date: 9:00am, 09 Oct 11 Note: Late submission will NOT be

accepted!

Page 50: Lec1 NWArchitecture Layers Protocols r1

Backup Slides

Page 51: Lec1 NWArchitecture Layers Protocols r1

The Design Philosophy of the DARPA Internet

Page 52: Lec1 NWArchitecture Layers Protocols r1

52

Goals

1. Survivability in the face of failure2. Support multiple types of service

3. Accommodate a variety of networks

4. Permit distributed management of resources5. Be cost effective6. Permit host attachment with a low level of effort7. Be accountable

0. Connect different networks

Page 53: Lec1 NWArchitecture Layers Protocols r1

53

Survivability in the Face of Failure: Questions

What does the goal mean? Why is the goal important? How does the Internet achieve this

goal? Does the Internet achieve this goal

(or in what degree does the Internet achieve this goal)?

Page 54: Lec1 NWArchitecture Layers Protocols r1

54

Survivability in the Face of Failure

Continue to operate even in the presence of network failures (e.g., link and router failures)

as long as the network is not partitioned, two endpoints should be able to communicate…moreover, any other failure (excepting network partition) should be transparent to endpoints

Decision: maintain state only at end-points (fate-sharing)

eliminate the problem of handling state inconsistency and performing state restoration when router fails

Internet: stateless network architecture

Page 55: Lec1 NWArchitecture Layers Protocols r1

55

Support Multiple Types of Service: Questions

What does this goal mean? Why is the goal important? How does the Internet achieve this

goal? Does the Internet achieve this goal

(or in what degree does the Internet achieve this goal)?

Page 56: Lec1 NWArchitecture Layers Protocols r1

56

Support Multiple Types of Service

Add UDP to TCP to better support other types of applications

e.g., “real-time” applications This was arguably the main reason for

separating TCP and IP Provide datagram abstraction: lower common

denominator on which other services can be built: everything over IP

service differentiation was considered (remember ToS?), but this has never happened on the large scale (Why?)

Page 57: Lec1 NWArchitecture Layers Protocols r1

57

Support a Variety of Networks: Questions

What does the goal mean? Why is this goal important? How does the Internet achieve this

goal? Does the Internet achieve this goal

(or in what degree does the Internet achieve this goal)?

Page 58: Lec1 NWArchitecture Layers Protocols r1

58

Support a Variety of Networks

Very successful because the minimalist service; it requires

from underlying network only to deliver a packet with a “reasonable” probability of success

…does not require: reliability in-order delivery

The mantra: IP over everything Then: ARPANET, X.25, DARPA satellite

network.. Now: ATM, SONET, WDM…

Page 59: Lec1 NWArchitecture Layers Protocols r1

59

Other Goals

Permit distributed management of resources

Be cost effective Permit host attachment with a low

level of effort Be accountable