October 24th, 2020

Таненбаум, окончание введения: 1.7, 1.8, 1.9

Предыдущие посты по теме:

Collapse )

Прочел окончание главы 1 «Введение» книги. В нем три маленьких подраздела: 1.7 «Единицы измерения», 1.8 «Краткое содержание следующих глав», 1.9 «Резюме» (к первой главе).

Подраздел 1.7 «Единицы измерения» в оригинале называется «Metric units» (по-русски дословно «метрические единицы измерения»). Дело в том, что книга написана американским автором, а для жителей США метрическая система мер является диковинкой, потому что в США применяется английская (ее еще называют «имперской») система мер.

Удивительно, но США является одной из нескольких стран в мире, которые еще не приняли метрическую систему мер в качестве основной. По-моему, это очень странная ситуация.

Это одна из причин, почему автор книги был вынужден вынести эту тему в отдельный подраздел. Здесь он поясняет, что все величины в книге (как и вообще в компьютерных науках) приведены в метрической системе мер.

Приведена таблица с основными метрическими приставками вроде милли-, микро-, нано-, кило-, мега-, гига- и так далее.

Отмечено, что при измерении размера памяти, файлов и тому подобного эти приставки получают отличие от этих же приставок в случае измерения массы или длины. В случае измерения участка памяти эти приставки опираются на степень двойки, а не степень десятки. Например, килограмм равен 103 грамм, то есть 1000 грамм. А килобайт равен 210 байт, то есть 1024 байта.

Однако, в случае измерения скорости передачи данных по различным каналам приставки опираются на степень десятки. Например, 1 Кбит/с равен 103 бит в секунду, то есть 1000 бит в секунду.

Подраздел 1.8 кратко, в один-два абзаца описывает содержание каждой следующей главы. Всего в книге 9 глав. Изложение построено по гибридной эталонной модели сети, описанной в предыдущих разделах главы 1. Гибридная она потому, что построена соединением преимуществ эталонных сетевых моделей OSI и TCP/IP.

Описание уровней гибридной эталонной модели сети начинается с нижнего, физического уровня (глава 2), и переходит вверх от уровня к уровню: канальный уровень (глава 3), подуровень управления доступом к среде (глава 4), сетевой уровень (глава 5), транспортный уровень (глава 6), прикладной уровень (глава 7), безопасность в сети (глава 8), рекомендации для дальнейшего чтения и библиография (глава 9).

Кстати, читателям перевода на русский следует быть осторожными при чтении. Качество перевода очень неровное, видно, что над переводом трудилось несколько переводчиков, которые работали несогласованно. Кое-где в книге термин «medium access sublayer» переведен как «средний подуровень доступа» или что-то в этом духе. В данном случае слово «medium» означает не «средний», а «среда». Правильный перевод: «подуровень доступа к среде». Это подуровень канального уровня и о нем рассказывается в главе 4 книги. Подробнее тут:
https://ru.wikipedia.org/wiki/Управление_доступом_к_среде

Подраздел 1.9 «Резюме» очень коротко напоминает содержание первой главы.

Сенбернар и скорость передачи данных

Любопытная задачка на понимание из книги Таненбаума про компьютерные сети, из проверочных вопросов к главе 1 «Введение».

Цитата:

Представьте, что вы научили свою собаку, сенбернара Берни, приносить вам коробку с тремя 8-мм магнитными лентами вместо бутылки бренди. (Потому что с некоторых пор вы стали рассматривать заканчивающееся место на жестком диске как трагедию.) На каждой ленте помещается 7 Гб информации. Собака обучена бежать к вам, где бы вы ни находились, со скоростью 18 км/ч. В каком диапазоне расстояний скорость передачи данных собакой будет выше, чем у линии, чья фактическая скорость работы составляет 150 Мбит/с?


Тут сначала нужно понять, что сравниваются два принципиально разных канала передачи информации.

Собака тратит на разные расстояния разное количество времени. Однако, сколько бы времени ни потратила собака на маршруты разных длин, в конец маршрута любой длины она принесет одно и то же количество данных — коробку с тремя 8-мм магнитными лентами, каждая по 7 Гб, то есть всего 21 Гб. При маршруте любой длины (хоть 1 м, хоть 1 км, хоть 10 км) в место назначения попадет 21 Гб данных.

Теперь рассмотрим второй канал передачи данных — линию, скорость передачи данных по которой составляет 150 Мбит/с. Как я понимаю, подразумевается, что эта скорость не зависит от длины линии и остается постоянной на маршрутах разных длин.

Если собака тратит на путь 1 секунду, то приносит 21 Гб данных. За эту же 1 секунду линия принесет в место назначения лишь 150 Мбит данных. Если собака тратит на путь 2 секунды, то принесет опять же 21 Гб данных. За эти же 2 секунды линия принесет в место назначения уже 300 Мбит. С удлинением пути линия перенесет больше данных, а собака перенесет одно и то же фиксированное количество данных.

Найдем, за сколько секунд линия перенесет столько же, сколько и собака, то есть 21 Гб.

21 Гб = 21 * 230 байт = 21 * 230 * 8 бит = 180 388 626 432 бит

150 Мбит/с = 150 * 106 бит/с = 150 000 000 бит/с
(1 Мбит/с равен 106 бит/с, а не 220 бит/с! См. подробности в комментариях.)

180 388 626 432 бит / 150 000 000 бит/с = 1202,59 с

То есть за 1202,59 с собака перенесет 21 Гб и линия перенесет 21 Гб. Зная скорость собаки и время, за которое она пробежала маршрут, можно определить длину ее маршрута.

18 км/ч = 18 000 м/ч = 18 000 / 3600 м/с = 5 м/с

5 м/с * 1202,59 с = 6012,95 м

Ответ: при расстоянии маршрута меньшем, чем 6012,95 м, скорость передачи данных с помощью собаки будет быстрее, чем с помощью линии.