30
David Evans http://www.cs.virginia.edu/ evans CS150: Computer Science University of Virginia Computer Science Class 29: Making Primitives Class 29: Trick-or- Treat Protocols

David Evans cs.virginia/evans

  • Upload
    clarke

  • View
    21

  • Download
    0

Embed Size (px)

DESCRIPTION

Class 29: Making Primitives. Class 29: Trick-or-Treat Protocols. David Evans http://www.cs.virginia.edu/evans. CS150: Computer Science University of Virginia Computer Science. This Week in CS150. Today: Networking and the Internet Trick-or-Treat Protocols Wednesday: - PowerPoint PPT Presentation

Citation preview

Page 1: David Evans cs.virginia/evans

David Evanshttp://www.cs.virginia.edu/evans

CS150: Computer ScienceUniversity of VirginiaComputer Science

Class 29: Making Primitives

Class 29: Trick-or-Treat Protocols

Page 2: David Evans cs.virginia/evans

2CS150 Fall 2005: Lecture 29: Trick-or-Treat

This Week in CS150

• Today: – Networking and the Internet– Trick-or-Treat Protocols

• Wednesday: – How to make a dynamic web site using

HTML, SQL, Python

• Friday: Return to Models of Computation

Page 3: David Evans cs.virginia/evans

3CS150 Fall 2005: Lecture 29: Trick-or-Treat

Who Invented the Internet?

Page 4: David Evans cs.virginia/evans

4CS150 Fall 2005: Lecture 29: Trick-or-Treat

Who Invented Networking?

Page 5: David Evans cs.virginia/evans

5CS150 Fall 2005: Lecture 29: Trick-or-Treat

What is a Network?

A group of three or more connected communicating entities

Page 6: David Evans cs.virginia/evans

6CS150 Fall 2005: Lecture 29: Trick-or-Treat

Beacon Chain NetworkingThus, from some far-away beleaguered island, where all day long the men have fought a desperate battle from their city walls, the smoke goes up to heaven; but no sooner has the sun gone down than the light from the line of beacons blazes up and shoots into the sky to warn the neighboring islanders and bring them to the rescue in their ships. Iliad, Homer, 700 BC

Chain of beacon’s signaled Agammemnon’s return (~1200BC), spread on Greek peaks over 600km.

Page 7: David Evans cs.virginia/evans

7CS150 Fall 2005: Lecture 29: Trick-or-Treat

Pony Express

• April 1860 – October 1861• Missouri to California

– 10 days– 10-15 miles per horse, ~100 miles per

rider

• 400 horses total (not per station like Kahn’s)

Page 8: David Evans cs.virginia/evans

8CS150 Fall 2005: Lecture 29: Trick-or-Treat

Chappe’s Semaphore Network

Mobile Semaphore Telegraph Used in the Crimean War 1853-1856

First Line (Paris to Lille), 1794

Page 9: David Evans cs.virginia/evans

9CS150 Fall 2005: Lecture 29: Trick-or-Treat

Measuring Networks• Latency

Time from sending a bit until it arrives seconds (or seconds per geographic distance)

• Bandwidth How much information can you transmit per time unitbits per second

Page 10: David Evans cs.virginia/evans

10CS150 Fall 2005: Lecture 29: Trick-or-Treat

Latency and Bandwidth• Napoleon’s Network: Paris to Toulon, 475 mi• Latency: 13 minutes (1.6s per mile)

– What is the delay at each signaling station, how many stations to reach destination

– At this rate, it would take ~1 hour to get a bit from California

• Bandwidth: 2 symbols per minute (98 possible symbols, so that is ~13 bits per minute– How fast can signalers make symbols– At this rate, it would take you about 9 days to

get ps7.zip

Page 11: David Evans cs.virginia/evans

11CS150 Fall 2005: Lecture 29: Trick-or-Treat

Improving Latency• Less transfer points

– Longer distances between transfer points– Semaphores: how far can you see clearly

• Telescopes can help, but curvature of Earth is hard to overcome

– Use wires (electrical telegraphs, 1837)

• Faster travel– Hard to beat speed of light (semaphore network)– Electrons in copper travel about 1/3rd speed of

light

• Faster transfers– Replace humans with machines

Page 12: David Evans cs.virginia/evans

12CS150 Fall 2005: Lecture 29: Trick-or-Treat

How many transfer points between here and

California?

Page 13: David Evans cs.virginia/evans

13CS150 Fall 2005: Lecture 29: Trick-or-Treat

] tracert cs.berkeley.eduTracing route to cs.berkeley.edu [169.229.60.28]over a maximum of 30 hops:

1 <10 ms <10 ms <10 ms router137.cs.Virginia.EDU [128.143.137.1] 2 <10 ms <10 ms <10 ms carruthers-6509a-x.misc.Virginia.EDU [128.143.222.46] 3 <10 ms <10 ms <10 ms uva-internet.acc.Virginia.EDU [128.143.222.93] 4 <10 ms <10 ms <10 ms 192.35.48.42 5 <10 ms <10 ms 10 ms 192.70.138.22 6 <10 ms 10 ms 10 ms nycm-wash.abilene.ucaid.edu [198.32.8.46] 7 20 ms 20 ms 20 ms clev-nycm.abilene.ucaid.edu [198.32.8.29] 8 21 ms 30 ms 30 ms ipls-clev.abilene.ucaid.edu [198.32.8.25] 9 30 ms 40 ms 30 ms kscy-ipls.abilene.ucaid.edu [198.32.8.5] 10 40 ms 50 ms 40 ms dnvr-kscy.abilene.ucaid.edu [198.32.8.13] 11 70 ms 70 ms * snva-dnvr.abilene.ucaid.edu [198.32.8.1] 12 70 ms 70 ms 70 ms 198.32.249.161 13 70 ms 70 ms 71 ms BERK--SUNV.POS.calren2.net [198.32.249.13] 14 70 ms 70 ms 70 ms pos1-0.inr-000-eva.Berkeley.EDU [128.32.0.89] 15 70 ms 70 ms 70 ms vlan199.inr-202-doecev.Berkeley.EDU [128.32.0.203] 16 * * * Request timed out. 17 70 ms 100 ms 70 ms relay2.EECS.Berkeley.EDU [169.229.60.28]

Trace complete.

> (define meters-to-berkeley (* 1600 3000)) ;; 3000 miles * 1600 meters/mi> (define seconds-to-berkeley 0.070)> (define speed-to-berkeley (/ meters-to-berkeley seconds-to-berkeley))> speed-to-berkeley ;;; meters per second68571428.57142857> (define speed-of-light 300000000) ;;; 300 000 000 meters per second> (/ speed-of-light speed-to-berkeley)4.375The Internet latency today is about ¼ the best physically possible!

Page 14: David Evans cs.virginia/evans

14CS150 Fall 2005: Lecture 29: Trick-or-Treat

Improving Bandwidth• Faster transmission

– Train signalers to move semaphore flags faster– Use something less physically demanding to

transmit

• Bigger pipes– Have multiple signalers transmit every other

letter at the same time

• Better encoding– Figure out how to code more than 98 symbols

with semaphore signal– Morse code (1840s)

Page 15: David Evans cs.virginia/evans

15CS150 Fall 2005: Lecture 29: Trick-or-Treat

Morse CodeRepresent letters with series ofshort and long electrical pulses

Page 16: David Evans cs.virginia/evans

16CS150 Fall 2005: Lecture 29: Trick-or-Treat

Circuit Switching

• Reserve a whole path through the network for the whole message transmission

Paris Toulon

Nantes

LyonBourges

Once you start a transmission,know you will have use of the network until it is finished. But,wastes network resources.

Page 17: David Evans cs.virginia/evans

17CS150 Fall 2005: Lecture 29: Trick-or-Treat

Packet Switching

• Use one link at a time

Paris Toulon

Nantes

LyonBourges

Interleave messages – send whenever the next link is free.

Page 18: David Evans cs.virginia/evans

18CS150 Fall 2005: Lecture 29: Trick-or-Treat

Circuit and Packet Switching

• (Land) Telephone Network– Circuit: when you dial a number, you

have a reservation on a path through the network until you hang up

• The Internet– Packet: messages are broken into small

packets, that find their way through the network link by link

Page 19: David Evans cs.virginia/evans

19CS150 Fall 2005: Lecture 29: Trick-or-Treat

internetwork

A collection of multiple networks connected together, so messages can be transmitted between nodes on different networks.

Page 20: David Evans cs.virginia/evans

20CS150 Fall 2005: Lecture 29: Trick-or-Treat

Okay, so who invented the

Internet?

Page 21: David Evans cs.virginia/evans

21CS150 Fall 2005: Lecture 29: Trick-or-Treat

“Trick or Treat” Protocols

Page 22: David Evans cs.virginia/evans

22CS150 Fall 2005: Lecture 29: Trick-or-Treat

“Trick or Treat” Protocols

• Trick-or-Treater must convince victim that she poses a credible threat

• Need to prove you know a trick, without revealing what it is– Revealing the trick gives victim

opportunity to prevent it

Page 23: David Evans cs.virginia/evans

23CS150 Fall 2005: Lecture 29: Trick-or-Treat

Tricker’s License

TRICKER’S LICENSE

Page 24: David Evans cs.virginia/evans

24CS150 Fall 2005: Lecture 29: Trick-or-Treat

Cryptographic Hash Functions

One-wayGiven h, it is hard to find x

such that H(x) = h.

Collision resistanceGiven x, it is hard to find y x

such that H(y) = H(x).

Page 25: David Evans cs.virginia/evans

25CS150 Fall 2005: Lecture 29: Trick-or-Treat

Example One-Way Function

Input: two 100 digit numbers, x and yOutput: the middle 100 digits of x * y

Given x and y, it is easy to calculate f (x, y) = select middle 100 digits (x * y)

Given f (x, y) hard to find x and y.

Page 26: David Evans cs.virginia/evans

26CS150 Fall 2005: Lecture 29: Trick-or-Treat

A Better Hash Function?

• H(x) = encryptx (0)• Weak collision resistance?

– Given x, it should be hard to find y x such that H(y) = H(x).

– Yes – encryption is one-to-one. (There is no such y.)

• A good hash function?– No, its output is as big as the

message!

Page 27: David Evans cs.virginia/evans

27CS150 Fall 2005: Lecture 29: Trick-or-Treat

Trick-or-Treat

Trickers?

“Trick or Treat?”, H (secret)

TrickersBureau

H (secret)

Valid!

Ouch! Now victim knowsenough to be a tricker!

Page 28: David Evans cs.virginia/evans

28CS150 Fall 2005: Lecture 29: Trick-or-Treat

Trick-or-Treat

Trickers?

“Trick or Treat?”

TrickersBureau

R, Challenge

Valid!

Challenge

R = H (secret, Challenge)

Page 29: David Evans cs.virginia/evans

29CS150 Fall 2005: Lecture 29: Trick-or-Treat

Problem Set 7

http://www.HooRides.net

Page 30: David Evans cs.virginia/evans

30CS150 Fall 2005: Lecture 29: Trick-or-Treat

Charge

• Next class:– Who invented the Internet?– How to make a dynamic web application– Password Authentication (similar to

Trick-or-Treat)

• Before Wednesday:– Read through PS7 handout