제목 : 지능형 에지 컴퓨팅 및 네트워킹 기술 [2019]
저자 : 홍승우, 이창식, 김선철 외 5명
1. 서론
엣지 컴퓨팅의 정의
엣지 컴퓨팅이란, 정보 처리와 컨텐츠 수집 및 전달이 정보 소스와 인접한 네트워크 엣지에서 처리되는 컴퓨팅 방식을 의미한다.
엣지 컴퓨팅은 왜 중요한가? 장점은?
사람 및 사물과 근접한 네트워크 엣지에 컴퓨팅 자원을 분산 배치함으로서 기존의 중앙 집중 클라우드 기반 서비스 인프라의 단점을 보완할 수 있기 때문에, 엣지 컴퓨팅은 중요하다.
장점은 우선 첫 번째, IoT의 확산과 스마트기기의 증가에 따른 데이터 처리와 네트워크 대역폭에 대한 부담을 줄여줄 수 있다.
(수많은 경로로 수집된 데이터들을 중앙 집중 클라우드에서 처리하는 것은 처리 시간의 증가 뿐만 아니라 채널의 사용량이 과부하가 걸릴 것이기 때문)
두 번째, 엣지 컴퓨팅은 사용자 서비스를 근접한 곳에서 제공하는 것이기 때문에 자율주행차, 촉감인터넷(Tactile Internet)등 실시간 상호 작용이 가능한 저지연 서비스와 함께 가상현실, 증강현실과 같은 클라우드 기반 실감형 광대역 서비스를 위한 인프라로 사용될 수 있다.
세 번째, 엣지 컴퓨팅에 보안 정책 기능을 부여하면 중앙 클라우드에 문제가 발생하면 다 멈춰버리는 그러한 상황을 막을 수 있다.
엣지 컴퓨팅 노드
노드 : 사람 및 사물과 중앙 클라우드 사이의 위치에 존재하여 서비스를 제공하기 위한 저장, 컴퓨팅, 네트워킹 자원을 가진 개체.
해당 노드에선 사람 및 사물들에 대해서 끊김없는 상호 간의 연결을 고려할 줄 알아야 한다.
또한 데이터를 수집, 분류할 뿐만 아니라 자체적으로 분석하여 지능을 형성할 줄 알아야 한다.
마지막으로 얻어진 지능으로 최적의 서비스를 제공하고, 이 서비스가 유지될 수 있도록 자원의 배치 및 제어를 할 줄 알아야 한다.

Q. AI 기반 상황인지? 트래픽을 인지하고 있는다는 뜻인가?
위의 개념도에서 SD-WAN 연결이라는 것을 보니 생각난건데,
예전부터 궁금했던 SDN(Software Defined Network)가 뭘까?
Q. SDN이란
개인생각) "소프트웨어로 정의된 네트워크". 네트워크에서 하드웨어와 같은 것들이 없는 네트워크인가? 라우터 이런게 다 가상화가 된?
이게 어떻게 가능할지, 감이 안 온다.
개방형 API(오픈플로우)를 통해 네트워크의 트래픽 전달 동작을 소프트웨어 기반 컨트롤러에서 제어/관리하는 접근방식.
트래픽 경로를 지정하는 컨트롤 플레인과 트래픽 전송을 수행하는 데이터 플레인이 분리되어 있다.
따라서 네트워크의 세부 구성정보에 얽매이지 않고 요구사항에 따라 네트워크를 관리할 수 있다.

좀 애매한 것 같아서, 더 찾아봤다.

https://youtu.be/I6UJB9mIRQs?si=bPSqNz-CCim0OZXE
이 유튜브가 확실하게 개념을 심어준 듯..!
[SDN 정리]
SDN이란?
기존 네트워킹 : 통합 하드웨어와 소프트웨어를 사용해 여러 라우터와 스위치에 데이터 트래픽을 전송.
SDN은 이런 데이터 트래픽 전송을, 네트워크를 관리하는 제어 영역과 트래픽이 통과하는 데이터 영역으로 분리해서,
데이터 센터의 모든 네트워크 제어 영역을 스마트 컨트롤러라는 전용 소프트웨어가 관리하는 것을 말한다.
그러니까 스마트 컨트롤러와 라우터 및 스위치로 구성된 네트워크를 말하는 것이다.
요즘은 SD-WAN이 사용되는데, 최근 기업이 자사와의 연결 방식을 통제하는 데 사용된다.
장점은?
1) 동적으로 네트워크를 축소 및 확장 가능하다
2) 특정 어플리케이션 사용례에 맞춰 컨트롤러와 연결된 LAN이나 WAN에 맞게 네트워크 조정을 할 수 있고,
3) 개별 네트워크에 보안 정책을 적용할 수 있게 된다.
2. 에지 네트워크 컴퓨팅 기술 동향
1. ETSI(European Telecommunications Standards Institute)는 5G 이동통신에 엣지 컴퓨팅 기능을 추가하는 MEC와 관련된 표준화를 진행했다.
MEC 표준의 특징은 산업체의 서비스 시나리오와 PoC(Proof of Concepts)를 병행하여 진행하는데, MEC-ISG로 시작되는 표준 문서가 산업규격 그룹에서 만든 문서이다.
2. ITU-T는 엣지 컴퓨팅에 인공지능 지원을 목표로 ML 및 고급 네트워킹 기능을 갖춘 IEC(Intelligent Edge Computing)을 작업 중에 있다.
엣지 컴퓨팅의 핵심인 컴테이너 기술과 ML 기술을 개발 중.
3. CISCO에 의해 소개된 기술인 Fog Computing도 초기에는 클라우드 서버와 네트워크 엣지 디바이스들 사이의 연산, 저장 및 네트워킹 서비스를 제공하기 위한 클라우드 컴퓨팅의 확장 기능으로 소개되었다.
포그 컴퓨팅은 저지연 서비스에 사용될 수 있는 장점을 가지며 증강 현실 및 실시간 비디오 분석 등과 같은 곳에 적용하고 있다.
4. Open Edge Computing Initiative에선 Cloudlet이라는 소형 데이터센터 기술을 구현하며 이를 기반으로 많은 기업들과 함께 OECI를 구성했다. (최근 정체된 모습을 보이긴 함)
5. 마이크로소프트는 Azure IoT Edge라는 엣지 플랫폼을 개발했다.
Q. Edge Platform?
A. 데이터 수집, 분석 및 추론을 도와주는 플랫폼.
이 플랫폼은 클라우드에서 데이터의 고급 분석, 기계 학습 및 인공지능 모델을 학습한 후에 IoT Edge에 컨테이너를 활용해 배포하고, Edge에서는 인공지능을 활용한 고급 데이터 분석을 수행한다.
6. 아마존은 AWS Greengrass 솔루션을 보유하고 있는데, AWS 클라우드 기능을 로컬 디바이스로 확장하여 로컬 컴퓨팅, 메시징, 데이터 캐싱, 동기화 및 인공지능 추론 기능을 구현했다.
=> 이젠 BS가 없어질 것 같다는 생각이 든다. 디바이스들이 점점 기능이 좋아지고 가지는 데이터 정보량이 많아질수록, 기지국 없이도 edge-to-edge를 찾아나가며 서로 통신을 할 수 있지 않을까? 그러면 결국 셀을 관리하는 기지국은 필요가 없어지게 될 것 같은데..
아무튼 이런 IoT 디바이스가 아직까진 많이 사용되지 않지만, 이제 이것들이 통용되는 세상이 온다면 중앙집중식으론 데이터 관리가 쉽지 않을 것이고, 이제 엣지 디바이스들끼리 알아서 스스로 일을 다 처리해야 할 것 같다.
기업들은 이것을 이룰 수 있는 방법들을 찾아나서는 중인 것 같음.
3. 지능형 엣지 컴퓨팅 및 네트워킹 기술
1) 분산 인공 지능 처리 기술
DNN은 최근 많이 사용되는 기계 학습 기법 중 하나.
(MLP의 확장형이라고 봐도 됨)
이 기법은 연산 과정에서 많은 계산량과 저장공간, 에너지 소모를 필요로 하며,
이들 요구사항은 제한된 컴퓨팅 자원과 저장 공간을 가지고 빠른 연산과 저장공간을 제공할 수 있는 능력.
해결책 : (Local, Edge, Cloud) Exit Protocol
=> 클라우드와 엣지 노드 간에 지능적 협력을 통한 분산 처리가 가능해야 한다.
: 엣지 노드에서 DNN의 초반 layer 연산 과정을 거치다가, 특정 layer에서 중간 처리 결과를 기반으로 정확도를 계산.
: 이후 임계치보다 높으면 연산을 멈춘다.
: 임계치보다 정확도가 낮으면, 해당 layer까지 처리된 중간 결과를 클라우드러 전송하고 클라우드에서는 이후 layer 연산을 진행.
: Local Exit, Cloud Exit과 같이 중간 중간 확인하고 Stop하거나 Toss하는 방법들이 존재.

또 다른 문제점은 End-to-End 지연 또는 엣지 노드의 에너지 소모를 최소화하는 것.
DNN의 어느 Layer을 기준으로 엣지 노드와 클라우드가 나누어 연산할 것인지에 대한 방안이 필요하다.
해결책 : 각 layer들의 computational Latency와 Output Data Size에 대한 특성 실시간 파악
=> 이런 layer별 특성은 DNN 아키텍처에 따라 달라지며, layer별로 Input Size, Filter 개수, Filter 크기 등을 미리 profiling하여, layer 별로 computational Latency 또는 에너지 소모 예측 모델을 만들어야 한다.
: 현재 엣지 노드의 자원 사용 상황, bandwidth, application load 등을 고려하여 최적화하는 것을 AI 모델과 함께 평가하고 예측하기.
2) 가상화 기반 마이크로 서비스 기술
현재의 엣지 컴퓨팅 서비스 : COTS 하드웨어 상에 가상화된 형태로 동작.
즉, 엣지 노드에는 COTS 하드웨어들이 배치되고 실제로 서비스를 수행하는 단위 기능은 Virtual Machine이나 Container 형태로 가상화되어서 이들 물리 인프라 상에서 동작, 이들 기능이 서로 네트워킹을 하기 위해선 SDN 등으로 제어된다.
또한 사용자들이 느끼고 경험하는 특정 서비스는 하나 이상의 마이크로 서비스로 구성되어서 동작한다.

마이크로 서비스란 서비스를 구성하는 최소 기능 단위로써 이들 기능이 서로 밀접한 관계를 가지지 않도록 설계되었다.
빠른 배포 및 수정이 가능하도록 서비스를 구성하는 것을 마이크로 서비스라고 한다.
마이크로 서비스는 실제로 물리 인프라상에서 가상화된 VF(Virtual Function)으로 동작한다. -> 그림 3
(마이크로 서비스 = 하나의 VF / 서비스 = 여러 개의 VF)
특정 서비스를 엣지 인프라 상에서 동작시키는 것은 그 서비스와 서비스를 구성하는 VF들의 요구사항을 만족하도록 인프라 상에 분산 배치하는 것을 의미한다.
서비스를 엣지 인프라에 분산 배치해서 수행하기 위해선..
1) 서비스를 설계하는 단계
: 서비스를 구성할 VF들을 등록하는 단계
: VF들이 인프라 상에서 올바르게 수행될 수 있는가를 검증하는 단계
: 등록된 VF들을 이용해서 하나의 서비스를 제작하는 단계
: 제작된 서비스를 검증하는 단계
: 서비스에 적용할 정책을 정의하는 단계
: 정의된 정책을 검증하는 단계
2) 실제로 서비스를 운용하는 단계
=> 서비스 설계 단계를 통해서 등록된 서비스들은 자원의 요구사항과 정책 요구사항을 기준으로 엣지 인프라 상에 배치되고 실행.
: 서비스 시작 및 종료 제어
: 자원들의 형상 제어 기능
: 서비스를 구성하는 기능들이 정상 수행되는지 모니터링
3) 실시간 최적화 단계
=> 서비스들의 배치를 결정하는 단계
: 서비스를 구성하는 VF들은 요구사항과 자원의 상황에 따라서 엣지 인프라에 배치될 수도 있고, 클라우드에 배치될 수도 있는데, 이들 VF의 배츠는 동적 마이그레이션을 통해 상황에 따라서 변경된다.
: 새로운 서비스는 관리자의 요청에 따라 배치가 가능, 사용자나 주변 이벤트의 상황을 기준으로 서비스가 배치가 가능.
=> 자동 서비스 추천 기능은 ML 기술을 사용해서 처리된다.
[정리]
서비스는 그것을 구성하는 마이크로 서비스들로 만들어진다는 것. [소프트웨어 공학 때 배웠던 내용]
마이크로 서비스를 요구에 맞춰서 만들고 배치하는 것.
배치할 때 어디에 배치할 지도 신경써야 한다는 것. [머신러닝]
3) 동적 자원 자율관리 기술
클라우드 컴퓨팅에선 다양한 어플리케이션들이 공통된 하드웨어 자원을 공유하며, 가상화 기술을 통해 자원을 상호 분리하며 각각 할당된 자원 속에서 어플리케이션이 수행된다.
분산 엣지 컴퓨팅은 클라우드 컴퓨팅 자원보다 상대적으로 자원이 제한적이며, 서로 다른 자원을 가지는 다수의 엣지 노드들을 통해 여러 어플리케이션이 수행되어야 함.
따라서 서비스 어플리케이션이 배치되는 경우뿐만 아니라, 수행 중에도 각 어플리케이션의 요구사항을 만족하기 위한 동적 자원 관리 기술이 요구된다.
동적 자원 관리 기술
: 최적 지원 구성을 위한 자원 최적화 기능, 서비스 품질 만족을 위한 자동 스케일링 기능, 서비스 요구사항 구성을 위한 서비스 정책 기능, 실시간 서비스 상태 감시 기능 등을 포함.
최근 분산 컴퓨팅 환경에서 인공지능을 활용한 동적 자원 관리 기능에 관한 많은 연구가 진행 중이다.

(그림 4)는 어플리케이션마다 서로 다른 성능 요구사항을 가지고 있는 상황에서 제한된 자원을 최적으로 할당하여 성능 요구사항을 만족하기 위한 동적 자원 자율관리 구조를 나타낸다.
<구성>
1) Controller
: 어플리케이션 요구사항, 현재 자원 사용 상황, 서비스 품질 등을 입력으로 받음.
: 알고리즘 저장소에서 적합한 스케줄링 알고리즘을 선택
: 알고리즘을 수행
2) Monitor
: 시스템의 자원사용 상황과 서비스 품질 등의 정보를 수집하고 이를 Controller에 전달.
: Controller의 정보를 지속적으로 업데이트
3) Allocator
: Controller 알고리즘에 의해 결정된 자원 할당량을 바탕으로 실제 응용서비스를 배치한다.
: 사용자의 개입 없이 인공지능을 활용하여 반복학습.
분산 엣지 컴퓨팅 환경에선 위치 정보를 고려하여 자원을 할당하고 서비스를 배치하는 것도 중요한데,
위치 기반으로 근거리의 엣지 컴퓨팅 환경을 클러스터로 구성하고, 하나의 클러스터로 들어온 서비스 플로우는 최대한 같은 클러스터 내에서 서비스받도록 유도하는 것 + 클러스터에 존재하지 않는 서비스 기능을 사용해야 할 경우 가까운 클러스터에 존재하는 기능을 할당해서 전송 지연을 줄이는 방법 등이 필요할 것이다.
4) 분산 엣지 네트워킹 기술
WAN의 엣지에 연결된 장치인 CPE(Customer Premises Equipment)(공유기, 허브, 모뎀 등등)가 위치하는 곳은 통신 서비스 제공자의 분배 기반 구조나 중앙 시설에 위치한 장비와 고객의 장비가 분리되는 건물 내부 지점.
CPE를 구성하는 라우터, WAN 가속기, Firewall 등 네트워크 장비들은 물리적으로 분리되어있고 각각의 장비들은 설치, 연결, 설정 등등 구축 비용과 운영 비용이 많이 든다.
vCPE기술은 CPE에 VNF 기반을 한 것.
vCPE는 각 네트워크 장비 기능을 가상화하여 전용 하드웨어 없이 소프트웨어만 범용 서버에 올려 네트워크 기능을 서버에서 소프트웨어(VNF)로 대체하는 것으로, 기존의 장비들의 네트워크 기능을 VNF가 수행한다.
만약 기업 고객이 Firewall 서비스를 요청하면, NFVO가 Virtual Firewall vCPE를 범용 서버로 원격 설치해주는 셈이다.
(원래는 직접 기사님이 오셔서 설치했지만)
SD-WAN은 고비용의 MPLS(Multi-Protocol Label Switching)과 저비용의 초고속 인터넷 회선을 이용해 기업이 사설 오버레이 네트워크를 생성할 수 있게 해주는 네트워크 기능을 의미하는데, 일반적으로 중앙의 SD-WAN 컨트롤러와 각 엣지 장치로 구성된다.
(위에서 해서 편하게 알아들을 수 있다.)
최종 정리 (나의 생각)
논문을 다시 돌아보았을 때, 확실히 엣지 컴퓨팅은 아직까지 발전이 꽤나 필요해 보인다.
왜냐하면, 엣지 디바이스들이 엄청 빠르게 발전하고 있기 때문.
아직까지 IoT IoT 하지만, 실제로 우리 사이에 통용되고 있는 것들은 하나도 없다.
지금보다 더 빠른 computational calculation과 더 많은 data load가 가정인 그런 IoT 디바이스들이 우리 실생활에 보급이 되기 위해선, 그 데이터와 계산 능력을 지원하는 통신 기술이 꼭 필요하다고 생각한다.
이전에 논문 리뷰했던 연합학습과 같은 것은 분산 컴퓨팅을 이용해서 컴퓨팅 계산을 분산시켜서 하는 것이지만, 엣지 노드가 클라우드가 되고 이 클라우드가 서버가 되어 그 속에서 분산 컴퓨팅을 하는 것도 꽤 발전 가능성이 있어보였다.
논문에서 가장 재밌던 부분이 위와 관련된 부분들이었는데, 나중에는 BS가 사라질 수도 있지 않을까 싶었다.
기기들이 서로 기기들을 찾아가며 통신을 이어나가 송신하려고 하는 노드까지 나아가는 방식으로.
그러기 위해선 시골과 같은 곳을 또 고려해서 블루투스보다 더 길고, LoRaWAN보다는 짧은.. 그런 통신 프로토콜이 새로 나와야 한다고 생각한다.
모처럼만에 엣지 컴퓨팅은, 나의 호기심을 불러 일으켰고, 졸업 논문으로 써보고 싶은 연구 주제를 던져줬다.
뭐, 이걸 연구할지는 미지수긴 하지만.
'Infrastructure > Networking' 카테고리의 다른 글
| [책 review] #3. Data-Link Layer에 대하여 (3) | 2024.03.05 |
|---|---|
| [통신 네트워크 설계] Chapter Review (0) | 2024.03.04 |
| [논문 리뷰] 통신 특징으로 IoT device의 Identity 식별하기 (1) | 2024.02.27 |
| [책 review] #2. Physical Layer에 대하여 (1) | 2024.02.21 |
| [책 review] #1. Introduction (0) | 2024.02.19 |