hl++2013 leskin
DESCRIPTION
DNS tests on Highload2013. What's this all about? DNS server stress-tests and all the things you may encounter!TRANSCRIPT
![Page 1: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/1.jpg)
Тестирование производительности
DNS-серверовАндрей ЛескинQratorLabs/HLL
![Page 2: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/2.jpg)
Что такое DNS?
![Page 3: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/3.jpg)
Что такое DNS?
• Коротко:highloadlab.com 178.248.233.7
![Page 4: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/4.jpg)
Что такое DNS?
• Коротко:highloadlab.com 178.248.233.7
• Длинно:
(списокнеполон)
![Page 5: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/5.jpg)
DNS-серверы
• minidns dns server https://code.google.com/p/minidns/source/browse/minidns“wc -l minidns”107 (!!!)
![Page 6: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/6.jpg)
DNS-серверы
• minidns dns server https://code.google.com/p/minidns/source/browse/minidns“wc -l minidns”107 (!!!)
![Page 7: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/7.jpg)
DNS-серверы
• minidns dns server https://code.google.com/p/minidns/source/browse/minidns“wc -l minidns”107 (!!!)
• Authoritative.There can be only one!
• Caching. The cache is out there...
![Page 8: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/8.jpg)
А что мы хотим?
• Скорость• Устойчивость• Производительность
![Page 9: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/9.jpg)
А что мы хотим?
• Скорость• Устойчивость• Производительность
QUERIES
SUPERAuthoritative
Server
QUERIES
SUPERCachingServer
SLOWAuthoritative
Server
![Page 10: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/10.jpg)
А что мы хотим?
• Скорость• Устойчивость• Производительность
QUERIES
SUPERAuthoritative
Server
QUERIES
SUPERCachingServer
SLOWAuthoritative
Server
• Доменов: МАЛО• Запросов: МНОГО
![Page 11: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/11.jpg)
DNS test. А что уже было сломано до нас?
![Page 12: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/12.jpg)
DNS test. А что уже было сломано до нас?
• dnsperf & resperf?
![Page 13: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/13.jpg)
DNS test. А что уже было сломано до нас?
• dnsperf & resperf? NO• tcpreplay?
![Page 14: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/14.jpg)
DNS test. А что уже было сломано до нас?
• dnsperf & resperf? NO• tcpreplay? NO
• Ideal/real world data? NOOO!!!
![Page 15: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/15.jpg)
DNS test. How?
![Page 16: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/16.jpg)
DNS test. How?
![Page 17: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/17.jpg)
DNS test. Measurements
• QPS, RPS = PPS• Traffic: Mbit/s• CPU load avg• Поведение при повышении нагрузки• А еще есть крутилки и включалки!
![Page 18: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/18.jpg)
DNS test. А на что будем смотреть?• Knot (1.2.0 & 1.3.0-RC5)• Yadifa (1.0.2)• NSD3 (3.2.15)• NSD4 (4.0.0b4)• PowerDNS (3.3)• TinyDNS (1.05)• Unbound (1.4.16)• Pdnsd (1.2.8)
• Server:Dual Xeon E5-267032Gb RAM DDR3 1333MhzIntel X520-DA2 10Gbit• Generator:
Single Xeon E5-267032Gb RAM DDR3 1333MhzIntel X520-DA2 10Gbit• Gentoo Linux 3.7.9
![Page 19: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/19.jpg)
DNS test. Setup
• Максимально ванильно!• Authoritative:
300 сформированных зон• Caching:
Прогреваем кэш на такой же объемданных
![Page 20: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/20.jpg)
Results. Выбираем победителя крутилок.
Knot-1.2.0, queries=1
![Page 21: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/21.jpg)
Results. Выбираем победителя крутилок.
Knot-1.2.0, queries=1
Вот он!
![Page 22: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/22.jpg)
Results. Queries in flow: 01
KnotNSD
UnboundYadifa
PowerDNSPdnsd
TinyDNS
![Page 23: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/23.jpg)
Results. Queries in flow: 01
KnotNSD
UnboundYadifa
PowerDNSPdnsd
TinyDNS
![Page 24: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/24.jpg)
Results. Queries in flow: 02
KnotNSD
UnboundPowerDNS
PdnsdYadifa
TinyDNS
![Page 25: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/25.jpg)
Results. Queries in flow: 02
KnotNSD
UnboundPowerDNS
PdnsdYadifa
TinyDNS
![Page 26: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/26.jpg)
Results. Queries in flow: 02
KnotNSD
UnboundPowerDNS
PdnsdYadifa
TinyDNS
![Page 27: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/27.jpg)
Results. Queries in flow: 20
KnotNSD
UnboundPowerDNS
PdnsdYadifa
TinyDNS
![Page 28: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/28.jpg)
Подводные камни.
IT HAPPENS.BE PREPARED
![Page 29: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/29.jpg)
Подводные камни. Local.
• Knot-1.2.0Победитель может все... Или не все?
![Page 30: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/30.jpg)
Подводные камни. Local.
• Knot-1.2.0Победитель может все... Или не все?
• Yadifa-1.0.2Нужно больше золота!
![Page 31: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/31.jpg)
Подводные камни. Local.
• Knot-1.2.0Победитель может все... Или не все?
• Yadifa-1.0.2Нужно больше золота!
• PdnsdПриз за оригинальность.
![Page 32: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/32.jpg)
Подводные камни. Global.
Камень• UDP
Мне кажется, пакет пришел оттуда... Но я не гарантирую это!
Контр-камень• BCP38
Когда случится счастье – нам не ведомо!
![Page 33: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/33.jpg)
Подводные камни. Global.
Камень• UDP
Мне кажется, пакет пришел оттуда... Но я не гарантирую это!
• DNS cache poisoning (Kaminsky)Адрес поменялся! Иди сюда!
Контр-камень• BCP38
Когда случится счастье – нам не ведомо!
• DNSSec Это счастье есть, но мало кто пользуется
![Page 34: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/34.jpg)
Подводные камни. Global.
Камень• UDP
Мне кажется, пакет пришел оттуда... Но я не гарантирую это!
• DNS cache poisoning (Kaminsky)Адрес поменялся! Иди сюда!
• Стать DNS AmplifierЧтобы не быть жертвой - надо не быть жертвой
- dig isoc.org ANY (26 vs 2435)- открытая рекурсия
Контр-камень• BCP38
Когда случится счастье – нам не ведомо!
• DNSSec Это счастье есть, но мало кто пользуется
• Можно самостоятельно:- закрыть рекурсию извне- RRL (DROP, SLIP)- DROP пакетов с src_port 53
![Page 35: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/35.jpg)
Подводные камни. Сам не выжил.
![Page 36: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/36.jpg)
Подводные камни. Сам не выжил.
![Page 37: HL++2013 Leskin](https://reader037.vdocuments.net/reader037/viewer/2022103000/55658afcd8b42a2b6d8b4c39/html5/thumbnails/37.jpg)
Подводные камни. Сам не выжил.