Назад | Перейти на главную страницу

Различная скорость подключения к Интернету за счет переключения сетевых адаптеров. Может ли кто-нибудь понять это?

Я решил проблему со скоростью интернета, но все еще озадачен. Я не могу понять, что случилось.

Мой сценарий: небольшая интрасеть подключена к Интернету через шлюз Linux, который подключается к кабельному модему (Motorola SBV5121), мой провайдер дает мне статический IP-адрес, а номинальная скорость составляет 3 Мбит / с / 512 Кбит / с.

Шлюз Linux - это старый Centos 5.10 с iptables и сервером Dhcp с двумя сетевыми адаптерами:

eth0 (Intranet) # 3Com Corporation 3c905C-TX/TX-M [Tornado]
eth1 (Internet) # Sundance Technology Inc / IC Plus Corp IC Plus IP100A Integrated 10/100 Ethernet MAC + PHY


[INTERNET]---[Motorola CableModem]----[eth1 LINUX-GW eth0]-----[LAN]---[desktop machines]

Все довольно стандартно, и давно работало; но последнее время у меня была низкая скорость, особенно при загрузке. Обычные тесты (например, http://www.speakeasy.net/speedtest/ ) сообщал (постоянно) об очень низких скоростях (около 200 Кбит / с) при загрузке из США (я нахожусь в Южной Америке); при загрузке из моей страны скорость была приличной (хотя я так и не достигла предела в 3 Мбит / с): от 1 Мбит / с до 1,5 Мбит / с. Скорость загрузки была правильной, около 512 Кбит / с. У меня не было проблем с пингами, без потерянных пакетов, обе NIC сообщили о полнодуплексном соединении 100 Мбит / с. Тесты проводились с настольного компьютера с Windows внутри локальной сети, но поведение соответствовало тому, что я получил при загрузке из Linux GW. Отключение iptables разницы не дало.

Я был почти уверен, что это была проблема с маршрутизацией или формированием у моего провайдера. При звонке они попросили меня проверить скорость подключения простого компьютера с Windows к кабельному модему. Я очень скептически относился к тому, что это будет иметь значение.

[INTERNET]---[Motorola CableModem]----[Windows desktop machine]

К моему удивлению, это определенно сработало: скорость была правильной (3 Мбит / с / 512 Кбит / с, независимо от цели).

Я был очень озадачен, все перепроверил, ничего не нашел. Трассировка была такой же. В крайнем случае, я попытался переключить сетевые адаптеры в GW. Я не менял ни кабели, ни конфигурацию, я сделал самое простое: я изменил MAC в файлах конфигурации "ifcfg-ethX", чтобы eth1 оставался подключенным к Интернету, но переключались сетевые адаптеры:

eth0 (Intranet) # Sundance Technology Inc / IC Plus Corp IC Plus IP100A Integrated 10/100 Ethernet MAC + PHY
eth1 (Internet) # 3Com Corporation 3c905C-TX/TX-M [Tornado]

[INTERNET]---[Motorola CableModem]----[eth1 LINUX-GW eth0]-----[LAN]---[desktop machines]

И теперь работает отлично! Как это может быть?

Обратите внимание, что это не просто проблема с сетевым адаптером "Sundance", так как в текущей конфигурации, когда я провожу тесты с компьютера в локальной сети, я все еще просматриваю две карты, как и раньше (только в другом порядке) . Кроме того, когда я передаюсь внутри LAN (рабочий стол <-> GW), он работает с хорошей скоростью Ethernet.

Есть ли у кого-нибудь правдоподобное объяснение или подобное поведение?

Одно правдоподобное объяснение - сбой дуплексного согласования между картой sundance и вашим модемом DSL.

Ethernet 10/100 Мбит был известен плохим дуплексным согласованием. Многие рекомендовали жестко задавать скорость и дуплекс на обоих концах. Я не был большим поклонником этого, но это было разумно.

С годами это стало меньше проблемой. Автосогласование Gigabit Ethernet надежно - отчасти потому, что не существует такой вещи, как полудуплексный гигабит. Я полагаю, что автосогласование 10/100 стало умнее и с новыми наборами микросхем.

Единственное объяснение, которое я могу придумать, - это неисправный кабель, соединяющий шлюз с модемом.

Возможно, чип основной полосы частот (тот, который на самом деле выполняет кодирование / декодирование строки) выходит из строя или не так хорош с самого начала, так что увеличение линейного шума (из-за ухудшения качества кабеля) значительно сбивает его с толку.

Попробуйте проверить частоту ошибок с помощью эттоол; сравните результаты с другими сетевыми адаптерами. Это может помочь пролить свет.