* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download lecture1-stu
Distributed firewall wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Deep packet inspection wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
Serial digital interface wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Internet protocol suite wikipedia , lookup
Airborne Networking wikipedia , lookup
Peer-to-peer wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
EE4272: Computer Networks Instructor: Dr. Tricia Chigan Dept.: Elec. & Comp. Eng. EE4272 Spring 2004 Introduction of Computer Networks Communication & Computer/Data Networks  Applications of Computer Networks  Requirements  Network Architectures  Implementing Network Software  Network Performance  EE4272 Spring 2004 Communication & Computer/Data Networks  What are the differences between…  Applications  Underline EE4272 technologies Spring 2004 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  EE4272 . Spring 2004 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., EE4272 Spring 2004 High-level Major Requirements - Network Designers’ Perspectives Connectivity  Cost-Effective Resource Sharing  Reliability  EE4272 Spring 2004 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 (a)  point-to-point  multiple EE4272 access (b) Spring 2004 …  Indirect Connectivity  Switched networks   Internetworks   EE4272 switch router gateway Spring 2004 Issues Related to Connectivity  Switching Strategies  circuit switching ( send/receive .  packet switching ( shared channel; send/receive  ): dedicated circuit; ): store-and-forward; . Addressing and Routing  address: byte-string that  routing: process of destination node based on its  types of addresses    EE4272 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  Must share (multiplex) network resources (nodes and links) among multiple users L1 R1 L2 R2 Sw itch 1 Sw itch 2 R3 L3 EE4272 Spring 2004 Conventional Multiplexing Strategies  Synchronous Time-Division Multiplexing (STDM)  Frequency-Division Multiplexing (FDM) EE4272 Spring 2004 Statistical Multiplexing    On-demand (not predetermined) time-division Schedule link on a basis (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 . . ■■■ EE4272 Spring 2004 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)   EE4272 Spring 2004 Network Architecture    Use abstractions (unified model) Abstraction naturally lead to Can have . . at each layer Application programs Client Server Request/reply Message stream channel channel Host-to-host connectivity Hardware EE4272 Spring 2004 process-to-process 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   EE4272 . “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 High-level object Protocol Protocol EE4272 Spring 2004 Protocol Machinery  Protocol Graph  most peer-to-peer  peer-to-peer is communication is . only at hardware level Host 1 File application EE4272 Digital library application Video application Host 2 File application Spring 2004 Digital library application Video application Protocol Machinery (cont)   Encapsulation ( : control infor., e.g. seq. num) Multiplexing & Demultiplexing ( ): share logical channel at each protocol layer Host 1 Host 2 Application Application program program Application Application program program Data Data RRP RRP RRP Data RRP HHP HHP HHP EE4272 RRP Data Spring 2004 Data OSI (open systems interconnection) Architecture End host End host Application Application Presentation Presentation Session Session Transport Transport Netw ork /aggregation Data link Physical Netw ork Netw ork Data link Data link Physical Physical One or more nodes w ithin the netw ork EE4272 Spring 2004 Netw ork Data link Physical Internet Architecture  Defined by  Design Application vs Application Protocol (e.g.,HTTP)  FTP HTTP ( NV TFTP TCP UDP TCP Application IP NET 1 NET 2 IP ■■■ NET n Ethernet, ATM, FDDI… EE4272 UDP Spring 2004 Network ) Some Protocols in TCP/IP Suite Source: book by William Stallings EE4272 Spring 2004 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. Richard Stevens, Unix Network Programming, 2nd edition, Prentice Hall 1998  Protocol Implementation Issues (difference between Socket & protocol- protocol interface)   Process Model Message Buffers EE4272 Spring 2004 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) EE4272 Spring 2004 Delay x Bandwidth Product   Amount of data “in flight” or “in the pipe” Example: 100ms x 45Mbps = 560KB Delay Bandw idth  Application Needs  requirements ( ): burst with peak rate  EE4272 : variance in latency ( Spring 2004 )