Рост числа смартфонов и их приложений дают возможность пользователям получать доступ ко всё большему объему данных, вычислительной мощности, а также дают им возможность управлять конечными устройствами в реальном времени.
Однако, традиционная архитектура централизованного облака Cloud и ограниченность полосы пропускания сетей уровня ядра (Core) не даёт возможность посылать туда большие объемы данных от конечных датчиков и сенсоров для вычислений и анализа.
Fog Computing, с другой стороны, даёт возможность устройствам Fog-узлов на границе сети выполнять некоторую обработку данных в месте их получения и использования, для того, чтобы снизить задержку обмена и объема данных, посылаемых в Cloud, а также выполнять локальную аналитику (см. рисунок 1).

Средний срок службы сервера в облачных дата-центрах составляет около двух лет. Для бизнес-приложений, которые генерируют большое количество данных, столь частый апгрейд оборудования не только сложен технически, но и очень дорог. Вместо инвестиций, ИТ-департаментам организаций приходится все время заниматься поддержанием соответствия своей ИТ-системы текущим требованиям бизнеса. Однако, на границе сети в небольших распределённых дата-центрах, компоненты серверной инфраструктуры могут служить до восьми лет. Исследования показывают, что решения, основанные только на централизованном облаке Cloud, гораздо более затратные, нежели основанные на гибриной архитектуре Cloud+Fog.
Другая проблема, связанная с Cloud – скорость вычислений и задержка обмена данными. При передаче в облако, скорость вычислений снижается, а задержка обмена данными растёт. Однако, данные могут иметь различную ценность и назначение. Одни данные представляют наибольшую ценность в момент их сбора. Спустя некоторое время их ценность быстро падает. Другие данные предназначены для накопления их определённого объёма для того, чтобы аналитика на их основе была релевантной.
Граничные вычисления и Fog-системы позволяют анализировать данные до того, как они посылаются в центральное облако Cloud, в момент, когда их ценность максимальна. Например, хакерскую атаку или вторжение в систему можно предотвратить более эффективно, когда анализ происходит непосредственно в месте атаки или вторжения. На ожидание пересылки данных в центральный дата-центр уходит драгоценное время.
Поэтому, извлечение из общего, большого объема данных той части, которую следует передать в Cloud (Data thinning), и отсечение ненужных данных – очень важный процесс, при котором ценные данные отделяются от малоценных данных. Например, беспилотный автомобиль генерирует массу промежуточных данных, которые вовсе не нужно хранить в дата-центре в течение долгого времени.
Fog computing также помогает решить проблемы с данными промышленных роботов. Подавляющая часть этих данных нужна только в месте работы робота, поэтому их обработку эффективнее и целесообразнее производить здесь же. Дроны, которые исследуют земной ландшафт в различных целях (охрана, сельское хозяйство, контроль трубопроводов и ЛЭП, и пр.), также генерируют огромное количество данных, которые нужны очень короткое время. Передача этих данных в центральное облако очень затратна и часто технически невозможна, а ожидание команд из центра – это потерянное время. От подобных устройств требуется только лишь распознавание воспринимаемых машинным зрением изображений, сбор значимых данных и посылка этих данных тем людям, которым эти данные нужны в данный момент времени. Например, дроны могут использоваться в сельском хозяйстве, чтобы оценивать необходимость полива полей и, в случае обнаружения такой необходимости, извещать фермера, посылая ему изображение поля с участками, требующим срочного полива, участками, которые можно полить через некоторое время, и участками, которые в ближайшее время поливать не нужно.
В таблице 1 показаны основные различия в требованиях к системам Cloud и Fog Computing.
Таблица 1. Различия в требованиях к системам Cloud и Fog (источник: Cisco).
Требования | Cloud Computing | Fog Computing |
Задержка данных | Высокая | Низкая |
Джиттер задержки | Высокий | Очень низкий |
Расположение ПО услуги | В Интернет | На границе сети |
Расстояние между клиентом и сервером | Много переходов | Один переход (hop) |
Безопасность | Сложно задать | Можно задать |
Перехват данных при передаче | Высокая вероятность | Очень низкая вероятность |
Географическое распределение | Централизованное | Местное |
Число серверных узлов | Несколько | Очень много |
Поддержка обильности | Ограниченная | Поддерживается |
Поддержка взаимодействия в реальном времени | Поддерживается | Поддерживается |
Тип коннективности «последней мили» | Выделенная линия | Беспроводная сеть |
В таблице 2 показаны основные проблемы Cloud и то, как они решаются в Fog.
Таблица 2. Основные проблемы Cloud и решения Fog (источник: Cisco).
Cloud | Fog |
Данные и приложения обрабатываются в централизованном облаке Cloud, что при большом объёме данных занимает большое время. | Вместо того, чтобы отправлять данные в центр, они обрабатываются на границе сети, поэтому время обработки существенно снижается. |
Проблема недостатка полосы пропускания, как результат посылки полного объема данных для обработки в централизованное облако Cloud | Меньшая потребность в полосе пропускания сети уровней агрегации и ядра, за счет того, что биты данных агрегируются на узлах Fog и частично там обрабатываются, с удалением избыточных данных. |
Медленная реакция и проблемы масштабирования, как результат удалённого расположения серверов. | Размещение небольших серверов, называемых «граничными серверами» (edge servers) неподалёку от пользователей в Fog-сети позволяет избежать времени ожидания отклика решить проблема масштабирования. |
Можно сформулировать четыре основных причины необходимости Fog computing:
- Fog обеспечивает обработку в реальном времени и управление кибер-физическими системами CPS (cyber-physical system);
- Fog помогает приложениям могут соответствовать требованиям пользователей;
- Fog предоставляет среду для пулинга местных ресурсов (т.е. гибкое их переназначение и переиспользование в местных системах);
- Fog позволяет быстро производить инновации и масштабирование с приемлемыми затратами.
Можно сделать вывод о том, что Fog имеет преимущества перед Cloud, однако, не может полностью заменить централизованное облако. Центральное облако Cloud будет предпочтительнее в случае массивных и много-потоковых вычислений, потребность в которых остаётся высокой.
Fog и Cloud будут взаимодополнять друг друга и в то же время каждая из этих парадигм будет иметь свои преимущества и недостатки. Fog и тесно связанная с ним концепция граничных вычислений (Edge computing) будут играть критическую роль в развитии Интернета Вещей (IoT).
Fog computing будет расти за счёт появления новых сетевых парадигм с требованиями быстрой обработки с меньшей задержкой и джиттером.
Cloud computing будет служить целям высокопроизводительных вычислений, обработки больших объемов разнородных данных в ядре искусственного интеллекта, долгосрочного хранения данных, ценность которых либо не уменьшается, либо падает со временем относительно медленно.