У меня есть веб-сервер на хосте coloc. Вся «запланированная» активность осуществляется через HTTP. (Нет FTP-сервера, BitTorrent-клиента, IRC-ботов и т. Д.)
Мой входящий трафик постоянно в 5-10 раз превышает исходящий. (Например, за последние 24 часа я обслужил 228 МБ данных, но получил 1,94 ГБ.)
Это стандарт / ожидается для веб-сервера? (Может быть, меня ударили пресеченные гнусные попытки, размер пакета которых по сравнению с 0-байтовым ответом подавляет нормальную обратную связь?)
Если этого не ожидается, какие инструменты мне следует использовать, чтобы выяснить, откуда идет трафик? (На сервере работает Ubuntu 10.04.)
Да для некоторых протоколов. Нет для других. Ответ в том, что это зависит от того, какой тип трафика является «нормальным» для вашей среды.
Подумайте о просмотре веб-страниц (и давайте на мгновение согласимся, что это типичный пример обычного интернет-трафика, скажем, для офиса):
Я хочу посмотреть на этот вопрос, поэтому подключаюсь к serverfault.com и перехожу
GET questions/361329 HTTP/1.1
host: serverfault.com
Общий размер моего исходящего трафика (запрос): Может быть, 1 КБ, если мы включим все служебные данные протокола и дополнительные запросы, которые мой браузер будет делать для изображений и тому подобного.
Сервер serverfault.com обрабатывает мой запрос и возвращает несколько сотен килобайт HTML, изображений и т. Д.
Исходящий трафик: 1к. Входящий трафик: 19к (с этого двоеточия).
Если ты сервер В половине этого уравнения ваш исходящий трафик намного превышает входящий. Взгляните на этот график из сети веб-хостинга анонимного интернет-провайдера:
Теперь, если ваш трафик выглядит не так, как вы думаете, вам следует установить хорошую систему мониторинга трафика (или несколько минут с tcpdump
/ethereal
/ etc.) может дать вам представление о том, что происходит, или, по крайней мере, кто с кем разговаривает на каких портах.
Случайные мысли:
У меня есть сервер nginx, который прокси к серверам приложений позади него. Если у вас аналогичная настройка, считается ли полезная нагрузка ответа от серверов приложений, которые проходят через ваш веб-сервер, "входящей"?
Можете ли вы проверить журнал своего веб-сервера, чтобы узнать, поступают ли какие-либо запросы POST.
Принимают ли какие-либо URL-адреса на вашем сайте данные POST? У веб-серверов есть способ ограничить размер тела; возможно, это приведет к некоторому разрешению. Например, это ограничит размер тела POST до 1 мегабайта в nginx:
client_max_body_size 1м;
Наконец, если сервер не должен получать ничего, кроме веб-трафика (и SSH), используйте iptables, чтобы заблокировать все, кроме 80 и 22.