РЕЦЕНЗИИ
Куроуз Дж., Росс К. Компьютерные сети. Многоуровневая архитектура Интернета. СПб.: Питер, 2004. - 766 с.
На моем столе всегда лежит стопка книг, которые я читаю чаще всего в режиме разделения времени: одни, умещающиеся в кармане куртки, - для чтения в дороге на работу, другим - не жалко отдать полчаса рабочего времени, оторвавшись от телефона, Интернета и электронной почты. Наконец, бывают книги, заслуживающие того, чтобы потратить на них драгоценные вечерние и ночные домашние часы. Замечу, что сейчас появилось очень много превосходной компьютерной и разной другой литературы. Но пару лет назад я заметил, что от непрерывного чтения редактируемых статей сильно обедняется язык - перестаешь пользоваться прилагательными; так в мою стопку вернулась художественная литература. А при остром дефиците времени отбирать книги для чтения приходится более чем придирчиво.
Предлагаемая вашему вниманию книга по компьютерным сетям написана двумя известными профессорами американских университетов, и это безусловно прекрасный учебник для студентов, аспирантов и преподавателей вузов.
Авторы справедливо пишут в предисловии, что "...компьютерные сети - чрезвычайно сложный и запутанный предмет, включающий в себя множество концепций, протоколов и технологий, для новичка загадочно переплетенных между собой". Для изучения материала они применили собственный подход к его изложению, названный ими "сверху вниз" и весьма отличающийся от общепринятого порядка, начинающегося с физического уровня модели OSI. Это дает им возможность сразу сделать акцент на прикладном уровне, служащем базой для развития сетевых приложений. Главное здесь, наверное, в том, что такой порядок изложения намного облегчает понимание материала. Это я могу подтвердить: многие вопросы изложены просто, ясно и систематично, а упор сделан на основополагающие принципы, зная которые легко разобраться как с новыми технологиями в целом, так и с какими-то их деталями.
Книга состоит из восьми глав, представляющих собой большие самостоятельные темы. Базовой для них является первая глава, дающая основные понятия и терминологию.
Вторая глава посвящена протоколам прикладного уровня. После ее прочтения понимаешь, как работают основные протоколы HTTP, POP3, MIME, SMTP, IMAP, и становится очевидно, что написать свой почтовый клиент, или простой браузер, или веб-сервер совсем несложно. В ней также приводятся примеры программирования TCP- и UDP-сокетов на языке Java.
В следующих четырех главах рассматриваются по нисходящей транспортный уровень; сетевой уровень и маршрутизация; мультимедиа в компьютерных сетях; сетевое администрирование. Достаточно внимания уделено и беспроводным сетям.
Каждая глава снабжена обширным списком вопросов и большим количеством упражнений. Кроме того, и это я встречаю в учебных курсах впервые, в конце каждой главы помещены потрясающе интересные интервью с создателями описываемых технологий.
Отмечу также неожиданно высокое качество перевода, хотя некоторые, иногда смешные, неточности встречаются и здесь. Например:
- DARPA - Агентство по защите прогрессивных исследовательских проектов (с. 76) - вместо "Управление перспективных исследований МО США":);
- разработчики часто используют метод HEAD для отладки ошибок (с. 113);
- встретилась ошибка с номером RFC: вместо RFC 822 по тексту должно быть RFC 821 (с. 128).
Кроме студентов, преподавателей и аспирантов книга будет полезна и программистам-профессионалам, занимающимся разработкой сетевых и Интернет-приложений. В целом хочется отметить ее настоящую уникальность и поблагодарить сотрудников издательства за такой подарок читателям.