Написать свой nginx, с собственной реализацией TCP

топ 100 блогов ru_linux14.06.2011 Прочитал недавно книжку, что программирование -- это очень просто и решил стать программистом. И чего-нибудь напрограммировать. Что-нибудь грандиозное. Например, высокопроизводительный веб-сервер аналогичный nginx. Только устойчивый к ddos-атакам.

Есть, правда, одна проблема. По сравнению с современным протоколом UDP, протокол TCP, изобретённый десятки лет назад, очень тормозной, ненадёжный, жрёт много памяти. Но, к сожалению, до сих пор большинство пользователей использует именно TCP для доступа к веб-серверу.

Проблему можно решить, сделав собственную реализацию TCP, с блэкджеком и шлюхами. Как это сделать?

На самом деле, совершенно не хочется подходить к пингвинам слишком близко, а тем более лезть в их ядро. Поэтому желателен обходной вариант.

В идеале было бы достаточно при открытии или принятии соединения, сообщить системе, что хочу работать с открываемым сокетом напрямую, и потому прошу просто присылать все IP пакеты на этот сокет, пока я его сам не закрою. В свою очередь, системе не требуется запоминать про сокет ничего, кроме IP юзера, номера порта и хэндла сокета. Не знаю как там у пингвинов пахнет в ядре, но при 16 байтах на сокет, 64K номерах портов, и, скажем, 1000 атакующих IP, нужен всего 1 гиг, чтобы этот хаос запомнить.

Лучше бы, конечно, вычислять атакующие IP и пропускать через себя их трафик полностью, чтобы система про них вообще не помнила ничего, кроме того, что они на мне. Но тут вряд ли получится без влезания в ядро и, скорее всего, придётся работать сразу со всеми сокетами, не только со своими, и реализовывать стек полностью.

Что посоветуете? Копать куда? Да, пока тренировался с TCP/IP только на форточках.

Оставить комментарий

Архив записей в блогах:
Люди, страдающие аллергией на травяную пыльцу, могут теперь посмотреть своему ...
15 сентября 1933 года исполняющий обязанности наркома НКВД Ягода доложил товарищу Сталину о разоблачении и ликвидации в Ленинграде и Москве контрреволюционного педерастического подполья. В результате облавы и последующих допросов была выявлена целая шпионская сеть, вовлекавшая ...
У "великого" прорицателя Нострадамуса сбылось только одно предсказание, центурия 10 катрен 72. Предсказание появления Путина. В 1999 году в седьмом месяце Великий небесный царь устрашитель /искупитель/ Воскресит великого короля Анголмуа /Монгол/. До /и/ после Марса /Марта/ будет ...
Всем привет! Меня зовут Оля, мне 27 лет и я живу в Одессе и работаю переводчиком-фрилансером. Но сейчас я нахожусь в своем родном городе Керчи, решаю некоторые бюрократические вопросы и параллельно отдыхаю) Это мой первый пост в сообществе, и я ну ...
Есть у нас семейная традиция строить в преддверии  нового года новый рождественский городок. В этом году он вот такой получился :)   Два великана Щелкуна охраняют уют маленьких человечков ...