Выбрать главу

Технологии оптимизации TCP, разработанные в последнее время, рассчитаны на более активное применение аппаратных компонентов сетевого адаптера. С увеличением потребности в быстродействии TCP/IP (особенно учитывая развитие технологии IP Storage) оптимизация TCP стала крайне важной. Далее вкратце описаны некоторою из предлагаемых технологий.

Перемещение всего стека протокола TCP/IP на уровень аппаратного обеспечения. Хотя в аспекте производительности это наилучший вариант, он наиболее амбициозен, поскольку требует решения некоторых сложных проблем, например координации различных стеков протокола TCP/IP,. работающих на двух сетевых адаптерах одного сервера под управлением Windows NT..

Поддержка аппаратным обеспечением перемещения данных и генерации контрольных сумм, причем управлением соединениями будет заниматься программное обеспечение.

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

Перенос на уровень аппаратного обеспечения обработки данных IPSec и даже некоторых данных iSCSI.

В Windows 2000 б, ыла представлена версия 5.0 спецификации NDIS (Network Driver Interface Specification), которая содержит поддержку оптимизации TCP/IP. В частности, в Windows 2000 поддерживаются описанные ниже функции.

Перенос вычисления контрольных сумм TCP/IP на уровень аппаратного обеспечения как для отправки (генерация контрольной суммы), так и для приема (проверка контрольной суммы).

Перенос сегментации TCP на уровень аппаратного обеспечения. При этом, если объем данных превышает максимальную единицу передачи (MTU), аппаратное обеспечение будет сегментировать данные в несколько пакетов.

Перенос на уровень аппаратного обеспечения реализации IPSec. Стандарт IPSec (для протоколов IPv4 и IPv6) обеспечивает целостность данных и аутентификацию на уровне пакетов. Протокол IPSec может использоваться в двух режимах: транспортном, который обеспечивает целостность данных и аутентификацию между пользовательскими приложениями, и туннельном, обеспечивающем безопасность обмена данными между двумя маршрутизаторами. На уровень аппаратного обеспечения могут быть перенесены оба режима.

Быстрая передача пакетов, когда код маршрутизации Windows 2000 передает пакет с одного сетевого порта на другой, минуя копирование пакета в память узла.

8.2 Стандарт InfiniBand

Новый стандарт (и архитектура) InfiniBand предназначен для соединения коммутируемых связных архитектур между узлом и хранилищем или сетевыми периферийными устройствами. Разработкой спецификации InfiniBand занимается ассоциация IBTA (InfiniBand Trade Association). Эта ассоциация была сформирована после слияния двух конкурирующих спецификаций: Future I/O, продвигавшейся усилиями компании Intel, и Next Generation I/O, разрабатываемой компаниями IBM, HP и Compaq.

Архитектура InfiniBand предлагает несколько модификаций, в частности замену шины ввода-вывода (например, PCI) сетью коммутируемой связной архитектуры. Последовательная коммутируемая связная архитектура обладает определенными преимуществами по сравнению с обычной шиной ввода- вывода. Наиболее заметное преимущество состоит в поддержке большего количества устройств на значительно большем расстоянии с использованием на порядок меньшего количества электрических проводников. Кроме того, связная архитектура поддерживает несколько одновременных сеансов передачи данных и обеспечивает устойчивость к ошибкам. Прежде чем подробно обсуждать архитектуру InfiniBand, рассмотрим недостатки шины PCI.

Хотя шина PCI обладает определенными позитивными свойствами, например в свое время она заменила сразу несколько конкурирующих стандартов (ISA, EISA, MCA), в свете быстрого развития центральных процессоров, памяти и технологий периферийных устройств ее ограничения становятся все более явными. Приведем некоторые из них.

Хотя шина PCI обладала достаточным быстродействием в момент своего появления, ее пропускная способность более не соответствует современным требованиям: шина FSB центрального процессора имеет пропускную способность 1066 Мбит/с, а для устройств Gigabit Ethernet и высокоуровневых устройств хранения (SCSI 3) шина PCI станет «бутылочным горлышком», ограничивающим эффективность работы.

Шина PCI имеет определенные проблемы в управлении вообще и в обнаружении ошибок в частности. Одна некорректно работающая плата PCI может привести к неисправности всей системы, в то время как обнаружить поврежденную плату крайне сложно.

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