Страница 1 из 1 |
Плохой пинг в вове. Linux. Виндовс крабам читать не стоит.
Автор | Сообщение |
---|---|
|
0
Для начала, если кому интересно, исходные данные
Местоположение: Омск, Россия Интернет-провайдер: Вебстрим Проблемы с пингом: всегда ОС: Linux thrashhome 2.6.29-gentoo-r5 #2 SMP Tue Aug 18 18:18:08 OMSST i686 AMD Athlon(tm) 7750 Dual-Core Processor AuthenticAMD GNU/Linux Данный топик создал для того, чтобы попытаться коллективно исследовать проблему плохого пинга в вове, и возможно её решить. Имею пинг в игре по кварцу 30.12.2009 в 11:37 дня 300-600мс, что меня совсем не устраивает. Вечером он еще больше ухудшится из-за местных школьников, качающих порно с торрентов. Попытка решения проблемы номер раз: Т.к. я не использую ОС Windows, то не могу попробовать установить фикс для реестра, поскольку у меня он отсутствует ) Идём другим простым путём. 1) Узнаём адрес сервера, на котором играем а) Коннектимся к вову, пишем Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:8010 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3700 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3800 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN tcp 0 0 192.168.1.1:35820 62.67.45.53:3724 ESTABLISHED tcp 0 0 192.168.1.1:41021 90.189.192.121:5223 ESTABLISHED tcp 0 0 192.168.1.1:35819 62.67.45.53:3724 ESTABLISHED tcp 0 0 127.0.0.1:3800 192.168.1.1:35819 ESTABLISHED б) Нас интересуют соединения с портом 3724. в) Очевидно, 62.67.45.53:3724 2) Создаём правило для iptables iptables -t nat -A OUTPUT -p tcp -d адрес_серва --dport 3724 -m owner --uid=ваше_имя_пользователя_в_системе -j REDIRECT --to-ports 3700 3) Создаём сервер socat socat -- TCP4-LISTEN:3700,fork,reuseaddr,su=nobody TCP4:62.67.45.53:3724,nodelay,tos=0xd0 tos=0xd0, судя по 4) Запускаем socat, заходим в игру, смотрим tcpdump и пинг. 14:49:52.098454 IP (tos 0xd0, ttl 64, id 184, offset 0, flags [DF], proto TCP (6), length 52) 192.168.1.1.35820 > 62.67.45.53.blizwow: ., cksum 0xbc96 (correct), 218:218(0) ack 55204 win 1002 14:49:52.352966 IP (tos 0xc8, ttl 44, id 54191, offset 0, flags [DF], proto TCP (6), length 117) 62.67.45.53.blizwow > 192.168.1.1.35820: P 55204:55269(65) ack 218 win 121 14:49:52.353181 IP (tos 0xd0, ttl 64, id 185, offset 0, flags [DF], proto TCP (6), length 52) 192.168.1.1.35820 > 62.67.45.53.blizwow: ., cksum 0xba57 (correct), 218:218(0) ack 55269 win 1002 Видно, что tos в исходящих пакетах = 0xd0, а во входящих (омг) 0xc8. 0xc8 = 11001000, по рфц: первые 3 бита не имеют значение, следующие 4 бита tos = 0100 последний бит = 0. Омг, tos = "0100 -- maximize throughput", где-то на пути ко мне стоит шейпер, который цуко оптимизирует канал для порноторрентов! Теперь вопросы к обществу. Я неправ в своих выводах? Что можно сделать в такой ситуации? Есть мысли по прокидывания трафика вова через udp пакеты с помощью чьей-нибудь vds, находящейся ближе к серверам вова (например, через openvpn). Или стоит звонить провайдеру и сразу материться на него? |
30 дек 2009, 11:57 |
|
|
0
wile писал(а): 1000 = 8 = 0x08. Упс. Есть сдвиг на один бит. 0xd0 - нормально. Почему не 0xf0? |
30 дек 2009, 13:53 |
|
|
0
Minagushi писал(а): Красноглазик. Цитата: Местоположение: Омск, Россия Ты себе представляешь трассу до Европы из Омска? Тут может быть виноват как и твой провайдер, так и провайдер твоего провайдера у которого он покупает трафик, что скорее всего. Меняй провайдера. Винда, Линукс имхо пофигу вообще если железо нормальное, а оно у тебя нормальное, так что срать. Что под виндой что под линями. Да, я забыл показать трассировку. traceroute to 62.67.45.53 (62.67.45.53), 30 hops max, 40 byte packets 1 192.168.1.254 (192.168.1.254) 1.316 ms 1.712 ms 2.169 ms 2 * * * 3 ge-4-1-3.osk-dr1.ncc.sibirtelecom.ru (213.228.118.61) 37.479 ms 39.193 ms 41.292 ms 4 ge-0-0-0.osk-bsr1.ncc.sibirtelecom.ru (213.228.118.42) 41.601 ms 42.759 ms ge-1-0-0.osk-bsr1.ncc.sibirtelecom.ru (213.228.118.46) 44.477 ms 5 omk15.transtelecom.net (217.150.46.170) 46.015 ms 46.276 ms 48.202 ms 6 xe-4-2-0-xcr1.amd.cw.net (195.2.21.5) 140.914 ms 124.487 ms 126.271 ms 7 xe-4-2-0-xcr1.amd.cw.net (195.2.21.5) 129.201 ms 129.456 ms 129.689 ms 8 xe-0-1-0.xcr1.lsw.cw.net (195.2.25.101) 134.614 ms xe-4-1-0.xcr1.lsw.cw.net (195.2.25.93) 132.334 ms xe-0-2-0.xcr1.lsw.cw.net (195.2.25.105) 138.932 ms 9 195.50.118.229 (195.50.118.229) 141.154 ms 143.253 ms 144.818 ms 10 ae-34-52.ebr2.London1.Level3.net (4.69.139.97) 146.896 ms 127.118 ms 128.018 ms 11 ae-2-2.ebr2.Amsterdam1.Level3.net (4.69.132.134) 134.890 ms 135.580 ms 137.493 ms 12 ae-1-100.ebr1.Amsterdam1.Level3.net (4.69.141.169) 139.361 ms 136.960 ms 137.109 ms 13 ae-2-2.ebr2.Dusseldorf1.Level3.net (4.69.133.90) 136.636 ms 135.921 ms 137.162 ms 14 ae-21-52.car1.Dusseldorf1.Level3.net (4.69.139.34) 134.682 ms 136.977 ms 135.659 ms Как видно из трассировки, пинг должен быть около 160-200 (причем сейчас уже близится вечер). А в игре сейчас 400. Мне доступны три провайдера, у других ситуация ещё хуже - дисконнекты, пинг в вове до 2000мс, падение сети и т.д. ps: А на винду не вернусь. Не нужны мне эти зависоны, вирусы кривые платные проги и ограниченный системный инструментарий. Добавлено спустя 6 минут 33 секунды: newb писал(а): wile писал(а): tos=0xd0, судя по 1000 = 8 = 0x08. Упс. Есть сдвиг на один бит. 0xd0 - нормально. Почему не 0xf0? С этим я прогнал ) Взял первые 3 бита от того, что ко мне приходит (0xc8 = 11001000), когда экспериментировал, изменил tos, и получилось 0xd0. И забыл зачем. Раньше было 0x10. |
30 дек 2009, 13:56 |
|
|
0
Похоже на шейпер. Просто так ToS не переписывают.
По трейсу - есть два скачка: Первый - #3 (или #2, непонятно) - переход от тебя к твоему провайдеру, обусловлен качеством канала связи и загрузкой принимающего узла провайдера. В целом цифры нормальные. Второй - #6 - переход от твоего провайдеру к провайдеру верхнего уровня, обусловлен загрузкой двух общающихся узлов. Цифры большие. 80ms это очень много. Один из узлов перегружен. В целом, хотя между тобой и Близзардом и больше чем один провайдер, ToS переписывает скорее всего именно твой. Это первая проблема. Вторая проблема - скачок на 80ms выше. Звони, разбирайся. Попытка - не пытка. Удачи и с Новым Годом! (И, да, установка Windows тут не поможет.) |
30 дек 2009, 14:16 |
|
|
0
Kari344 писал(а): Генту наверное ставил, чтобы перед друзьями понтонуться? Нет, перед друзьями я понтовался FreeBSD 3.6 в десятом классе, когда держал ноду в фидонете оО Пробовал дебиан и генту (дистрибы взял у знакомого), второе понравилось больше, на генту и остался. Но вопрос топика-то не в генту, и не в том, что линукс лучше/хуже винды. Добавлено спустя 2 минуты 52 секунды: newb писал(а): Похоже на шейпер. Просто так ToS не переписывают. Второй - #6 - переход от твоего провайдеру к провайдеру верхнего уровня, обусловлен загрузкой двух общающихся узлов. Цифры большие. 80ms это очень много. Один из узлов перегружен. Гугление дало знание, что узел 5 находится в Сибири, а узел 6 в Европе. Поэтому такая цифра тоже вполне нормальная. newb писал(а): Звони, разбирайся. Попытка - не пытка. Удачи и с Новым Годом! (И, да, установка Windows тут не поможет.) Спасибо ) |
30 дек 2009, 14:19 |
|
|
0
uncle_fedor писал(а): btw, в wine есть аля реестр из виндуза, попробуй там может фикс прокатит. Фикс выключает алгоритм Нагла (Nagle). В примере выше это сделано параметром "nodelay" в вызове socat. Последнее замечание: Технически, "сервер" общающийся с "клиентом" по TCP (понятия сервер и клиент во многих случаях сильно размыты) не обязан использовать тот же самый ToS, который использует клиент. Больше того, он может использовать разные ToS'ы для разных запросов в пределах одного соединения. Таким образом, переписывание ToS может производиться и Близзардовским сервером. На практике, однако, это делается редко. Переписывают ли ToS сервера WoW я не знаю. Но вот провайдер переписывать ToS не должен ни при каких обстоятельствах. |
30 дек 2009, 14:23 |
|
|
0
Minagushi писал(а): Цитата: ps: А на винду не вернусь. Не нужны мне эти зависоны, вирусы кривые платные проги и ограниченный системный инструментарий. 1. Нормально пересобери компьютер. --- 5. Поинтересуйся вопросом, нормально настрой винду и проги. Ты не поверишь какой сказочной тебе покажется эта операционка когда ты приложишь к этому хоть чуть желания и аккуратности =) Мне и так сказочно, и всё работает. |
30 дек 2009, 14:24 |
|
Страница 1 из 1 |