course introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf ·...
TRANSCRIPT
![Page 1: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/1.jpg)
CS 640 1
Course Introduction
OutlineNetworking BasicsInternet TimelineStatistical MultiplexingPerformance MetricsProtocol layering and ISO architecture
![Page 2: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/2.jpg)
CS 640 2
Basics• Host vs Router
– Router is a device with multiple interfaces and allows “data” forwarding between interfaces
– Host may have multiple interfaces too
• IP address identifies an interface• A trivial network: every host directly connected to every
other host– Not a scalable construction
• Alternative: A hierarchical structure of hosts– Nodes (hosts or routers) grouped into network clouds– Network clouds are interconnected to form internetworks or
internets– Internet (with capital I) refers to THE wide-area Internet we know
today
![Page 3: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/3.jpg)
CS 640 3
A Brief History of Networking
• Roots traced to public telephone network of the 60’s– How can computers be connected together?
• Three groups were working on packet switching as an efficient alternative to circuit switching
• L. Kleinrock had first published work in ‘61– Showed packet switching was effective for bursty traffic
• P. Baran had been developing packet switching at Rand Institute and plan was published in ‘67– Basis for ARPAnet
• First contract to build network switches awarded to BBN
• First network had four nodes in ‘69
![Page 4: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/4.jpg)
CS 640 4
History of the Internet contd.
• By ’72 network had grown to 15 nodes– Network Control Protocol - first end-to-end protocol
(RFC001)
– Email was first application – R. Tomlinson, ’72
• In ’73 R. Metcalfe invented Ethernet
• In ’74 V. Cerf and R. Kahn developed open architecture for Internet– TCP and IP
![Page 5: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/5.jpg)
CS 640 5
History of the Internet contd.
• By ’79 the Internet had grown to 200 nodes and by the end of ’89 it had grown to over 100K!– Much growth fueled by connecting universities– L. Landweber from UW was an important part of this!
• Major developments– TCP/IP as standard– DNS
• In ’89 V. Jacobson made MAJOR improvements to TCP• In ’91 T. Berners-Lee invented the Web
• In ’93 M. Andreesen invented Mosaic
• The rest should be pretty familiar…
![Page 6: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/6.jpg)
CS 640 6
Building Blocks
• Nodes: PC, special-purpose hardware…– hosts– Switches and routers
• Links: coax cable, optical fiber…– point-to-point
– multiple access…
![Page 7: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/7.jpg)
CS 640 7
Switched Networks
– two or more nodes connected by a link, or
– two or more networks connected by nodes
• A network can be defined recursively as...
![Page 8: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/8.jpg)
CS 640 8
Strategies
• Circuit switching: carry bit streams along determined paths– original telephone network
• Packet switching: store-and-forward messages– Internet
• Homework assignment: What is aVirtual circuit?
![Page 9: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/9.jpg)
CS 640 9
Multiplexing
• Resouce sharing
• Analogous to CPU sharing among processes in OS
L1
L2
L3
R1
R2
R3Switch 1 Switch 2
![Page 10: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/10.jpg)
CS 640 10
Statistical Multiplexing• Resources made available on-demand
• Packets from different sources interleaved on link
• Buffer packets that are contending for the link
• Buffer (queue) overflow is called congestion
– Can lead to packet losses
…
![Page 11: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/11.jpg)
CS 640 11
Statistical Multiplexing
• Simple example in class:– Each conversation has instantaneous load of 1 Mbps with 1/10
probability– No delay permissible: only 1 conversation– If some delay allowed: 5 simultaneous conversations
• Delay on link about 6% of the time
…
Bandwidth: 1 Mbps
![Page 12: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/12.jpg)
CS 640 12
Internet Goals
• Connectivity– Nodes, links, clouds
• Efficient resource sharing– Statistical multiplexing
• Services– Reliable channel– Request/reply or bit-stream channel
![Page 13: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/13.jpg)
CS 640 13
Performance Metrics• Bandwidth: physical property of link• Throughput: actual 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 / Speed (of light)Transmit = Size / Bandwidth
• Actual delays on Internet is much greater than propagation
![Page 14: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/14.jpg)
CS 640 14
Bandwidth versus Latency
• Relative importance
• Assume propagation delay is 100 ms
• Transfer 1 Kb, bw 1 Mbps– Latency: 100 + 1 (transmission delay) = 101 ms
• Transfer 1 Mb– Latency 100 + 1000 (transmission delay) = 1100 ms
![Page 15: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/15.jpg)
CS 640 15CS 640
Layering
• Use abstractions to hide complexity• Abstraction naturally lead to layering• Alternative abstractions at each layer
Request/replychannel
Message streamchannel
Application programs
Hardware
Host-to-host connectivity
![Page 16: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/16.jpg)
CS 640 16CS 640
Protocols
• Building blocks of a network architecture
• 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
![Page 17: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/17.jpg)
CS 640 17CS 640
Host 1
Protocol
Host 2
Protocol
High-levelobject
High-levelobject
Service
interface
Peer-to-peer
interface
Interfaces
![Page 18: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/18.jpg)
CS 640 18
Machinery
• 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
![Page 19: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/19.jpg)
CS 640 19CS 640
ISO Architecture
Application
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
![Page 20: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/20.jpg)
CS 640 20CS 640
Internet Architecture
• Defined by Internet Engineering Task Force (IETF)1. Application: interacts with user to initiate data transfers (browser,
media player, command line)2. Transport: reliable, in-order delivery of data (TCP and UDP)3. Network: addressing and routing (IP)4. Data Link: defines how hosts access physical media (Ethernet)5. Physical: defines how bits are represented on wire (Manchester)
• Information is passed between layers via encapsulation– Header information is attached to data passed down layers
• Multiplexing between layers
• Layers access other layers via API’s (eg. sockets)• Communication at a specific layer is enabled by a protocol
![Page 21: Course Introduction - pages.cs.wisc.edupages.cs.wisc.edu/~suman/courses/640/lectures/intro.pdf · Course Introduction Outline ... every host directly connected to every ... – How](https://reader031.vdocuments.us/reader031/viewer/2022022500/5aa2f8597f8b9ada698d9604/html5/thumbnails/21.jpg)
CS 640 21CS 640
Hourglass Design
• Single protocol at network level insures packets will get from source to destination while allowing for flexibility
…
FTP HTTP NV TFTP
TCP UDP
IP
NET1 NET2 NETn