Граничные вычисления
Граничные вычисления (англ. edge computing, периферийные вычисления) — это парадигма распределенных вычислений, осуществляемых в пределах досягаемости конечных устройств. Данный тип вычислений используется для сокращения времени сетевого отклика, а также более эффективного использования пропускной способности сети.[1]
История
История периферийных вычислений начинается с момента активного развития сетей доставки контента, которые были созданы в конце 1990-х годов для распространения веб- и видео-контента с помощью граничных серверов, развернутых рядом с пользователями.[2] В начале 2000-х эти сети развивались для размещения приложений и компонентов приложений на граничных серверах[3], что привело к появлению первых коммерческих периферийных вычислительных сервисов[4], на которых размещались такие приложения, как поиск поставщиков, корзины покупок, агрегаторы данных в реальном времени, и рекламные движки.[3] Современные граничные вычисления значительно расширяют этот подход за счет виртуализации, упрощающей развертывание и запуск более широкого спектра приложений на граничных серверах.
Концепция
На данный момент существует несколько подходов к описанию концепции граничных вычислений. Например, периферийные вычисления могут осуществляться в пределах компьютерной программы любого типа, обеспечивающей более низкую задержку сети в рамках использования конечных устройств. Карим Араби, на своем выступлении на IEEE DAC 2014 Keynote[5], а затем и на выступлении в рамках семинара MTL в 2015 году[6] охарактеризовал периферийные вычисления как все вычисления вне облака, происходящие в границах сети, и более конкретно — в приложениях, где требуется обработка данных в режиме реального времени. Согласно определению Араби, облачные вычисления работают с большими данными, в то время как граничные вычисления работают с «мгновенными данными», то есть данными в реальном времени, генерируемыми датчиками устройств или пользователями.
Согласно отчету State of the Edge, граничные вычисления концентрируются на серверах «в непосредственной близости от сети последней мили».[7] Алекс Резник, председатель комитета ETSI MEC по стандартам ISG, определил данный термин более свободно: «все вычисления, не относящиеся к работе традиционных центров обработки данных, могут считаться “граничными"».[8]
Периферийные узлы, используемые для потоковой передачи данных в играх, называются геймлетами (gamelets)[9], которые обычно находятся на расстоянии одного или двух узлов от клиента.[10] По мнению исследователей Б. Ананда и О Цзя Хао Эдвина, в контексте облачных игр, «периферийный узел обычно находится на расстоянии одного-двух узлов от мобильного клиента, что позволяет соответствовать ограничениям времени отклика для игр в реальном времени».[10]
Важным отличием граничных вычислений от облачных вычислений является то, что, в случае первых сбор и анализ данных осуществляется в месте генерации потоков данных, в то время как использование централизованных систем предполагает дальнейшую передачу таких данных и их последующую обработку в ЦОД.[11]
Безопасность и приватность
Распределенная природа описываемой парадигмы вычислений вносит дополнительные особенности безопасности построения систем данных в уже сложившихся практиках создания облачных сетей. Транслируемые данные в сети, осуществляющей периферийные вычисления, не только должны быть зашифрованы, но также должны быть защищены совершенно другими механизмами шифрования, обеспечивающими сохранность передаваемой информации. Это обусловлено тем, что данные в такой экосистеме могут проходить между различными распределенными узлами, подключенными через Интернет, прежде чем в конечном итоге попасть в облако. Периферийные узлы также могут быть представлены устройствами с ограниченными ресурсами, ограничивая выбор конкретного способа защиты с точки зрения методов безопасности. Более того, должен быть обеспечен переход от централизованной нисходящей инфраструктуры сети к децентрализованной модели доверия.[12] С другой стороны, сохраняя данные на периферии, можно передать право владения собранными данными от поставщиков соответствующих услуг конечным пользователям.
Масштабируемость
Масштабируемость распределенной сети должна представлять собой устойчивую модель. Во-первых, при построении масштабируемой сети периферийных вычислений должна учитывать неоднородность состава включенных в нее устройств, имеющих различные характеристики и энергетические ограничения. Далее, необходима поддержка высокодинамичного состояния сети, а также стабильность соединений, не уступающая более надежной инфраструктуре облачных дата-центров. Кроме того, следует учитывать, что требования безопасности могут спровоцировать дополнительную задержку в обмене данными между узлами распределенной сети, что может замедлить процесс масштабирования граничной инфраструктуры в целом.
Надежность (отказоустойчивость)
Хорошая отказоустойчивость имеет решающее значение для поддержания работоспособности сети граничных вычислений. Если один узел выходит из строя и оказывается недоступен, пользователи по-прежнему должны иметь доступ к сервису без длительного ожидания. Кроме того, периферийные вычислительные системы должны осуществлять действия по восстановлению сети и сервисов после сбоя, а также оповещать пользователей об инциденте. С этой целью каждое устройство должно поддерживать топологию сети всей распределенной системы, чтобы идентификация отказа и восстановление сети были более быстрыми и эффективными. Другими факторами, которые могут повлиять на отказоустойчивость периферийной инфраструктуры, являются:
- используемая технология соединения, которая может обеспечить различные уровни надежности;
- точность данных, полученных на граничном узле, которые могут быть ненадежными из-за определенных условий окружающей среды.
Применение
Сервисы приложений, использующих граничные вычисления, сокращают объемы данных, которые должны быть переданы, последующий трафик и расстояние, которое должны пройти данные. Данная архитектура вычислений обеспечивает меньшую задержку отклика внутри сети и снижает затраты на обмен данными. Разгрузка вычислений, используемых в приложениях, работающих в реальном времени (алгоритмы распознавания лиц) с помощью данной технологии, показала значительную эффективность в области улучшения времени отклика сети, что было продемонстрировано в ранних исследованиях.[13] Дальнейшие исследования показали, что использование облачков (cloudlets) в сети пользователей мобильных приложений, предлагающие сервисы, обычно находящиеся в облаке, обеспечивает сокращение времени выполнения операций, когда некоторые задачи выгружаются на граничный узел.[14] С другой стороны, разгрузка каждой обрабатываемой задачи может привести к замедлению обмена данными из-за увеличения времени передачи данных между конечными устройством и узлами.
Другое перспективное применение описываемой архитектуры вычисления можно обнаружить в области облачных игр, где некоторые компоненты игрового приложения могут выполняться в облаке, в то время как видеопоток передается легковесным клиентам, таким как мобильные устройства, очки виртуальной реальности и т. д. Такой тип потоковой передачи также известен как пиксельная потоковая передача (pixel streaming).[9]
Другие возможные применения технологии включают в себя управление «умными» системами автомобилей,[15] создание «умных» городов с развитой сетевой инфраструктурой[16], проекты Индустрии 4.0, а также использование граничных вычислений в системах домашней автоматизации.[17]
См. также
- Туманные вычисления
- Облачные вычисления
- Конечное устройство
- Облачные игры
Примечания
- ↑ Eric Hamilton-Last Updated: 27 Dec'18 2018-12-27T08:37:12+00:00. What is Edge Computing: The Network Edge Explained (англ.). Cloudwards (27 декабря 2018). Дата обращения: 9 марта 2020. Архивировано 31 октября 2020 года.
- ↑ "Globally Distributed Content Delivery, by J. Dilley, B. Maggs, J. Parikh, H. Prokop, R. Sitaraman and B. Weihl, IEEE Internet Computing, Volume 6, Issue 5, November 2002" . Дата обращения: 9 марта 2020. Архивировано 9 августа 2017 года.
- ↑ 1 2 Nygren., E.; Sitaraman R. K.; Sun, J. (2010). "The Akamai Network: A Platform for High-Performance Internet Applications" (PDF). ACM SIGOPS Operating Systems Review. 44 (3): 2–19. Дата обращения: 9 марта 2020. Архивировано 30 апреля 2015 года.
- ↑ A. Davis, J. Parikh, W. E. Weihl. Edgecomputing: extending enterprise applications to the edge of the internet (англ.) // Proceedings of the 13th international World Wide Web conference on Alternate track papers & posters - WWW Alt. '04. — New York, NY, USA: ACM Press, 2004. — P. 180. — ISBN 978-1-58113-912-9. — doi:10.1145/1013367.1013397.
- ↑ IEEE DAC 2014 Keynote: Mobile Computing Opportunities, Challenges and Technology Drivers . Дата обращения: 9 марта 2020. Архивировано 30 июля 2020 года.
- ↑ Trends, Opportunities and Challenges Driving Architecture and Design of Next Generation Mobile Computing and IoT Devices | Microsystems Technology Laboratories . www.mtl.mit.edu. Дата обращения: 9 марта 2020. Архивировано 30 июля 2020 года.
- ↑ Bridging the Last Mile: Convergence at the Infrastructure Edge (англ.) (недоступная ссылка — история). State of the Edge. Дата обращения: 9 марта 2020.
- ↑ ETSI - ETSI Blog - What is Edge? (англ.). ETSI. Дата обращения: 9 марта 2020. Архивировано 30 июля 2020 года.
- ↑ 1 2 Bhojan Anand, Pan Wenren. CloudHide: Towards Latency Hiding Techniques for Thin-client Cloud Gaming (англ.) // Proceedings of the on Thematic Workshops of ACM Multimedia 2017 - Thematic Workshops '17. — Mountain View, California, USA: ACM Press, 2017. — P. 144—152. — ISBN 978-1-4503-5416-5. — doi:10.1145/3126686.3126777.
- ↑ 1 2 Bhojan Anand, Aw Jia Hao Edwin. Gamelets — Multiplayer mobile games with distributed micro-clouds // 2014 Seventh International Conference on Mobile Computing and Ubiquitous Networking (ICMU). — Singapore: IEEE, 2014-01. — С. 14—20. — ISBN 978-1-4799-2231-4. — doi:10.1109/ICMU.2014.6799051. Архивировано 5 августа 2020 года.
- ↑ Edge computing: почему об этой технологии следует узнать немедленно? itWeek. Дата обращения: 9 марта 2020. Архивировано 24 ноября 2020 года.
- ↑ Pedro Garcia Lopez, Alberto Montresor, Dick Epema, Anwitaman Datta, Teruo Higashino. Edge-centric Computing: Vision and Challenges (англ.) // ACM SIGCOMM Computer Communication Review. — 2015-09-30. — Vol. 45, iss. 5. — P. 37—42. — doi:10.1145/2831347.2831354.
- ↑ Third Workshop on Hot Topics in Web Systems and Technologies : proceedings : 12-13 November 2015, Washington, D.C. — Los Alamitos, California. — 1 online resource с. — ISBN 9781467396882.
- ↑ Tim Verbelen, Pieter Simoens, Filip De Turck, Bart Dhoedt. Cloudlets: bringing the cloud to the mobile user (англ.) // Proceedings of the third ACM workshop on Mobile cloud computing and services - MCS '12. — Low Wood Bay, Lake District, UK: ACM Press, 2012. — P. 29. — ISBN 978-1-4503-1319-3. — doi:10.1145/2307849.2307858.
- ↑ It's Time to Think Beyond Cloud Computing | Backchannel (англ.) // Wired : magazine. — ISSN 1059-1028. Архивировано 1 июня 2020 года.
- ↑ Tarik Taleb, Sunny Dutta, Adlen Ksentini, Muddesar Iqbal, Hannu Flinck. Mobile Edge Computing Potential in Making Cities Smarter // IEEE Communications Magazine. — 2017-03. — Т. 55, вып. 3. — С. 38—43. — ISSN 0163-6804. — doi:10.1109/MCOM.2017.1600249CM. Архивировано 5 июля 2019 года.
- ↑ 2017 IEEE International Symposium on Consumer Electronics (ISCE) : 14-15 November 2017. — Piscataway, NJ. — 1 online resource (xii, 87 pages) с. — ISBN 978-1-5386-2189-9, 1-5386-2189-4.