SlideShare a Scribd company logo
Content Delivery Networks -Content Delivery Networks -
Principles & PracticePrinciples & Practice
NortheasternNortheastern
&&
Akamai TechnologiesAkamai Technologies
Ravi Sundaram
OutlineOutline
• CDNs - Review of mechanicsCDNs - Review of mechanics
• FirstPoint - Traffic Management forFirstPoint - Traffic Management for
mirrored websitesmirrored websites
Internet
Content
Providers
End
Users
The Web:The Web:
Simple on the Outside…Simple on the Outside…
NAP
NAP
UUNetUUNet
QwestQwest
AOLAOL
Network
Providers
Content
Providers
End
Users
Peering
Points
……But Problematic on the InsideBut Problematic on the Inside
Why does my click not workWhy does my click not work
• Latency - Browser takes a long timeLatency - Browser takes a long time
to load the pageto load the page
• Packet Loss - Browser hangs, userPacket Loss - Browser hangs, user
needs to hit refreshneeds to hit refresh
• Jitter - Streams are jerkyJitter - Streams are jerky
• Server load - Browser connects butServer load - Browser connects but
does not fully load the pagedoes not fully load the page
• Broken/missing contentBroken/missing content
The Akamai SolutionThe Akamai Solution
Servers
at Network Edge
Content
Providers
End
Users
NAP
NAP
3
Content Provider’s
Web Server
DNS
WWW.XYZ.COM1
Downloading www.xyz.comDownloading www.xyz.com
- before CDNs- before CDNs
• User enters www.xyz.comUser enters www.xyz.com
• Browser requests IPBrowser requests IP
address for www.xyz.comaddress for www.xyz.com
• Browser requestsBrowser requests
embedded objectsembedded objects
• Content provider’s webContent provider’s web
server returns HTMLserver returns HTML
10.10.123.82
• Browser requests HTMLBrowser requests HTML
• DNS returns IP addressDNS returns IP address
4
7
6
• Browser obtains IP addresses forBrowser obtains IP addresses for
hostnames listed in URLs of objectshostnames listed in URLs of objects
embedded on pageembedded on page
• Content provider’s web serverContent provider’s web server
returns embedded objectsreturns embedded objects
10.10.123.8
5
DNS ResolutionDNS Resolution
Browser’s
Cache
1
OS
2
Local NameLocal Name
ServerServer
3
.com .net
Root
(InterNIC)
4
xyz.com
DNS Servers
6
5
7
8
9
10
TTL:
1 Day
TTL:
30 Minutes
Origin - Content
Provider’s Web
Server
Delivery of Whole SiteDelivery of Whole Site
66
6. Browser obtains content6. Browser obtains content
from optimal Akamai serverfrom optimal Akamai server
WWW.XYZ.COMWWW.XYZ.COM
DNS
1. Browser requests DNS for IP1. Browser requests DNS for IP
of www.xyz.comof www.xyz.com
11
33
3. DNS returns IP of optimal3. DNS returns IP of optimal
Akamai serverAkamai server
5. Akamai server assembles5. Akamai server assembles
page, contacting origin aspage, contacting origin as
neededneeded
55
4. Browser requests Akamai4. Browser requests Akamai
server for contentserver for content
44
2. DNS follows CNAME redirect2. DNS follows CNAME redirect
to www.xyz.edgesuite.netto www.xyz.edgesuite.net
22
Delivery of Whole Site - DNSDelivery of Whole Site - DNS
RedirectRedirect
DNS CNAME RECORDDNS CNAME RECORD
www.xyz.com CNAME www.xyz.edgesuite.net 2Dwww.xyz.com CNAME www.xyz.edgesuite.net 2D
Delivery of Whole Site - PageDelivery of Whole Site - Page
AssemblyAssembly
Site owners create
container pages that
can be populated
with varying content
Container Page
[TTL=5d]
[XYZ news, content,
promotions, etc.
TTL=5d]
[Breaking headlines
TTL=2h]
[TTL=15m]
[TTL=8h]
Benefits of CDNsBenefits of CDNs
• Improved end-user experienceImproved end-user experience
- reduce latencyreduce latency
- reduce lossreduce loss
- reduce jitterreduce jitter
• Reduced network congestionReduced network congestion
• Increased scalabilityIncreased scalability
• Improved fault-toleranceImproved fault-tolerance
• Reduced vulnerabilityReduced vulnerability
• Reduced costsReduced costs
OutlineOutline
• CDNs - Review of mechanicsCDNs - Review of mechanics
• FirstPoint - Traffic Management forFirstPoint - Traffic Management for
mirrored websitesmirrored websites
What is FirstPointWhat is FirstPoint
• Traffic management system forTraffic management system for
mirrored websitesmirrored websites
• Directs browser to the optimal mirrorDirects browser to the optimal mirror
• DNS basedDNS based
• Application level anycastApplication level anycast
Why FirstPointWhy FirstPoint
• Content providers have mirroredContent providers have mirrored
websiteswebsites
• Content providers only want toContent providers only want to
offload embedded contentoffload embedded content
- ControlControl
- SecuritySecurity
- PerformancePerformance
Mapping ProblemMapping Problem
How to improve user experience?
What is the Mapping ProblemWhat is the Mapping Problem
• Problem of directing requests toProblem of directing requests to
servers so as to optimize end-userservers so as to optimize end-user
experienceexperience
- reduce latencyreduce latency
- reduce lossreduce loss
- reduce jitterreduce jitter
• Assumption - servers are fineAssumption - servers are fine
• Applicable to 2 mirrors or 1500Applicable to 2 mirrors or 1500
Akamai locationsAkamai locations
AttemptAttempt
• Measure which is closerMeasure which is closer
- Closeness changes over timeCloseness changes over time
• Measure frequentlyMeasure frequently
- Bothers peopleBothers people
- Too many to doToo many to do
~500,000 unique nameservers on any given day
10 sec per measurement cycle
IdeaIdea
• TopologyTopology
- relatively staticrelatively static
- changes in BGP timechanges in BGP time
- order of hours if not daysorder of hours if not days
• CongestionCongestion
- dynamicdynamic
- changes in round-trip timechanges in round-trip time
- order of millisecondsorder of milliseconds
Topology Discovery - Proxy pointsTopology Discovery - Proxy points
Cluster
X
Y
AliasingAliasing
• Router fabrics using HSRP (hotRouter fabrics using HSRP (hot
stand-by routing protocol)stand-by routing protocol)
- correlate over timecorrelate over time
• Routers with multiple interfacesRouters with multiple interfaces
- source address of UDP/ICMP packetssource address of UDP/ICMP packets
Set coverSet cover
• Let sets represent proxy pointsLet sets represent proxy points
• Let elements represent nameserversLet elements represent nameservers
• Find minimum collection of proxyFind minimum collection of proxy
points covering nameserverspoints covering nameservers
X covers 1, 2, 3 and 4X covers 1, 2, 3 and 4
X
1 2 3 4
Topology DiscoveryTopology Discovery
• At each mirror maintain list of partial paths toAt each mirror maintain list of partial paths to
nameserversnameservers
• At each epoch extend paths by 1, inAt each epoch extend paths by 1, in
randomized fashion, and exchange with otherrandomized fashion, and exchange with other
mirrormirror
• If the two (partial) paths to a namerver haveIf the two (partial) paths to a namerver have
intersected then declare that nameserverintersected then declare that nameserver
done.done.
• If path has reached forbidden IP then waitIf path has reached forbidden IP then wait
• Use pair of proxies in case of failureUse pair of proxies in case of failure
Topology Discovery - Proxy pointsTopology Discovery - Proxy points
Data exchange
Topology DiscoveryTopology Discovery
500,000 nameservers500,000 nameservers
reduced toreduced to
90,000 proxy points (clusters)90,000 proxy points (clusters)
Histogram of cluster sizesHistogram of cluster sizes
HISTOGRAM
0
5000
10000
15000
20000
25000
30000
35000
1 2 3 4 5 6-99 100-999 1000-
5999
6000-
Cluster Size
Number
Congestion MeasurementCongestion Measurement
Problem - Still too many measurements to do.Problem - Still too many measurements to do.
90,000 measurements every 10s with 32B90,000 measurements every 10s with 32B
packets requires a few Mbps per mirror.packets requires a few Mbps per mirror.
Solution - Importance based samplingSolution - Importance based sampling
CDF of End-user LoadCDF of End-user Load
CDF
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
Number of Clusters
Load
Load EstimationLoad Estimation
500,000 nameservers500,000 nameservers
reduced toreduced to
90,000 clusters90,000 clusters
7,000 account for 95% end-user load!7,000 account for 95% end-user load!
Mapping Problem - Solved!Mapping Problem - Solved!
Maps built every 10s
FirstPointFirstPoint
• Customers - how to tell?Customers - how to tell?
- look for CNAME to akadns.netlook for CNAME to akadns.net
• Customers - who?Customers - who?
- High traffic content providersHigh traffic content providers
- Yahoo!, Microsoft, TicketMaster etcYahoo!, Microsoft, TicketMaster etc
• Price - don’t ask :)Price - don’t ask :)
• Competitors - whoCompetitors - who
- one-of-a-kind serviceone-of-a-kind service
- boxes: Cisco, F5, Foundryboxes: Cisco, F5, Foundry
FirstPoint - other aspectsFirstPoint - other aspects
• Load-balancingLoad-balancing
- estimate-basedestimate-based
- feedback-based : https, snmpfeedback-based : https, snmp
- cost-based: 95/5cost-based: 95/5
• Fast cutout in case of failoverFast cutout in case of failover
• Highly fault-tolerantHighly fault-tolerant
- hardware duplication, leader electionhardware duplication, leader election
- overlay routing, BGP-based anycastoverlay routing, BGP-based anycast
• Integration with other servicesIntegration with other services
- DOS/Load failoverDOS/Load failover
MicrosoftMicrosoft
Related WorkRelated Work
• TopologyTopology
- Spring, Mahajan, Wetherall, Sigcomm ‘02Spring, Mahajan, Wetherall, Sigcomm ‘02
- Govindan, Tangmunarunkit, Infocom ‘00Govindan, Tangmunarunkit, Infocom ‘00
• ClusteringClustering
- Krishnamurthy, Wang, Sigcomm ‘00Krishnamurthy, Wang, Sigcomm ‘00
- Bezstavros, Mehrotra, WWC ‘01Bezstavros, Mehrotra, WWC ‘01
- Barford, Gast, Globecom 02Barford, Gast, Globecom 02
• ClusteringClustering
- Shaikh, Tewari, Agrawal, Infocom ‘00Shaikh, Tewari, Agrawal, Infocom ‘00
- Krishnamurthy, Wills, Zhang, Sigcomm IMW ‘01Krishnamurthy, Wills, Zhang, Sigcomm IMW ‘01
Patents (pending)Patents (pending)
• Global load balancing across mirrored data centers.Global load balancing across mirrored data centers.
Utility # 20020129134Utility # 20020129134
• Method for predicting file download time fromMethod for predicting file download time from
mirrored data centers in a global computer network.mirrored data centers in a global computer network.
Utility # 20020124080Utility # 20020124080
• Method for generating a network map. Utility #Method for generating a network map. Utility #
2002007823720020078237
• Method and system for protecting websites fromMethod and system for protecting websites from
public Internet threats. Filed 15 July 2002public Internet threats. Filed 15 July 2002
PrinciplesPrinciples
• Open design principleOpen design principle
- You need all the help you can getYou need all the help you can get
- Do not eliminate the obvious without trying firstDo not eliminate the obvious without trying first
- Give serendipity a chanceGive serendipity a chance
• Scaling principleScaling principle
- factor 10 difference means different domainfactor 10 difference means different domain
- different domains need different techniquesdifferent domains need different techniques
• The common case principleThe common case principle
- Zipf law is your friendZipf law is your friend
- things clusterthings cluster
- optimize the common caseoptimize the common case
ConclusionConclusion
• The Internet will never be fast enough in allThe Internet will never be fast enough in all
placesplaces
• People will want access to the Internet allPeople will want access to the Internet all
the time and everywherethe time and everywhere

More Related Content

Cdn cs6740

  • 1. Content Delivery Networks -Content Delivery Networks - Principles & PracticePrinciples & Practice NortheasternNortheastern && Akamai TechnologiesAkamai Technologies Ravi Sundaram
  • 2. OutlineOutline • CDNs - Review of mechanicsCDNs - Review of mechanics • FirstPoint - Traffic Management forFirstPoint - Traffic Management for mirrored websitesmirrored websites
  • 3. Internet Content Providers End Users The Web:The Web: Simple on the Outside…Simple on the Outside…
  • 5. Why does my click not workWhy does my click not work • Latency - Browser takes a long timeLatency - Browser takes a long time to load the pageto load the page • Packet Loss - Browser hangs, userPacket Loss - Browser hangs, user needs to hit refreshneeds to hit refresh • Jitter - Streams are jerkyJitter - Streams are jerky • Server load - Browser connects butServer load - Browser connects but does not fully load the pagedoes not fully load the page • Broken/missing contentBroken/missing content
  • 6. The Akamai SolutionThe Akamai Solution Servers at Network Edge Content Providers End Users NAP NAP
  • 7. 3 Content Provider’s Web Server DNS WWW.XYZ.COM1 Downloading www.xyz.comDownloading www.xyz.com - before CDNs- before CDNs • User enters www.xyz.comUser enters www.xyz.com • Browser requests IPBrowser requests IP address for www.xyz.comaddress for www.xyz.com • Browser requestsBrowser requests embedded objectsembedded objects • Content provider’s webContent provider’s web server returns HTMLserver returns HTML 10.10.123.82 • Browser requests HTMLBrowser requests HTML • DNS returns IP addressDNS returns IP address 4 7 6 • Browser obtains IP addresses forBrowser obtains IP addresses for hostnames listed in URLs of objectshostnames listed in URLs of objects embedded on pageembedded on page • Content provider’s web serverContent provider’s web server returns embedded objectsreturns embedded objects 10.10.123.8 5
  • 8. DNS ResolutionDNS Resolution Browser’s Cache 1 OS 2 Local NameLocal Name ServerServer 3 .com .net Root (InterNIC) 4 xyz.com DNS Servers 6 5 7 8 9 10 TTL: 1 Day TTL: 30 Minutes
  • 9. Origin - Content Provider’s Web Server Delivery of Whole SiteDelivery of Whole Site 66 6. Browser obtains content6. Browser obtains content from optimal Akamai serverfrom optimal Akamai server WWW.XYZ.COMWWW.XYZ.COM DNS 1. Browser requests DNS for IP1. Browser requests DNS for IP of www.xyz.comof www.xyz.com 11 33 3. DNS returns IP of optimal3. DNS returns IP of optimal Akamai serverAkamai server 5. Akamai server assembles5. Akamai server assembles page, contacting origin aspage, contacting origin as neededneeded 55 4. Browser requests Akamai4. Browser requests Akamai server for contentserver for content 44 2. DNS follows CNAME redirect2. DNS follows CNAME redirect to www.xyz.edgesuite.netto www.xyz.edgesuite.net 22
  • 10. Delivery of Whole Site - DNSDelivery of Whole Site - DNS RedirectRedirect DNS CNAME RECORDDNS CNAME RECORD www.xyz.com CNAME www.xyz.edgesuite.net 2Dwww.xyz.com CNAME www.xyz.edgesuite.net 2D
  • 11. Delivery of Whole Site - PageDelivery of Whole Site - Page AssemblyAssembly Site owners create container pages that can be populated with varying content Container Page [TTL=5d] [XYZ news, content, promotions, etc. TTL=5d] [Breaking headlines TTL=2h] [TTL=15m] [TTL=8h]
  • 12. Benefits of CDNsBenefits of CDNs • Improved end-user experienceImproved end-user experience - reduce latencyreduce latency - reduce lossreduce loss - reduce jitterreduce jitter • Reduced network congestionReduced network congestion • Increased scalabilityIncreased scalability • Improved fault-toleranceImproved fault-tolerance • Reduced vulnerabilityReduced vulnerability • Reduced costsReduced costs
  • 13. OutlineOutline • CDNs - Review of mechanicsCDNs - Review of mechanics • FirstPoint - Traffic Management forFirstPoint - Traffic Management for mirrored websitesmirrored websites
  • 14. What is FirstPointWhat is FirstPoint • Traffic management system forTraffic management system for mirrored websitesmirrored websites • Directs browser to the optimal mirrorDirects browser to the optimal mirror • DNS basedDNS based • Application level anycastApplication level anycast
  • 15. Why FirstPointWhy FirstPoint • Content providers have mirroredContent providers have mirrored websiteswebsites • Content providers only want toContent providers only want to offload embedded contentoffload embedded content - ControlControl - SecuritySecurity - PerformancePerformance
  • 16. Mapping ProblemMapping Problem How to improve user experience?
  • 17. What is the Mapping ProblemWhat is the Mapping Problem • Problem of directing requests toProblem of directing requests to servers so as to optimize end-userservers so as to optimize end-user experienceexperience - reduce latencyreduce latency - reduce lossreduce loss - reduce jitterreduce jitter • Assumption - servers are fineAssumption - servers are fine • Applicable to 2 mirrors or 1500Applicable to 2 mirrors or 1500 Akamai locationsAkamai locations
  • 18. AttemptAttempt • Measure which is closerMeasure which is closer - Closeness changes over timeCloseness changes over time • Measure frequentlyMeasure frequently - Bothers peopleBothers people - Too many to doToo many to do ~500,000 unique nameservers on any given day 10 sec per measurement cycle
  • 19. IdeaIdea • TopologyTopology - relatively staticrelatively static - changes in BGP timechanges in BGP time - order of hours if not daysorder of hours if not days • CongestionCongestion - dynamicdynamic - changes in round-trip timechanges in round-trip time - order of millisecondsorder of milliseconds
  • 20. Topology Discovery - Proxy pointsTopology Discovery - Proxy points Cluster X Y
  • 21. AliasingAliasing • Router fabrics using HSRP (hotRouter fabrics using HSRP (hot stand-by routing protocol)stand-by routing protocol) - correlate over timecorrelate over time • Routers with multiple interfacesRouters with multiple interfaces - source address of UDP/ICMP packetssource address of UDP/ICMP packets
  • 22. Set coverSet cover • Let sets represent proxy pointsLet sets represent proxy points • Let elements represent nameserversLet elements represent nameservers • Find minimum collection of proxyFind minimum collection of proxy points covering nameserverspoints covering nameservers X covers 1, 2, 3 and 4X covers 1, 2, 3 and 4 X 1 2 3 4
  • 23. Topology DiscoveryTopology Discovery • At each mirror maintain list of partial paths toAt each mirror maintain list of partial paths to nameserversnameservers • At each epoch extend paths by 1, inAt each epoch extend paths by 1, in randomized fashion, and exchange with otherrandomized fashion, and exchange with other mirrormirror • If the two (partial) paths to a namerver haveIf the two (partial) paths to a namerver have intersected then declare that nameserverintersected then declare that nameserver done.done. • If path has reached forbidden IP then waitIf path has reached forbidden IP then wait • Use pair of proxies in case of failureUse pair of proxies in case of failure
  • 24. Topology Discovery - Proxy pointsTopology Discovery - Proxy points Data exchange
  • 25. Topology DiscoveryTopology Discovery 500,000 nameservers500,000 nameservers reduced toreduced to 90,000 proxy points (clusters)90,000 proxy points (clusters)
  • 26. Histogram of cluster sizesHistogram of cluster sizes HISTOGRAM 0 5000 10000 15000 20000 25000 30000 35000 1 2 3 4 5 6-99 100-999 1000- 5999 6000- Cluster Size Number
  • 27. Congestion MeasurementCongestion Measurement Problem - Still too many measurements to do.Problem - Still too many measurements to do. 90,000 measurements every 10s with 32B90,000 measurements every 10s with 32B packets requires a few Mbps per mirror.packets requires a few Mbps per mirror. Solution - Importance based samplingSolution - Importance based sampling
  • 28. CDF of End-user LoadCDF of End-user Load CDF 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 Number of Clusters Load
  • 29. Load EstimationLoad Estimation 500,000 nameservers500,000 nameservers reduced toreduced to 90,000 clusters90,000 clusters 7,000 account for 95% end-user load!7,000 account for 95% end-user load!
  • 30. Mapping Problem - Solved!Mapping Problem - Solved! Maps built every 10s
  • 31. FirstPointFirstPoint • Customers - how to tell?Customers - how to tell? - look for CNAME to akadns.netlook for CNAME to akadns.net • Customers - who?Customers - who? - High traffic content providersHigh traffic content providers - Yahoo!, Microsoft, TicketMaster etcYahoo!, Microsoft, TicketMaster etc • Price - don’t ask :)Price - don’t ask :) • Competitors - whoCompetitors - who - one-of-a-kind serviceone-of-a-kind service - boxes: Cisco, F5, Foundryboxes: Cisco, F5, Foundry
  • 32. FirstPoint - other aspectsFirstPoint - other aspects • Load-balancingLoad-balancing - estimate-basedestimate-based - feedback-based : https, snmpfeedback-based : https, snmp - cost-based: 95/5cost-based: 95/5 • Fast cutout in case of failoverFast cutout in case of failover • Highly fault-tolerantHighly fault-tolerant - hardware duplication, leader electionhardware duplication, leader election - overlay routing, BGP-based anycastoverlay routing, BGP-based anycast • Integration with other servicesIntegration with other services - DOS/Load failoverDOS/Load failover
  • 34. Related WorkRelated Work • TopologyTopology - Spring, Mahajan, Wetherall, Sigcomm ‘02Spring, Mahajan, Wetherall, Sigcomm ‘02 - Govindan, Tangmunarunkit, Infocom ‘00Govindan, Tangmunarunkit, Infocom ‘00 • ClusteringClustering - Krishnamurthy, Wang, Sigcomm ‘00Krishnamurthy, Wang, Sigcomm ‘00 - Bezstavros, Mehrotra, WWC ‘01Bezstavros, Mehrotra, WWC ‘01 - Barford, Gast, Globecom 02Barford, Gast, Globecom 02 • ClusteringClustering - Shaikh, Tewari, Agrawal, Infocom ‘00Shaikh, Tewari, Agrawal, Infocom ‘00 - Krishnamurthy, Wills, Zhang, Sigcomm IMW ‘01Krishnamurthy, Wills, Zhang, Sigcomm IMW ‘01
  • 35. Patents (pending)Patents (pending) • Global load balancing across mirrored data centers.Global load balancing across mirrored data centers. Utility # 20020129134Utility # 20020129134 • Method for predicting file download time fromMethod for predicting file download time from mirrored data centers in a global computer network.mirrored data centers in a global computer network. Utility # 20020124080Utility # 20020124080 • Method for generating a network map. Utility #Method for generating a network map. Utility # 2002007823720020078237 • Method and system for protecting websites fromMethod and system for protecting websites from public Internet threats. Filed 15 July 2002public Internet threats. Filed 15 July 2002
  • 36. PrinciplesPrinciples • Open design principleOpen design principle - You need all the help you can getYou need all the help you can get - Do not eliminate the obvious without trying firstDo not eliminate the obvious without trying first - Give serendipity a chanceGive serendipity a chance • Scaling principleScaling principle - factor 10 difference means different domainfactor 10 difference means different domain - different domains need different techniquesdifferent domains need different techniques • The common case principleThe common case principle - Zipf law is your friendZipf law is your friend - things clusterthings cluster - optimize the common caseoptimize the common case
  • 37. ConclusionConclusion • The Internet will never be fast enough in allThe Internet will never be fast enough in all placesplaces • People will want access to the Internet allPeople will want access to the Internet all the time and everywherethe time and everywhere

Editor's Notes

  1. Mention that in a nut-shell this is the problem you tried to solve and here you will talk about the ideas that go into the solution
  2. Talk about how DNS cloud works in a bit—like 411 service. Mention that the bulk of the time is spent in the web transfer and DNS is typically 20 to 50ms whereas the web transfer can take 2 to 5s
  3. Trying to get IP address for www.xyz.com. First go to internic to get xyz.com address. Explain caching with TTLs. Many people share local nameserver.
  4. Same as before but most content is local! Transparent to end-user.
  5. Very simple process.
  6. Network congestion is reduced because traffic is moved to the edge Scalability is improved because with more servers more requests can be served Fault-tolerance improved because no single point of failure - distributed system Vulnerability reduced because denial of service attacks are diffused Reduced costs because of economies of scale, multiplexing and buying in bulk
  7. Say high end traffic management system for mirrored websites
  8. Sufficient to have mirrored websites, do not need to use content delivery Under security mention SSL certificates
  9. If nobody asks why not use DNS queries then bring it up by myself - point out that 15 - 20% of nameservers are closed to the world, that their state tends to be variable, different size packets cannot be used and sysadmins tend to be sensitive about repeated queries. Talk about as a naive attempt to do the impossible. Experts said it was not possible but say that we learnt important things. Never eliminate the obvious without trying it. Also known as the open design principle - need all the help we can get. Scalability is the key problem. Say that 10s was set as a challenge
  10. Mention that the naive approach taught us a lot. To some extent we were theoreticians and by doing we learnt.
  11. State that fewer than 1% or 5,000 require proxy pairs.
  12. Talk about war story of how even though our boxes were in same data center as Y! nevertheless we saw different connectivity. Talk about dos failover
  13. Mention Jerry Saltzer's design principles
  14. Say patents can be gotten from www.uspto.gov
  15. Say that you are stepping back Mention Jerry Saltzer's design principles
  16. Talk about e2e principle and forethought on original designers. Talk about ubiquity access where people are and info about where they are not - sensor networks, mobility.