При проектировании коммуникационных сетей доминируют три взаимосвязанных соображения:
- трио фундаментальных физических свойств,
- механика совместного использования и
- удивительно широкий диапазон значений параметров.
Первое доминирующее соображение - это трио фундаментальных физических свойств.
1. Скорость света ограничена.
Используя самый прямой маршрут и учитывая скорость распространения в реальных средствах коммуникации, требуется около 20 миллисекунд, чтобы передать сигнал через 2600 миль из Бостона в Лос-Анджелес. Это время известно как задержка распространения, и избежать ее без сближения двух городов не удастся. Если сигнал проходит через геостационарный спутник, расположенный на высоте 22 400 миль над экватором и на полпути между этими двумя городами, задержка распространения скачет до 244 миллисекунд - достаточно большой задержки, которую заметит не только компьютер, но и человек. Но связь между двумя компьютерами в одной комнате может иметь задержку распространения всего 10 наносекунд. Такая более короткая задержка делает некоторые вещи проще, но важным следствием этого является то, что сетевые системы могут быть вынуждены учитывать диапазон задержек, который простирается на семь порядков величины.
2. Коммуникационная среда враждебна.
Компьютеры, как правило, состоят из невероятно надежных компонентов, и они обычно работают в относительно благоприятных условиях. Однако связь осуществляется с помощью проводов, стеклянных волокон или радиосигналов, которые должны проходить в гораздо более неблагоприятных условиях, начиная с подоконных и заканчивая глубоководными слоями океана. Эти условия ставят под угрозу связь. Угрозы варьируются от всплеска шума, который стирает отдельные биты, до небрежных операторов экскаваторов-экскаваторов, отрезающих кабели, ремонт которых может занять несколько дней.
3. Средства коммуникации имеют ограниченную полосу пропускания.
Каждая передающая среда имеет максимальную скорость, с которой можно передавать отдельные сигналы. Эта максимальная скорость определяется его физическими свойствами, такими как расстояние между передатчиком и приемником и характеристиками затухания среды. Сигналы могут быть многоуровневыми, не только двоичными, поэтому скорость передачи данных может превышать скорость передачи сигналов. Однако шум ограничивает способность приемника различать один уровень сигнала от другого. Сочетание ограниченной скорости передачи сигнала, конечной мощности сигнала и наличия помех ограничивает скорость передачи данных по каналу связи. Таким образом, различные сетевые каналы могут иметь радикально различную скорость передачи данных - от нескольких килобит в секунду по междугородней телефонной линии до нескольких десятков гигабит в секунду по оптоволокну. Таким образом, доступная скорость передачи данных представляет собой второй параметр сети, который может варьироваться от семи порядков величины.
Второе доминирующее соображение в отношении коммуникационных сетей заключается в том, что они почти всегда являются общими.
Совместное использование возникает по двум разным причинам.
1. Абсолютно любая связь.
Любая коммуникационная система, которая соединяет более двух вещей, по своей природе включает в себя элемент совместного использования. Если у вас есть три компьютера, вы обычно быстро обнаруживаете, что есть моменты, когда вы хотите общаться между любыми парами. Вы можете начать с создания отдельного канала связи между каждой парой, но этот подход быстро заканчивается, так как количество необходимых путей растет с квадратом числа взаимодействующих объектов.
Даже в небольшой сети общая коммуникационная система, как правило, гораздо практичнее - она более экономична и проста в управлении. Когда число объектов, которым необходимо поддерживать связь, начинает расти. Еще одно тесно связанное с этим замечание заключается в том, что сети могут объединять три организации или 300 миллионов организаций. Таким образом, число подключенных объектов является третьим параметром сети с широким диапазоном значений, в данном случае охватывающим восемь порядков величины.
2. Совместное несение расходов на связь.
Некоторые части коммуникационной системы следуют тем же технологическим тенденциям, что и процессоры, память и диск: кажется, что изделия из кремниевых чипов каждый год падают в цене. Другие детали, такие как рытье улиц для прокладки проводов или волокон, запуск спутника или торги на замену существующей радиосвязи, не дешевле. Хуже того, когда линии связи покидают здание, они требуют наличия полосы отвода, которая обычно подвергает их той или иной форме регулирования. Регулирование осуществляется в грандиозных временных рамках с использованием процедур, предусматривающих участие судов и адвокатов, законодательные действия, долгосрочную политику, политическое давление и целесообразность.
В конечном итоге эти процедуры могут дать полезные результаты, но в масштабах времени, измеряемых десятилетиями, в то время как технологические изменения делают новые вещи возможными каждый год. Такие несоизмеримые темпы изменений означают, что расходы на связь редко снижаются настолько быстро, насколько это позволяет технология, поэтому распределение этих расходов между независимыми пользователями сохраняется даже в ситуациях, когда технология может позволить им избежать их.
Третьим доминирующим аспектом проектирования сети является широкий диапазон значений параметров.
Мы уже видели, что время распространения, скорость передачи данных и количество сообщающихся компьютеров могут варьироваться на семь и более порядков величины. Существует четвертый такой широкий диапазон параметров: один компьютер может в разное время представлять сеть с сильно различающимися нагрузками - от передачи файла со скоростью 30 мегабайт в секунду до интерактивного набора текста со скоростью один байт в секунду.
Эти три соображения, непреодолимые физические ограничения, совместное использование оборудования и существование четырех различных параметров, каждый из которых может варьироваться от семи и более порядков величины, не могут полностью скрыть их на каждом уровне проектирования сети и даже тщательно продуманной модульности. Поэтому системы, использующие сети в качестве компонента, должны принимать их во внимание.