BC/NW 2006, №2, (9) :6.1

 

СРАВНИТЕЛЬНЫЙ АНАЛИЗ СКОРОСТИ ПЕРЕДАЧИ ДАННЫх ЧЕРЕЗ ПРОГРАММНЫЕ МАРШРУТИЗАТОРЫ НА БАЗЕ ОС MS WINDOWS И SUSE LINUX

 

П.А. Рахман

 

(Москва, Московский Энергетический Институт, Российская Федерация)

 

В настоящее время информационно-вычислительные сети достигли такого уровня развития, сложности и масштабов, что уже практически невозможно представить их без специализированных программно-аппаратных средств, обеспечивающих передачу данных как между двумя узлами, так и групповое вещание и широковещание. Кроме того сети современных корпораций, особенно средних и крупных, представляют собой достаточно сложный граф, который отнюдь не всегда является строго деревом, где имеется одна точка общая подключения к Интернет, а вся сеть в виде дерева “разрастается” вниз от нее, и конечные листья этого деревья относятся к конкретным подразделениям корпорации. Часто в сети имеются избыточные линии связи, которые в первую очередь служат для повышения целостности и надежности функционирования сети. В такой ситуации при передаче данных между узлами сети может иметься не один, а несколько маршрутов, и эффективная маршрутизация оказывается одной из наиболее важных задач.

На сегодняшний день для сетей с коммутацией пакетов существуют множество как протоколов маршрутизации, так и программно-аппаратных систем выполняющих функцию маршрутизации. Однако, нередко специализированные аппаратные маршрутизаторы [1], несмотря на все их достоинства по техническим показателям, оказываются довольно дорогостоящими, и поэтому зачастую также используются и программные маршрутизаторы, представляющие собой компьютеры класса IBM PC на базе процессоров Intel x86 [2] с установленной сетевой операционной системой и программным пакетом маршрутизации.

В рамках профессиональной деятельности у автора была возможность сравнить программные маршрутизаторы, построенные на базе компьютера IBM PC при двух различных операционных системах MS Windows Server [3] и SUSE Linux [4] со встроенными программными модулями маршрутизации. Автором было проведено небольшое экспериментальное исследование,  цель которого состояло в том, чтобы выявить максимально возможную скорость передачи данных через маршрутизатор при заданной аппаратной и программной конфигурации. Кроме того, также интерес представляла зависимость загрузки процессора маршрутизатор от скорости передачи данных между двумя сетями, подключенных к нему.

·          Аппаратная конфигурация маршрутизатора:

-       Процессор: Intel Celeron 2400 MHz

-       Материнская плата: Intel D865GLC

-       Оперативная память:  512 Мбайт DDR PC2700

-       Жесткий диск: 34.5 Гбайт Western Digital SATA

-       Два сетевых адаптера: REALTEK Gigabit Ethernet (RTL8169).

·     Операционная система и пакет маршрутизации: в одном случае использовалась ОС MS Windows 2003 Enterprise Server со встроенной службой Routing and Remote Access Services. Во втором случае использовалась ОС SUSE 9.2 Linux со встроенным пакетом IP Route 2.

·     Сетевая конфигурация: использовался стек протоколов TCP/IP [5], причем  к одному сетевому адаптеру были привязаны две различные IP-сети, назовем их Real 14 и Private 14, а к другому сетевому адаптеру были привязаны, две другие IP-сети – Real 17 и Private 17. Таким образом, к двум сетевым адаптерам маршрутизатора были привязаны четыре различных маршрутизируемых IP-сетей.

Для измерения скорости передачи данных использовались различные соединения типа точка – точка, и передача данных и измерение скорости осуществлялась при помощи специализированной программы NETCPS. Соединение осуществлялось между компьютерами со 100 Mbit сетевыми адаптерами, находящимися в разных маршрутизируемых IP-сетях (более того соединения выбирались таким образом, чтобы задействовать оба сетевых адаптера маршрутизатора). Для выяснения максимально возможной суммарной скорости передачи данных через маршрутизатор использовались несколько одновременных передач между несколькими парами узлов сети. Для оценки загрузки процессора во время передачи данных использовались встроенные в ОС средства – утилита Task Manager в MS Windows и команда Top в SUSE Linux.

Результаты измерений сведены в таблицах 1 – 4. В таблице 1 представлены результаты измерений при одном соединении точка – точка, таблице 2 – при двух одновременных соединениях, таблице 3 – при 4-х соединениях, таблице 4 – при 6-ти соединениях.

 

Таблица 1. Скорость передачи данных / Загрузка процессора

при последовательном тестировании одиночных соединений.

 

Hardware:

P4 Celeron 2.4 GHz, 512MB

P4 Celeron 2.4 GHz, 512MB

Software:

MS Windows 2003 EE + SP1

SuSE 9.2 LinuX

Network Link:

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Real14 – Real17

6.46

30

6.38

20

Private14 – Private17

10.22

44

10.45

32

Real14 – Private14

6.92

32

6.85

19

Real17 – Private17

8.01

36

8.48

26

Real14 – Private17

6.21

27

7.14

19

Real17 – Private14

9.41

42

9.24

30

 

Таблица 2. Скорость передачи данных / Загрузка процессора

при параллельном тестировании 2-x соединений.

Network Link:

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Real14 – Private17

6.31

68

6.63

47

Real17 – Private14

9.13

8.81

Total:

15.44

68

15.44

47

 

Таблица 3. Скорость передачи данных / Загрузка процессора

при параллельном тестировании 4-x соединений.

Network Link:

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Real14 – Private17

4.99

96

5.94

75

Private14Real17

4.41

5.08

Real17 – Private14

6.05

7.89

Private17 – Real14

4.51

5.47

Total:

19.96

96

24.38

75

 

Таблица 4. Скорость передачи данных / Загрузка процессора

при параллельном тестировании 6-ти соединениях

Network Link:

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Avg. Transfer Rate, MB /s

Avg. CPU

Load, %

Real14 – Private17

-

-

5.02

99

Private14Real17

-

4.49

Real17 – Private14

-

5.76

Private17 - Private14

-

6.26

Private14 - Private17

-

4.31

Private17 – Real14

-

5.56

Total:

-

-

31.40

 99

 

         Из таблиц 1 – 4 видно, что при равной аппаратной конфигурации, программной маршрутизатор на базе ОС MS Windows раньше, чем SUSE Linux “входит в насыщение”. На заданной аппаратной конфигурации уже при достижении суммарной скорости, передаваемой через маршрутизатор, около 20 Мбайт/с служба маршрутизации ОС MS Windows “загружает” процессор практически полностью, пакет маршрутизации ОС SUSE Linux имеет “больший запас”: обеспечивает скорость передачи до 32 Мбайт/с при 100%-й загрузке процессора маршрутизатора.

С одной стороны здесь следует отметить, что в таких случаях – программной обработки чего-либо, характер загрузки процессора зависит от особенностей и качества реализации драйвера устройства – в нашем случае это сетевой адаптер. С другой стороны драйвер совместно с самим сетевым адаптером захватывает функции только 1-го и 2-го уровня модели OSI, а за маршрутизацию, относящуюся к 3-му уровню, отвечают специальные драйверы и службы маршрутизации, которые встроены в ОС в нашем случае. Поэтому в данном случае, различия по результатам при прочих равных условиях, обусловлены именно различием двух разных операционных систем со встроенными средствами маршрутизации.

Наконец, последнее, что следует отметить – это то, что по результатам нетрудно заметить линейный характер зависимости между загрузкой процессора и суммарной скоростью передаваемых через маршрутизатор данных. В грубом приближении, обозначая суммарную скорость через V, а загрузку процессора – через L, можем сказать, что:

                                                  (1)

где, K – некоторый коэффициент пропорциональности, зависящий от множества факторов: характеристик аппаратных средств компьютера, особенностей организации ОС, служб маршрутизации и др. В нашем случае, для заданной аппаратной конфигурации, для ОС MS Windows Server коэффициент K ~ 4.5, а для ОС SUSE LinuxK ~ 3.2

 

ЛИТЕРАТУРА

1.     http://www.cisco.com/en/US/products/hw/routers/index.html

2.     http://www.ixbt.com/cpu/x86-cpu-faq-2006.shtml

3.     http://www.microsoft.com/windowsserver2003/default.mspx

4.     http://www.novell.com/linux/

5.     http://www.nag.ru/goodies/netbook/index.html