1 / 24

EE4272: Computer Networks

EE4272: Computer Networks. Instructor : Dr. Tricia Chigan Dept .: Elec. & Comp. Eng. Introduction of Computer Networks. Communication & Computer/Data Networks Applications of Computer Networks Requirements Network Architectures Implementing Network Software Network Performance.

kira
Download Presentation

EE4272: Computer Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EE4272: Computer Networks Instructor: Dr. Tricia Chigan Dept.: Elec. & Comp. Eng. Spring 2004

  2. Introduction of Computer Networks • Communication & Computer/Data Networks • Applications of Computer Networks • Requirements • Network Architectures • Implementing Network Software • Network Performance Spring 2004

  3. Communication & Computer/Data Networks • What are the differences between… • Applications • Underline technologies Spring 2004

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

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

  6. High-level Major Requirements- Network Designers’ Perspectives • Connectivity • Cost-Effective Resource Sharing • Reliability Spring 2004

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

  8. Indirect Connectivity • Switched networks • switch • Internetworks • router • gateway Spring 2004

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

  10. Cost-Effective Resource Sharing • Must share (multiplex) network resources (nodes and links) among multiple users Spring 2004

  11. Conventional Multiplexing Strategies • Synchronous Time-Division Multiplexing (STDM) • Frequency-Division Multiplexing (FDM) Spring 2004

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

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

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

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

  16. Interfaces Host 1 Host 2 High-level High-level object object Protocol Protocol Spring 2004

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

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

  19. OSI (open systems interconnection) Architecture /aggregation Spring 2004

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

  21. Some Protocols in TCP/IP Suite Source: book by William Stallings Spring 2004

  22. Software Protocol Implementation • 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. RichardStevens, Unix Network Programming, 2nd edition, Prentice Hall 1998 • Protocol Implementation Issues (difference between Socket & protocol- protocol interface) • Process Model • Message Buffers Spring 2004

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

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

More Related