Клаус Вейрле, Франк Пэльке, Хартмут Риттер, Даниэль Мюллер, Марк Бехлер, «Linux: сетевая архитектура».

По данным IDC, только за последний квартал прошлого года объем продаж серверов Linux увеличился на 20,8%, составив 1,6 млрд долларов, что намного опережает темпы роста сегмента серверов под управлением Windows (4,7%) и тем более UNIX, где наблюдается спад. Всего за прошедший год серверов Linux продано на 5,7 млрд долларов, и применяются они для все более широкого круга задач.

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

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

Книга представляет собой подробное описание сетевой подсистемы в новых версиях ядра Linux. В ней объясняется работа протоколов и определяются важные концепции сетевой архитектуры Linux — от драйверов устройств до интерфейсов приложений. Помимо основных тем дается описание более поздних протоколов и расширений, например протокола РРРоЕ, применяемого в технологиях доступа по DSL, а также драйвера Bluetooth и поддержки качества обслуживания (QoS). Без внимания не остались и все основные протоколы семейства TCP/IP, а кроме того, рассматриваются протоколы RSVP, Mobile IP и IP Security. Каждая глава содержит концептуальное введение в соответствующий протокол, рекомендации по настройке конфигурации и администрированию его функций, анализ структур данных, алгоритмов и интерфейсов программирования, причем интерфейсы поясняются с точки зрения использованных при реализации протоколов принципов проектирования.

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

Весь дальнейший материал посвящен архитектуре сетевой реализации и сетевым уровням ОС. Так, третья глава служит введением в архитектуру коммуникационных систем, функции протоколов, уровни TCP/IP и ISO/OSI. Сле-дующие две главы посвящены фундаментальным концепциям сетевой архитектуры Linux, включая управление сетевыми пакетами в ядре Linux и концепцию сетевых устройств, которые скрывают особенности сетевых адаптеров за единообразным интерфейсом и образуют связь между экземплярами протоколов на вышележащих уровнях. Шестая глава (введение в канальный уровень) дает представление о передающих и принимающих процессах, управлении протоколами третьего уровня, структуре канального уровня. Протоколы и механизмы канального уровня подвергаются тщательному разбору в главах с седьмой по 12-ю: здесь описываются протоколы SLIP, PPP и PPP over Ethernet, поддержка в Linux технологий ATM и Bluetooth, особенности использования компьютера Linux в качестве прозрачного моста. 13-ю главу, открывающую обсуждение TCP/IP, авторы начинают с обзора семейства этих протоколов и краткой истории Internet. Протоколы ICMP и ARP, маршрутизация, групповые рассылки, управление трафиком, отслеживание соединений, KIDS и IPv6 — обо всем этом рассказывается в следующих двух главах. Главы 24 и 25 содержат описание протоколов TCP и UDP, а завершается книга объяснением интерфейса сокетов и обзором программирования сетевых возможностей на прикладном уровне.

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

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

Книгу (Клаус Вейрле, Франк Пэльке, Хартмут Риттер, Даниэль Мюллер, Марк Бехлер, «Linux: сетевая архитектура. Структура и реализация сетевых протоколов в ядре». — КУДИЦ-ОБРАЗ, 2006 г. — 656 стр.) можно приобрести в магазинах. Ориентировочная цена — 330 руб.