David Evans cs.virginia/evans
description
Transcript of David Evans cs.virginia/evans
![Page 1: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/1.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/2.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/3.jpg)
3CS150 Fall 2005: Lecture 29: Trick-or-Treat
Who Invented the Internet?
![Page 4: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/4.jpg)
4CS150 Fall 2005: Lecture 29: Trick-or-Treat
Who Invented Networking?
![Page 5: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/5.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/6.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/7.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/8.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/9.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/10.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/11.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/12.jpg)
12CS150 Fall 2005: Lecture 29: Trick-or-Treat
How many transfer points between here and
California?
![Page 13: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/13.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/14.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/15.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/16.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/17.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/18.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/19.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/20.jpg)
20CS150 Fall 2005: Lecture 29: Trick-or-Treat
Okay, so who invented the
Internet?
![Page 21: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/21.jpg)
21CS150 Fall 2005: Lecture 29: Trick-or-Treat
“Trick or Treat” Protocols
![Page 22: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/22.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/23.jpg)
23CS150 Fall 2005: Lecture 29: Trick-or-Treat
Tricker’s License
TRICKER’S LICENSE
![Page 24: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/24.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/25.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/26.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/27.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/28.jpg)
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](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/29.jpg)
29CS150 Fall 2005: Lecture 29: Trick-or-Treat
Problem Set 7
http://www.HooRides.net
![Page 30: David Evans cs.virginia/evans](https://reader035.fdocuments.us/reader035/viewer/2022062423/56814411550346895db0b074/html5/thumbnails/30.jpg)
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