November 2019

S M T W T F S
      12
34 5 678 9
10111213141516
17181920212223
24252627282930

Style Credit

Expand Cut Tags

No cut tags
Tuesday, June 14th, 2011 10:31 am

https://ru-linux.livejournal.com/2728321.html

А вроде ж и не пятница ещё…

Оригинал этой записи. Комментировать можно тут или там.

Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме

Tuesday, June 14th, 2011 10:32 am (UTC)
По сравнению с современным протоколом UDP, протокол TCP
Бляяяя...
Tuesday, June 14th, 2011 10:33 am (UTC)
ты комменты почитай :)
Tuesday, June 14th, 2011 10:34 am (UTC)
Сейчас, сначала проржусь и дочитаю пост.
Tuesday, June 14th, 2011 10:39 am (UTC)
А вообще, это же известный псих какой-то — он и в ru_root не раз зажигал.
Tuesday, June 14th, 2011 10:40 am (UTC)
Почему сразу псих? Человек хорошее дело хочет сделать - защиту от DOS-атак! Так пусть делает, вдруг чего выйдет :)
Tuesday, June 14th, 2011 10:44 am (UTC)
+много
местный сумасшедший, отжигал серийно в разных IT-коммунитях. Его еще всерьез кто-то воспринимает?
Tuesday, June 14th, 2011 11:58 am (UTC)
Сами вы псих. Как по-вашему должен вести себя умственно полноценный российский программист, я могу представить. Главное -- уметь присосаться к бюджету крупной компании, а то и страны. Навешать на уши лапши, высосать из бюджета миллионы, не забыв про понятно какой орган менеджера по закупкам, а взамен предложить старый китайский хлам из комиссионки с бесплатным LAMP, иногда удобренным nginx, на котором рисованная школьниками страничка с дырявыми PHP-скриптами, написаннами студентом-первокурсником путём перетасовки кусков открытого кода столетней давности, найденного гуглом. А потом жаловаться на злобных хакеров, вероломно атакующих веб-сайт, на создание которого были от самого сердца оторваны последние миллионы.

кто как выходит из положения? скажем, звонит клиент, говорит, меня ДДоСят, посмотрите, плиз, внутрь и заблекхольте плиз необходимое, но ТОЛЬКО необходимое.

Когда звонит клиент - просто называешь ему сумму за которую готов ему помочь и он тут же решает, что справится своими средствами. А если он решил заплатить - за треть этой суммы нанимаешь специалиста, для решения этой проблемы.

Пока специалист ищет ответы где нибудь типа ru_root - изображаем активную деятельность, пока не кончится ДДОС. Как пойдет на спад - гордо говорим, что принятые нами меры весьма помогли. В сложных случаях - разводим руками и говорим, что это слишком хитрораспределенная атака, поэтому, по нашим подсчетам, банить по сетям - не имеет смысла(много невинных жертв), а поименно - не потянет оборудование. Денег, конечно не возвращаем - мы же работали.
Tuesday, June 14th, 2011 12:00 pm (UTC)
Как по-вашему должен вести себя умственно полноценный российский программист, я могу представить
Умственно-полноценный сначала должен изучить то, что сделано до него. Вы этого явно раз за разом не делаете.
Tuesday, June 14th, 2011 12:07 pm (UTC)
Количество понасделанного хватит не на одно поколение археологов, я думаю. Однако, тот факт, что целый русский сегмент ЖЖ может порушить банальная IP-атака с 1500 адресов, говорит о том, что если решение и имеется, оно мало кому известно.

Мне нужен подходящий веб-сервер для нехитренькой странички (без проблем целиком помещающейся в памяти) с определенным сервисом. Страничка должна хорошо держать пиковую нагрузку.
Tuesday, June 14th, 2011 12:10 pm (UTC)
банальная атака была с сотен тысяч, 1500 показали в качестве примера.

Объясните тупому, если у вас канал 10 мбит, а ддос 15, как можно его на сервере победить?
Tuesday, June 14th, 2011 12:18 pm (UTC)
банальная атака была с сотен тысяч, 1500 показали в качестве примера.
Ну так и выложили бы остальные 198500. От кого их прятали? И, главное, зачем тогда эти 1500 выложили? Или, типа, с них больше всего перло?

Объясните тупому, если у вас канал 10 мбит, а ддос 15, как можно его на сервере победить?

На время атаки переткнуть проводок из 10 мбит дырки в 100 мбит? Включить второй, запасной, сервер, в отдаленном датацентре? Почему никому не удаётся заддосить, скажем, гугл? У них что, каналы из особой резины?
Tuesday, June 14th, 2011 12:21 pm (UTC)
Это вы у администрации ЖЖ спросите, чтО и почему они выложили, а что нет.

Если б всё сводилось к перетыканию проводков, то дос-атаки давно бы никого не волновали.

У Гугла не один сервер. И не 10 мбит общей пропускной способности. И даже не 100. А сильно распределённая инфраструктура.

Tuesday, June 14th, 2011 12:22 pm (UTC)
>На время атаки переткнуть проводок из 10 мбит дырки в 100 мбит?
А если ддос вырастет до 150 ?
Tuesday, June 14th, 2011 12:22 pm (UTC)
Очевидно, переткнуть в гигабит. Потом в 10. И провайдера тоже.
Tuesday, June 14th, 2011 12:10 pm (UTC)
Это не факт, а измышления, озвученные администрацией ЖЖ. ЧтО там было на самом деле - мне лично неизвестно.
Судя по тому, что оно по времени совпало с внедрением проксирования, есть немаленький шанс, что никакой массированной атаки не было.
Tuesday, June 14th, 2011 12:13 pm (UTC)
Количество понасделанного хватит не на одно поколение археологов, я думаю.
Значит, вы будете вынуждены изобретать велосипед. И, скорее всего, изобретёте Penny-Farthing (http://en.wikipedia.org/wiki/Penny-farthing) а не что-нибудь адекватное тем (http://en.wikipedia.org/wiki/Racing_bicycle) или иным (http://en.wikipedia.org/wiki/Mountain_bike) актуальным задачам.

Однако, тот факт, что целый русский сегмент ЖЖ может порушить банальная IP-атака с 1500 адресов, говорит о том, что если решение и имеется, оно мало кому известно.
Оно много кому известно. Тут проблема не техническая. Разруха — она не в сортирах, а в головах, это очень хороший пример к этому высказыванию.

Мне нужен подходящий веб-сервер для нехитренькой странички (без проблем целиком помещающейся в памяти) с определенным сервисом. Страничка должна хорошо держать пиковую нагрузку.
На современном железе страничка, полностью помещающаяся в память, будет отдаваться на полной скорости канала вплоть до 1Gbit точно любым сервером, если не допустить явных косяков в его настройке.
Число соединений, возникающих при DDoS, — может стать проблемой, но в случае с HTTP это лечится, например, протокольными фильтрами в ядре, которые умеет и Linux и FreeBSD.
Tuesday, June 14th, 2011 12:35 pm (UTC)
Фишка вся в сервисе, который обрабатывает информацию, принимая небольшие индивидуальные запросы и выдавая взамен всем очень похожие данные. Очень отдалённо похоже на гостевую книгу. Сам сервис, в принципе, я знаю как реализовать.

Про протокольные фильтры первый раз слышу. Они что, как-то помогут защищаться от разных умников? Например, шлющих HTTP-запросы с гигабайтовыми заголовками?
Tuesday, June 14th, 2011 12:40 pm (UTC)
Про протокольные фильтры первый раз слышу.
Это-то и плохо.

Они что, как-то помогут защищаться от разных умников? Например, шлющих HTTP-запросы с гигабайтовыми заголовками?
А как вы собираетесь решать эту проблему, реализовав свою (но совместимую со спецификацией, очевидно, иначе-то как!?) версию TCP в userland? Если у вас есть красивое решение — может проще добавить в тот же протокольный фильтр.

Фильтр для HTTP во FreeBSD занимает 349 строчек вместе с лицензией BSD вначале и всеми комментариями — разобраться в его тексте не сложно. Думаю, в Linux тоже самое (но не смотрел, врать не буду).

Если у вас есть здравые мысли (а не фантазии про деревья сетей — кстати, слышали ли вы про такую штуку как Patricia Tree? судя по всему — нет, и тут бы вы тоже изобрели неудобный велосипед), как защититься от тех или иных видов атак — почему бы не попробовать их на таком уровне, а не реализуя свой TCP? Это будет проще, быстрее и, в результате, если у вас получится (во что я, простите, всё же не верю — не видно у вас нужной квалификации из всех ваших постов, но я искренне будут рад, если заблуждаюсь), это будет полезно всем.
Tuesday, June 14th, 2011 12:58 pm (UTC)
Что деревья? Что Patricia tree?

это будет полезно всем.
Писать суперпрограмму-на-все-случаи-жизни я и не собирался. Вряд ли то что хочу я понадобится кому-то кроме меня. Всем нужен LAMP. Скачал, установил, прилепил стандартных скриптов из PHP-отстойника, продал. Кто будет этот гроб на колёсах настраивать под себя? Кто будет сидеть, распределять файлы своей странички по приоритетам, прописывать индивидуальные фильтра для дополнительных HTTP-заголовков? Или писать скрипт на каком-нибудь там C++, общающийся с веб-сервером по хитромудрёному message-oriented протоколу? Если кому-то подобное и понадобится, то у него скорее всего найдутся деньги пойти по более простому пути -- 100500 китайских б/у серверов LAMP в параллель.
Tuesday, June 14th, 2011 01:02 pm (UTC)
Что деревья? Что Patricia tree?
Короткая же у вас память. В исходном посте вы в комментариях приводили идею группировать запросы по исходным сетям.

Остальное тут — тоже ваши измышления. Если бы всё было так, не появился бы nginx, не появились бы accept-фильтры в OS, etc.
Tuesday, June 14th, 2011 01:18 pm (UTC)
Apache появился в 1995. Nginx ждал своего часа до 2004. Не прошло и 10 лет. Улавливаете?
Tuesday, June 14th, 2011 12:42 pm (UTC)
будет отдаваться на полной скорости канала вплоть до 1Gbit

Отдаваться-то она будет, но а если "клиенты" будут злонамерено тормозить с ACK-подтверждениями и/или переспрашивать? Не захлебнётся стандартный TCP в буферах сокетов?
Tuesday, June 14th, 2011 12:46 pm (UTC)
Не захлебнётся стандартный TCP в буферах сокетов?
(1) при правильной настройке — нет. Хотя, конечно, захлебнуть можно всё, факт.
(2) Чем ваш TCP будет отличаться? У него не будет буферов? Ну так настройте у системного буфер в 1500 байтов.
Tuesday, June 14th, 2011 01:14 pm (UTC)
(1). Правильная настройка, есс-но, заключается в околонулевых таймаутах, я угадал?
(2). Не будет. Вообще. Когда это имеет смысл. Если настроить окно 1500 байт, то поимеем ограничение скорости 1500/RTT КБ/с. По физике, при расстоянии между клиентом и сервером в 20000 км RTT=1/7.5 сек (11 КБ/с). Если передача данных идёт через геостационарный спутник (36300 км над экватором), то 5-6 КБ/с. Кажется, я сейчас понял, почему многие сайты так ужасно глючат и тормозят. Они очень сильно боятся ddos.
Tuesday, June 14th, 2011 01:15 pm (UTC)
Не будет. Вообще. Когда это имеет смысл.
Ну так как вы будете определять — когда имеет смысл, а когда нет?

Есть ещё zero copy sockets — все буфера в userland. Чем вам не подходит?
Tuesday, June 14th, 2011 01:34 pm (UTC)
Да, это вроде похоже на то, что мне нужно.
Tuesday, June 14th, 2011 12:00 pm (UTC)
Это вы про себя так интересно рассказывали?
Tuesday, June 14th, 2011 12:02 pm (UTC)
Не помню, кто именно постанул это в ru_root, но, думаю, гуглом или яндексом можно восстановить.
Tuesday, June 14th, 2011 10:38 am (UTC)
Так этот персонаж регулярно постит такие вещи. Вроде как процессор собирался делать, так как "общеизвестно, что в Интеле закладки, тысячи их"?
Tuesday, June 14th, 2011 10:40 am (UTC)
я кстати, один свой тцп знаю, хе-хех
Tuesday, June 14th, 2011 10:46 am (UTC)
Больше TCP, хороших и разных!
Tuesday, June 14th, 2011 11:15 am (UTC)
Це-ж известный тролль.
Tuesday, June 14th, 2011 11:17 am (UTC)
Это не мешает повышать настроение его опусами :)
Tuesday, June 14th, 2011 11:37 am (UTC)
Когда я прочитал сообщение, я надолго завис над кнопкой Reject, формулируя "почему". Когда придумал, ты уже зааппрувил :-)
Tuesday, June 14th, 2011 11:40 am (UTC)
Ну надо ж поразвлекаться :)
Tuesday, June 14th, 2011 11:44 am (UTC)
Мне часто вспоминается: "Представьте, лежит длинная леска под асфальтом. Волна самоорганизуется и самоуплотняется вокруг заданного объекта. Стоячая волна. Не пытайтесь ничего понять! Понять — не реально! И как только вы будете привлекать знания, будет осечка, … не будет ничего получаться!"
Tuesday, June 14th, 2011 11:53 am (UTC)
Главное - правильно дунуть! Если не дунуть, никакого чуда не произойдет.
Tuesday, June 14th, 2011 12:03 pm (UTC)
Создатели танцующего моста рискнули и перестали пытаться понять и привлечь знания. А иначе, красть деньги на строительстве мостов не будет ничего получаться!
Tuesday, June 14th, 2011 12:07 pm (UTC)
Если пренебречь малыми величинами, то видно, что векторная форма вертикальна. Абсолютно твёрдое тело безусловно участвует в погрешности определения курса меньше, чем уходящий интеграл от переменной величины, что обусловлено малыми углами карданового подвеса. Устойчивость по Ляпунову трудна в описании. Экваториальный момент, в соответствии с основным законом динамики, искажает кожух, что нельзя рассматривать без изменения системы координат. Уравнение малых колебаний стабилизирует момент силы трения, исходя из определения обобщённых координат.
Tuesday, June 14th, 2011 12:09 pm (UTC)
контекстно-свободная грамматика?
Tuesday, June 14th, 2011 12:12 pm (UTC)
Разумеется нет.
Tuesday, June 14th, 2011 12:18 pm (UTC)
Математическая статистика решительно трансформирует интеграл от функции, имеющий конечный разрыв, что неудивительно. Интеграл от функции, обращающейся в бесконечность вдоль линии, оправдывает ротор векторного поля, при этом вместо 13 можно взять любую другую константу. Асимптота концентрирует лист Мёбиуса, что несомненно приведет нас к истине.
Tuesday, June 14th, 2011 08:28 pm (UTC)
А ещё можно стать воздушной планетой.
Tuesday, June 14th, 2011 12:04 pm (UTC)
смех смехом, а тцп кверху мехом. а в узерландном тцп есть ненулевой смысл.

иногда хочется свой собственный congestion control без усовывания модуля в ведро, например. или прозрачный файловер сессий. или еще много чего. все это гораздо проще сделать в самом приложении. проще как в плане реализации, так и в плане деплоймента. и такое существует на самом деле.

а "современный протокол udp" - это так, смехуечки.
Tuesday, June 14th, 2011 12:12 pm (UTC)
Ключевая фраза: "и такое существует на самом деле".
Tuesday, June 14th, 2011 12:37 pm (UTC)
что существует, где?
Tuesday, June 14th, 2011 12:40 pm (UTC)
вот, например: http://events.ccc.de/congress/2005/fahrplan/attachments/630-muXTCP-22c3.pdf
Tuesday, June 14th, 2011 12:39 pm (UTC)
Узерлендному TCP и прочим IP в "Network algorithmics" посвящена отдельная глава, очень просветляющая.
Tuesday, June 14th, 2011 05:43 pm (UTC)
угу