1 introduction to computer networks foundation ilam university mozafar bag-mohammadi

38
1 Introduction to Computer Networks Foundation Ilam University Mozafar Bag-Mohammadi

Upload: gloria-webster

Post on 25-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

1

Introduction to Computer Networks

Foundation

Ilam University

Mozafar Bag-Mohammadi

2

OutlineIntroductionStatistical MultiplexingInter-Process CommunicationNetwork ArchitecturePerformance Metrics

3

Introduction

Building a network to support diverse ranges of applications Distributed computing. Multimedia. Telecommunication. E-commerce, etc.

What kind of technology do we need? Hardware. Software.

4

First Step

What is computer Network? Different views. Differences from other networks, Its generality.

What is requirements? Different perspective: Network provider Network designer Application programmer

5

Design goals

Connectivity Scalability Simplicity

For designers. Most importantly for users.

Efficiency cost performance

Support for common user services.

6

Building Blocks

Nodes: PC, special-purpose hardware… hosts switches, routers and gateways

Links: coaxial cable, optical fiber… point-to-point

multiple access…

7

Switched Networks

two or more nodes connected by a link, or

two or more networks connected by two or more nodes

A network can be defined recursively as...

8

Strategies

Circuit switching: carry bit streams Connection oriented. Original telephone network Dedicated resource.

Packet switching: store-and-forward messages Connectionless (IP) or connection oriented (ATM) Shared resource.

Packet switching is the focus of computer Networks.

9

Addressing and Routing

Address: byte-string that identifies a node usually unique

Routing: process of forwarding messages to the destination node based on its destination address

Types of addresses unicast: node-specific broadcast: all nodes on the network multicast: some subset of nodes on the network

10

Multiplexing (resource sharing)

Time-Division Multiplexing (TDM) Frequency-Division Multiplexing (FDM)

L1

L2

L3

R1

R2

R3Switch 1 Switch 2

11

Statistical Multiplexing On-demand time-division Schedule link on a per-packet basis Packets from different sources interleaved on link

scheduling fairness, quality of service

Buffer packets that are contending for the link Buffer (queue) overflow is called congestion

12

Packet Switching

A node in a packet switching network

incoming links outgoing linksNode

Memory

13

Inter-Process Communication Turn host-to-host connectivity into process-to-process

communication regardless where the process are. Give a unified view and fill gaps between what

applications expect and what the underlying technology provides.

HostHost

Application

Host

Application

Host Host

Channel

14

IPC Abstractions Request/Reply (Client-server)

Guarantee delivering data, and might protect privacy and integrity. distributed file systems (NFS) digital libraries (web) File Transfer (FTP)

Stream-Based- sequence or stream of bits. Video on demand:

sequence of frames. Delay constrained, but can be fetched before hand.

For example, a 1/4 NTSC with 352x240 pixels and 24 bit color. (352 x 240 x 24)/8=247.5KB

Assuming 30 frame per second => 7500KBps = 60Mbps Video Conferencing-

tightly delay bounded. VIC From Berkeley. Both application can tolerate packet loss.

15

Reliability in the network?What Goes Wrong in the Network? Bit-level errors (electrical interference), a bit

is corrupted or a burst error. Packet-level errors (congestion)

Messages are delayed Messages are deliver out-of-order Packet loss Third parties eavesdrop

Link and node failures

16

Performance Metrics Bandwidth (throughput)

data transmitted per time unit link versus end-to-end notation

KB = 210 bytes Mbps = 106 bits per second

Latency (delay) time to send message from point A to point B one-way versus round-trip time (RTT) components

Latency = Propagation + Transmit + QueuePropagation = Distance / c (light speed)Transmit = Size / Bandwidth

17

Bandwidth versus Latency Relative importance

Latency bounded- sending 1-byte by client, 1ms vs 100ms dominates sending a message on a 1Mbps or 100Mbps link

Bandwidth Bounded- sending 25MB image: 1Mbps vs 100Mbps dominates 1ms vs 100ms delayed channel.

Infinite bandwidth RTT dominates

Throughput = TransferSize / TransferTimeTransferTime = RTT + 1/Bandwidth x TransferSize

1-MB file to 1-Gbps link the same as 1-KB packet to 1-Mbps link.

18

Delay x Bandwidth Product

Amount of data “in flight” or “in the pipe” Example: 100ms x 45Mbps = 560KB

Bandwidth

Delay

We are usually more interested in 2 times of this value Since it take RTT to hear from receiver.

19

Layering Use abstractions to hide complexity and

decompose to manageable components. Abstraction naturally lead to layering Alternative abstractions at each layer

Request/replychannel

Message streamchannel

Application programs

Hardware

Host-to-host connectivity

20

Layering

Advantages Modularity – protocols easier to manage and

maintain Abstract functionality –lower layers can be

changed without affecting the upper layers Reuse – upper layers can reuse the functionality

provided by lower layers Disadvantages

Information hiding – inefficient implementations

21

Protocols

Building blocks of a network architecture, or layer abstraction.

Each protocol object has two different interfaces service interface: operations on this protocol peer-to-peer interface: messages exchanged with

peer Term “protocol” is overloaded

specification of peer-to-peer interface module that implements this interface

22

Host 1

Protocol

Host 2

Protocol

High-levelobject

High-levelobject

Serviceinterface

Peer-to-peerinterface

Interfaces

23

Protocol Machinery Protocol Graph

Nodes are protocols and edge are depends on. most peer-to-peer communication is indirect peer-to-peer is direct only at hardware level

Digitallibrary

application

Videoapplication

RRP MSP

HHP

Fileapplication

Host 1Digitallibrary

application

Videoapplication

RRP MSP

HHP

Fileapplication

Host 2

24

Protocol Machinery (cont) Multiplexing and Demultiplexing (demux key) Encapsulation (header/body)

RRP DataHHP

Applicationprogram

Applicationprogram

Host 1 Host 2

Data

RRP

RRP Data

HHP

Data

RRP

RRP Data

HHP

25

ISO OSI Reference Model

ISO – International Standard Organization OSI – Open System Interconnection Started to 1978; first standard 1979

ARPANET started in 1969; TCP/IP protocols ready by 1974

Goal: a general open standard allow vendors to enter the market by using their

own implementation and protocols

26

ISO ArchitectureApplication

Presentation

Session

Transport

End host

One or more nodeswithin the network

Network

Data link

Physical

Network

Data link

Physical

Network

Data link

Physical

Application

Presentation

Session

Transport

End host

Network

Data link

Physical

Telnet, FTP, TFTPMSB, integerManage TCP streamsMessage, P2P(process)Packet, routingFrame, CRCRaw bit pipe

•The last 3 protocols are implemented in all elements in the Network.

27

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

28

OSI Model Concepts Service – says what a layer does Interface – says how to access the service Protocol – says how is the service

implemented a set of rules and formats that govern the

communication between two peers

29

Physical Layer (1)

Service: move the information between two systems connected by a physical link

Interface: specifies how to send a bit Protocols: coding scheme used to represent

a bit, voltage levels, duration of a bit

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

30

Datalink Layer (2) Service:

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

arbitrate the access to common physical media ensure reliable transmission provide flow control

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

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

31

Network Layer (3)

Service: deliver a packet to specified destination perform segmentation/reassemble others:

packet scheduling buffer management

Interface: send a packet to a specified destination

Protocols: define global unique addresses; construct routing tables

32

Transport Layer (4)

Services: provide an error-free and flow-controlled end-to-end

connection multiplex multiple transport connections to one network

connection split one transport connection in multiple network

connections

Interface: send a packet to specified destination Protocols: implement reliability and flow control Examples: TCP and UDP

33

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,

34

Presentation Layer (6)

Service: convert data between various representations

Interface: depends on service Protocol: define data formats, and rules to

convert from one format to another

35

Application Layer (7)

Service: any service provided to the end user Interface: depends on the application Protocol: depends on the application

Examples: FTP, Telnet, WWW browser

36

Internet Architecture Defined by Internet Engineering Task Force

(IETF). Developed in mid 60s in the ARPANET project.

No assumption about the network tech.

FTP HTTP NV TFTP

TCP UDP

IP

NET1 NET2 NETn

37

Internet Architecture Hourglass Design, IP is the focal point. Delivery is

separated from end-to-end process channel. No restrict layering Application vs Application Protocol (FTP, HTTP)

Network

IP

TCP UDP

Application

38

OSI vs. TCP/IP OSI: conceptually define services, interfaces, protocols 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

OSI TCP