EE 4272 Computer Networks Instructor Dr Tricia Chigan

  • Slides: 24
Download presentation
EE 4272: Computer Networks Instructor: Dr. Tricia Chigan Dept. : Elec. & Comp. Eng.

EE 4272: Computer Networks Instructor: Dr. Tricia Chigan Dept. : Elec. & Comp. Eng. EE 4272 Spring 2004

Introduction of Computer Networks Communication & Computer/Data Networks n Applications of Computer Networks n

Introduction of Computer Networks Communication & Computer/Data Networks n Applications of Computer Networks n Requirements n Network Architectures n Implementing Network Software n Network Performance n EE 4272 Spring 2004

Communication & Computer/Data Networks n What are the differences between… ¨ Applications ¨ Underline

Communication & Computer/Data Networks n What are the differences between… ¨ Applications ¨ Underline EE 4272 technologies Spring 2004

Applications of Computer Networks (e. g. …) n Surfing the Web ¨ n of

Applications of Computer Networks (e. g. …) n Surfing the Web ¨ n of Client/Server Streaming Audio & Video ¨ Video-on-demand: ( ¨ Video Conference: ( n ) ) Different requirements for various applications ¨ EE 4272 . Spring 2004

Requirements from Perspectives… n Application programmer: services that their applications need, e. g. ,

Requirements from Perspectives… n Application programmer: services that their applications need, e. g. , n Network designers: cost-effective design e. g. , n Network providers: system that is easy to administer and manage e. g. , EE 4272 Spring 2004

High-level Major Requirements - Network Designers’ Perspectives Connectivity n Cost-Effective Resource Sharing n Reliability

High-level Major Requirements - Network Designers’ Perspectives Connectivity n Cost-Effective Resource Sharing n Reliability n EE 4272 Spring 2004

Building Blocks & Connectivity n Nodes: PC, special-purpose hardware… ¨ Host: edge node for.

Building Blocks & Connectivity n Nodes: PC, special-purpose hardware… ¨ Host: edge node for. ¨ Switch: node to. ¨ Router/Gateway: node connects two/more different. n Links: coaxial cable, n Direct connectivity (a) ¨ point-to-point ¨ multiple EE 4272 access (b) Spring 2004 …

n Indirect Connectivity ¨ Switched networks n ¨ Internetworks n n EE 4272 switch

n Indirect Connectivity ¨ Switched networks n ¨ Internetworks n n EE 4272 switch router gateway Spring 2004

Issues Related to Connectivity n Switching Strategies ¨ circuit switching ( send/receive. ¨ packet

Issues Related to Connectivity n Switching Strategies ¨ circuit switching ( send/receive. ¨ packet switching ( shared channel; send/receive n ): dedicated circuit; ): store-and-forward; . Addressing and Routing ¨ address: byte-string ¨ routing: process of that destination node based on its ¨ types of addresses n n n EE 4272 a node; usually unique messages towards the cast: node-specific cast: all nodes on the network cast: some subset of nodes on the network Spring 2004

Cost-Effective Resource Sharing n Must share (multiplex) network resources (nodes and links) among multiple

Cost-Effective Resource Sharing n Must share (multiplex) network resources (nodes and links) among multiple users EE 4272 Spring 2004

Conventional Multiplexing Strategies n Synchronous Time-Division Multiplexing (STDM) n Frequency-Division Multiplexing (FDM) EE 4272

Conventional Multiplexing Strategies n Synchronous Time-Division Multiplexing (STDM) n Frequency-Division Multiplexing (FDM) EE 4272 Spring 2004

Statistical Multiplexing n n n On-demand (not predetermined) time-division Schedule link on a basis

Statistical Multiplexing n n n On-demand (not predetermined) time-division Schedule link on a basis (fairness): FIFO, Roundrobin…. Packets from different sources on link ¨ n What about if only one source has data? Why ¨ ¨ is needed? Buffer packets that are contending for the link: Buffer (queue) overflow is called . . ■■■ EE 4272 Spring 2004

What Goes Wrong in the Network? -Reliability Issue n (light, power, microwave interference ->

What Goes Wrong in the Network? -Reliability Issue n (light, power, microwave interference -> error detection/correction): single or burst error ¨ depend on transmission med. : coaxial cable, optical fiber? (congestion control) (network survivability) n n EE 4272 Spring 2004

Network Architecture n n n Use abstractions (unified model) Abstraction naturally lead to Can

Network Architecture n n n Use abstractions (unified model) Abstraction naturally lead to Can have . . at each layer Client process-to-process Server EE 4272 Spring 2004

Layering & Protocols n Advantages of Layering ¨ Manageable ¨ Modular n design Protocols

Layering & Protocols n Advantages of Layering ¨ Manageable ¨ Modular n design Protocols ¨ building blocks of a network architecture layer ¨ Each protocol object has two different interfaces n n service interface: operations. peer-to-peer interface: messages exchanged with ¨ Term n n EE 4272 . “protocol” is overloaded Module (various) that implements this interface: specification of peer-to-peer interface ( Spring 2004 . )

Interfaces Host 1 Host 2 High-level object Protocol EE 4272 Spring 2004

Interfaces Host 1 Host 2 High-level object Protocol EE 4272 Spring 2004

Protocol Machinery n Protocol Graph ¨ most peer-to-peer ¨ peer-to-peer is communication is. only

Protocol Machinery n Protocol Graph ¨ most peer-to-peer ¨ peer-to-peer is communication is. only at hardware level Host 1 File application EE 4272 Digital library application Video application Host 2 File application Spring 2004 Digital library application Video application

Protocol Machinery (cont) n n Encapsulation ( Multiplexing & Demultiplexing ( channel at each

Protocol Machinery (cont) n n Encapsulation ( Multiplexing & Demultiplexing ( channel at each protocol layer : control infor. , e. g. seq. num) ): share logical Host 1 Host 2 Application program Data RRP RRP Data RRP HHP HHP EE 4272 RRP Data Spring 2004 Data

OSI (open systems interconnection) Architecture /aggregation EE 4272 Spring 2004

OSI (open systems interconnection) Architecture /aggregation EE 4272 Spring 2004

Internet Architecture n Defined by n Design Application vs Application Protocol (e. g. ,

Internet Architecture n Defined by n Design Application vs Application Protocol (e. g. , HTTP) n FTP HTTP ( NV TFTP TCP UDP TCP Application IP NET 1 NET 2 IP ■■■ NET n Ethernet, ATM, FDDI… EE 4272 UDP Spring 2004 Network )

Some Protocols in TCP/IP Suite EE 4272 Source: book by William Stallings Spring 2004

Some Protocols in TCP/IP Suite EE 4272 Source: book by William Stallings Spring 2004

Software Protocol Implementation n Service Interface (e. g. Socket API) ¨ socket: the point

Software Protocol Implementation n Service Interface (e. g. Socket API) ¨ socket: the point where a local applications process attaches to the network built in most of the Unix OS, common library routines (socket, listen, accept, client, server, connect, send, recv…) ¨ reference: W. Richard Stevens, Unix Network Programming, 2 nd edition, ¨ Prentice Hall 1998 n Protocol Implementation Issues (difference between Socket & protocol- protocol interface) Process Model ¨ Message Buffers ¨ EE 4272 Spring 2004

Performance Metrics n Bandwidth (throughput) : ¨ data transmitted per time unit ¨ link

Performance Metrics n Bandwidth (throughput) : ¨ data transmitted per time unit ¨ link vs. end-to-end n Latency (delay) ¨ time to send message from point A to point B ¨ one-way versus round-trip time (RTT) ¨ components n Latency = Propagation + Transmit + Queue ¨ ¨ n n Propagation = Transmit = . . Throughput (end-to-end) = Transfer. Size / Transfer. Time = RTT + 1/Bandwidth x Transfer. Size (w/o queue) EE 4272 Spring 2004

Delay x Bandwidth Product n Amount of data “in flight” or “in the pipe”

Delay x Bandwidth Product n Amount of data “in flight” or “in the pipe” Example: 100 ms x 45 Mbps = 560 KB n Application Needs n requirements ( ¨ ): burst with peak rate ¨ EE 4272 : variance in latency ( Spring 2004 )