Introduction to Computer Science CSCI 109 China Tianhe-2 Andrew - - PowerPoint PPT Presentation

introduction to computer science
SMART_READER_LITE
LIVE PREVIEW

Introduction to Computer Science CSCI 109 China Tianhe-2 Andrew - - PowerPoint PPT Presentation

Introduction to Computer Science CSCI 109 China Tianhe-2 Andrew Goodney Fall 2019 Lecture 9: Networks Nov. 9th, 2019 Schedule 1 Computer Networks u Computer networks everywhere!


slide-1
SLIDE 1

Introduction to Computer Science

CSCI 109

Andrew Goodney

Fall 2019

China – Tianhe-2

Lecture 9: Networks Nov. 9th, 2019

slide-2
SLIDE 2

Schedule

1

slide-3
SLIDE 3

Computer Networks

u Computer networks everywhere!

v Headed towards IoT (*everything* electronic on a network)

u How did we get here?

2

slide-4
SLIDE 4

1960’s

3

u 1960’s

v ”Mainframe” computers = $$MM v Universities and Government facilities install at designated places

(UIUC, UCSD, etc.)

v Allow remote access to researchers across the country to better utilize v Mainframes – 100% busy

slide-5
SLIDE 5

1960’s Remote Access

u Dumb Terminals and analog modems

4

Phone call

slide-6
SLIDE 6

1960’s Problems

u Any issues with this model?

v Analog connections slow (300BPS) v Only so many phone lines v Long distance calls were expensive

5

slide-7
SLIDE 7

Digital Circuits

u Mid to late 1960’s digital circuits improve things u Also, computer-to-computer communication

6

mainframe

(smaller) mainframe

64kbps digital circuit

(smaller) mainframe (smaller) mainframe

slide-8
SLIDE 8

Late 1960’s

u Terminals in office -> local main frame u Local mainframe -> digital circuit -> big main frame u Key observations:

v Multiple users v Computer-to-computer

7 7

slide-9
SLIDE 9

Late 1960’s

u Still not ideal… u Connections are “circuit switched” (dedicated) between

source and destination

u What happens when no one is using the circuit? u Really only one dumb-terminal can use connection at a time u Do humans time share well? u Digital circuits still expensive u Also, computer-to-computer identified as key application

8

slide-10
SLIDE 10

Design Goals

u Need a way to:

v Connect users at terminals to remote computers v Connect many users at the same time (fairly) v Allow computer-to-computer communications v Maximize the utilization of expensive digital links

9

slide-11
SLIDE 11

Solution: the packet

u What is a packet? u Chunks of user data u And VERY IMPORTANTLY u Meta-data (header) about where the packet is from, and

where it needs to go

10

slide-12
SLIDE 12

How do packets solve the problem?

u Now we can build “packet-switched” networks

11

64kbps digital circuit

= packet switch

slide-13
SLIDE 13

Packet Switching

u What do we have now? u Terminals connect to local computers u Data is broken up into packets sent to switch u Can go to other local computers u Or, switch can ”forward” packet to remote switch u Remote switch sends packet to big, expensive main frame u Main advantage: links are shared amongst all users, or

computer-to-computer communication

u Nothing is dedicated to one connection

12

slide-14
SLIDE 14

Packet Switching Advantage

u Sharing and utilization is main advantage of packet switching

13

N users 1 Mbps link

…..

example: § 1 Mb/s link § each user:

  • 100 kb/s when “active”
  • active 10% of time

u circuit-switching:

v 10 users

u packet switching:

v with 35 users, probability > 10

active at same time is less than .0004

v with 50 users, P = 0.01

slide-15
SLIDE 15

A bit more history…

u How did we make the jump to packet switching? u Idea came about late 1960’s u ARPA (Advanced Research Projects Agency)

v US-DOD wanted packet switched computer-to-computer networks v Seen as crucial to Cold War effort

u This is queueing theory, packet switching is a lot like lines at

amusement park/grocery store

14

slide-16
SLIDE 16

Len Kleinrock/UCLA

u Len Kleinrock writes PhD thesis on queuing theory/packet

switching

v All theoretical, didn’t exist yet

u ARAP contacts and says “Hey you seem like just the right guy,

here’s a ton of money, invent the ARPANet…”

u Gets faculty position at UCLA (~1963), embarks on project u With BBN, builds Interface Message Processor (IMP) (packet

switch)

u 50 years ago (Oct. 29th), sends first message from UCLA to

Stanford

15

slide-17
SLIDE 17

Interface Message Processor

16

Internet Museum:

https://la.curbed.com/2011/10/31/10429196/internet-invented-ucla-first-message-museum

Recreated lab as it was 50 years ago. You can go visit: 3420 Boelter Hall

slide-18
SLIDE 18

Network Terminology

u Everything on the network is either:

v Host

u sends or receives data

v Packet switch

u receives packets on interfaces and forwards to other switches or hosts

v Communication link

u Physical connection between two devices that carries data

u Store and forward

v Packet switches “store and forward”

u Receive a packet u Store it (store) u Figure out where to send it (forward) 17

slide-19
SLIDE 19

Modern Networks

u How do we build modern networks? u The Internet is a network of

networks!

u Internet edge:

v Access networks connects hosts to the

network

v Access networks connect to networks in

the core

u Internet Core:

v Networks of networks (ISPs) connecting

together

18

mobile network global ISP regional ISP home network institutional network

slide-20
SLIDE 20

More Terminology

u Access networks are Local Area Networks (LANs)

v Host (desktops, laptops, servers) v Switches v Routers

u Routers are special packet switches that bridge (connect)

multiple LANs, or from LAN to WAN

u WAN = Wide Area Network

v Connects from LAN to network core

19

slide-21
SLIDE 21

More Terminology

u Network Core

v LANs and WAN connections from access networks to ISPs v And between ISPs

20

slide-22
SLIDE 22

How do we build modern networks

u First look at access networks

v How do we connect hosts (pc, laptop, server, phones) to the network

21

slide-23
SLIDE 23

Ethernet LANs

u In 2018 (almost?) all LANs are built with Ethernet

technologies

u Homes, businesses, university campus u Built with

v twisted pair (“Ethernet cable”) v Wifi v Optical fiber v Power lines

u Wide range of speeds

v 10M, 100M, 1G, 10G, 40G, 100G

22

slide-24
SLIDE 24

Home Network

23

to/from headend or central office

Cable, DSL modem, or fiber router, firewall, NAT wired Ethernet (100 Mbps

  • r 1G)

wireless access point (100->1000 Mbps)

wireless devices

slide-25
SLIDE 25

Institutional Network

24

Ethernet switch institutional mail, web servers institutional router institutional link to ISP (Internet)

u typically used in companies, universities, etc

v 10 Mbps, 100Mbps, 1Gbps, 10Gbps, 40G, 100G transmission rates v today, end systems typically connect into Ethernet switch

slide-26
SLIDE 26

Wireless Network

u Wireless access to phones, etc u Provided by cellular operators u 2G (dead?), 3G, 4G, now 5G u Speeds vary

v 100’s kilobits/s (2G) v 5G 300Mbps+

25

to Internet

slide-27
SLIDE 27

WAN Links

u How to connect access networks to the core?

26

slide-28
SLIDE 28

DSL

u Digital Subscriber Line (DSL)

v Uses existing phone lines v 10 - 100Mbps v Homes and small businesses

27

central office

ISP

telephone network DSLAM voice, data transmitted at different frequencies over dedicated line to central office

DSL modem splitter

DSL access multiplexer

slide-29
SLIDE 29

Cable Modem

28

data, TV transmitted at different frequencies over shared cable distribution network

cable modem splitter

cable headend CMTS

ISP

cable modem termination system

v HFC: hybrid fiber coax

§ asymmetric: up to 1Gbps downstream transmission rate, <20 Mbps upstream transmission rate

v network of cable, fiber attaches homes to ISP router

§ homes share access network to cable headend § unlike DSL, which has dedicated access to central office

v Homes and small business

slide-30
SLIDE 30

Fiber Optical WAN Links

u Institutional networks, ISP to ISP u Laser light on optical fiber u Speeds 100M to 100G u Some homes!

v ATT Fiber, Google Home, other lucky people!

29

slide-31
SLIDE 31

Physical Links

u Communication links can be made up of different physical

media, with different properties

30

slide-32
SLIDE 32

Twisted Pair

u Twisted Pair: two copper wires twisted around each other u Examples: old phone lines, CAT5(6,7) Ethernet cables u Bandwidth: 100M to 2.5G per pair u Usually multiple pairs per cable

31

slide-33
SLIDE 33

Coaxial cable

u Coaxial cable: center conductor surrounded by insulation

then tubular shield

u Carries radio frequency signals u “CableTV” (cable modem) wires in your house, DS3 other

similar telco services

u 100M to 10G per cable

32

slide-34
SLIDE 34

Fiber Optic Cable

u Extremely thin glass cables called strands u Laser light used to transmit data u Can carry multiple wavelengths at once (i.e. multiple

”colors”)

u Essentially unlimited bandwidth per strand u Typically 1G to 100G per wavelength u 96 wavelengths per strand u Short distance: Ethernet on campus u Long distance, undersea u Propagates at 60% speed of light

33

slide-35
SLIDE 35

Wireless

u Also known as radio waves u Connects through free space (no wires) u Wi-fi, cellular, satellite, specialized microwave services u Bandwidth depends on frequency, channel width,

modulation, etc. (kilobits to gigabits)

v 900MHz, 2.4GHz, 5GHz, 60GHz

u Propagation affected by walls, buildings, trees, ground,

water, other transmission sources

u Some free-space laser links exist, not very common

34

slide-36
SLIDE 36

Internet structure

u Keep saying “network of networks” u What do we mean? u Basic goal of Internet “end to end” communication

v Any host can talk to any host

u End systems connect to Internet via access ISPs (Internet Service

Providers)

v Residential, business and university ISPs

u Access ISPs in turn must be interconnected.

v So that any two hosts can send packets to each other

u Resulting network of networks is very complex

v Evolution was driven by economics and national policies

u Let’s take a stepwise approach to describe current Internet structure

35

slide-37
SLIDE 37

Internet Structure

u To enable end-to-end communication, all access nets (millions)

must interconnect… how?

36

access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net

… … … … … …

slide-38
SLIDE 38

Internet Structure

u Naïve solution: direct connect every ISP together!

37

access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net

… … … … … …

… …

… … … connecting each access ISP to each other directly doesn’t scale: O(N2) connections.

slide-39
SLIDE 39

Internet Structure

u Solution: One global ISP connects access nets hierarchically u Not possible, never happened…

38

access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net

… … … … … …

global ISP

slide-40
SLIDE 40

Internet Structure

39

access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net

… … … … … …

ISP B ISP A ISP C

IXP IXP

peering link Internet exchange point

slide-41
SLIDE 41

Internet Structure

u Regional ISPs arose to connect access nets (schools,

businesses, homes) to the Internet

u Regional ISPs connected together at IXPs (Internet Exchange

Points) for mutual economic benefit

u Specialized regional networks connect some access networks

together

v Educational: Los Nettos (socal .edu) v Metro area networks: City chartered networks to lower connection

costs for businesses

40

slide-42
SLIDE 42

Network of Networks

41

access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net

… … … … … …

ISP B ISP A ISP C

IXP IXP

regional net

slide-43
SLIDE 43

Hierarchical View

u

at center: small # of well-connected large networks

v

“tier-1” commercial ISPs (e.g., Level 3, Sprint, AT&T, NTT), national & international coverage

v

content provider network (e.g, Google): private network that connects it data centers to Internet,

  • ften bypassing tier-1, regional ISPs

42

access ISP access ISP access ISP access ISP access ISP access ISP access ISP access ISP

Regional ISP Regional ISP IXP IXP Tier 1 ISP Tier 1 ISP Google IXP

slide-44
SLIDE 44

Communicating on the Internet

u Material so far is how we build packet switched networks u From another perspective: how does data get to the other

side?

43

slide-45
SLIDE 45

Protocols

u All communication on networks is moderated by one or more

protocols

u Human protocols:

v ”What time is it?” “Excuse me, where is…” v Introductions, small talk, etc.

u Network Protocols

v Machine to machine

u Network protocols: define the format and order of messages

sent and received between network devices, and the actions to be taken upon message transmission or receipt

44

slide-46
SLIDE 46

Protocols

45

a human protocol and a computer network protocol: Hi Hi

Got the time?

2:00

TCP connection response

<file>

time

TCP connection request Get http://www.awl.com/kurose-ross

slide-47
SLIDE 47

Getting Data Across the Internet

u From the programmers perspective, the network is a black-

box

u A set of infrastructure components that provide an API to get

data from app to server and back

46

GET http://www.usc.edu/

slide-48
SLIDE 48

How to provide that service?

u To get from device to server and back

v Data must be packetized v Traverse access network à ISP à ISP à ISP à access network à

server (and back)

v Travel across heterogeneous network types, physical layers

u Does (should?) the programmer worry about any of this? u No! It just works. u What is the solution? u A series of abstractions!

47

slide-49
SLIDE 49

Flying Analogy

u First an analogy

48

ticket (purchase) baggage (check) gates (load) runway takeoff airplane routing ticket (complain) baggage (claim) gates (unload) runway landing airplane routing airplane routing

slide-50
SLIDE 50

Flying Analogy

u Goal: get from one city to the other

layers: each layer implements a service

v via its own internal-layer actions v relying on services provided by layer below

49

ticket (purchase) baggage (check) gates (load) runway (takeoff) airplane routing

departure airport arrival airport intermediate air-traffic control centers

airplane routing airplane routing ticket (complain) baggage (claim gates (unload) runway (land) airplane routing

ticket baggage gate takeoff/landing airplane routing

slide-51
SLIDE 51

Why Layers

u Explicit structure eases system design in highly complex

system

v Adds structure to the design process

u Modularity

v Each layer provides a service to the layer above, essentially abstracting

the connection details away

v Layers can be updated and improved as long as services offered don’t

change

v Each layer ABSTRACTS the connection between devices at that layer

u Ease for application programmers

v Minimum amount to learn v Use the API provided by upper layers, let the rest sort it out

50

slide-52
SLIDE 52

Data flow through layers

51

Packet flow

abstract connection

slide-53
SLIDE 53

Packet Headers

u Each layer adds a header as a packet flows down u Header contains the information necessary for that layer to

do its job

u Header is removed as data flows up

52

slide-54
SLIDE 54

Closer look at the layers

53

Typically software layers Typically hardware layers

slide-55
SLIDE 55

TCP/IP

u TCP/IP Most famous protocol suite u TCP

v Layer 4 protocol v Guarantees in-order delivery of packets

u Either they get to the other side in order u Or both hosts know a packet was lost

v Offers ”data stream” abstraction to layers above

u IP (Internet Protocol)

v Layer 3 protocol v All “Internet” traffic is IP traffic v Handles addressing (IP addresses) and routing of packets across the

Internet

v No guarantees, packets routed best effort v Offers host-to-host packet service to layers above 54

slide-56
SLIDE 56

Network Performance

u Performance Metrics for Networks u Bandwidth - ”how fast is my network”

v How much data (bits) can I get to the other side per second v Applies to communication links, as well as across the network

u Latency – “How slow is my network”

v How long does it take for data to get from one side to the other v Measured in time: s, ms, us

u Loss – “How bad is my network”

v Fraction of packets that get dropped (don’t make it to the other side) v Needs to be <<1% for good network operation

u Throughput – “How good is my network”

v Considering how bandwidth, latency, loss combine with a protocol to

measure how much data is actually delivered per unit time

v This is what applications see 55

slide-57
SLIDE 57

Original Internet Design Goals

u “the Internet” came out of (D)ARPA projects in the 1960’s,

70’s and 80

u Primary driver was to enable computer-to-computer

communications, even under nuclear attack

56

slide-58
SLIDE 58

Original Internet Design Goals

u Paper in 1988: “The Design Philosophy of the DARPA Internet Protocols”

(David Clark, 1988).

u In PRIORITY order

u 1. Continue despite loss of network infrastructure (degrade, but still function

under attack)

u 2. Support multiple types of communication services (many different

applications)

u 3. Accommodate a variety of networks (e.g. early networks were not all

Ethernet, today’s networks use Ethernet at layer 2, layer 1 is very different)

u 4. Permit distributed management of Internet resources (no one entity is

required for network to function)

u 5. Cost effective u 6. Host attachment should be easy (only local changes required to add host) u 7. Resource accountability (security) 57

slide-59
SLIDE 59

What about now?

u Many of these goals made the Internet as we know it

possible.

u Especially the middle 4:

u Support multiple types of communication services (many different

applications)

u Accommodate a variety of networks (e.g. early networks were not all Ethernet,

today’s networks use Ethernet at layer 2, layer 1 is very different)

u Permit distributed management of Internet resources (no one entity is

required for network to function)

u Cost effective 58

slide-60
SLIDE 60

What about now?

u However, some make things interesting u 4. Permit distributed management of Internet resources

u Originally indented to make the network resilient in a military

scenario

u Now: basically no one is in charge

v 7. Resource accountability

u If you read the paper, they basically never got to this u This is why Internet security is such a disaster, it wasn’t designed

in originally

u Network agents implicitly trusted, this still causes problems, see

re: BGP attacks

59

slide-61
SLIDE 61

Back to Internet History

60

slide-62
SLIDE 62

Growth of the Internet

61

slide-63
SLIDE 63

Switch to TCP/IP (layer 4 protocol)

62

u ARPANet switches to TCP/IP – still in use!

slide-64
SLIDE 64

USC/ISI

u Information Sciences Institute

v Part of USC under Viterbi v Researchers, grad students, undergrads v In beautiful MDR

u Became prominent in developing early Internet protocols

v IP

u “The internet protocol provides for transmitting blocks of data called datagrams

from sources to destinations, where sources and destinations are hosts identified by fixed length addresses.”

v ICMP v Domain Name System v Simple Mail Transport Protocol

u ICANN nee IANA

v Internet Assigned Numbers Authority -> ICANN v (USC basically ran the Internet) 63

slide-65
SLIDE 65

Takeaways

u Networks allow computers to communicate (exchange data) u Data is broken into packets (small chunks) and sent over shared circuits

(packet switching) by switches and routers

u Internet is a network-of-networks – No one owner/regulator u The Internet provides an API for a service (networking) that lets app

developers write software (abstraction)

u Services are implemented with protocols that are stacked in layers (more

abstraction)

u TCP/IP is the core protocol on which most internetworking is based u Security was not an important design feature when the Internet was invented

– we’re still paying for this now

u Bandwidth, latency, loss, throughput are the important network performance

metrics

u USC/ISI has been involved in inventing the modern Internet since (not quite)

the beginning (e.g DNS, IANA, ICANN)

64