What is the business quality of CDN & DNS? How to recoginize the traps when developing CDN & DNS system? How to evalute the metrics of business scenarios of CDN & DNS? This slides provide the best practices of developing reagarding CDN & DNS by SpeedyCloud. For more information, please refer to www.speedycloud.cn. You can also mail to : social@speedycloud.cn
6. Authoritative DNS Communication
Typical Messages
Mainly UDP
Single package request response
Small package
No-repeat five-tuple
Business aspect
Delay-sensitive
Distribution deployment
7. System Consuming
Network I/O Intensive
Small package, high frequency
One-time network I/O
CPU Intensive
Small package, high frequency
One-time network I/O
Domain mainly for string query and processing
Extra CDN strategy computing
8. Domain Resolution
Terminal interaction with local DNS
Local DNS interaction with CDN DNS
Local DNS interaction with DNS cluster
9. Terminal interaction with local DNS
Most terminal uses local DNS
Local terminal users
Local DNS terminal users
10. Local DNS interaction with CDN DNS
The user scale of local DNS varies significantly.
CDN DNS perspective
Local DNS cache dilutes hotspots
Traffic scheduling perspective
Each DNS visits cover varying sizes of users
CDN DNS
LDNS用户群
11. Local DNS interaction with DNS cluster
Local DNS Picking:Resolving Delay
Sensitive
Choose near NS for high probability
(short RTT)
Choose far NS for low probability (long
RTT)
Traffic scheduling perspective
Each NS has unequal visits
12. Local DNS
Example: How to choose the best NS
0
5
10
15
20
25
30
35
40
45
50
DNSDevices
Delayms
DNS Resolution Sequences
13. Local DNS
Example: Punishiment under high delay
502502
0
50
100
150
200
500 510 520 530 540 550 560 570 580 590 600 610 620 630 640 650 660 670 680 690 700
DNSDevices
Delayms
DNS Resolution Sequences
14. Performance Requirement
High quality DNS system’s performance
Performance index evaluation
Performance test
Network I/O selection
New DNS data storage
15. High quality DNS system’s performance
Resemble ICMP echo services (ping)
17. Hot-spot dilution’s impact on performances
Reason of hot-spot dilution
Upstream Local DNS is cache-like services, which won’t be visited in before
expiration
Hot-spot dilution effects
Online performance much lower than test performance
High cache missing of software and hardware
In Cloud, Higher cache missing of software and hardware
Beware
Extra resources need to be spared during evaluation
On storage and algorithm selection, extra resources need to be spared for
random access performance stability
Replay or clone online traffic for DNS test.
19. Traps in performace evaluation
What is the parallel performance of CDN DNS?
Authoritative DNS’s purpose is to finish one-time response ASAP
For CPU intensive business, better lower the parallel operation to avoid getting out of
control
QPS is the principal index on evaluating CDN DNS’s performance
20. How about using queryperf/DNSPerf to evaluate online CDN DNS performance?
Hard to cover the Local DNS variation of CDN DNS
Fixed five-tuple makes it hard to show the lower level consuming
Queryperf/DNSperf matches the testing device’s response rhythm to perform fixed
intensity stress test.
Visit frequency of Internet usually follows Poisson distribution with fluctuation
Don’t forget human-caused visit frequency fluctuation
Regular probing, regular web crawler
22. New DNS data storage
Open LDAP LMDB
Lightning Memory-Mapped Database
PowerDNS + LMDB
400kqps
Knot DNS
700kqps
23. Load Balancer Selection
Switch/Router + Anycast in the Node
First choice if condition allows
Hardware Load Balancer
Software Load Balancer
24. Intelligent DNS and CDN Traffic Scheduling
Example analysis
Factors that impact DNS scheduling
How to assess DNS scheduling result
Scheduling alogrithm can be used
26. Factors that impack intelligent DNS scheduling
Intelligent DNS doesn’t interact directly with terminal
Some terminals change its Local DNS
Local DNS Cache has impact on scheduling effection and expiration
Local DNS covers varied sized user groups
Local DNS optimizing action impacts data equity
27. Accuracy and precision of DNS Scheduling
0%
10%
20%
30%
40%
50%
60%
70%
High accuracy, low precision
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
80.00%
90.00%
Low accuracy, high precision
Actual Result Scheduling Target
28. Impacts of accuracy and precision of intelligent DNS
Precision
Impact dynamic adjustment of the scheduling system
Impact device bandwidth usage
Accuracy
Impact prediction and planning of the scheduling system
29. DNS Scheduling basis
DNS statistics data
Better not use directly
Intrinsic properties
Local DNS IP location property
Local DNS IP netowrk property
Stateless properties
Hash characteristic
Random
30. Common Scheduling Categories
Default equally divide by traffic
By propotion
IP categories
Static location categories
Dynamic network link categories
…
31. Characteristics of Common Scheduling Categories
Category Accuracy Precision
By location Really bad Good
Default equally divide Very good Very good
Random Accurate Not stable
By Local DNS IPs Bad Good
32. Combine intelligent DNS with other scheduling ways
Intelligent DNS for coarse-grained, other ways for finer grainuality
Http 302
Cluster
Limit connections and traffics on devices
Mixed uses in node for better productivity according to their own cases
High quality and small traffic
High precision intelligent DNS scheduling
Low demand and huge traffic
High precision intelligent DNS scheduling and cross-node scheduling
Limit connections and traffics on auxiliary devices
33. Security
Software pitfalls
Heterogeneous software backup for each other
Open source DNS based
Function tailoring
CDN is the most fundamental and stable part of the DNS software
Useless code branches should be cut out
DDos traffic attacking
High performance unusual DNS software can be designed with the bandwidth advantages of
CDN
Introduce 3rd part DNS security products
Beware of the impact of security product introducing on traffic scheduling
Improve the software performance to help the 3rd party security product and lower risks
35. Heterogeneous DNS
Combine two DNS software into one group
13 global roots of DNS are mixed in ues for BIND and NSD
Why heterogeneous DNS?
Using the inconsistency of different DNS’s defects to ensure high availability
Being one of the critical system, defects in DNS can be catastrophic
Local DNS cluster retrying can be contagious and paralyze the whole sets of DNS
Cost of development and maintenance
DNS is simple and the development cycle is short
DNS is the relatively stable network protocol, changes in CDN related part even smaller
CDN related function
Can be done when stable
Open source DNS might be short on customized CDN features, but they are good fail-
safe system.
36. DNS Clone Backup
Facing platform level and outside
malfunctions
Platform level domain failure
Domain registration failure
Upper and top level domain failure
Security threat
Spread the risk
Don’t put all the eggs in one basket
Evacuation
Transfer customer to backup platform
when under failure or threats
user1.cnd1.cn
user2.cnd1.cn
user3.cnd1.cn
user4.cnd1.cn
user5.cnd1.cn
user1.cnd2.comu
ser2.cnd2.com
user3.cnd2.com
user4.cnd2.com
user5.cnd2.com
user1
user2
user3
user4
user5
CDNPlatform
1
CDNPlatform
2
Customer
37. Thanks!
Beijing SpeedyCloud Technology Co., Ltd.,
For More Information, please visit: www.speedycloud.cn
You can also send email to: social@speedycloud.cn