Показать сообщение отдельно
(#1 (permalink))
Старый
Аватар для Admin

Admin вне форума
Админ
Очки: 11,386, Уровень: 25
Очки: 11,386, Уровень: 25 Очки: 11,386, Уровень: 25 Очки: 11,386, Уровень: 25
Активность: 0%
Активность: 0% Активность: 0% Активность: 0%
 

Сообщения: 846
Благодарил(а): 31
Поблагодарили 243 раз в 51 постах
Регистрация: 17.11.2004
Возраст: 46
По умолчанию Процессорозависимость сетевых карт на чипе RTL8139 - 17.01.2005, 15:21

Вступление

Всем нам известно, что при включенном компьютере, во время простоя системы, например вы отошли попить кофе, компьютер не бездействует, а чемто занимается: подмигивает лампочка жесткого диска, какие-то циклы крутятся в процессоре, приложения обмениваются информацией с оперативной памятью и тому подобное. Но когда компьютер оказывается в локальной сети, или в глобальной сети, будь то настольный компьютер или сервер, то начинается работа с сетью. Это уже наводит на определённые мысли: что он там делает? А он поддерживает связь с другими компьютерами, обменивается с ними пакетами, общается (типа привет, я тут) на уровне протоколов, например ICMP или TCP и, если он определённым образом настроен, позволяет забирать с себя информацию.

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

Главный вопрос

В нашей стране ОЧЕНЬ распространены сетевые карты на чипах RTL8139, которые можно купить практически везде за смешные деньги, порядка 5-7 долларов. На этих сетевых картах построено огромное количество сетей. Такие сетевые карты присутствую почти в каждом доме.

"А что тут такого? Всё хорошо работает." - скажете вы. Да так, ничего особенного. Сети с этими сетевухами работают, причем на 100Мб/с. Быстро и качественно. Но как только заходит вопрос о больших объёмах информации, таких как фильмы или музыка (особенно если эта информация складируется не где-то на сервере, а у вас на компьютере), начинаются проблемы.

Представим простую ситуацию, с участием сетевой карты на чипе RTL8139. Вы сидите дома, в ваш единственный выходной на этой неделе. У вас на компьютере скоплено порядка 30 ГБ музыки практически любых направлений и вы решили под эту музыку немного поиграть в добрую и душевную игру Counter Strike по сети. Всё было-бы неплохо, если бы вы не поделились своей коллекцией с вашей сетью. И тут, какой-то злоумышленник-сетянин (пользователь сети) начинает всю эту музыку с вас скачивать. Реакция компьютера - начинает тормозить. И, как бы сказал великий и могучий осли Иа-Иа из блокбастера Винни Пух: " И всё это только из-за того, что кто-то слишком много ест!"

Слухи и факты

Однажны, а давние времена, когда я работал в фирме, торгующей компьютерами, один клиент всё время брал серевые карты Intel. У нас с ними на тот период времеми были большие проблемы - одна из 4-х серевых карт была бракованная. Мы стрались объяснить клиенту, что сетевые карты Intel брать не стоит, очень большой процент брака. Но клиент всё-равно упорно продолжал закупить именно Intel-овские сетевые карты. На вопрос, зачем он их покупает, он мне ответил: "я лучше потрахаюсь немного с вами, и лучше за 3 прихода куплю необходимое количество сетевых карт, чем буду весь год маяться с дешёвыми сетевухами, которые жутко нагружают центральный процессор". В тот момент я всё это пропустил мимо ушей. Но сейчас настала пока вспомнить этот разговор, т.к. я нахожусь сейчас в ужасном положении: фильмов на компьютере около 50 Гб, музыки - 20Гб. И всё это добно пользователи сетки начинают качать именно в тот момент, когда я сажусь поиграть.

Подопытные и их тестирование

Моя ситуация следующая: дома находится 2 компьютера: один мой любимый, второй сервер.

Конфигурация моего компа:
  • Duron 750(разогнан до 1050МГц)
  • Мать - Epox 8K2AP
  • 512 Mb PC3200
  • HDD Seagate Barracuda 120Гб
  • и ещё всякого хлама по мелочи...
  • Сетевая карта - RTL8139.
С сервера я начинаю модулировать сетевую активность, путём скачивания 10 фильмов с моего компа. На своём-же компе я открываю диспетчер задач и смотрю на показатель "Загрузка центрального процессора" - и диву даюсь.

53%

Вы только вдумайтесь. (!!!)53%(!!!). Вот теперь всё стало на свои места. Все тормоза компьютера во время игрушек - это download с моего компьютера. (!!!)53%(!!!) - я в шоке. Надо эту ситуацию менять в срочном порядке.

Бегом в магазин, за другой сетевой картой. Благо, недавно зарплата была. В магазине на тот момент была всего одна сетевая карта, которая могда меня успокоить - 3COM 32 bit 3C980C-TXM по цене 38 уё. Остальные не подходили или по причине отсутствия кеша, или по бренду (RTL больше покупать почему-то не очень хотелось) или по низкой цене (до 20 уё - врят-ли что-нибудь хорошее можно взять). Купил её.

С предвкушением моего будущего сетевого рая, забегаю домой, раскручиваю комп и вытаскиваю RTL8139. Беру новенькую 3COM 32 bit 3C980C-TXM и начинаю её физическую установку в компьютер. Сразу появилась проблема - сетевая карта не хочет вставляться ни в один слот PCI - не пролезает в щель!. Ну вообще никак. Думаю. Надо что-то делать. Придумал. Беру сетевуху, кое-как вставил на 1 мм. Внешнюю часть сетевухи (это там, где находится гнездо RJ-45 и LED-ы мигают), немного перекосив, прикручиваю таки к корпусу. А заднюю враскачку пытаюсь туда запихнуть. Через 10 минут мучений она туда вошла. Я стал намного счастливее.

Запускаю винду, дрова сами установились, IP-адсес прописался автоматом (всё таки удобно, когда DHCP сервер в сетке есть) начинаю тестировать. Всё как и в предыдущий раз, только сетевая карта другая. Если кто забыл, напомню: С сервера я начинаю модулировать сетевую активность, путём скачивания 10 фильмов с моего компа. На своём-же компе я открываю диспетчер задач и смотрю на показатель "Загрузка центрального процессора".

15%

А вот это уже более благоприятная ситуация и для меня, и для моего процессора. Запускаю на сервере загрузку 15 фильмов и начинаю играть - тормоза есть, но теперь они практически не ощущаются, только если монстров много на карте

Заключение и напутствие

Если вы покупаете себе компьютер, который будет использоваться в локальной сети, или покупаете сетевую карту, для подключения в сеть - не экономьте. Купить нормальную вещь. Я не говорю, что надо покупать именно 3COM 32 bit 3C980C-TXM по цене 38 уё. Возможно есть и другие более доступные варианты. Но сетевые карты на чипах RTL8139 себя показали с не самой лучшей стороны. Да они дешёвые и быстрые. Есть такая поговорка: "скупой платит дважды". На нормальной сетевой карте и вы будете нормально работь, и процессор не будет напрягатья.

Сетевая карта 3COM 32 bit 3C980C-TXM мне просто понравилась - работает хорошо, процессор нагружается мало да и в Windows 98 драйвера к ней не нужны.


Ваши возможные возражения:



А у меня процессор Pentium 4 3000 - и я даже не ожущаю влияния сетевой нагрузки!
Да, влияния вы не ощущаете. Но как показала практика, чем меньше ресурсов используется, тем надёжнее система.



Я в игры не играю, фильмы не смотрю, следовательно ничего тормозить не будет.
Я тоже так думал, пока не ощутил это на себе. Печатаешь в ворде, но ВОРД ВНЕЗАПНО НАЧИНАЕТ ТОРМОЗИТЬ. Как оказалось, с меня скачивали кино одновременно 3 человека.



Я на доступ ничего не даю, значит скачивать никто ничего не будет.
Не спорю, с вас скачивать никто ничего не будет. Зато вы будете. Смена сетевой карты уменьшила загрузку процессора в этой ситуации с 62% до 35% - а это почти в 2 раза.
А я и скачивать ни у кого ничего не буду! Только в интернете сидеть.
Тогда это статья не для вас. Здесь были рассмотрены проблемы сетевого трафика больших объёмов с локальных сетей при скорости 100Мб. В интернете таких скоростей не бывает.
Ответить с цитированием