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 2018 Lecture 9: Networks October 29th, 2018 Schedule 1 Midterm Scores u 30 questions, 1 point each u


slide-1
SLIDE 1

Introduction to Computer Science

CSCI 109

Andrew Goodney

Fall 2018

China – Tianhe-2

Lecture 9: Networks October 29th, 2018

slide-2
SLIDE 2

Schedule

1

slide-3
SLIDE 3

Midterm Scores

u 30 questions, 1 point each u Max score: 30 u Min score: u Mean:

2

slide-4
SLIDE 4

Computer Networks

u Computer networks everywhere!

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

u How did we get here?

3

slide-5
SLIDE 5

1960’s

4

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-6
SLIDE 6

1960’s Remote Access

u Dumb Terminals and analog modems

5

Phone call

slide-7
SLIDE 7

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

6

slide-8
SLIDE 8

Digital Circuits

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

7

mainframe

(smaller) mainframe

64kbps digital circuit

(smaller) mainframe (smaller) mainframe

slide-9
SLIDE 9

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

8 7

slide-10
SLIDE 10

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

9

slide-11
SLIDE 11

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

10

slide-12
SLIDE 12

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

11

slide-13
SLIDE 13

How do packets solve the problem?

u Now we can build “packet-switched” networks

12

64kbps digital circuit

= packet switch

slide-14
SLIDE 14

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

13

slide-15
SLIDE 15

Packet Switching Advantage

u Sharing and utilization is main advantage of packet switching

14

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-16
SLIDE 16

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

15

slide-17
SLIDE 17

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 49 years ago (today!), sends first message from UCLA to

Stanford

16

slide-18
SLIDE 18

Interface Message Processor

17

slide-19
SLIDE 19

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) 18

slide-20
SLIDE 20

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

19

mobile network global ISP regional ISP home network institutional network

slide-21
SLIDE 21

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

20

slide-22
SLIDE 22

More Terminology

u Network Core

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

21

slide-23
SLIDE 23

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

22

slide-24
SLIDE 24

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

23

slide-25
SLIDE 25

Home Network

24

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-26
SLIDE 26

Institutional Network

25

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-27
SLIDE 27

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+

26

to Internet

slide-28
SLIDE 28

WAN Links

u How to connect access networks to the core?

27

slide-29
SLIDE 29

DSL

u Digital Subscriber Line (DSL)

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

28

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-30
SLIDE 30

Cable Modem

29

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-31
SLIDE 31

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!

30

slide-32
SLIDE 32

Physical Links

u Communication links can be made up of different physical

media, with different properties

31

slide-33
SLIDE 33

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

32

slide-34
SLIDE 34

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

33

slide-35
SLIDE 35

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

34

slide-36
SLIDE 36

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

35

slide-37
SLIDE 37

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

36

slide-38
SLIDE 38

Internet Structure

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

must interconnect… how?

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

slide-39
SLIDE 39

Internet Structure

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

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

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

slide-40
SLIDE 40

Internet Structure

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

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

global ISP

slide-41
SLIDE 41

Internet Structure

40

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-42
SLIDE 42

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

41

slide-43
SLIDE 43

Network of Networks

42

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-44
SLIDE 44

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

43

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-45
SLIDE 45

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?

44

slide-46
SLIDE 46

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 reciept

45

slide-47
SLIDE 47

Protocols

46

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-48
SLIDE 48

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

47

GET http://www.usc.edu/

slide-49
SLIDE 49

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!

48

slide-50
SLIDE 50

Flying Analogy

u First an analogy

49

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

slide-51
SLIDE 51

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

50

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-52
SLIDE 52

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

51

slide-53
SLIDE 53

Data flow through layers

52

Packet flow

abstract connection

slide-54
SLIDE 54

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

53

slide-55
SLIDE 55

Closer look at the layers

54

Typically software layers Typically hardware layers

slide-56
SLIDE 56

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 55

slide-57
SLIDE 57

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 is actually delivered per unit time

v This is what applications see 56

slide-58
SLIDE 58

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

57

slide-59
SLIDE 59

Original Internet Design Goals

u Paper for 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) 58

slide-60
SLIDE 60

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 59

slide-61
SLIDE 61

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

60

slide-62
SLIDE 62

Back to Internet History

61

slide-63
SLIDE 63

Growth of the Internet

62

slide-64
SLIDE 64

Switch to TCP/IP (layer 4 protocol)

63

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

slide-65
SLIDE 65

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) 64

slide-66
SLIDE 66

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)

65