CPSC 441: Introduction1-1 CPSC 441: Computer Communications Instructor: Carey Williamson Office: ICT...

of 66 /66
CPSC 441: Introduction 1-1 CPSC 441: Computer Communications Instructor: Carey Williamson Office: ICT 740 Email: carey @cpsc.ucalgary.ca Class Location: ICT 122 Lectures: MWF 12:00 – 12:50 Notes derived from “Computer Networking: A Top Down Approach”, by Jim Kurose and Keith Ross, Addison-Wesley. Slides are adapted from the book’s companion Web site, with changes by Anirban Mahanti and Carey Williamson.
  • date post

    18-Dec-2015
  • Category

    Documents

  • view

    216
  • download

    0

Embed Size (px)

Transcript of CPSC 441: Introduction1-1 CPSC 441: Computer Communications Instructor: Carey Williamson Office: ICT...

  • Slide 1
  • CPSC 441: Introduction1-1 CPSC 441: Computer Communications Instructor: Carey Williamson Office: ICT 740 Email: [email protected]@cpsc.ucalgary.ca Class Location: ICT 122 Lectures: MWF 12:00 12:50 Notes derived from Computer Networking: A Top Down Approach, by Jim Kurose and Keith Ross, Addison-Wesley. Slides are adapted from the books companion Web site, with changes by Anirban Mahanti and Carey Williamson.
  • Slide 2
  • CPSC 441: Introduction1-2 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 3
  • CPSC 441: Introduction1-3 Computer Network? interconnected collection of autonomous computers connected by a communication technology What is the Internet? m network of networks m collection of networks interconnected by routers m a communication medium used by millions m Email, chat, Web surfing, streaming media Internet Web
  • Slide 4
  • CPSC 441: Introduction1-4 The nuts and bolts view of the Internet millions of connected computing devices called hosts or end-systems m PCs, workstations, servers m PDAs, phones, toasters running network apps communication links m fiber, copper, radio, satellite m links have different capacities (bandwidth) routers: forward packets packet: piece of a message (basic unit of transfer) local ISP company network regional ISP router workstation server mobile
  • Slide 5
  • CPSC 441: Introduction1-5 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 6
  • CPSC 441: Introduction1-6 Applications (1) end systems (hosts): m run application programs m e.g. Web, email, ftp m at edge of network client/server model m client host requests, receives service from always-on server m e.g. Web browser/server; email client/server Client/server model has well-defined roles for each.
  • Slide 7
  • CPSC 441: Introduction1-7 Applications (2) peer-to-peer model: m No fixed clients or servers m Each host can act as both client and server at any time Examples: Napster, Gnutella, KaZaA, BitTorrent
  • Slide 8
  • CPSC 441: Introduction1-8 Applications (3) File transfer Remote login (telnet, rlogin, ssh) World Wide Web (WWW) Instant Messaging (Internet chat, text messaging on cellular phones) Peer-to-Peer file sharing Internet Phone (Voice-Over-IP) Video-on-demand Distributed Games
  • Slide 9
  • CPSC 441: Introduction1-9 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 10
  • CPSC 441: Introduction1-10 A Classification of Networks Local Area Network (LAN) Metropolitan Area Network (MAN) Wide Area Network (WAN) Wireless LAN (WLAN) Home Networks Personal Area Network (PAN) Body Area Network (BAN)
  • Slide 11
  • CPSC 441: Introduction1-11 Local Area Network (LAN) company/univ local area network (LAN) connects end system to edge router Ethernet: m shared or dedicated link connects end system and router (a few km) m 10 Mbps, 100Mbps, Gigabit Ethernet widespread deployment: companies, univ, homeLANs LANs: chapter 5
  • Slide 12
  • CPSC 441: Introduction1-12 Metropolitan Area Network (MAN) home cable headend cable distribution network (simplified) Typically 500 to 5,000 homes A Cable TV Network is an example of a MAN City sized: tens of kilometers
  • Slide 13
  • CPSC 441: Introduction1-13 Cable Network Architecture: Overview home cable headend cable distribution network (simplified)
  • Slide 14
  • CPSC 441: Introduction1-14 Cable Network Architecture: Overview home cable headend cable distribution network server(s)
  • Slide 15
  • CPSC 441: Introduction1-15 Wide Area Network (WAN) Spans a large geographic area, e.g., a country or a continent A WAN consists of several transmission lines and routers Internet is an example of a WAN
  • Slide 16
  • CPSC 441: Introduction1-16 Wireless Networks (WLANs) shared wireless access network connects end system to router m via base station or access point wireless LANs: m 802.11b (WiFi): 11 Mbps wider-area wireless access m provided by telco operator m 3G ~ 384 kbps Will it happen?? m WAP/GPRS in Europe m WiMax available now base station mobile hosts router To the wired network
  • Slide 17
  • CPSC 441: Introduction1-17 Home networks Typical home network components: ADSL or cable modem router/firewall/NAT Ethernet wireless access point wireless access point wireless laptops router/ firewall cable modem to/from cable headend Ethernet (switched)
  • Slide 18
  • CPSC 441: Introduction1-18 internetworking? internetwork interconnection of networks also called an internet subnetwork a constituent of an internet intermediate system a device used to connect two networks allowing hosts of the networks to correspond with each other m Bridge m Router Internet is an example of an internetwork.
  • Slide 19
  • CPSC 441: Introduction1-19 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 20
  • CPSC 441: Introduction1-20 Layered Architecture: Why? Networks are complex with many pieces m Hosts, routers, links, applications, protocols, hardware, software Can we organize it, somehow? Lets consider a Web page request: m Browser requests Web page from server m Server should determine if access is privileged m Reliable transfer page from server to client m Physical transfer of bits from server to client
  • Slide 21
  • CPSC 441: Introduction1-21 Motivation Continued Network Services Application Services Communication Service Network Services Application Services Communication Service Web Server Web Client Application logic Reliable delivery Transfer bits
  • Slide 22
  • CPSC 441: Introduction1-22 Motivation Continued Dealing with complex systems: explicit structure allows identification, relationship of complex systems pieces m layered reference model for discussion modularization eases maintenance, updating of system m change of implementation of layers service transparent to rest of system m e.g., change in network technology doesnt affect rest of system layering considered harmful? (design vs implemention)
  • Slide 23
  • CPSC 441: Introduction1-23 Layers, Protocols, Interfaces Web ServerWeb Client Application logic protocol Reliable delivery protocol Transfer bits protocol Network Services Application Services Communication Service Network Services Application Services Communication Service Layer Interface Layer Interface
  • Slide 24
  • CPSC 441: Introduction1-24 Layered Architecture Networks organized as a stack of layers? m The purpose of a layer is to offer services to the layer above it using a well-defined interface (programming language analogy: libraries hide details while providing a service) m Reduces design complexity Protocols: horizontal conversations at any layer n (i.e., between peer layers) Data Transfer: each layer passes data & control information to the layer below; eventually physical medium is reached.
  • Slide 25
  • CPSC 441: Introduction1-25 Layered Architecture (contd) A set of layers & protocols is called a Network Architecture. These specifications enable hardware/software developers to build systems compliant with a particular architecture. m E.g., TCP/IP, OSI
  • Slide 26
  • CPSC 441: Introduction1-26 Layering: Design Issues How many layers? What do they each do? How to identify senders/receivers? m Addressing Unreliable physical communication medium? m Error detection m Error control m Message reordering Sender can swamp the receiver? m Flow control Multiplexing/Demultiplexing
  • Slide 27
  • CPSC 441: Introduction1-27 Network Reference Models Open Systems Interconnection (OSI) Model m Classic 7-layer model (covered in Wed tutorial) TCP/IP Model m Streamlined practical 4-layer protocol stack
  • Slide 28
  • CPSC 441: Introduction1-28 Reference Models (2)
  • Slide 29
  • CPSC 441: Introduction1-29 TCP/IP Model: History Originally used in the ARPANET ARPANET required networks using leased telephone lines & radio/satellite networks to interoperate Goals of the model are: m Seamless interoperability m Wide-ranging applications m Fault-tolerant to some extent Application Transport Internet Host-to- Network
  • Slide 30
  • CPSC 441: Introduction1-30 The Application Layer Residence of network applications and their application control logic Examples include: m HTTP (Hyper-Text Transfer Protocol) m FTP (File Transfer Protocol) m Telnet m SMTP (Simple Mail Transfer Protocol) m DNS (Domain Name Service)
  • Slide 31
  • CPSC 441: Introduction1-31 The Transport Layer Concerned with end-to-end data transfer between end systems (hosts) Transmission unit is called segment TCP/IP networks such as the Internet provides two types of services to applications m connection-oriented service Transmission Control Protocol (TCP) m connectionless service - User Datagram Protocol (UDP)
  • Slide 32
  • CPSC 441: Introduction1-32 TCP: Connection-oriented Service Handshaking between client & server programs m Parameters for ensuing exchange m Maintain connection-state Packet switches do not maintain any connection-state; state is at end systems m hence connection-oriented Similar to a phone conversation TCP is bundled with reliability, congestion control, and flow control.
  • Slide 33
  • CPSC 441: Introduction1-33 UDP: Connectionless Service No handshaking Send whenever and however you want A best effort service m No reliability m No congestion & flow control services Useful for network applications that prefer quick delivery of most packets rather than guaranteed (slow) delivery of all packets (e.g., VOIP, video streaming)
  • Slide 34
  • CPSC 441: Introduction1-34 The Internet Layer End systems inject datagrams in the networks A transmission path is determined for each packet (routing) A best effort service m Datagrams might be lost m Datagrams might be arrive out of order Analogy: Postal system
  • Slide 35
  • CPSC 441: Introduction1-35 The Host-to-Network Layer Somehow, host has to connect to the network and be able to send IP Datagrams How?
  • Slide 36
  • CPSC 441: Introduction1-36 Internet protocol stack application: supporting network applications m FTP, SMTP, STTP transport: host-host data transfer m TCP, UDP network: routing of datagrams from source to destination m IP, routing protocols link: data transfer between neighboring network elements m PPP, Ethernet physical: bits on the wire application transport network link physical
  • Slide 37
  • CPSC 441: Introduction1-37 Layering: logical communication application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical Each layer: distributed entities implement layer functions at each node entities perform actions, exchange messages with peers
  • Slide 38
  • CPSC 441: Introduction1-38 Layering: logical communication application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical data take data from app generate segment according to transport protocol add addressing, reliability check info to form datagram send datagram to peer wait for peer to ack receipt data transport ack
  • Slide 39
  • CPSC 441: Introduction1-39 Layering: physical communication application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical data
  • Slide 40
  • CPSC 441: Introduction1-40 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 application transport network link physical application transport network link physical source destination M M M M H t H t H n H t H n H l M M M M H t H t H n H t H n H l message segment datagram frame
  • Slide 41
  • CPSC 441: Introduction1-41 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 42
  • CPSC 441: Introduction1-42 The Network Core mesh of interconnected routers the fundamental question: how is data transferred through net? m circuit-switching: dedicated circuit per call: telephone net m packet-switching: data sent thru net in discrete chunks
  • Slide 43
  • CPSC 441: Introduction1-43 Network Core: Circuit-Switching End-to-end resources reserved for call Link bandwidth, switch capacity Dedicated resources with no sharing Guaranteed transmission capacity Call setup required Blocking may occur
  • Slide 44
  • CPSC 441: Introduction1-44 Network Core: Circuit-Switching Capacity of medium exceeds the capacity required for transmission of a single signal m How can we improve efficiency? Lets multiplex. Divide link bandwidth into pieces: m frequency division - FDMA m time division TDMA m code division - CDMA (cellular networks) m wavelength division - WDM (optical)
  • Slide 45
  • CPSC 441: Introduction1-45 Circuit-Switching: FDMA and TDMA FDMA frequency time TDMA frequency time 4 users Example:
  • Slide 46
  • CPSC 441: Introduction1-46 Network Core: Packet-Switching store-and-forward transmission source breaks long messages into smaller packets packets share network resources each packet briefly uses full link bandwidth resource contention m aggregate resource demand can exceed amount available m congestion: packets queue, wait for link use m analogy: Calgary commute at rush hour
  • Slide 47
  • CPSC 441: Introduction1-47 Packet-Switching: Statistical Multiplexing Sequence of A & B packets does not have fixed pattern statistical multiplexing. In TDM each host gets same slot in revolving TDM frame. A B C 10 Mbs Ethernet 1.5 Mbs D E statistical multiplexing queue of packets waiting for output link
  • Slide 48
  • CPSC 441: Introduction1-48 Packet-switching versus circuit-switching Great for bursty data m resource sharing Excessive congestion: packet delay and loss m protocols needed for reliable data transfer, congestion control Q: How to provide circuit-like behavior? m bandwidth guarantees needed for audio/video apps m still an ongoing research problem Is packet switching a slam dunk winner?
  • Slide 49
  • CPSC 441: Introduction1-49 Packet-switching: store-and-forward Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps Entire packet must arrive at router before it can be transmitted on next link: store and forward delay = 3L/R Example: L = 7.5 Mbits R = 1.5 Mbps delay = 15 sec R R R L
  • Slide 50
  • CPSC 441: Introduction1-50 Packet-Switching: Message Segmenting Now break up the message into 5000 packets Each packet 1,500 bits 1 msec to transmit packet on one link pipelining: each link works in parallel Delay reduced from 15 sec to 5.002 sec
  • Slide 51
  • CPSC 441: Introduction1-51 Packet-switched networks: forwarding datagram network: m destination address in packet determines next hop m routes may change during session (flexible?) m no per flow state, hence more scalable virtual circuit network: m each packet carries tag (virtual circuit ID), tag determines next hop m fixed path determined at call setup time m path is not a dedicated path as in circuit switched (i.e., store & forward of packets) m routers maintain per-call state datagram networks need per packet routing.
  • Slide 52
  • CPSC 441: Introduction1-52 Network Taxonomy Telecommunication networks Circuit-switched networks FDM TDM Packet-switched networks Networks with VCs Datagram Networks
  • Slide 53
  • CPSC 441: Introduction1-53 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 54
  • CPSC 441: Introduction1-54 How do loss and delay occur? packets queue in router buffers packet arrival rate to link exceeds output link capacity packets queue, wait for turn if queue is full, arriving packets dropped (Drop-Tail) A B packet being transmitted (delay) packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers
  • Slide 55
  • CPSC 441: Introduction1-55 Four sources of packet delay 1. Processing delay: m check bit errors m determine output link A B propagation transmission nodal processing queueing 2. Queueing delay: m time waiting at output link for transmission m depends on congestion level of router
  • Slide 56
  • CPSC 441: Introduction1-56 Delay in packet-switched networks 3. Transmission delay: R=link bandwidth (bps) L=packet length (bits) time to send bits into link = L/R 4. Propagation delay: d = length of physical link s = propagation speed in medium (~2x10 8 m/sec) propagation delay = d/s A B propagation transmission nodal processing queueing Note: s and R are very different quantities!
  • Slide 57
  • CPSC 441: Introduction1-57 Nodal processing delay d proc = processing delay m typically a few microsecs or less d queue = queuing delay m depends on congestion d trans = transmission delay m = L/R, significant for low-speed links d prop = propagation delay m a few microsecs to hundreds of msecs
  • Slide 58
  • CPSC 441: Introduction1-58 Queueing delay (revisited) R=link bandwidth (bps) L=packet length (bits) a=average packet arrival rate traffic intensity = La/R La/R ~ 0: average queueing delay small La/R -> 1: delays become large La/R > 1: more work arriving than can be serviced, average delay infinite!
  • Slide 59
  • CPSC 441: Introduction1-59 Real Internet delays and routes What do real Internet delay & loss look like? Traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: m sends three packets that will reach router i on path towards destination m router i will return packets to sender m sender times interval between transmission and reply. 3 probes
  • Slide 60
  • CPSC 441: Introduction1-60 Roadmap What is a Computer Network? Applications of Networking Classification of Networks Layered Architecture Network Core Delay & Loss in Packet-switched Networks Structure of the Internet Summary
  • Slide 61
  • CPSC 441: Introduction1-61 Internet structure: network of networks roughly hierarchical at center: tier-1 ISPs (e.g., UUNet, BBN/Genuity, Sprint, AT&T), national/international coverage m treat each other as equals Tier 1 ISP Tier-1 providers interconnect (peer) privately NAP Tier-1 providers also interconnect at public network access points (NAPs)
  • Slide 62
  • CPSC 441: Introduction1-62 Tier-1 ISP: e.g., Sprint Sprint US backbone network
  • Slide 63
  • CPSC 441: Introduction1-63 Internet structure: network of networks Tier-2 ISPs: smaller (often regional) ISPs m Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier 1 ISP NAP Tier-2 ISP Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet tier-2 ISP is customer of tier-1 provider Tier-2 ISPs also peer privately with each other, interconnect at NAP
  • Slide 64
  • CPSC 441: Introduction1-64 Internet structure: network of networks Tier-3 ISPs and local ISPs m last hop (access) network (closest to end systems) Tier 1 ISP NAP Tier-2 ISP local ISP local ISP local ISP local ISP local ISP Tier 3 ISP local ISP local ISP local ISP Local and tier- 3 ISPs are customers of higher tier ISPs connecting them to rest of Internet
  • Slide 65
  • CPSC 441: Introduction1-65 Internet structure: network of networks a packet passes through many networks! Tier 1 ISP NAP Tier-2 ISP local ISP local ISP local ISP local ISP local ISP Tier 3 ISP local ISP local ISP local ISP
  • Slide 66
  • CPSC 441: Introduction1-66 Introduction: Summary Covered a ton of material! Internet overview whats a protocol? network edge, core, access network m packet-switching versus circuit-switching Internet/ISP structure performance: loss, delay layering and service models Internet history (tutorial) You now have: context, overview, feel of networking more depth, detail to follow!