KR20220141227A - Mec 서비스 메시 프레임워크에서의 탈중개화된 증명 - Google Patents

Mec 서비스 메시 프레임워크에서의 탈중개화된 증명 Download PDF

Info

Publication number
KR20220141227A
KR20220141227A KR1020220030578A KR20220030578A KR20220141227A KR 20220141227 A KR20220141227 A KR 20220141227A KR 1020220030578 A KR1020220030578 A KR 1020220030578A KR 20220030578 A KR20220030578 A KR 20220030578A KR 20220141227 A KR20220141227 A KR 20220141227A
Authority
KR
South Korea
Prior art keywords
mec
network
attestation
configuration
edge
Prior art date
Application number
KR1020220030578A
Other languages
English (en)
Inventor
밀티아디스 필립포우
다리오 사벨라
키센 말루어
네드 엠 스미스
Original Assignee
인텔 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔 코포레이션 filed Critical 인텔 코포레이션
Publication of KR20220141227A publication Critical patent/KR20220141227A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

머신 판독 가능 저장 매체는 MEC 네트워크에서 서비스 메시 컨트롤 플레인(SMCP)을 구현하도록 동작가능한 컴퓨팅 노드의 프로세싱 회로에 의해 실행될 경우, 프로세싱 회로로 하여금 배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하게 한다. 사이드카 프록시는 MEC 호스트 상에서 인스턴스화된다. 증거 정보는 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 수집되고, 증거 정보는 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함한다. 무결성 리포트를 생성하기 위해 배치 가능한 인스턴스의 검증된 구성을 사용하여 증거 정보의 증명이 수행된다. 무결성 리포트에 기초하여 증명 토큰이 생성되고, MEC 호스트로 전송하기 위해 인코딩된다. 증명 토큰은 사이드카 프록시를 승인하여 배치 가능한 인스턴스와 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득한다.

Description

MEC 서비스 메시 프레임워크에서의 탈중개화된 증명{DISINTERMEDIATED ATTESTATION IN A MEC SERVICE MESH FRAMEWORK}
본 출원은 발명의 명칭이 "MEC 서비스 메시 프레임워크에서의 탈중개화된 증명"인 2021년 4월 12일 출원한 미국 가특허 출원번호 제63/173,572호의 우선권을 주장하며, 이는 참조로서 본 명세서에 포함된다.
양태들은 에지 컴퓨팅 및 차세대(NG) 통신을 포함하는 무선 통신에 관한 것이다. 일부 측면은 MEC 네트워크의 MEC(Multi-Access Edge Computing) 서비스 메시 프레임워크에서의 탈중개화된 증명과 관련이 있다.
일반적인 수준에서 에지 컴퓨팅은, 총 소유 비용을 최적화하고 애플리케이션 지연을 줄이며, 서비스 기능을 개선하고, 보안 또는 데이터 개인 정보 보호 요구 사항에 대한 규정 준수를 개선하기 위해, 컴퓨팅 및 저장 리소스를 엔드포인트 장치(예컨대, 소비자 컴퓨팅 장치, 사용자 장비 등)에 더 가까이로 이동시키는 것을 의미한다. 일부 시나리오에서, 에지 컴퓨팅은 다양한 유형의 저장 및 컴퓨팅 리소스 사이에서 애플리케이션을 조율하고 관리하는 클라우드같은 분산 서비스를 제공한다. 그 결과, 이전에 대규모 원격 데이터 센터에서만 사용할 수 있었던 강력한 컴퓨팅 리소스가 엔드포인트에 더 가깝게 이동해서 네트워크의 "에지"에서 소비자가 사용할 수 있게 되었으므로, 에지 컴퓨팅의 일부 구현을 "에지 클라우드" 또는 "포그"라고도 한다.
모바일 네트워크 설정에서의 에지 컴퓨팅 사용 사례는 "모바일 에지 컴퓨팅"이라고도 하는 MEC 접근 방식과의 통합을 위해 개발되었다. MEC 접근 방식은 애플리케이션 개발자와 콘텐츠 제공자가 네트워크 에지의 동적 모바일 네트워크 설정에서 컴퓨팅 기능과 정보 기술(IT) 서비스 환경에 액세스할 수 있도록 설계되었다. MEC 시스템, 플랫폼, 호스트, 서비스 및 애플리케이션의 작동을 위한 공통 인터페이스를 정의하기 위해 ETSI(European Telecommunications Standards Institute) ISG(industry specification group)에 의해 제한된 표준이 개발되었다.
에지 컴퓨팅, MEC 및 관련 기술은 기존 클라우드 네트워크 서비스 및 광역 네트워크 접속에서 제공되는 것보다 감소된 지연, 증가된 응답성 및 더 많은 가용 컴퓨팅 성능을 제공하려고 시도한다. 그러나, 이동성 및 동적 론칭 서비스를 일부 모바일 사용 및 장치 처리 사용 사례에 통합하면, 오케스트레이션(orchestration), 기능 조정 및 리소스 관리와 관련하여, 특히 많은 참가자(장치, 호스트, 테넌트, 서비스 제공자, 운영자)가 참여하는 복잡한 이동성 설정과 관련하여 한계나 문제가 있어왔다.
이와 유사하게, 사물 인터넷(IoT) 네트워크 및 장치는 다양한 엔드포인트로부터 분산 컴퓨팅 구성을 제공하도록 설계된다. IoT 장치는 네트워크에서 통신할 수 있는 물리적 또는 가상화된 개체이며, 실제 환경에서 데이터를 수집하거나 작업을 수행하는 데 사용될 수 있는 센서, 액추에이터 및 기타 입력/출력 구성요소를 포함할 수 있다. 예를 들어, IoT 장치는 건물, 차량, 패키지 등과 같은 일상적인 사물에 내장되거나 부착되어 이들 사물에 대한 추가적인 수준의 인공적인 감각 인식을 제공하는 저전력 엔드포인트 장치를 포함할 수 있다. 최근에, IoT 장치가 대중화되면서 이러한 장치를 사용하는 애플리케이션이 확산되었다.
다양한 에지(Edge), 포그(Fog), MEC, 프라이빗 엔터프라이즈 네트워크(소프트웨어로 정의된 광역 네트워크, 또는 SD-WANs) 및 IoT 네트워크, 장치 및 서비스의 배치로, 네트워크의 에지에서 발생하는 몇몇 고급 사용 사례 및 시나리오가 도입되었다. 그러나, 이러한 고급 사용 사례는 다른 많은 문제들 중에서 보안, 처리 및 네트워크 리소스, 서비스 가용성 및 효율성과 관련된 일부 대응하는 기술적인 과제가 생겨났다. 하나의 그러한 과제가 MEC 서비스 메시 프레임워크에서의 탈중개화된 증명이다.
도면은 반드시 축척으로 도시되어 있지는 않고, 도면에서, 여러 도면에서 유사한 도면번호는 유사한 구성요소를 나타낼 수 있다. 상이한 접미사를 가진 유사한 번호는 유사한 구성요소의 상이한 예를 나타낼 수 있다. 첨부 도면에서 일부 실시예는 예로서 도시되며, 제한은 아니다.
도 1은 탈중개화된 증명을 지원하는 서비스 메시 컨트롤 플레인(SMCP) 기능을 사용하는 에지 컴퓨팅에 대한 에지 클라우드 구성의 개요를 도시한 것이다.
도 2는 엔드포인트, 에지 클라우드 및 클라우드 컴퓨팅 환경 사이의 운영 계층을 도시한 것이다.
도 3은 SMCP 기능을 사용하는 에지 컴퓨팅 시스템에서 네트워킹 및 서비스에 대한 예시적인 접근 방식을 도시한 것이다.
도 4는 다수의 에지 노드 및 다수의 테넌트 사이에 구성된 SMCP 기능을 갖는 에지 컴퓨팅 시스템에서 가상 에지 구성의 배치를 도시한 것이다.
도 5는 에지 컴퓨팅 시스템에서 컨테이너를 배치하는 다양한 컴퓨팅 구성을 도시한 것이다.
도 6은 SMCP 기능을 사용하는 에지 컴퓨팅 시스템에서 애플리케이션에 대한 모바일 액세스를 포함하는 컴퓨팅 및 통신 사용 사례를 도시한 것이다.
도 7은 일부 실시예에 따른 MEC 서비스 아키텍처를 도시한 것이다.
도 8a는 에지 컴퓨팅 시스템의 컴퓨팅 노드에 배치된 컴퓨팅을 위한 예시적인 구성요소의 개요를 제공한다.
도 8b는 에지 컴퓨팅 시스템에서 컴퓨팅 장치 내의 예시적인 구성요소의 추가 개요를 제공한다.
도 8c는 일부 실시예에 따른 소프트웨어 배포 플랫폼을 도시한 것이다.
도 9a는 일 실시예에 따른, 탈중개화된 증명을 지원하는 MEC 네트워크 아키텍처를 도시한 것이다.
도 9b는 일 실시예에 따른, NFV(Network Function Virtualization) 환경에서의 MEC 참조 아키텍처를 도시한 것이다.
도 9c는 일 실시예에 따른, MEC 연합으로 구성된 도 9a의 MEC 네트워크 아키텍처의 변형을 예시한다.
도 10은 실시예에 따른 분산 마이크로서비스 환경을 도시한 것이다.
도 11은 일 실시예에 따른, 마이크로서비스가 사이드카 프록시 메시에 의해 상호연결되는 분산 마이크로서비스 환경을 도시한 것이다.
도 12는 일 실시예에 따른, 대응하는 사이드카 프록시를 사용하는 마이크로서비스들 사이의 예시적인 통신을 도시한 것이다.
도 13은 일 실시예에 따른, 서비스 메시의 컨트롤 플레인 및 데이터 플레인을 도시한 것이다.
도 14는 일 실시예에 따른, 격리된 서비스 메시 컨트롤 플레인을 사용하는, 증명된 마이크로서비스 제어를 갖는 MEC 아키텍처에서 서비스 메시의 탈중개화된 증명 동작을 도시한 것이다.
도 15는 일 실시예에 따른, 독립형 기능 엔티티로서 구현되는 서비스 메시 컨트롤 플레인의 다이어그램이다.
도 16은 일 실시예에 따른, 데이터 플레인 보안을 구현하는 증명된 마이크로서비스 사이드카 프록시의 프로비저닝을 도시한 것이다.
도 17은 일 실시예에 따른, 독립형 서비스 메시 컨트롤 플레인을 사용하여 서비스 메시 보안 정책을 구현하는 MEC 시스템의 다이어그램이다.
도 18은 일 실시예에 따른, MEC 오케스트레이터의 일부인 서비스 메시 컨트롤 플레인을 사용하여 서비스 메시 보안 정책을 구현하는 MEC 시스템의 다이어그램이다.
도 19는 일 실시예에 따른, MEC 연합 브로커 또는 MEC 연합 관리자의 일부인 MEC 연합-전체 연합 서비스 메시 컨트롤러를 사용하여 MEC 연합에 걸친 서비스 메시의 배치도이다.
도 20은 일 실시예에 따른, MEC 네트워크에서 SMCP 구성을 수행하기 위한 방법의 흐름도이다.
다음의 실시예들은 일반적으로 MEC 인프라스트럭처와 연관된 MEC 서비스 메시 프레임워크에서 탈중개화된 증명을 제공하기 위한 방법, 구성 및 장치에 관한 것이다. 다음 예들은 탈중개화된 증명 지원을 제공하기 위한 SMCP 기능의 특정 구성 및 사용을 소개한다. 실시예들은 도 1 내지 도 8c를 참조하여 아래에서 설명하는 임의의 시스템에 도시된 것과 유사한 시스템에서 구현될 수 있다. VIS 기능을 사용하거나, 구성하거나 또는 수행하는 다양한 네트워크 엔티티에 대해서는 적어도 도 9a 내지 도 20과 관련하여 아래에서 추가적으로 설명한다.
도 1은 탈중개화된 증명을 지원하는 SMCP 기능을 사용하는 에지 컴퓨팅에 대한 구성의 개요를 보여주는 블록도(100)이며, 이는 다음의 많은 예에서 "에지 클라우드"로 지칭되는 처리 계층을 포함한다. 도시된 바와 같이, 에지 클라우드(110)는 액세스 포인트 또는 기지국(140), 로컬 프로세싱 허브(150), 또는 중앙국(120)과 같은 에지 위치에 함께 위치하며, 따라서 다수의 엔티티, 장치 및 장비 인스턴스를 포함할 수 있다. 에지 클라우드(110)는 클라우드 데이터 센터(130)보다 엔드포인트(소비자 및 생산자) 데이터 소스(160)(예컨대, 자율 차량(161), 사용자 장비(162), 비즈니스 및 산업 장비(163), 비디오 캡처 장치(164), 드론(165), 스마트 도시 및 빌딩 장치(166), 센서 및 IoT 장치(167) 등)에 훨씬 더 가깝게 위치한다. 에지 클라우드(110)의 에지에서 제공되는 컴퓨팅, 메모리 및 저장 리소스는 엔드포인트 데이터 소스(160)에 의해 사용되는 서비스 및 기능에 대한 초저지연 응답 시간을 제공하는 데 중요하며, 뿐만 아니라 에지 클라우드(110)에서 클라우드 데이터 센터(130)로 향하는 네트워크 백홀 트래픽을 감소시켜 다른 이점들 중에서 에너지 소비 및 전체 네트워크 사용을 개선한다.
컴퓨팅, 메모리 및 저장부는 희소한 리소스이며, 일반적으로 에지 위치에 따라 감소한다(예컨대, 중앙국에서보다, 기지국에서보다 소비자 엔드포인트 장치에서 사용 가능한 프로세싱 리소스가 더 적음). 그러나, 에지 위치가 엔드포인트(예컨대, 사용자 장비(UE))에 더 가까울수록 공간 및 전력이 더 많이 제한된다. 따라서, 에지 컴퓨팅은 지리적으로나 네트워크 액세스 시간 면에서나 더 가까이 위치하는 리소스를 더 많이 분산시킴으로써, 네트워크 서비스에 필요한 리소스의 수를 줄이려고 시도한다. 이런 방식으로, 에지 컴퓨팅은 적절한 경우 컴퓨팅 리소스를 워크로드 데이터로 가져오거나 워크로드 데이터를 컴퓨팅 리소스로 가져오려고 시도한다.
다음은 다수의 잠재적 배치를 커버하고 일부 네트워크 운영자 또는 서비스 제공자가 자체 인프라에서 가질 수 있는 제한을 해결하는 에지 클라우드 아키텍처의 양태들을 설명한다. 이들은 에지 위치에 따른 다양한 구성(예를 들어 기지국 수준의 에지는, 예컨대, 다중 테넌트 시나리오에서 더 제한적인 성능 및 기능을 가질 수 있기 때문에); 에지 위치, 위치 티어 또는 위치 그룹에 사용할 수 있는 컴퓨팅, 메모리, 저장부, 패브릭, 가속 또는 이와 유사한 리소스 유형에 기초한 구성; 서비스, 보안, 관리 및 오케스트레이션 기능; 및 엔드 서비스의 사용성 및 성능을 달성하기 위한 관련 목표를 포함한다. 이들 배치는 지연, 거리 및 타이밍 특성에 따라 "니어 에지(near edge)", "클로즈 에지(close edge)", "로컬 에지(local edge)", "중간 에지(middle edge)" 또는 "파 에지(far edge)" 계층으로 간주될 수 있는 네트워크 계층에서 처리를 수행할 수 있다.
에지 컴퓨팅은 일반적으로 기지국, 게이트웨이, 네트워크 라우터 또는 데이터를 생성하고 소비하는 엔드포인트 장치에 훨씬 더 가까운 기타 장치에서 구현되는 컴퓨팅 플랫폼(예컨대, x86 또는 ARM 컴퓨팅 하드웨어 아키텍처)의 사용을 통해 네트워크의 "에지"에서 또는 더 가까이에서 컴퓨팅이 수행되는 개발 패러다임이다. 예를 들어, 에지 게이트웨이 서버는 접속된 클라이언트 장치에 대한 저지연 사용 사례(예컨대, 자율 주행 또는 비디오 감시)를 위해 실시간으로 계산을 수행하도록 메모리 및 저장 리소스의 풀을 구비할 수 있다. 일례로, 기지국은 더 이상 백홀 네트워크를 통해 데이터를 통신하지 않고, 접속된 사용자 장비에 대한 서비스 워크로드를 직접 처리하도록 컴퓨팅 및 가속 리소스로 보강될 수 있다. 다른 예로서, 중앙국 네트워크 관리 하드웨어는, 가상화된 네트워크 기능을 수행하고 접속된 장치에 대한 서비스 및 소비자 기능 실행을 위한 컴퓨팅 리소스를 제공하는 표준화된 컴퓨팅 하드웨어로 대체될 수 있다. 에지 컴퓨팅 네트워크 내에서, 컴퓨팅 리소스가 데이터로 "이동"되는 서비스 시나리오와 데이터가 컴퓨팅 리소스로 "이동"되는 시나리오가 있을 수 있다. 일례로, 기지국 컴퓨팅, 가속 및 네트워크 리소스는, 코너 케이스, 긴급 상황을 관리하거나 훨씬 더 긴 구현 수명에 대한 배치된 리소스의 수명을 제공하기 위해 휴면 용량(가입, 주문형 용량)을 활성화하여 필요에 따라 워크로드 수요에 맞게 확장하기 위한 서비스를 제공할 수 있다.
일부 양상에서, 에지 클라우드(110) 및 클라우드 데이터 센터(130)는 서비스 메시 컨트롤 플레인(SMCP) 기능(111)으로 구성될 수 있다. 예시적인 SMCP 기능은, 서비스 메시 데이터 플레인에 분산되는, 서비스들 사이의 연결을 다루는 서비스 및 보안 정책의 구성 및 관리를 포함한다. 일부 실시예에서, SMCP 기능(111)의 사용과 연관된 개시된 기술은 서비스 메시 패러다임을 이용함으로써 MEC 아키텍처에 배치될 때 마이크로서비스의 네트워크를 보호하기 위해 사용될 수 있다. SMCP 기능은, MEC 환경의 서비스 메시 배치에서 보안을 강화하기 위해, 하드웨어 RoT(Root-of-Trust) 블록과 같은 하드웨어 보안 모듈(HSM)과 관련된 증명 메커니즘에서 사용될 수 있다. SMCP 기능(111)은 증명을 통한 마이크로서비스 무결성의 성공적인 검증에 의존하는 보안의 시행을 담당하는 사이드카 프록시의 (예컨대, 마이크로서비스로 구성된 VM과 같은 배치 가능한 인스턴스로의) 프로비저닝을 더 포함한다. SMCP 기능은 MEC 기능 엔티티 및 참조 포인트는 물론 다양한 보안 정책 시행 도메인(MEC 호스트, MEC 시스템, MEC 연합)을 사용하여 탈중개화된 증명을 구성하는 것을 포함한다. 일부 양상에서, SMCP 기능(111)은 드라이버 VM/컨테이너(예컨대, 마이크로서비스를 실행하는 데 사용되는 배치 가능한 인스턴스)의 하드웨어 증명을 하게 하도록 사이드카 프록시를 구성하는 데 사용될 수 있다. 서비스 및 보안 정책을 관리하기 위한 SMCP 기능의 사용과 관련된 추가적인 기술은 도 9a 내지 도 20과 관련하여 설명된다.
도 2는 엔드포인트, 에지 클라우드 및 클라우드 컴퓨팅 환경 사이의 운영 계층을 도시한 것이다. 구체적으로, 도 2는 네트워크 컴퓨팅의 다수의 예시적인 계층들 사이에 에지 클라우드(110)를 활용하는 컴퓨팅 사용 사례(205)의 예를 도시한다. 이들 계층은 데이터 생성, 분석 및 데이터 소비 활동을 수행하기 위해 에지 클라우드(110)에 액세스하는 엔드포인트(장치 및 사물) 계층(200)에서 시작한다. 에지 클라우드(110)는 물리적으로 근접한 에지 시스템에 위치한 게이트웨이, 온프레미스 서버 또는 네트워크 장비(노드(215))를 갖는 에지 장치 층(210); 기지국, 무선 처리 장치, 네트워크 허브, 지역 데이터 센터(DC) 또는 로컬 네트워크 장비(장비(225))를 포함하는 네트워크 액세스 계층(220); 및 그 사이에 위치하는 (상세하게 도시되어 있지 않지만 층(212) 내의) 임의의 장비, 장치 또는 노드와 같은 다수의 네트워크 층에 걸쳐 있을 수 있다. 에지 클라우드(110) 내의 그리고 다양한 계층들 사이의 네트워크 통신은 도시되지 않은 접속 아키텍처 및 기술을 비롯한 임의의 수의 유선 또는 무선 매체를 통해 발생할 수 있다. 통신 사용 사례(205) 중 임의의 것은 SMCP 기능(111)으로 구성될 수 있으며, 이는 오케스트레이션 관리 엔티티로서 구성된 통신 노드 또는 MEC 네트워크 내의 MEC 호스트에 의해 수행될 수도 있고, 또는 컴퓨팅 노드의 보드 관리 컨트롤러(BMC)에 의해 수행될 수도 있다. 예시적인 SMCP 기능은 도 9a 내지 도 20과 관련하여 더 자세히 설명한다.
네트워크 통신 거리 및 처리 시간 제약으로 인한 지연의 예는, 그 범위가 엔드포인트 계층(200) 사이에서 밀리초(ms) 미만에서부터, 에지 장치 계층(210)에서는 5ms 이하, 네트워크 액세스 계층(220)에서의 노드들과 통신할 때에는 10 내지 40ms에 이른다. 에지 클라우드(110) 너머에는 코어 네트워크(230) 및 클라우드 데이터 센터 계층(240)이 있으며, 이들 각각은 증가된 지연 시간을 갖는다(예컨대, 코어 네트워크 계층(230)에서 50-60ms 사이이고, 클라우드 데이터 센터 계층에서는 100ms 이상에 이른다). 그 결과, 코어 네트워크 데이터 센터(235) 또는 클라우드 데이터 센터(245)에서의 동작은 지연이 최소 50~100ms 이상이며, 사용 사례(205)의 많은 시간 임계적(time-critical) 기능을 수행하지 못할 것이다. 이러한 지연 값들 각각은 설명 및 대비를 위해 제공되며, 다른 액세스 네트워크 매체 및 기술을 사용하면 대기 시간을 더욱 줄일 수 있다는 것을 이해할 수 있을 것이다. 일부 예들에서, 네트워크의 제각기의 부분들은 네트워크 소스 및 목적지에 대해 "클로즈 에지", "로컬 에지", "니어 에지", "중간 에지", 또는 "파 에지" 계층들로 분류될 수 있다. 예를 들어, 코어 네트워크 데이터 센터(235) 또는 클라우드 데이터 센터(245)의 관점에서, 중앙국 또는 콘텐츠 데이터 네트워크는 (사용 사례(205)의 장치 및 엔드포인트와 통신할 때 높은 지연 값을 갖는, 클라우드에 "근접한")"니어 에지" 계층 내에 위치하는 것으로 고려될 수 있는 반면, 액세스 포인트, 기지국, 온프레미스 서버 또는 네트워크 게이트웨이는 (사용 사례(205)의 장치 및 엔드포인트와 통신할 때 낮은 지연 값을 갖는 클라우드로부터 "먼") "파 에지" 계층 내에 있는 것으로 고려될 수 있다. "클로즈(close)", "로컬(local)", "니어(near)", "중간(middle)" 또는 "파(far)" 에지를 구성하는 특정 네트워크 계층의 다른 분류는 지연, 거리, 네트워크 홉 수 또는 네트워크 계층(200-240) 중 어느 하나의 소스에서 측정된 다른 측정 가능한 특성에 기초할 수 있다.
다양한 사용 사례(205)는 에지 클라우드를 활용하는 다수 서비스로 인한, 인입 스트림으로부터의 사용 압력 하에 리소스에 액세스할 수 있다. 짧은 지연 결과를 달성하기 위해, 에지 클라우드(110) 내에서 실행되는 서비스는 (a) 우선순위(처리량 또는 지연; 서비스 수준 목표(service level objective) 또는 SLO라고도 함) 및 서비스 품질(QoS)(예컨대, 자율 차량의 트래픽이 응답 시간 요건의 측면에서 온도 센서보다 더 높은 우선순위를 가질 수도 있고, 또는 성능 감도/병목 현상이 애플리케이션에 따라 컴퓨팅/가속기, 메모리, 저장 또는 네트워크 리소스에 존재할 수 있음); (b) 신뢰성 및 탄력성(예컨대, 일부 입력 스트림은 작업을 수행해야 하고 트래픽은 미션 크리티컬 신뢰성으로 라우팅되어야 하며, 반면에 다른 일부 입력 스트림은 애플리케이션에 따라 간헐적인 장애를 허용할 수 있음) 및 (c) 물리적 제약(예컨대, 전력, 냉각 및 폼 팩터) 측면에서 다양한 요건의 균형을 유지한다.
이들 사용 사례에 대한 엔드투엔드 서비스 뷰는 서비스 흐름의 개념을 포함하고 트랜잭션과 연관된다. 트랜잭션은 리소스, 워크로드, 워크플로, 및 비즈니스 기능 및 비즈니스 수준 요건에 대한 관련 서비스뿐만 아니라 서비스를 이용하는 엔티티에 대한 전체 서비스 요구 사항을 자세히 설명한다. 설명된 "조건"에 따라 실행되는 서비스는 서비스 수명 동안 트랜잭션에 대한 실시간 및 런타임 계약 준수를 보장하는 방식으로 각 계층에서 관리될 수 있다. 트랜잭션의 구성 요소가 서비스 수준 협약서(Service Level Agreements, SLA)에 대한 동의를 누락한 경우, 시스템 전체(트랜잭션의 구성 요소)는 (1) SLA 위반의 영향을 이해하고 (2) 시스템의 다른 구성 요소를 보강하여 전체 트랜잭션 SLA를 재개하는 기능을 제공할 수 있으며, (3) 수정 단계를 구현할 수 있다.
따라서, 이러한 변형 및 서비스 특징을 염두에 두고, 에지 클라우드(110) 내의 에지 컴퓨팅은 사용 사례(205)의 다수 애플리케이션(예컨대, 객체 추적, 비디오 감시, 연결된 차량 등)을 제공하고 이에 응답하는 능력을 실시간 또는 거의 실시간으로 제공할 수 있으며, 이들 다수의 애플리케이션에 대한 초저지연 요건을 만족한다. 이들 이점은 지연이나 다른 제한으로 인해 기존 클라우드 컴퓨팅을 활용할 수 없는 완전히 새로운 종류의 애플리케이션(가상 네트워크 기능(VNF), FaaS(Function as a Service), EaaS(Edge as a Service), 표준 프로세스 등)을 가능하게 한다.
그러나, 에지 컴퓨팅의 장점에는 다음과 같은 주의 사항이 있다. 에지에 위치한 장치는 종종 리소스가 제한되므로 에지 리소스 사용에 대한 압박이 있다. 일반적으로 이 문제는 여러 사용자(테넌트) 및 장치에서 사용할 메모리 및 저장 리소스의 풀링을 통해 해결된다. 에지는 전력 및 냉각이 제한될 수 있으므로 전력 사용량은 가장 많은 전력을 소비하는 애플리케이션에서 고려해야 한다. 이들 풀링된 메모리 리소스에는 고유한 전원-성능 트레이드오프가 있을 수 있는데, 이들 중 다수가 더 많은 전력이 더 큰 메모리 대역폭을 필요로 하는 새로운 메모리 기술을 사용할 가능성이 높기 때문이다. 마찬가지로, 에지 위치가 무인일 수 있고 허가된 액세스가 필요할 수도 있기 때문에(예컨대, 제3자(third-party) 위치에 있는 경우), 하드웨어의 향상된 보안 및 신뢰 기반 기능도 필요하다. 이러한 문제는 다중 테넌트, 다중 소유자 또는 다중 액세스 설정의 에지 클라우드(110)에서 확대되는데, 여기서 특히 네트워크 사용량이 동적으로 변동하고 여러 이해 관계자, 사용 사례 및 서비스의 구성이 변경됨에 따라 서비스 및 애플리케이션이 많은 사용자에 의해 요청된다.
보다 일반적인 수준에서, 에지 컴퓨팅 시스템은 클라이언트 및 분산 컴퓨팅 장치로부터의 조정을 제공하는 에지 클라우드(110)(네트워크 계층(200-240))에서 작동하는 전술한 계층에서 임의의 수의 배치를 포함하는 것으로 설명될 수 있다. 하나 이상의 에지 게이트웨이 노드, 하나 이상의 에지 집선 노드(edge aggregation node) 및 하나 이상의 코어 데이터 센터는, 통신 서비스 제공자("telco" 또는 "TSP"), 사물 인터넷 서비스 제공자, 클라우드 서비스 제공자(CSP), 엔터프라이즈 엔티티 또는 기타 여러 엔티티에 의해 또는 이를 대신하여 에지 컴퓨팅 시스템의 구현을 제공하기 위해 네트워크의 계층들에 걸쳐 분산될 수 있다. 에지 컴퓨팅 시스템의 다양한 구현 및 구성은 서비스 목표를 만족하도록 조정될 때와 같이 동적으로 제공될 수 있다.
여기에 제공된 예들에 맞게, 클라이언트 컴퓨팅 노드는 데이터의 생산자 또는 소비자로서 통신할 수 있는 임의의 유형의 엔드포인트 구성요소, 장치, 기기, 또는 다른 것으로 구현될 수 있다. 또한, 에지 컴퓨팅 시스템에서 사용되는 "노드" 또는 "장치"라는 표시가 반드시 그러한 노드 또는 장치가 클라이언트 또는 에이전트/미니언/팔로워 역할로 동작한다는 것을 의미하는 것은 아니며, 오히려, 에지 컴퓨팅 시스템의 임의의 노드 또는 장치는 에지 클라우드(110)를 용이하게 하거나 사용하기 위해 개별 또는 연결된 하드웨어 또는 소프트웨어 구성을 포함하는 개별 엔티티, 노드 또는 서브시스템을 지칭한다.
따라서, 에지 클라우드(110)는 네트워크 계층들(210-230) 사이의 에지 게이트웨이 노드, 에지 집선 노드, 또는 다른 에지 컴퓨팅 노드에 의해 그리고 그 내에서 동작되는 네트워크 구성요소 및 기능적 특징으로부터 형성된다. 따라서, 에지 클라우드(110)는 본 명세서에서 논의되는 무선 액세스 네트워크(RAN) 가능 엔드포인트 장치(예컨대, 모바일 컴퓨팅 장치, IoT 장치, 스마트 장치 등)에 근접하게 위치하는 에지 컴퓨팅 및/또는 저장 리소스를 제공하는 임의의 유형의 네트워크로 구현될 수 있다. 즉, 에지 클라우드(110)는 모바일 캐리어 네트워크(예컨대, GSM(Global System for Mobile Communications) 네트워크, LTE(Long-Term Evolution) 네트워크, 5G/6G 네트워크 등)를 포함하는 서비스 제공자 코어 네트워크로의 진입점 역할을 하는 전통적인 네트워크 액세스 포인트와 엔드포인트 장치를 연결하면서, 저장부 및/또는 컴퓨팅 기능도 제공하는 "에지"로 구상될 수 있다. 다른 유형 및 형태의 네트워크 액세스(예컨대, Wi-Fi, 장거리 무선, 광 네트워크를 포함하는 유선 네트워크)도 이러한 3GPP 캐리어 네트워크 대신에 또는 이와 함께 사용될 수 있다.
에지 클라우드(110)의 네트워크 컴포넌트는 서버, 멀티-테넌트 서버, 어플라이언스 컴퓨팅 장치, 및/또는 임의의 다른 유형의 컴퓨팅 장치일 수 있다. 예를 들어, 에지 클라우드(110)는 하우징, 섀시, 케이스 또는 쉘을 포함하는 독립형 전자 장치인 어플라이언스 컴퓨팅 장치를 포함할 수 있다. 일부 상황에서 하우징은 사람이 운반 및/또는 운송할 수 있도록 휴대가능한 크기일 수 있다. 예시적인 하우징은 기기의 내용물을 부분적으로 또는 완전히 보호하는 하나 이상의 외부 표면을 형성하는 재료를 포함할 수 있으며, 여기서 보호는 날씨로부터의 보호, 위험한 환경으로부터의 보호(예컨대, EMI, 진동, 극한 온도) 및/또는 잠수 가능을 포함할 수 있다. 예시적인 하우징은 AC 전원 입력, DC 전원 입력, AC/DC 또는 DC/AC 컨버터(들), 전원 조절기, 변압기, 충전 회로, 배터리, 유선 입력 및/또는 무선 전원 입력과 같은 고정식 및/또는 휴대용 구현에 전력을 제공하는 전원 회로를 포함할 수 있다. 예시적인 하우징 및/또는 그 표면은 건물, 통신 구조(예컨대, 기둥, 안테나 구조 등) 및/또는 랙(예컨대, 서버 랙, 블레이드 마운트 등)과 같은 구조물에 부착할 수 있도록 장착 하드웨어를 포함하거나 이에 연결될 수 있다.). 예시적인 하우징 및/또는 그 표면은 하나 이상의 센서(예컨대, 온도 센서, 진동 센서, 광 센서, 음향 센서, 용량 센서, 근접 센서 등)를 지원할 수 있다. 하나 이상의 그러한 센서는 기기의 표면에 포함되거나, 운반되거나, 그렇지 않으면 표면에 내장되거나 및/또는 기기의 표면에 장착될 수 있다. 예시적인 하우징 및/또는 그 표면은 추진 하드웨어(예컨대, 바퀴, 프로펠러 등) 및/또는 관절식 하드웨어(예컨대, 로봇 팔, 회전 가능한 부속 장치 등)와 같은 기계적 연결을 지원할 수 있다. 일부 상황에서, 센서는 사용자 인터페이스 하드웨어(예컨대, 버튼, 스위치, 다이얼, 슬라이더 등)와 같은 모든 유형의 입력 장치를 포함할 수 있다. 일부 상황에서, 예시적인 하우징은 그 안에 포함, 운반, 내장되고/되거나 부착된 출력 장치를 포함한다. 출력 장치는 디스플레이, 터치스크린, 조명, LED, 스피커, I/O 포트(예컨대, USB) 등을 포함할 수 있다. 일부 상황에서, 에지 장치는 특정 목적(예컨대, 신호등)을 위해 네트워크에 제공되는 장치이지만, 다른 목적으로 활용될 수 있는 처리 및/또는 다른 기능이 있을 수 있다. 이러한 에지 장치는 다른 네트워크 장치와 독립적일 수 있으며 주 목적에 적합한 폼 팩터를 갖는 하우징을 구비할 수 있지만, 기본 작업을 방해하지 않는 다른 컴퓨팅 작업에도 사용할 수 있다. 에지 장치는 사물 인터넷 장치를 포함한다. 어플라이언스 컴퓨팅 장치는 장치 온도, 진동, 리소스 활용, 업데이트, 전원 문제, 물리적 및 네트워크 보안 등과 같은 로컬 문제를 관리하기 위한 하드웨어 및 소프트웨어 컴포넌트를 포함할 수 있다. 어플라이언스 컴퓨팅 장치를 구현하기 위한 예시적인 하드웨어는 도 8a 내지 8c와 관련하여 설명한다. 에지 클라우드(110)는 또한 하나 이상의 서버 및/또는 하나 이상의 멀티-테넌트 서버를 포함할 수 있다. 이러한 서버는 운영 체제 및 가상 컴퓨팅 환경을 를 포함할 수 있다. 가상 컴퓨팅 환경은 하나 이상의 가상 머신, 하나 이상의 컨테이너 등을 관리(생성, 배포, 파괴 등)하는 하이퍼바이저를 포함할 수 있다. 이러한 가상 컴퓨팅 환경은 하나 이상의 애플리케이션 및/또는 또는 다른 소프트웨어, 코드 또는 스크립트가 하나 이상의 다른 애플리케이션, 소프트웨어, 코드 또는 스크립트와 격리된 상태에서 실행될 수 있는 실행 환경을 제공한다.
도 3에서, 다양한 클라이언트 엔드포인트(310)(모바일 장치, 컴퓨터, 자율 차량, 비즈니스 컴퓨팅 장비, 산업 처리 장비 형태)는 엔드포인트 네트워크 집합의 유형에 특정한 요청 및 응답을 교환한다. 예를 들어, 클라이언트 엔드포인트(310)는 온프레미스 네트워크 시스템(332)을 통해 요청 및 응답(322)을 교환함으로써 유선 광대역 네트워크를 통해 네트워크 액세스를 얻을 수 있다. 모바일 컴퓨팅 장치와 같은 일부 클라이언트 엔드포인트(310)는 액세스 포인트(예컨대, 셀룰러 네트워크 타워)(334)를 통해 요청 및 응답(324)을 교환함으로써 무선 광대역 네트워크를 통해 네트워크 액세스를 얻을 수 있다. 자율 차량과 같은 일부 클라이언트 엔드포인트(310)는 거리에 위치한 네트워크 시스템(336)을 통해, 무선 차량 네트워크를 통해 요청 및 응답(326)에 대한 네트워크 액세스를 얻을 수 있다. 그러나, 네트워크 액세스의 유형에 관계없이, TSP는 트래픽 및 요청을 모으기 위해 에지 클라우드(110) 내에 집선 포인트(342, 344)를 배치할 수 있다. 따라서, 에지 클라우드(110) 내에서, TSP는 요청된 콘텐츠를 제공하기 위해 에지 집선 노드(340)에서와 같이 다양한 컴퓨팅 및 저장 리소스를 배치할 수 있다. 에지 집선 노드(340) 및 에지 클라우드(110)의 다른 시스템은, 웹사이트, 애플리케이션, 데이터베이스 서버 등에 대한 클라우드/데이터 센터로부터의 지연이 긴 요청을 수행하기 위해 백홀 네트워크(350)를 사용하는 클라우드 또는 데이터 센터(360)에 접속된다. 단일 서버 프레임워크에 배치된 것을 포함하여 에지 집선 노드(340) 및 집선 포인트(342, 344)의 추가적인 또는 통합된 인스턴스가 또한 에지 클라우드(110) 또는 TSP 인프라의 다른 영역 내에 존재할 수 있다.
일 실시예에서, 에지 클라우드(110) 및 클라우드 또는 데이터 센터(360)는 개시된 기술과 관련하여 SMCP 기능(111)을 활용한다. SMCP 기능(111)은 오케스트레이션 관리 엔티티로서 구성된 통신 노드 또는 MEC 네트워크 내의 MEC 호스트에 의해 수행될 수도 있고, 또는 컴퓨팅 노드의 보드 관리 컨트롤러(BMC)에 의해 수행될 수도 있다. 예시적인 VIS 기능은 도 9a 내지 도 20과 관련하여 더 자세히 설명한다.
도 4는 다수의 에지 노드 및 다수의 테넌트 사이에 구성된 SMCP 기능을 갖는 에지 컴퓨팅 시스템에 걸친 가상 에지 구성의 배치 및 오케스트레이션을 도시한 것이다. 구체적으로, 도 4는 다양한 가상 에지 인스턴스에 액세스하는 다양한 클라이언트 엔드포인트(410)(예컨대, 스마트 도시/빌딩 시스템, 모바일 장치, 컴퓨팅 장치, 비즈니스/물류 시스템, 산업 시스템 등)에 대한 요청 및 응답을 실행하는, 에지 컴퓨팅 시스템(400) 내의 제1 에지 노드(422) 및 제2 에지 노드(424)의 조직을 나타낸다. 여기서, 가상 에지 인스턴스(432, 434)(또는 가상 에지)는 웹사이트, 애플리케이션, 데이터베이스 서버 등에 대한 지연이 긴 요청에 대해 클라우드/데이터 센터(440)에 액세스하여 에지 클라우드에서 에지 컴퓨팅 기능 및 처리를 제공한다. 그러나, 에지 클라우드는 여러 테넌트 또는 엔티티에 대한 여러 에지 노드 간의 처리를 조정할 수 있다.
도 4의 예에서, 이들 가상 에지 인스턴스는 에지 저장, 컴퓨팅 및 서비스의 제1 조합을 제공하는 제1 테넌트(테넌트 1)에게 제공되는 제1 가상 에지 인스턴스(432)와, 및 에지 저장, 컴퓨팅 및 서비스의 제2 조합을 제공하는 제2 가상 에지(434)를 포함한다. 가상 에지 인스턴스(432, 434)는 에지 노드들(422, 424) 사이에 분산되며, 요청 및 응답이 동일하거나 상이한 에지 노드로부터 이행되는 시나리오를 포함할 수 있다. 분산되어 있지만 조직된 방식으로 작동하는 에지 노드(422, 424)의 구성은 에지 프로비저닝 기능(450)에 기초하여 발생한다. 다중 테넌트 사이에 애플리케이션 및 서비스에 대한 조정된 동작을 제공하기 위한 에지 노드(422, 424)의 기능은 오케스트레이션 기능(460)에 기초하여 발생한다.
일 실시예에서, 에지 프로비저닝 기능(450) 및 오케스트레이션 기능(460)은 개시된 기술과 관련하여 SMCP 기능(111)을 활용한다. SMCP 기능(111)은 오케스트레이션 관리 엔티티로서 구성된 통신 노드 또는 MEC 네트워크 내의 MEC 호스트에 의해 수행될 수도 있고, 또는 컴퓨팅 노드의 보드 관리 컨트롤러(BMC)에 의해 수행될 수도 있다. 예시적인 VIS 기능은 도 9a 내지 도 20과 관련하여 더 자세히 설명한다.
다양한 클라이언트 엔드포인트들(410) 중 일부는, 테넌트 1이 테넌트 1 '슬라이스' 내에서 기능할 수 있는 반면 테넌트 2는 테넌트 2 슬라이스 내에서 기능할 수 있는 다중 테넌트 장치이다(다른 예에서는 추가적인 또는 하위 테넌트가 존재할 수 있고, 각 테넌트는 특정 하드웨어 기능에 대해 하루 종일 특정 기능 세트를 특별히 부여받고 이와 업무상 관련될 수도 있다). 신뢰할 수 있는 다중 테넌트 장치는, 키와 슬라이스의 조합이 "신뢰점"(RoT) 또는 테넌트 특정 RoT로 간주될 수 있도록 테넌트별 암호화 키를 추가로 포함할 수 있다. RoT는 또한, 단일 DICE 하드웨어 빌딩 블록을 사용하여 장치 기능(예컨대, Field Programmable Gate Array(FPGA))의 계층화를 위해 계층화된 신뢰할 수 있는 컴퓨팅 기반 컨텍스트를 구축할 수 있도록, DICE(Device Identity Composition Engine) 아키텍처를 사용하여 동적으로 구성될 수 있다. RoT는 또한, 다중 테넌시를 지원하는 데 유용한 "팬아웃"을 활성화하기 위해 신뢰할 수 있는 컴퓨팅 컨텍스트에 사용될 수 있다. 다중 테넌트 환경 내에서, 각각의 에지 노드(422, 424)는 노드당 다중 테넌트에 할당된 로컬 리소스에 대한 보안 기능 시행 지점으로 동작할 수 있다. 또한, 테넌트 런타임 및 애플리케이션 실행(예컨대, 가상 에지 인스턴스(432, 434))은 잠재적으로 다수의 물리적 호스팅 플랫폼에 걸쳐 있는 리소스의 가상 에지 추상화를 생성하는 보안 기능에 대한 시행 지점 역할을 할 수 있다. 마지막으로, 오케스트레이션 엔티티의 오케스트레이션 기능(460)은 테넌트 경계를 따라 리소스를 마샬링하기 위한 보안 기능 시행 지점으로 동작할 수 있다.
에지 컴퓨팅 노드는 리소스(메모리, 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 인터럽트 제어기, 입/출력(I/O) 제어기, 메모리 제어기, 버스 제어기 등)를 분할할 수 있으며, 여기서 제각기의 분할은 RoT 기능을 포함할 수 있고, DICE 모델에 따른 팬아웃 및 계층화가 에지 노드에 추가로 적용될 수 있다. 컨테이너, FaaS 엔진, 서블릿, 서버 또는 기타 계산 추상화로 이루어진 클라우드 컴퓨팅 노드는 각각에 대한 RoT 컨텍스트를 지원하기 위해 DICE 계층화 및 팬아웃 구조에 따라 분할될 수 있다. 따라서, 장치(410, 422, 440)에 걸쳐 있는 각각의 RoT는 모든 요소를 종단 간 연결하는 테넌트별 가상 신뢰 보안 채널이 설정될 수 있도록 분산된 신뢰 컴퓨팅 기반(DTCB)의 설정을 조정할 수 있다.
또한, 컨테이너는 이전 에지 노드로부터 자신의 콘텐츠를 보호하는 데이터 또는 워크로드 특정 키를 가질 수 있다는 것을 이해할 수 있을 것이다. 컨테이너 마이그레이션의 일부로서, 소스 에지 노드의 포드 제어기는 마이그레이션 키가 컨테이너 특정 키를 래핑하는 데 사용되는 타겟 에지 노드 포드 제어기로부터 마이그레이션 키를 획득할 수 있다. 컨테이너/포드가 타겟 에지 노드로 마이그레이션되면, 래핑 해제 키가 포드 제어기에 노출되며, 이 후에 포드 제어기가 래핑된 키를 해독한다. 이제 키를 사용하여 컨테이너 특정 데이터에 대한 동작을 수행할 수 있다. 마이그레이션 기능은 (전술한 바와 같이) 적절하게 증명된 에지 노드 및 포드 관리자에 의해 제어될 수 있다.
다른 예에서, 다중 소유자 다중 테넌트 환경에서 컨테이너(코드 및 필요한 종속성을 제공하는 포함된 배포 가능한 소프트웨어 단위)의 사용을 통해 다중 애플리케이션의 오케스트레이션을 제공하도록 에지 컴퓨팅 시스템이 확장된다. 다중 테넌트 오케스트레이터는 키 관리, 신뢰 앵커 관리 및 도 4의 신뢰 '슬라이스' 개념의 프로비저닝 및 라이프사이클과 관련된 기타 보안 기능을 수행하는 데 사용될 수 있다. 예를 들어, 에지 컴퓨팅 시스템은 다수의 가상 에지 인스턴스(및 클라우드 또는 원격 데이터 센터)의 다양한 클라이언트 엔드포인트에 대한 요청 및 응답을 수행하도록 구성될 수 있다. 이들 가상 에지 인스턴스를 사용하면, 여러 테넌트와 여러 애플리케이션(예컨대, 증강 현실(AR)/가상 현실(VR), 엔터프라이즈 애플리케이션, 콘텐츠 전달, 게이밍, 컴퓨팅 오프로드)을 동시에 지원할 수 있다. 또한, 가상 에지 인스턴스 내에 여러 유형의 애플리케이션(예컨대, 일반 애플리케이션, 지연에 민감한 애플리케이션, 지연 임계 애플리케이션, 사용자 평면 애플리케이션, 네트워킹 애플리케이션 등)이 있을 수 있다. 가상 에지 인스턴스는 또한 서로 다른 지리적 위치(또는 여러 소유자가 공동 소유하거나 또는 공동 관리하는 각 컴퓨팅 시스템 및 리소스)에 있는 여러 소유자의 시스템에 걸쳐 있을 수 있다.
예를 들어, 각각의 에지 노드(422, 424)는 하나 이상의 컨테이너의 그룹을 제공하는 컨테이너 "포드"(426, 428)의 사용과 같이 컨테이너의 사용을 구현할 수 있다. 하나 이상의 컨테이너 포드를 사용하는 설정에서, 포드 제어기 또는 오케스트레이터는 포드에 있는 컨테이너의 로컬 제어 및 오케스트레이션을 담당한다. 가상 에지(432, 434)의 제각기의 슬라이스에 제공되는 다양한 에지 노드 리소스(예컨대, 육각형으로 표시된 저장, 컴퓨팅, 서비스)는 각 컨테이너의 필요에 따라 분할된다.
포드 제어기는 컨테이너 포드를 사용하여 컨테이너 및 리소스의 분할 및 할당을 감독한다. 포드 제어기는 (예컨대, 오케스트레이션 기능(460)을 수행하는) 오케스트레이터로부터, 예컨대 SLA 계약에 기초하여 핵심 성과 지표(KPI) 타겟을 수신함으로써, 물리적 리소스를 가장 잘 분할하는 방법과 기간에 대해 제어기에 지시하는 명령을 수신한다. 포드 제어기는 워크로드를 완료하고 SLA를 충족하기 위해 어떤 컨테이너에 어떤 리소스가 필요한지, 얼마나 오래 필요한지 판단한다. 포드 제어기는 또한, 컨테이너 생성, 이것을 리소스 및 애플리케이션으로 프로비저닝, 분산 애플리케이션에서 함께 작업하는 여러 컨테이너들 사이의 중간 결과 조정, 워크로드 완료시 컨테이너 해체 등과 같은 컨테이너 라이프사이클 동작을 관리한다. 또한, 포드 제어기는 올바른 테넌트가 인증할 때까지 리소스 할당을 방지하거나 증명 결과가 만족될 때까지 컨테이너에 대한 데이터 또는 워크로드 프로비저닝을 방지하는 보안 역할을 수행할 수 있다.
또한, 컨테이너 포드를 사용하면, 테넌트 경계가 여전히 그러나 컨테이너의 각 포드의 컨텍스트 내에 존재할 수 있다. 각 테넌트별 포드가 테넌트별 포드 제어기를 가지면, 일반적인 리소스 고갈 상황을 피하기 위해 리소스 할당 요청을 통합하는 공유 포드 제어기가 있을 것이다. 포드 및 포드 제어기의 증명 및 신뢰성을 보장하기 위해 추가 제어가 제공될 수 있다. 예를 들어, 오케스트레이션 기능(460)은 증명 검증을 수행하는 로컬 포드 제어기에 증명 검증 정책을 제공할 수 있다. 증명이 제1 테넌트 포드 제어기에 대한 정책을 충족하지만 제2 테넌트 포드 제어기에 대한 정책은 충족하지 않는 경우, 제2 포드는 이를 충족하는 다른 에지 노드로 마이그레이션될 수 있다. 또는, 제1 포드가 실행되도록 허용될 수 있고, 다른 공유 포드 제어기가 설치되고 제2 포드가 실행되기 전에 호출된다.
도 5는 에지 컴퓨팅 시스템에서 컨테이너를 배치하는 다양한 컴퓨팅 구성을 도시한 것이다. 간단한 예로, 시스템 구성(510, 520)은 포드 제어기(예컨대, 컨테이너 관리자(511, 521) 및 컨테이너 오케스트레이터(531))가 컴퓨팅 노드(배열(510) 내의 컴퓨팅 노드(515))를 통한 실행을 통해 컨테이너화된 포드, 기능 및 서비스로서의 기능 인스턴스를 론칭하거나, 또는 컴퓨팅 노드(배열(520)의 컴퓨팅 노드(523))를 통한 실행을 통해 컨테이너화된 가상화 네트워크 기능을 개별적으로 실행하도록 적응되는 설정을 나타낸다. 이 구성은, 컨테이너화된 포드(예컨대, 포드(512), 기능(예컨대, 기능(513), VNF(522, 536)), 및 서비스로서의 기능 인스턴스(예컨대, FaaS 인스턴스(514))가 (가상화된 네트워크 기능의 실행을 제외하고) 제각기의 테넌트에 특유한 가상 머신(예컨대, 테넌트(532, 533)용 VM(534, 535)) 내에서 론칭되는, 시스템 구성(530)(컴퓨팅 노드(537) 사용)에서 다중 테넌트의 사용에 적합하다. 이 구성은 또한 컨테이너 기반 오케스트레이션 시스템(541)에 의해 조정되는 바와 같이, 컨테이너(542, 543), 또는 컴퓨팅 노드(544) 상의 다양한 기능, 애플리케이션 및 기능의 실행을 제공하는 시스템 구성(540)에서의 사용에 적합하다.
도 5에 도시된 시스템 구성은, VM, 컨테이너 및 기능을 애플리케이션 구성의 관점에서 동등하게 취급하는 아키텍처를 제공한다(결과의 애플리케이션은 이러한 세 가지 구성요소의 조합이다). 각 구성요소는 하나 이상의 가속기(FPGA, ASIC) 컴포넌트를 로컬 백엔드로 사용할 수 있다. 이런 방식으로 애플리케이션은 오케스트레이터에 의해 조정되는 여러 에지 소유자에 걸쳐 분할될 수 있다.
도 5의 맥락에서, 포드 제어기/컨테이너 관리자, 컨테이너 오케스트레이터, 및 개별 노드는 보안 시행 포인트(security enforcement point)를 제공할 수 있다. 그러나, 테넌트에 할당된 리소스가 제2 테넌트에 할당된 리소스와 다른 경우 테넌트 격리가 조율될 수 있지만, 에지 소유자는 리소스 할당이 테넌트 경계를 넘어 공유되지 않도록 협력한다. 또는, 테넌트는 구독 또는 트랜잭션/계약을 통해 "사용"할 수 있으므로, 리소스 할당은 테넌트 경계를 넘어 분리될 수 있다. 이들 컨텍스트에서, 에지 소유자는 가상화, 컨테이너화, 엔클레이브 및 하드웨어 파티셔닝 체계를 사용하여 테넌시를 시행할 수 있다. 기타 격리 환경은 베어 메탈(전용) 장비, 가상 머신, 컨테이너, 컨테이너의 가상 머신 또는 이들의 조합을 포함할 수 있다.
다른 예에서, 소프트웨어 정의 또는 제어된 실리콘 하드웨어 및 기타 구성 가능한 하드웨어의 양태는 에지 컴퓨팅 시스템의 애플리케이션, 기능 및 서비스와 통합될 수 있다. 소프트웨어 정의 실리콘은, 구성요소가 (예컨대, 업그레이드, 재구성, 또는 하드웨어 구성 자체 내에서의 새로운 기능의 제공을 통해)그 자체 또는 워크로드의 일부분을 수정할 수 있는 능력에 기초하여, 일부 리소스 또는 하드웨어 구성요소가 계약 또는 서비스 수준 계약을 이행할 수 있는 능력을 보장하는 데 사용될 수 있다.
본 명세서에서 논의된 에지 컴퓨팅 시스템 및 장치는 이동성을 포함하는 다양한 솔루션, 서비스 및/또는 사용 사례에 적용될 수 있음을 이해해야 한다. 예를 들어, 도 6은 에지 클라우드(110)를 구현하는 에지 컴퓨팅 시스템(600)의 애플리케이션에 대한 모바일 액세스를 포함하는 간단한 차량 컴퓨팅 및 통신 사용 사례를 보여준다. 이 사용 사례에서, 각각의 클라이언트 컴퓨팅 노드(또는 장치)(610)는, 도로를 달리는 동안 에지 게이트웨이 노드(또는 장치)(620)와 통신하는 대응하는 차량에 위치한 차량 내 컴퓨팅 시스템(예컨대, 차량 내 내비게이션 및/또는 인포테인먼트 시스템)으로 구현될 수 있다. 예를 들어, 에지 게이트웨이 노드(620)는 도로를 따라, 도로의 교차점 또는 도로 근처의 다른 위치에 배치될 수 있는 별도의 기계적 유틸리티를 갖는 구조물에 내장된 노변 캐비닛 또는 다른 인클로저에 위치할 수 있다. 각각의 차량이 도로를 따라 진행함에 따라, 클라이언트 컴퓨팅 노드(610)와 특정 에지 게이트웨이 장치(620) 사이의 접속은 클라이언트 컴퓨팅 노드(610)에 대한 일관된 접속 및 컨텍스트를 유지하기 위해 전파될 수 있다. 마찬가지로, MEC 노드는 높은 우선순위 서비스에서 또는 기본 서비스(들)(예컨대, 드론의 경우)에 대한 처리량 또는 지연 해결 요건에 따라 집계될 수 있다. 각각의 에지 게이트웨이 노드(620)는 처리 및 저장 능력을 가지며, 따라서 클라이언트 컴퓨팅 노드(610)에 대한 데이터의 일부 처리 및/또는 저장이 에지 게이트웨이 노드들(620) 중 하나 이상에서 수행될 수 있다.
에지 게이트웨이 노드(620)는, 통신 기지국(642)(예컨대, 셀룰러 네트워크의 기지국)에 위치하거나 그 안에 위치하는 컴퓨팅 서버, 기기 또는 구성요소로서 예시적으로 구현되는 하나 이상의 에지 리소스 노드(640)와 통신할 수 있다. 위에서 논의된 바와 같이, 각각의 에지 리소스 노드(640)는 처리 및 저장 능력을 가지며, 따라서 클라이언트 컴퓨팅 노드(610)에 대한 데이터의 일부 처리 및/또는 저장이 에지 리소스 노드(640)에서 수행될 수 있다. 예를 들어, 덜 긴급하거나 덜 중요한 데이터의 처리는 에지 리소스 노드(640)에 의해 수행될 수 있는 반면, (예컨대, 각 구성요소의 기능이나 긴급성 또는 중요성을 나타내는 요청의 정보에 따라) 긴급성 또는 중요성이 높은 데이터의 처리는 에지 게이트웨이 노드(620)에 의해 수행될 수 있다. 데이터 액세스, 데이터 위치 또는 지연에 기초하여, 처리 활동 중에 처리 우선순위가 변경될 때 에지 리소스 노드에서 작업이 계속될 수 있다. 마찬가지로, 구성 가능한 시스템 또는 하드웨어 리소스 자체를 활성화하여(예컨대, 로컬 오케스트레이터를 통해) 새로운 수요를 충족하기 위한 추가 리소스를 제공할 수 있다(예컨대, 컴퓨팅 리소스를 워크로드 데이터에 맞춤).
에지 리소스 노드(들)(640)는 또한 중앙 위치(예컨대, 셀룰러 통신 네트워크의 중앙국)에 위치한 컴퓨팅 서버, 어플라이언스, 및/또는 다른 구성요소를 포함할 수 있는 코어 데이터 센터(650)와 통신한다. 코어 데이터 센터(650)는 에지 리소스 노드(들)(640) 및 에지 게이트웨이 노드(620)에 의해 형성된 에지 클라우드(110) 동작을 위해 글로벌 네트워크 클라우드(660)(예컨대, 인터넷)에 게이트웨이를 제공할 수 있다. 또한, 일부 예에서, 코어 데이터 센터(650)는 상당한 양의 처리 및 저장 능력을 가질 수 있고, 따라서 클라이언트 컴퓨팅 장치에 대한 데이터의 일부 처리 및/또는 저장이 코어 데이터 센터(650) 상에서 수행될 수 있다(예컨대, 긴급성이나 중요도가 낮거나 또는 복잡도가 높은 처리).
에지 게이트웨이 노드(620) 또는 에지 리소스 노드(640)는 스테이트풀 애플리케이션(stateful application)(632) 및 지리적으로 분산된 데이터베이스(634)의 사용을 제안할 수 있다. 스테이트풀 애플리케이션(632) 및 데이터베이스(634)가 에지 클라우드(110)의 계층에서 수평으로 분산된 것으로 도시되어 있지만, 리소스, 서비스, 또는 애플리케이션의 다른 구성요소는 에지 클라우드(클라이언트 컴퓨팅 노드(610)에서 실행되는 애플리케이션의 일부, 에지 게이트웨이 노드(620) 또는 에지 리소스 노드(640)의 다른 부분 등을 포함함) 전역에 수직으로 분산될 수 있음을 이해할 수 있을 것이다. 또한, 이전에 언급한 바와 같이, 서비스 목표 및 책임을 충족하기 위해 임의의 수준에서 피어 관계가 있을 수 있다. 또한, 특정 클라이언트 또는 애플리케이션에 대한 데이터는 변화하는 조건(예컨대, 가속 리소스 가용성, 차량 이동 등)에 따라 에지에서 에지로 이동할 수 있다. 예를 들어, 액세스의 "감쇠율(rate of decay)"에 기초하여, 다음 소유자를 식별하거나, 또는 데이터 또는 컴퓨팅 액세스가 더 이상 실행 가능하지 않을 때를 식별하기 위한 예측이 이루어질 수 있다. 이들 및 다른 서비스는 트랜잭션을 계속 무손실로 준수하는데 필요한 작업을 완료하는 데 이용될 수 있다.
다른 시나리오에서, 컨테이너(636)(또는 컨테이너의 포드)는 에지 게이트웨이 노드(620)에서부터 다른 에지 노드(예컨대, 620, 640 등)로 유연하게 마이그레이션될 수 있어, 애플리케이션 및 워크로드가 있는 컨테이너는 마이그레이션이 동작하도록 재구성, 재컴파일, 재해석될 필요가 없다. 그러나, 이러한 설정에서, 일부 수정 또는 "스위즐링(swizzling)" 번역 동작이 적용될 수 있다. 예를 들어, 노드(640)의 물리적 하드웨어는 에지 게이트웨이 노드(620)와 다를 수 있으므로, 컨테이너의 하단 에지를 구성하는 하드웨어 추상화 계층(HAL)이 타겟 에지 노드의 물리적 계층에 재매핑될 것이다. 이것은 컨테이너 네이티브 포맷으로부터 물리 하드웨어 포맷으로 HAL의 이진 변환과 같은 일부 형태의 후기 바인딩(late-binding) 기법을 포함할 수도 있고, 또는 매핑 인터페이스 및 동작을 포함할 수도 있다. 포드 제어기는, 다른 하드웨어 환경으로/으로부터의 마이그레이션을 포함하는 컨테이너 라이프사이클의 일부로서 인터페이스 매핑을 구동하는 데 사용될 수 있다.
에지 노드는 자신을 호스팅하는 플랫폼을 따라 다른 지리적 위치로 이동할 것이므로, 도 6에 포함된 시나리오는 차량(자동차/트럭/트램/기차) 또는 다른 모바일 장치에서 호스팅되는 에지 노드와 같은 다양한 유형의 MEC 노드를 활용할 수 있다. 차량 대 차량 통신을 사용하면, 개별 차량이 다른 차량의 네트워크 에지 노드 역할을 할 수도 있다(예컨대, 캐싱, 보고, 데이터 집계 등을 수행할 수 있다). 따라서, 다양한 에지 노드에서 제공되는 애플리케이션 컴포넌트는 개별 엔드포인트 장치 또는 에지 게이트웨이 노드(620)에서의 일부 기능 또는 동작, 에지 리소스 노드(640)에서의 다른 일부 기능 또는 동작, 및 코어 데이터 센터(650) 또는 글로벌 네트워크 클라우드(660)에서의 다른 기능 또는 동작 간의 조정을 포함하는 정적 또는 모바일 설정으로 분산될 수 있음을 이해할 것이다.
일 실시예에서, 도 6의 에지 클라우드(110)는 개시된 기술과 관련하여 SMCP 기능(111)을 활용한다. SMCP 기능(111)은 오케스트레이션 관리 엔티티로서 구성된 통신 노드 또는 MEC 네트워크 내의 MEC 호스트에 의해 수행될 수도 있고, 또는 컴퓨팅 노드의 보드 관리 컨트롤러(BMC)에 의해 수행될 수도 있다. 예시적인 VIS 기능은 도 9a 내지 도 20과 관련하여 더 자세히 설명한다.
다른 구성에서, 에지 컴퓨팅 시스템은 각각의 실행 가능한 애플리케이션 및 기능의 사용을 통해 FaaS 컴퓨팅 능력을 구현할 수 있다. 일 예에서, 개발자는 하나 이상의 컴퓨터 기능을 나타내는 기능 코드(예컨대, 여기서 "컴퓨터 코드")를 작성하며, 기능 코드는, 예컨대, 에지 노드 또는 데이터 센터에서 제공하는 FaaS 플랫폼에 업로드된다. 예를 들어, 서비스 사용 사례 또는 에지 처리 이벤트와 같은 트리거는 FaaS 플랫폼으로 기능 코드의 실행을 시작한다.
FaaS의 한 예에서, 컨테이너는 기능 코드(예컨대, 제3자에 의해 제공될 수 있는 애플리케이션)가 실행되는 환경을 제공하기 위해 사용된다. 컨테이너는 프로세스, 도커(Docker) 또는 쿠버네티스(Kubernetes) 컨테이너, 가상 머신 등과 같은 격리된 실행 개체일 수 있다. 에지 컴퓨팅 시스템 내에서, 다양한 데이터 센터, 에지 및 엔드포인트(모바일 포함) 장치가 필요에 따라 조정되는 기능(예컨대, 기능 동작 활성화 및/또는 할당)을 "스핀 업"하기 위해 사용된다. 기능 코드는 물리적 인프라스트럭처(예컨대, 에지 컴퓨팅 노드) 장치 및 기본 가상화 컨테이너에서 실행된다. 마지막으로, 컨테이너는 실행 완료에 대한 응답으로 인프라스트럭처에서 "스핀다운"(예컨대, 비활성화 및/또는 할당 해제)된다.
FaaS의 추가 양태는 서비스로서의 에지 컴퓨팅(Edge-as-a-Service 또는 "EaaS")을 지원하는 각 기능의 지원을 포함하여, 서비스 방식으로 에지 기능의 배치를 가능하게 할 수 있다. FaaS의 추가 기능은 고객(예컨대, 컴퓨터 코드 개발자)이 코드가 실행될 때만 지불할 수 있게 하는 세분화된 청구 컴포넌트; 하나 이상의 기능에 의한 재사용을 위해 데이터를 저장하는 공통 데이터 저장소; 개별 기능들 간의 오케스트레이션 및 관리; 기능 실행 관리, 병렬 처리 및 통합; 컨테이너 및 기능 메모리 공간의 관리; 기능에 사용할 수 있는 가속 리소스의 조정; 및 컨테이너 간의 기능 배포(이미 배치 또는 동작 중인 "웜" 컨테이너와 초기화, 배포 또는 구성이 필요한 "콜드" 컨테이너 포함)를 포함할 수 있다.
에지 컴퓨팅 시스템(600)은 에지 프로비저닝 노드(644)를 포함하거나 이와 통신할 수 있다. 에지 프로비저닝 노드(644)는 도 8b의 예시적인 컴퓨터 판독 가능(머신 판독 가능이라고도 함) 명령어(882)와 같은 소프트웨어를 본 명세서에 설명된 방법들 중 어느 하나를 수행하는 다양한 수신측에게 배포할 수 있다. 예시적인 에지 프로비저닝 노드(644)는, 소프트웨어 명령어(예컨대, 코드, 스크립트, 실행 가능한 바이너리, 컨테이너, 패키지, 압축 파일, 및/또는 이들의 파생물)를 다른 컴퓨팅 장치에 저장 및/또는 전송할 수 있는 임의의 컴퓨터 서버, 홈 서버, 콘텐츠 전달 네트워크, 가상 서버, 소프트웨어 배포 시스템, 중앙 설비, 저장 장치, 저장 디스크, 저장 노드, 데이터 설비, 클라우드 서비스 등에 의해 구현될 수 있다. 예시적인 에지 프로비저닝 노드(644)의 컴포넌트(들)는 클라우드, 근거리 통신망, 에지 네트워크, 광역 네트워크, 인터넷, 및/또는 수신측(들)과 통신 가능하게 연결된 임의의 다른 위치에 위치할 수 있다. 수신측은 에지 프로비저닝 노드(644)를 소유 및/또는 운영하는 엔티티의 고객, 클라이언트, 동료, 사용자 등일 수 있다. 예를 들어, 에지 프로비저닝 노드(644)를 소유 및/또는 운영하는 엔티티는 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882)(머신 판독가능 명령어(882)라고도 함)와 같은 소프트웨어 명령어의 개발자, 판매자 및/또는 라이선스 제공자(또는 그 고객 및/또는 소비자)일 수 있다. 수신측은 사용 및/또는 재판매 및/또는 하위 라이선스를 위해 소프트웨어 명령어를 구매 및/또는 라이선스하는 소비자, 서비스 제공자, 사용자, 소매업체, OEM 등일 수 있다.
일 예에서, 에지 프로비저닝 노드(644)는 하나 이상의 서버 및 하나 이상의 저장 장치/디스크를 포함한다. 저장 장치 및/또는 저장 디스크는, 후술하는 바와 같이, 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882)와 같은 컴퓨터 판독 가능 명령어를 호스트한다. 전술한 에지 게이트웨이 장치(620)와 유사하게, 에지 프로비저닝 노드(644)의 하나 이상의 서버는 기지국(642) 또는 다른 네트워크 통신 엔티티와 통신한다. 일부 예에서, 하나 이상의 서버는 상거래의 일부로서 요청 당사자에게 소프트웨어 명령어를 전송하라는 요청에 응답한다. 소프트웨어 명령어의 배송, 판매 및/또는 라이선스에 대한 지불은 소프트웨어 배포 플랫폼의 하나 이상의 서버에 의해 및/또는 제3자 지불 엔티티를 통해 처리될 수 있다. 서버는 구매자 및/또는 라이선서가 에지 프로비저닝 노드(644)로부터 컴퓨터 판독가능 명령어(882)를 다운로드할 수 있게 한다. 예를 들어, 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882)에 대응할 수 있는 소프트웨어 명령어가, 본 명세서에 개시된 방법을 구현하기 위해 컴퓨터 판독가능 명령어(882)를 실행하는, 예시적인 프로세서 플랫폼으로 다운로드될 수 있다.
일부 예에서, 컴퓨터 판독 가능 명령어(882)를 실행하는 프로세서 플랫폼(들)은 물리적으로 상이한 지리적 위치, 법적 관할 구역 등에 위치할 수 있다. 일부 예에서, 에지 프로비저닝 노드(644)의 하나 이상의 서버는 소프트웨어 명령어(예컨대, 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882))에 대한 업데이트를 주기적으로 제공, 전송 및/또는 실행하여, 개선, 패치, 업데이트 등이 최종 사용자 장치에서 구현된 소프트웨어 명령어에 배치 및 적용될 수 있도록 한다. 일부 예들에서, 컴퓨터 판독가능 명령어(882)의 상이한 컴포넌트들은 상이한 소스들로부터 및/또는 상이한 프로세서 플랫폼들로 배포될 수 있는데; 예를 들어, 상이한 라이브러리, 플러그인, 컴포넌트 및 다른 유형의 컴퓨팅 모듈이 컴파일 또는 해석 여부에 관계없이 상이한 소스로부터 그리고/또는 상이한 프로세서 플랫폼으로 배포될 수 있다. 예를 들어, 소프트웨어 명령어의 일부분(예컨대, 그 자체로 실행 가능하지 않은 스크립트)은 제1 소스로부터 배포될 수 있는 반면에, 인터프리터(스크립트를 실행할 수 있음)는 제2 소스로부터 배포될 수 있다.
도 7은 일부 실시예에 따른 MEC 서비스 아키텍처(700)를 도시한 것이다. MEC 서비스 아키텍처(700)는 MEC 서비스(705), 다중 액세스 에지(multi-access edge, ME) 플랫폼(710)(예컨대, 도 9a의 MEC 플랫폼(932)에 대응함), 및 애플리케이션(Apps) 1 내지 N (여기서 N은 번호임)을 포함한다. 예를 들어, 앱(App) 1은 콘텐츠 전달 네트워크(CDN) 앱/서비스 호스팅 1, ..., n 세션(n은 N과 동일하거나 상이한 다른 숫자)일 수 있고, 앱 2는 두 개의 세션을 호스팅하는 것으로 도시된 게이밍 앱/서비스일 수 있으며, 앱 N은 단일 인스턴스로 도시된 일부 다른 앱/서비스일 수 있다(예컨대, 어떠한 세션도 호스팅하지 않음). 각 앱은 리소스 제공자(예컨대, MEC 플랫폼(710)과 같은 서버)와 소비자(예컨대, UE, 개별 UE에 의해 인스턴스화된 사용자 앱, 기타 서버/서비스, 네트워크 기능, 애플리케이션 기능 등) 사이에 작업 및/또는 워크로드를 분할하는 분산 애플리케이션일 수 있다. 각 세션은 클라이언트 측 앱과 대응하는 서버 측 앱, UE에 의해 인스턴스화된 사용자 앱, MEC 플랫폼(710)에 의해 인스턴스화된 MEC 앱 등과 같은 둘 이상의 요소들 사이의 상호작용 정보 교환을 나타낸다. 세션은 앱 실행이 시작되거나 개시될 때 시작될 수 있으며, 앱이 종료되거나 실행 종료될 때 끝난다. 추가적으로 또는 대안적으로, 세션은 연결이 설정될 때 시작될 수 있고 연결이 종료될 때 끝날 수 있다. 각 앱 세션은 현재 실행 중인 앱 인스턴스에 대응할 수 있다. 추가적으로 또는 대안적으로, 각각의 세션은 PDU(Protocol Data Unit) 세션 또는 MA(multi-access) PDU 세션에 대응할 수 있다. PDU 세션은 UE와 데이터 네트워크 사이의 PDU 교환을 제공하는 서비스인 PDU 연결 서비스를 제공하는 데이터 네트워크와 UE 사이의 연관이다. MA PDU 세션은 한 번에 하나의 액세스 네트워크를 사용할 수도 있고, 또는 3GPP 액세스 네트워크와 non-3GPP 액세스 네트워크를 동시에 사용할 수 있는 PDU 연결 서비스를 제공하는 PDU 세션이다. 또한, 각 세션은 세션을 고유하게 식별하는 데이터인 세션 식별자(ID)와 연관될 수 있으며, 각 앱(또는 앱 인스턴스)은, 앱(또는 앱 인스턴스)을 고유하게 식별하는 앱 ID(또는 앱 인스턴스 ID)와 연관될 수 있다.
MEC 서비스(705)는 MEC 서비스 소비자(예컨대, 앱 1 내지 N)에게 하나 이상의 MEC 서비스(예컨대, 도 9a의 MEC 서비스(936))를 제공한다. MEC 서비스(705)는 선택적으로 플랫폼(예컨대, MEC 플랫폼(710))의 일부로서 또는 애플리케이션(예컨대, ME 앱)으로서 실행될 수 있다. 단일 인스턴스를 관리하든 여러 세션을 관리하든(예컨대, CDN) 다른 앱 1 내지 N은 전체 애플리케이션 인스턴스에 대한 요구 사항 또는 세션당 요구 사항에 따라 특정 서비스 정보를 요청할 수 있다. MEC 서비스(705)는 모든 요청을 집계하고 BW 사용을 최적화하고 애플리케이션에 대한 경험 품질(QoE)을 개선하는 데 도움이 되는 방식으로 작동할 수 있다.
MEC 서비스(705)는, 표현 상태 전송(Representational State Transfer)("REST" 또는 "RESTful") API 또는 메시지 버스와 같은 다른 수송에서 사용되는 쿼리 및 구독(예컨대 pub/sub 메커니즘)을 지원하는 MEC 서비스 API를 제공한다. RESTful 아키텍처 스타일의 경우, MEC API는 트래픽 관리 기능을 위한 HTTP 프로토콜 바인딩을 포함한다.
각각의 HTTP(Hypertext Transfer Protocol) 메시지는 요청 또는 응답이다. 서버는 요청에 대한 연결을 수신 대기하고, 수신된 각 메시지를 파싱하고, 식별된 요청 타겟과 관련된 메시지 의미를 해석하고, 하나 이상의 응답 메시지로 해당 요청에 응답한다. 클라이언트는 특정 의도를 전달하기 위해 요청 메시지를 구성하고, 수신된 응답을 검토하여 의도가 수행되었는지 확인하고, 결과를 어떻게 해석할지 결정한다. HTTP 요청의 타겟을 "리소스"라고 한다. 이에 더하여, 또는 이에 갈음하여, "리소스"는 유형, 관련 데이터, 이에 대해 작동하는 메소드 세트 및 적절한 경우 다른 리소스와의 관계를 갖는 객체이다. 각 리소스는 적어도 하나의 URI(Uniform Resource Identifier)로 식별되며 리소스 URI는 최대 하나의 리소스를 식별한다. 리소스는 HTTP 메소드(예컨대, POST, GET, PUT, DELETE 등)를 사용하여 RESTful API에 의해 작동된다. 모든 HTTP 메소드에서, 하나의 특정 리소스를 지정하기 위한 요청에 하나의 리소스 URI가 전달된다. 리소스에 대한 동작은 대응하는 관리 엔티티의 상태에 영향을 준다.
리소스는 무엇이든 될 수 있고, HTTP가 제공하는 동일 방식의 인터페이스는 반대편에 있는 어떤 독립 행위자와의 메시지 통신을 통해서만 그러한 것을 관찰하고 조치할 수 있는 윈도우와 유사하다는 점을 고려하면, 통신에서 그 사물의 현재 상태 또는 원하는 상태를 표현("대신")하기 위해 추상화(abstraction)가 필요하다. 이 추상화를 표현(representation)이라고 한다. HTTP의 경우 "표현"은 프로토콜을 통해 쉽게 전달될 수 있는 포맷으로, 주어진 리소스의 과거, 현재, 또는 원하는 상태를 반영하기 위한 정보이다. 표현은 표현 메타데이터 세트와 표현 데이터의 잠재적으로 무제한의 스트림을 포함한다. 이에 더하여 또는 이에 갈음하여, 리소스 표현은 특정 콘텐츠 포맷의 리소스 상태의 직렬화이다.
오리진 서버(origin server)는 타겟 리소스의 현재 상태를 반영하도록 각각 의도된 다중 표현이 제공되거나 또는 이를 생성할 수 있다. 그러한 경우, 오리진 서버는 일반적으로 콘텐츠 협상에 기초하여, 주어진 요청에 가장 적합한 표현 중 하나를 선택하기 위한 일부 알고리즘을 사용한다. 이 "선택된 표현"은 응답 메시지(예컨대, 200 OK, GET에 대한 304 Not Modified 응답 등)에 대한 페이로드를 구성하는 조건부 요청을 평가하기 위한 데이터 및 메타데이터를 제공하는 데 사용된다. 리소스 표현은 HTTP 요청 또는 응답 메시지의 페이로드 본문에 포함된다. 요청에 표현이 필요한지 아니면 허용되지 않는지 여부는 사용된 HTTP 메소드에 의존한다(예컨대, Fielding 등의 "Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content", IETF RFC 7231(2014년 6월) 참조).
MEC API 리소스 URI(Universal Resource Indicators)는 본 명세서에 언급된 것과 같은 다양한 ETSI MEC 표준에서 논의된다. MTS API는 오류 발생 시 HTTP 응답에 제공될 추가 애플리케이션 관련 오류 정보를 지원한다(예컨대, ETSI GS MEC 009 V2.1.1(2019-01)("[MEC009]")의 6.15절 참조). 각 리소스 URI의 구문은 [MEC009]와 Berners-Lee 등의 "Uniform Resource Identifier(URI): Generic Syntax", IETF Network Working Group, RFC 3986(2005년 1월) 및/또는 Nottingham, "URI Design and Ownership", IETF RFC 8820(2020년 6월)을 따른다. VIS API를 포함하는 RESTful MEC 서비스 API에서, 각 API의 리소스 URI 구조는 다음과 같은 구조를 갖는다.
{apiRoot}/{apiName}/{apiVersion}/{apiSpecificSuffixes}.
여기서, "apiRoot"는 스킴("https"), 호스트 및 선택적 포트, 선택적 접두사 문자열을 포함한다. "apiName"은 API의 이름(예컨대, MTS API, RNI API 등)을 정의한다. "apiVersion"은 API의 버전을 나타내고 "apiSpecificSuffixes"는 특정 API의 리소스 URI 트리를 정의한다. "apiRoot", "apiName" 및 "apiVersion"의 조합을 루트 URI라고 한다. "apiRoot"는 배포의 제어 하에 있는 반면에, URI의 나머지 부분은 API 사양의 제어 하에 있다. 위 루트에서, "apiRoot" 및 "apiName"은 서비스 레지스트리를 사용하여 발견된다(예컨대, 도 9a의 서비스 레지스트리(938) 참조). 여기에는 스킴("http" 또는 "https"), 호스트 및 선택적 포트, 선택적 접두사 문자열이 포함된다. 주어진 MEC API에 대해, "apiName"은 "mec"으로 설정될 수 있고, "apiVersion"은 적절한 버전 번호로 설정될 수 있다(예컨대, 버전 1의 경우 "v1"). MEC API는 HTTP over TLS(HTTPS라고도 함)를 지원한다. MEC API 절차의 모든 리소스 URI는 위의 루트 URI에 대해 정의된다.
JSON 콘텐츠 포맷도 지원될 수 있다. JSON 포맷은 "application/json" 콘텐츠 유형으로 표시된다. MTS API는 베어러 토큰(bearer token)과 함께 OAuth 2.0 클라이언트 자격 증명 부여 유형을 사용할 수 있다(예컨대, [MEC009] 참조). 토큰 엔드포인트는 [MEC009]에 정의된 서비스 가용성 쿼리 절차의 일부로서 발견될 수 있다. 클라이언트 자격 증명은 알려진 프로비저닝 메커니즘을 사용하여 MEC 앱에 프로비저닝될 수 있다.
다른 예에서, 본 에지 컴퓨팅 시스템 및 환경을 참조하여 논의되는 컴퓨팅 노드 또는 장치 중 임의의 것은 도 8a 및 도 8b에 도시된 컴포넌트들에 기초하여 달성될 수 있다. 각 에지 컴퓨팅 노드는 다른 에지, 네트워킹 또는 엔드포인트 컴포넌트와 통신할 수 있는 장치, 기기, 컴퓨터 또는 기타 "사물"의 유형으로 구현될 수 있다. 예를 들어, 에지 컴퓨팅 장치는 개인용 컴퓨터, 서버, 스마트폰, 모바일 컴퓨팅 장치, 스마트 기기, 차량 내 컴퓨팅 시스템(예컨대, 내비게이션 시스템), 외부 케이스, 쉘 등을 갖는 내장형 장치, 또는 설명된 기능을 수행할 수 있는 기타 장치 또는 시스템으로 구현될 수 있다.
도 8a에 도시된 단순화된 예에서, 에지 컴퓨팅 노드(800)는 컴퓨팅 엔진(여기서는 "컴퓨팅 회로"라고도 함)(802), 입력/출력(I/O) 서브시스템(808), 하나 이상의 데이터 저장 장치(810), 통신 회로 서브시스템(812), 및 선택적으로, 하나 이상의 주변 장치(814)를 포함한다. 다른 예에서, 각각의 컴퓨팅 장치는 컴퓨터에서 일반적으로 발견되는 것과 같은 다른 또는 추가 컴포넌트(예컨대, 디스플레이, 주변 장치 등)를 포함할 수 있다. 또한, 일부 예에서, 예시적인 컴포넌트 중 하나 이상은 다른 컴포넌트에 통합되거나 그렇지 않으면 다른 컴포넌트의 일부를 형성할 수 있다.
컴퓨팅 노드(800)는 다양한 컴퓨팅 기능을 수행할 수 있는 임의의 유형의 엔진, 장치, 또는 장치의 집합체로 구현될 수 있다. 일부 예들에서, 컴퓨팅 노드(800)는 집적 회로, 임베디드 시스템, FPGA(field-programmable gate array), SOC(system-on-a-chip), 또는 다른 집적 시스템 또는 장치와 같은 단일 장치로서 구현될 수 있다. 예시적인 예에서, 컴퓨팅 노드(800)는 프로세서(804) 및 메모리(806)를 포함하거나 이들로 구현된다. 프로세서(804)는 본 명세서에 설명된 기능을 수행할 수 있는(예컨대, 애플리케이션을 실행하는) 임의의 유형의 프로세서로서 구현될 수 있다. 예를 들어, 프로세서(804)는 멀티 코어 프로세서(들), 마이크로컨트롤러, 프로세싱 유닛, 특화된 또는 특수 목적 프로세싱 유닛, 또는 다른 프로세서 또는 프로세싱/제어 회로로서 구현될 수 있다.
일부 예에서, 프로세서(804)는 본 명세서에서 설명된 기능의 성능을 용이하게 하기 위해 FPGA, ASIC(application specific integrated circuit), 재구성 가능한 하드웨어 또는 하드웨어 회로, 또는 기타 특화된 하드웨어로서 구현되거나, 이들을 포함하거나, 또는 이들에 결합될 수 있다. 또한 일부 예들에서, 프로세서(804)는 데이터 프로세싱 유닛(DPU), 인프라스트럭처 프로세싱 유닛(IPU), 또는 네트워크 프로세싱 유닛(NPU)으로도 알려진 특화된 x-프로세싱 유닛(xPU)으로서 구현될 수 있다. 이러한 xPU는, 독립형 회로 또는 회로 패키지로 구현되거나, SOC 내에 통합되거나, 네트워킹 회로(예컨대, SmartNIC 또는 향상된 SmartNIC에서), 가속 회로, 저장 장치 또는 AI 하드웨어(예컨대, GPU 또는 프로그래밍된 FPGA, NPU(Network Processing Unit), IPU(Infrastructure Processing Unit), SPU(Storage Processing Unit), APU(AI Processor), DPU(Data Processing Unit))와 통합될 수 있다. 이러한 xPU는 CPU 또는 범용 처리 하드웨어 외부에서 하나 이상의 데이터 스트림을 처리하고 데이터 스트림에 대한 특정 작업 및 동작(예컨대, 마이크로서비스 호스팅, 서비스 관리 또는 오케스트레이션 수행, 서버 또는 데이터 센터 하드웨어 구성 또는 관리, 서비스 메시 관리, 또는 원격 측정 수집 및 배포 등)을 수행하기 위한 프로그래밍을 수신하도록 설계될 수 있다. 그러나, xPU, SOC, CPU, 및 프로세서(804)의 다른 변형이 서로 협력하여 컴퓨팅 노드(800) 내에서 그리고 컴퓨팅 노드(800)를 대신하여 많은 유형의 동작 및 명령어를 실행할 수 있다는 것을 이해할 수 있을 것이다.
메모리(806)는 임의의 유형의 휘발성(예컨대, 동적 랜덤 액세스 메모리(DRAM) 등) 또는 비휘발성 메모리 또는 여기에 설명된 기능을 수행할 수 있는 데이터 저장부로 구현될 수 있다. 휘발성 메모리는 매체에 의해 저장된 데이터의 상태를 유지하기 위해 전력을 요구하는 저장 매체일 수 있다. 휘발성 메모리의 비제한적인 예는 DRAM 또는 정적 랜덤 액세스 메모리(SRAM)와 같은 다양한 유형의 랜덤 액세스 메모리(RAM)를 포함할 수 있다. 메모리 모듈에 사용될 수 있는 특정 유형의 DRAM이 SDRAM(synchronous dynamic random access memory)이다.
일 예에서, 메모리 장치는 NAND 또는 NOR 기술에 기반한 것과 같은 블록 주소 지정 가능한 메모리 장치이다. 메모리 장치는 또한 3차원 크로스포인트 메모리 장치(예컨대, Intel® 3D XPointTM 메모리), 또는 기타 바이트 주소 지정 가능한 제자리 쓰기(write-in-place) 비휘발성 메모리 장치를 포함할 수 있다. 메모리 장치는 다이 자체 및/또는 패키지된 메모리 제품을 지칭할 수도 있다. 일부 예에서, 3D 크로스포인트 메모리(예컨대, Intel® 3D XPointTM 메모리)는 메모리 셀이 워드 라인과 비트 라인의 교차점에 위치하고 개별적으로 주소 지정이 가능하고 벌크 저항의 변화에 기초하여 비트 저장이 이루어지는, 트랜지스터가 없는 스택가능 크로스포인트 아키텍처를 포함할 수 있다. 일부 예에서, 메모리(806)의 전부 또는 일부는 프로세서(804)에 통합될 수 있다. 메모리(806)는, 하나 이상의 애플리케이션, 애플리케이션(들)에 의해 운영되는 데이터, 라이브러리, 및 드라이버와 같이, 동작 동안 사용되는 다양한 소프트웨어 및 데이터를 저장할 수 있다.
일 예에서, 메모리 장치는, NAND 또는 NOR 기술에 기반한 것과 같은 블록 주소 지정 가능 메모리 장치(예컨대, 단일 레벨 셀("SLC"), 멀티-레벨 셀("MLC"), 쿼드 레벨 셀("QLC"), 트라이 레벨 셀("TLC") 또는 기타 NAND)이다. 일 예에서, 메모리 장치(들)는 바이트 주소 지정 가능한 제자리 쓰기(write-in-place) 3차원 크로스포인트 메모리 장치, 또는 단일 또는 다중 레벨 PCM(Phase Change Memory) 또는 PCMS(phase change memory with a switch)와 같은 다른 바이트 주소 지정 가능한 제자리 쓰기 비휘발성 메모리(NVM) 장치, 상 변화 물질(예컨대, 칼코겐화물 글라스)을 사용하는 NVM, 금속 산화물 기반, 산소 결손 기반 및 전도성 브리지 랜덤 액세스 메모리(CB-RAM)를 포함하는 저항성 메모리, 나노와이어 메모리, 강유전성 트랜지스터 랜덤 액세스 메모리(FeTRAM), 멤리스터 기술을 통합한 자기저항 랜덤 액세스 메모리(MRAM), 스핀 전달 토크(STT)-MRAM, 스핀트로닉 자기 접합 메모리 기반 장치, 자기 터널링 접합(MTJ) 기반 장치, DW(Domain Wall) 및 SOT(Spin Orbit Transfer) 기반 장치, 사이리스터 기반 메모리 장치, 또는 이들의 임의의 조합 또는 기타 적절한 메모리를 포함한다. 메모리 장치는 또한 3차원 크로스포인트 메모리 장치(예컨대, Intel® 3D XPointTM 메모리), 또는 기타 바이트 주소 지정 가능한 제자리 쓰기(write-in-place) 비휘발성 메모리 장치를 포함할 수 있다. 메모리 장치는 다이 자체 및/또는 패키지된 메모리 제품을 지칭할 수도 있다. 일부 예에서, 3D 크로스포인트 메모리(예컨대, Intel® 3D XPointTM 메모리)는 메모리 셀이 워드 라인과 비트 라인의 교차점에 위치하고 개별적으로 주소 지정이 가능하고 벌크 저항의 변화에 기초하여 비트 저장이 이루어지는, 트랜지스터가 없는 스택가능 크로스포인트 아키텍처를 포함할 수 있다. 일부 예에서, 메모리(806)의 전부 또는 일부는 프로세서(804)에 통합될 수 있다. 메모리(806)는, 하나 이상의 애플리케이션, 애플리케이션(들)에 의해 운영되는 데이터, 라이브러리, 및 드라이버와 같이, 동작 동안 사용되는 다양한 소프트웨어 및 데이터를 저장할 수 있다.
일부 예에서, 저항기 기반 및/또는 트랜지스터 없는 메모리 아키텍처는 일정 부피의 상변화 물질이 적어도 2개의 전극 사이에 상주하는 나노미터 규모의 상변화 메모리(PCM) 장치를 포함한다. 예시적인 상 변화 물질의 부분은 적어도 2개의 전극 사이의 다양한 저항 정도가 측정될 수 있는 다양한 정도의 결정상 및 비정질 상을 나타낸다. 일부 예에서, 상 변화 물질은 칼코게나이드 기반 유리 물질이다. 이러한 저항성 메모리 장치는 때론 멤리스틱 장치라고도 하며, 이전에 흐른 전류의 이력(history)을 기억한다. 저장된 데이터는 전기 저항 측정에 의해 예시적인 PCM 장치에서 검색되며, 여기서 결정상은 상대적으로 더 높은 저항 값(들)(예컨대, 논리 "1")을 갖는 비정질 상과 비교할 때 상대적으로 더 낮은 저항 값(예컨대, 논리 "0")을 나타낸다.
예시적인 PCM 장치는 장기간(예컨대, 실온에서 약 10년) 동안 데이터를 저장한다. 예시적인 PCM 장치에 대한 쓰기 동작(예컨대, 논리 "0"으로 설정, 논리 "1"로 설정, 중간 저항 값으로 설정)은 하나 이상의 전류 펄스를 적어도 두 개의 전극에 인가함으로써 이루어지며, 여기서 펄스는 특정 전류 크기 및 지속 시간을 갖는다. 예를 들어, 적어도 두 개의 전극에 인가된 긴 저전류 펄스(SET)는 예시적인 PCM 장치가 저저항 결정 상태에 있게 하는 반면, 적어도 두 개의 전극에 인가된 비교적 짧은 고전류 펄스(RESET)는 예시적인 PCM 장치가 고저항 비정질 상태에 있게 한다.
일부 예에서, PCM 장치의 구현은 인메모리 컴퓨팅 기능을 가능하게 하는 비 폰 노이만(non-von Neumann) 컴퓨팅 아키텍처를 용이하게 한다. 일반적으로 말하면, 전통적인 컴퓨팅 아키텍처는 버스를 통해 하나 이상의 메모리 장치에 통신 가능하게 연결된 중앙 처리 장치(CPU)를 포함한다. 따라서, CPU와 메모리 사이에서 데이터를 전송하는 데 한정된 양의 에너지와 시간이 소모되는데, 이는 폰 노이만 컴퓨팅 아키텍처의 알려진 병목 현상이다. 그러나, PCM 장치는 메모리에서 일부 컴퓨팅 작업을 수행함으로써 CPU와 메모리 사이의 데이터 전송을 최소화하고, 일부 경우에는 이를 제거한다. 달리 말하면, PCM 장치는 정보도 저장하고 계산 작업도 실행한다. 이러한 비-본 노이만 컴퓨팅 아키텍처는 10,000비트를 갖는 벡터와 같이 초차원(hyperdimensional) 컴퓨팅을 용이하게 하기 위해 비교적 높은 차원을 갖는 벡터를 구현할 수 있다. 상대적으로 큰 비트 폭 벡터는 인간 두뇌를 모델로 한 컴퓨팅 패러다임을 가능하게 하며, 이는 또한 넓은 비트 벡터와 유사한 정보를 처리한다.
컴퓨팅 회로(802)는 I/O 서브시스템(808)을 통해 컴퓨팅 노드(800)의 다른 컴포넌트에 통신가능하게 결합되며, I/O 서브시스템(808)은 컴퓨팅 회로(802)(예컨대, 프로세서(804) 및/또는 메인 메모리(806)) 및 컴퓨팅 회로(802)의 다른 컴포넌트와의 입력/출력 동작을 용이하게 하기 위한 회로 및/또는 컴포넌트로 구현될 수 있다. 예를 들어, I/O 서브시스템(808)은 메모리 제어기 허브, 입력/출력 제어 허브, 집적 센서 허브, 펌웨어 장치, 통신 링크(예컨대, 포인트-투-포인트 링크, 버스 링크, 유선, 케이블, 광 도파관, 인쇄 회로 기판 트레이스 등), 및/또는 입력/출력 동작을 용이하게 하기 위한 다른 컴포넌트 및 서브시스템으로 구현되거나 또는 이들을 포함할 수 있다. 일부 예에서, I/O 서브시스템(808)은 SoC(system-on-a-chip)의 일부를 형성할 수 있고, 컴퓨팅 회로(802)의 프로세서(804), 메모리(806), 및 기타 컴포넌트 중 하나 이상과 함게 컴퓨팅 회로(802)에 포함될 수 있다.
하나 이상의 데이터 저장 장치(810)는, 예를 들어 메모리 장치 및 회로, 메모리 카드, 하드 디스크 드라이브, 솔리드 스테이트 드라이브 또는 기타 데이터 저장 장치와 같이 데이터의 단기간 또는 장기간 저장을 위해 구성된 임의의 유형의 장치로서 구현될 수 있다. 개별 데이터 저장 장치(810)는 하나 이상의 데이터 저장 장치(810)에 대한 데이터 및 펌웨어 코드를 저장하는 시스템 파티션을 포함할 수 있다. 하나 이상의 데이터 저장 장치(810)의 개별 데이터 저장 장치는 또한, 예를 들어 컴퓨팅 노드(800)의 유형에 따라 운영 체제에 대한 데이터 파일 및 실행 파일을 저장하는 하나 이상의 운영 체제 파티션을 포함할 수 있다.
통신 회로 서브시스템(812)은 컴퓨팅 회로(802)와 다른 컴퓨팅 장치(예컨대, 구현 에지 컴퓨팅 시스템의 에지 게이트웨이) 사이의 네트워크를 통해 통신을 가능하게 할 수 있는 임의의 통신 회로, 장치, 또는 이들의 집합으로서 구현될 수 있다. 통신 회로 서브시스템(812)은 이러한 통신을 수행하기 위해, 임의의 하나 이상의 통신 기술(예컨대, 유선 또는 무선 통신) 및 관련 프로토콜(예컨대, 3GPP 4G 또는 5G 표준과 같은 셀룰러 네트워킹 프로토콜, IEEE 802.11/Wi-Fi®와 같은 무선 근거리 통신망 프로토콜, 무선 광역 네트워크 프로토콜, 이더넷, Bluetooth®, Bluetooth Low Energy, IEEE 802.15.4 또는 ZigBee®와 같은 IoT 프로토콜, 저전력 광역 네트워크(LPWAN) 또는 저전력 광역(LPWA) 프로토콜 등)을 사용하도록 구성될 수 있다.
예시적인 통신 회로(812)는 네트워크 인터페이스 컨트롤러(NIC)(820)를 포함하며, 이는 호스트 패브릭 인터페이스(HFI)로 지칭될 수도 있다. NIC(820)는 하나 이상의 애드인 보드, 도터 카드, 네트워크 인터페이스 카드, 컨트롤러 칩, 칩셋, 또는 다른 컴퓨팅 장치(예컨대, 에지 게이트웨이 노드)와 접속하기 위해 컴퓨터 노드(800)에 의해 사용될 수 있는 다른 장치로서 구현될 수 있다. 일부 예들에서, NIC(820)는 하나 이상의 프로세서를 포함하는 SoC(system-on-a-chip)의 일부로서 구현되거나, 하나 이상의 프로세서를 또한 포함하는 멀티칩 패키지에 포함될 수 있다. 일부 예에서, NIC(820)는 NIC(820)에 로컬인 로컬 프로세서(도시되어 있지 않음) 및/또는 로컬 메모리(도시되어 있지 않음)를 포함할 수 있다. 이러한 예에서, NIC(820)의 로컬 프로세서는 여기에 설명된 컴퓨팅 회로(802)의 기능들 중 하나 이상을 수행할 수 있다. 이에 더하여 또는 이러한 예들에서, NIC(820)의 로컬 메모리는 보드 레벨, 소켓 레벨, 칩 레벨, 및/또는 다른 레벨에서 클라이언트 컴퓨팅 노드의 하나 이상의 컴포넌트에 통합될 수 있다.
또한, 일부 예에서, 각 컴퓨팅 노드(800)는 하나 이상의 주변 장치(814)를 포함할 수 있다. 이러한 주변 장치(814)는 컴퓨팅 노드(800)의 특정 유형에 따라 오디오 입력 장치, 디스플레이, 다른 입력/출력 장치, 인터페이스 장치, 및/또는 기타 주변 장치와 같은 컴퓨팅 장치 또는 서버에서 볼 수 있는 임의의 유형의 주변 장치를 포함할 수 있다. 다른 예에서, 컴퓨팅 노드(800)는 에지 컴퓨팅 시스템 또는 유사한 형태의 기기, 컴퓨터, 서브시스템, 회로 또는 다른 컴포넌트 내 제각기의 에지 컴퓨팅 노드(클라이언트, 게이트웨이 또는 집선 노드)에 의해 구현될 수 있다.
보다 상세한 예에서, 도 8b는 본 명세서에 설명된 기법(예컨대, 동작, 프로세스, 방법 및 방법론)을 구현하기 위해 에지 컴퓨팅 노드(850)에 존재할 수 있는 컴포넌트의 예의 블록도이다. 이 에지 컴퓨팅 노드(850)는 컴퓨팅 장치(예컨대, 모바일 장치, 기지국, 서버, 게이트웨이 등) 또는 그 일부로서 구현될 때 노드(800)의 각 컴포넌트에 대한 보다 근접 뷰를 제공한다. 에지 컴퓨팅 노드(850)는 본 명세서에 언급된 하드웨어 또는 논리적 컴포넌트의 임의의 조합을 포함할 수 있고, 에지 통신 네트워크 또는 이러한 네트워크의 조합과 함께 사용 가능한 임의의 장치를 포함하거나 이와 결합될 수 있다. 컴포넌트는 집적 회로(IC), 그 일부, 개별 전자 장치, 또는 다른 모듈, 명령어 세트, 프로그래밍 가능한 논리 또는 알고리즘, 하드웨어, 하드웨어 가속기, 소프트웨어, 펌웨어, 또는 에지 컴퓨팅 노드(850)에서 적응된 이들의 조합으로서, 또는 더 큰 시스템의 섀시 내에 통합된 컴포넌트로서 구현될 수 있다.
에지 컴퓨팅 노드(850)는, 마이크로프로세서, 멀티코어 프로세서, 멀티스레드 프로세서, 초저전압 프로세서, 임베디드 프로세서, xPU/DPU/IPU/NPU, 특수 목적 처리 장치, 특수 처리 장치 또는 기타 알려진 처리 요소일 수 있는 프로세서(852) 형태의 처리 회로를 포함할 수 있다. 프로세서(852)는 프로세서(852) 및 기타 컴포넌트가 단일 집적 회로, 또는 캘리포니아 산타클라라에 위치한 인텔사(Intel Corporation)의 EdisonTM 또는 GalileoTM SoC 보드와 같이 단일 패키지에 형성되는 SoC(시스템 온 칩)의 일부일 수 있다. 예를 들어, 프로세서(852)는 QuarkTM, AtomTM, i3, i5, i7, i9 또는 MCU급 프로세서와 같은 Intel® Architecture CoreTM 기반 CPU 프로세서, 또는 인텔사의 다른 그러한 프로세서를 포함할 수 있다. 그러나, 캘리포니아 서니베일에 위치한 어드밴스드 마이크로 디바이스사(AMD®), 캘리포니아 서니베일에 위치한 MIPS 테크놀로지스사의 MIPS® 기반 설계, ARM 홀딩스사 또는 그 고객의 ARM® 기반 설계, 또는 이들의 사용권자 또는 사용자들로부터의 임의의 수의 다른 프로세서가 사용될 수 있다. 프로세서는 애플사의 A5-A13 프로세서, 퀄컴사의 SnapdragonTM 프로세서, 또는 텍사스 인스트루먼트사의 OMAPTM 프로세서와 같은 유닛을 포함할 수 있다. 프로세서(852) 및 수반되는 회로는 단일 소켓 폼 팩터, 다중 소켓 폼 팩터, 또는 도 8b에 도시된 모든 요소들보다 적은 수의 요소를 포함하는 제한된 하드웨어 구성 또는 구성을 포함하는 다양한 다른 포맷으로 제공될 수 있다.
프로세서(852)는 상호접속부(856)(예컨대, 버스)를 통해 시스템 메모리(854)와 통신할 수 있다. 주어진 양의 시스템 메모리를 제공하기 위해 임의의 수의 메모리 장치가 사용될 수 있다. 일례로, 메모리(854)는 DDR 또는 모바일 DDR 표준(예컨대, LPDDR, LPDDR2, LPDDR3, 또는 LPDDR4)과 같은 JEDEC(Joint Electron Devices Engineering Council) 설계에 따른 랜덤 액세스 메모리(RAM)일 수 있다. 특정 예에서, 메모리 컴포넌트는 DDR SDRAM용 JESD79F, DDR2 SDRAM용 JESD79-2F, DDR3 SDRAM용 JESD79-3F, DDR4 SDRAM용 JESD79-4A, 저전력 DDR(LPDDR)용 JESD209, LPDDR2용 JESD209-2, LPDDR3용 JESD209-3, LPDDR4용 JESD209-4와 같은 JEDEC에 의해 보급된 DRAM 표준을 따를 수 있다. 이러한 표준(및 유사한 표준)은 DDR 기반 표준으로 지칭될 수 있고 이러한 표준을 구현하는 저장 장치의 통신 인터페이스는 DDR 기반 인터페이스로 지칭될 수 있다. 다양한 구현에서, 개별 메모리 장치는 단일 다이 패키지(SDP), 듀얼 다이 패키지(DDP) 또는 쿼드 다이 패키지(Q17P)와 같은 임의의 수의 상이한 패키지 유형일 수 있다. 이들 장치는, 일부 예에서 마더보드에 직접 납땜되어 더 낮은 프로파일 솔루션을 제공할 수 있는 반면, 다른 예에서 장치는 주어진 커넥터에 의해 마더보드에 차례로 결합되는 하나 이상의 메모리 모듈로 구성된다. 다른 유형의 메모리 모듈, 예를 들어 microDIMM 또는 MiniDIMM을 포함하지만 이에 국한되지 않는 다양한 종류의 듀얼 인라인 메모리 모듈(DIMM)과 같은 임의의 수의 다른 메모리 구현이 사용될 수 있다.
데이터, 애플리케이션, 운영 체제 등과 같은 정보의 지속적인 저장을 제공하기 위해, 저장 장치(858)는 또한 상호접속부(856)를 통해 프로세서(852)에 결합될 수 있다. 일 예에서, 저장 장치(858)는 솔리드-상태 디스크 드라이브(SSDD)를 통해 구현될 수 있다. 저장 장치(858)에 사용될 수 있는 다른 장치는 SD(Secure Digital) 카드, microSD 카드, XD(eXtreme Digital) 사진 카드 등과 같은 플래시 메모리 카드, 및 USB(Universal Serial Bus) 플래시 드라이브를 포함한다. 일 예에서, 메모리 장치는 칼코겐화물 글라스(chalcogenide glass), 다중 임계값 레벨 NAND 플래시 메모리, NOR 플래시 메모리, 단일 또는 다중 레벨 PCM(Phase Change Memory), 저항성 메모리, 나노와이어 메모리, 강유전성 트랜지스터 랜덤 액세스 메모리(FeTRAM), 반강유전성 메모리, 멤리스터 기술을 통합한 자기저항 랜덤 액세스 메모리(MRAM), 금속 산화물 베이스를 포함하는 저항 메모리, 산소 결손 베이스 및 전도성 브리지 랜덤 액세스 메모리(CB-RAM), 또는 스핀 전달 토크(STT)-MRAM, 스핀트로닉 자기 접합 메모리 기반 장치, 자기 터널링 접합(MTJ) 기반 장치, DW(Domain Wall) 및 SOT(Spin-Orbit Transfer) 기반 장치, 사이리스터 기반 메모리 장치, 또는 이들의 임의의 조합 또는 기타 메모리이거나 이들을 포함할 수 있다.
저전력 구현에서, 저장 장치(858)는 프로세서(852)와 연관된 온-다이 메모리 또는 레지스터일 수 있다. 그러나, 일부 예에서, 저장 장치(858)는 마이크로 하드 디스크 드라이브(HDD)를 사용하여 구현될 수 있다. 또한, 설명된 기술에 더하여 또는 이에 갈음하여, 저항 변화 메모리, 상 변화 메모리, 홀로그램 메모리 또는 화학적 메모리와 같은 임의의 수의 새로운 기술이 저장부(858)에 대해 사용될 수 있다.
컴포넌트들은 상호접속부(856)를 통해 통신할 수 있다. 상호접속부(856)는 산업 표준 아키텍처(ISA), 확장된 ISA(EISA), 주변 컴포넌트 상호접속부(PCI), 확장된 주변 컴포넌트 상호접속부(PCIx), PCI 익스프레스(PCIe) 또는 임의의 수의 다른 기술들을 포함하는 임의의 수의 기술을 포함할 수 있다. 상호접속부(856)는, 예를 들어 SoC 기반 시스템에서 사용되는 독점 버스일 수 있다. I2C(Inter-Integrated Circuit) 인터페이스, SPI(Serial Peripheral Interface) 인터페이스, 포인트 투 포인트 인터페이스 및 전원 버스와 같은 다른 버스 시스템이 포함될 수 있다.
상호접속부(856)는 접속된 에지 장치(862)와의 통신을 위해 프로세서(852)를 트랜시버(866)(예컨대, 무선 네트워크 트랜시버)에 연결할 수 있다. 트랜시버(866)는 Bluetooth® Special Interest Group에 의해 정의된 Bluetooth® 저에너지(BLE) 표준 또는 ZigBee® 표준을 사용하여 IEEE 802.15.4 표준 하에서 2.4GHz 전송과 같은 임의의 수의 주파수 및 프로토콜을 사용할 수 있다. 특정 무선 통신 프로토콜에 대해 구성된 임의의 수의 라디오가, 연결된 에지 장치(862)에 대한 접속에 사용될 수 있다. 예를 들어, 무선 근거리 통신망(WLAN) 장치는 IEEE(Institute of Electrical and Electronics Engineers) 802.11 표준에 따라 Wi-Fi® 통신을 구현하는데 사용될 수 있다. 또한, 예를 들어, 셀룰러 또는 다른 무선 광역 프로토콜에 따른 무선 광역 통신은 무선 광역 네트워크(WWAN) 유닛을 통해 발생할 수 있다.
무선 네트워크 트랜시버(866)(또는 다중 트랜시버)는 다른 범위에서의 통신을 위해 다중 표준 또는 라디오를 사용하여 통신할 수 있다. 예를 들어, 에지 컴퓨팅 노드(850)는 전력을 절약하기 위해 BLE(Bluetooth Low Energy) 또는 다른 저전력 무선에 기반한 로컬 트랜시버를 사용하여, 예를 들어 약 10미터 이내에서 가까운 장치와 통신할 수 있다. 예를 들어, 약 50미터 이내의 보다 멀리서 연결된 에지 장치(862)는 ZigBee® 또는 다른 중간 전력 라디오를 통해 도달될 수 있다. 두 통신 기술은 상이한 전력 수준에서 단일 라디오를 통해 이루어질 수도 있고 또는 별개의 트랜시버(예컨대, BLE를 사용하는 별개의 로컬 트랜시버 및 ZigBee®를 사용하는 별개의 메시 트랜시버)를 통해 이루어질 수 있다.
로컬 또는 광역 네트워크 프로토콜을 통해 에지 클라우드(895) 내의 장치 또는 서비스와 통신하기 위해 무선 네트워크 트랜시버(866)(예컨대, 무선 트랜시버)가 포함될 수 있다. 무선 네트워크 트랜시버(866)는 특히 IEEE 802.15.4 또는 IEEE 802.15.4g 표준을 따르는 저전력 광역(LPWA) 트랜시버일 수 있다. 에지 컴퓨팅 노드(850)는 Semtech 및 LoRa Alliance에 의해 개발된 LoRaWANTM(Long Range Wide Area Network)을 사용하여 넓은 영역에서 통신할 수 있다. 본 명세서에 설명된 기술들은 이들 기술에 제한되지 않고 Sigfox와 같은 장거리, 저대역폭 통신을 구현하는 임의의 수의 다른 클라우드 트랜시버 및 다른 기술과 함께 사용될 수 있다. 또한, IEEE 802.15.4e 사양에 설명된 시간 슬롯 채널 호핑과 같은 다른 통신 기술이 사용될 수 있다.
본 명세서에 설명된 바와 같이, 무선 네트워크 트랜시버(866)에 대해 언급된 시스템에 더하여 임의의 수의 다른 무선 통신 및 프로토콜이 사용될 수 있다. 예를 들어, 트랜시버(866)는 고속 통신을 구현하기 위해 확산 스펙트럼(SPA/SAS) 통신을 사용하는 셀룰러 트랜시버를 포함할 수 있다. 또한, 중간 속도 통신 및 네트워크 통신 제공을 위한 Wi-Fi® 네트워크와 같은 임의의 수의 다른 프로토콜이 사용될 수 있다. 트랜시버(866)는 LTE(Long Term Evolution) 및 5세대(5G) 통신 시스템과 같은 임의의 수의 3GPP(Third Generation Partnership Project) 사양과 호환되는 라디오를 포함할 수 있으며, 이는 본 개시의 말미에서 더 자세히 논의된다. 에지 클라우드(895)의 노드 또는 접속된 에지 장치(862)(예컨대, 메시에서 동작)와 같은 다른 장치에 유선 통신을 제공하기 위해 네트워크 인터페이스 컨트롤러(NIC)(868)가 포함될 수 있다. 유선 통신은 이더넷 접속을 제공할 수도 있고 무엇보다도 CAN(Controller Area Network), LIN(Local Interconnect Network), DeviceNet, ControlNet, Data Highway+, PROFIBUS 또는 PROFINET과 같은 다른 유형의 네트워크에 기반할 수 있다. 제2 네트워크에 대한 접속을 가능하게 하기 위해 추가적인 NIC(868)가 포함될 수 있는데, 예를 들면 이더넷을 통해 클라우드에 통신을 제공하는 제1 NIC(868) 및 다른 유형의 네트워크를 통해 다른 장치에 통신을 제공하는 제2 NIC(868)가 포함될 수 있다.
장치로부터 다른 컴포넌트 또는 네트워크로의 다양한 유형의 적용 가능한 통신이 주어지면, 장치에 의해 사용되는 적용 가능한 통신 회로는 컴포넌트(864, 866, 868 또는 870) 중 임의의 하나 이상을 포함하거나 이에 의해 구현될 수 있다. 따라서, 다양한 예들에서, 통신(예컨대, 수신, 송신 등)을 위한 적용 가능한 수단은 이러한 통신 회로에 의해 구현될 수 있다.
에지 컴퓨팅 노드(850)는, 하나 이상의 인공 지능(AI) 가속기, 신경 컴퓨팅 스틱, 뉴로모픽 하드웨어, FPGA, GPU 배열, xPU/DPU/IPU/NPU, 하나 이상의 SoC, 하나 이상의 CPU, 하나 이상의 디지털 신호 프로세서, 전용 ASIC 또는 하나 이상의 특화된 작업을 수행하도록 설계된 기타 형태의 특수 프로세서 또는 회로의 배열에 의해 구현될 수 있는 가속 회로(864)를 포함하거나 이에 결합될 수 있다. 이들 작업은 AI 처리(머신 러닝, 트레이닝, 추론 및 분류 작업을 포함함), 시각적 데이터 처리, 네트워크 데이터 처리, 객체 검출, 규칙 분석 등을 포함할 수 있다. 이들 작업은 또한 본 문서의 다른 곳에서 논의되는 서비스 관리 및 서비스 운영을 위한 특정 에지 컴퓨팅 작업을 포함할 수 있다.
상호접속부(856)는 프로세서(852)를 추가 장치 또는 서브시스템을 연결하는 데 사용되는 센서 허브 또는 외부 인터페이스(870)에 연결할 수 있다. 장치는 가속도계, 레벨 센서, 흐름 센서, 광학 광 센서, 카메라 센서, 온도 센서, 글로벌 내비게이션 시스템(예컨대, GPS) 센서, 압력 센서, 기압 센서 등과 같은 센서(872)를 포함할 수 있다. 센서 허브 또는 외부 인터페이스(870)는 또한 에지 컴퓨팅 노드(850)를 전원 스위치, 밸브 액츄에이터, 가청 사운드 생성기, 시각적 경고 장치 등과 같은 액츄에이터(874)에 접속하는 데 사용될 수 있다.
일부 선택적인 예에서, 다양한 입/출력(I/O) 장치가 에지 컴퓨팅 노드(850) 내에 존재하거나 이에 접속될 수 있다. 예를 들어, 센서 판독값 또는 액추에이터 위치와 같은 정보를 보여주기 위해 디스플레이 또는 다른 출력 장치(884)가 포함될 수 있다. 입력을 받기 위해 터치 스크린 또는 키패드와 같은 입력 장치(886)가 포함될 수 있다. 출력 장치(884)는 이진 상태 표시기(예컨대, 발광 다이오드(LED)) 및 다중 문자 시각적 출력과 같은 단순한 시각적 출력, 또는 에지 컴퓨팅 노드(850)의 동작으로부터 발생되거나 생성되는 문자, 그래픽, 멀티미디어 객체 등의 출력을 갖는 디스플레이 스크린(예컨대, 액정 디스플레이(LCD) 스크린)과 같은 보다 복잡한 출력을 포함하는 임의의 수의 형태의 오디오 또는 시각적 디스플레이를 포함할 수 있다. 본 시스템의 문맥에서 디스플레이 또는 콘솔 하드웨어는, 출력을 제공하고 에지 컴퓨팅 시스템의 입력을 수신하거나, 에지 컴퓨팅 시스템의 컴포넌트 또는 서비스를 관리하거나, 에지 컴퓨팅 컴포넌트 또는 서비스의 상태를 식별하거나, 또는 임의의 다른 수의 관리 또는 운영 기능 또는 서비스 사용 사례를 수행하는 데 사용될 수 있다.
배터리(876)는 에지 컴퓨팅 노드(850)에 전력을 공급할 수 있는데, 에지 컴퓨팅 노드(850)가 고정된 위치에 장착되는 예에서는, 전기 그리드에 연결된 전원 공급 장치를 가질 수도 있고, 배터리가 백업 또는 임시 기능으로 사용될 수도 있다. 배터리(876)는 리튬 이온 배터리, 또는 아연-공기 배터리, 알루미늄-공기 배터리, 리튬-공기 배터리 등과 같은 금속-공기 배터리일 수 있다.
배터리 모니터/충전기(878)는 에지 컴퓨팅 노드(850)에 포함되어 배터리(876)의 충전 상태(SoCh)를 추적할 수 있다. 배터리 모니터/충전기(878)는 배터리(876)의 건강 상태(SoH) 및 기능 상태(SoF)와 같은 장애 예측을 제공하기 위해 배터리(876)의 다른 파라미터를 모니터링하는 데 사용될 수 있다. 배터리 모니터/충전기(878)는 리니어 테크놀로지(Linear Technologies)의 LTC4020 또는 LTC2990, 애리조나주 피닉스의 온 세미콘덕터(ON Semiconductor)의 ADT7488A 또는 텍사스주 댈러스의 텍사스 인스트루먼트(Texas Instruments)의 UCD90xxx 제품군의 IC와 같은 배터리 모니터링 집적 회로를 포함할 수 있다. 배터리 모니터/충전기(878)는 배터리(876)에 대한 정보를 상호접속부(856)를 통해 프로세서(852)에 전달할 수 있다. 배터리 모니터/충전기(878)는 또한 프로세서(852)가 배터리(876)의 전압 또는 배터리(876)로부터의 전류 흐름을 직접 모니터링할 수 있게 하는 아날로그-디지털(ADC) 변환기를 포함할 수 있다. 배터리 파라미터는 송신 주파수, 메시 네트워크 동작, 감지 주파수 등과 같은 에지 컴퓨팅 노드(850)가 수행할 수 있는 동작을 판정하는 데 사용될 수 있다.
전력 블록(880), 또는 그리드에 결합된 다른 전원은 배터리(876)를 충전하기 위해 배터리 모니터/충전기(878)와 결합될 수 있다. 일부 예에서, 전력 블록(880)은 무선 전력 수신기로 대체되어, 예를 들어 에지 컴퓨팅 노드(850)의 루프 안테나를 통해 무선으로 전력을 얻을 수 있다. 특히 캘리포니아주 밀피타스의 리니어 테크놀로지의 LTC4020 칩과 같은 무선 배터리 충전 회로가 배터리 모니터/충전기(878)에 포함될 수 있다. 특정 충전 회로는 배터리(876)의 크기 및 이에 따른 필요한 전류에 따라 선택될 수 있다. 충전은 에어퓨얼 얼라이언스(Airfuel Alliance)에서 발표한 에어퓨얼(Airfuel) 표준, 무선 전력 위원회(Wireless Power Consortium)에서 발표한 Qi 무선 충전 표준 또는 무선 충전 연합(Alliance for Wireless Power)에서 발표한 리젠스(Rezence) 충전 표준 등을 사용하여 수행될 수 있다.
저장부(858)는 본 명세서에 설명된 기술을 구현하기 위한 소프트웨어, 펌웨어 또는 하드웨어 명령 형태의 명령어(882)를 포함할 수 있다. 이러한 명령어(882)는 메모리(854) 및 저장부(858)에 포함된 코드 블록으로 나타나지만, 임의의 코드 블록이, 예를 들어 주문형 집적 회로(ASIC)에 내장된 배선 회로로 대체될 수 있다는 것을 이해할 수 있다.
일 예에서, 메모리(854), 저장부(858), 또는 프로세서(852)를 통해 제공되는 명령어(882)는 프로세서(852)가 에지 컴퓨팅 노드(850)에서 전자 연산을 수행하도록 지시하는 코드를 포함하는 비일시적, 머신 판독가능 매체(860)로서 구현될 수 있다. 프로세서(852)는 상호접속부(856)를 통해 비일시적 머신 판독 가능 매체(860)에 액세스할 수 있다. 예를 들어, 비일시적 머신 판독 가능 매체(860)는 저장부(858)에 대해 설명된 장치에 의해 구현될 수도 있고, 또는 광 디스크(예컨대, 디지털 다목적 디스크(DVD), 콤팩트 디스크(CD), CD-ROM, 블루레이 디스크), 플래시 드라이브, 플로피 디스크, 하드 드라이브(예컨대, SSD) 또는 임의의 기간 동안(예컨대, 연장된 기간 동안, 영구적으로, 짧은 순간 동안, 임시 버퍼링 및/또는 캐싱을 위해) 정보가 저장되는 임의의 수의 기타 하드웨어 장치와 같은 특정 저장 장치를 포함할 수도 있다. 비일시적 머신 판독 가능 매체(860)는 프로세서(852)가, 예를 들어 전술한 기능 및 동작의 흐름도(들) 및 블록도(들)과 관련하여 설명된, 동작들의 특정 시퀀스 또는 흐름을 수행하도록 지시하는 명령어를 포함할 수 있다. 본 명세서에 사용된 바와 같이, "머신 판독가능 매체", "컴퓨터 판독가능 매체", "머신 판독가능 저장 장치" 및 "컴퓨터 판독가능 저장 장치"라는 용어는 상호교환가능하다. 본 명세서에서 사용되는 바와 같이, 비일시적 컴퓨터 판독 가능 매체라는 용어는 임의의 유형의 컴퓨터 판독 가능 저장 장치 및/또는 저장 디스크를 포함하고 전파 신호를 배제하고 전송 매체를 배제하도록 명시적으로 정의된다.
또한 특정 예에서, 프로세서(852) 상의 명령어(882)(개별적으로, 또는 머신 판독가능 매체(860)의 명령어(882)와 조합하여)는 신뢰 실행 환경(TEE)(890)의 실행 또는 동작을 구성할 수 있다. 예를 들어, TEE(890)는 명령어의 보안 실행 및 데이터에 대한 보안 액세스를 위해 프로세서(852)에 액세스할 수 있는 보호 영역으로 동작한다. TEE(890)의 다양한 구현, 및 프로세서(852) 또는 메모리(854)의 수반되는 보안 영역은, 예를 들면 Intel® Software Guard Extensions(SGX) 또는 ARM® TrustZone® 하드웨어 보안 확장, Intel® Management Engine (ME) 또는 Intel® Converged Security Manageability Engine (CSME)의 사용을 통해 제공될 수 있다. 보안 강화, 하드웨어 신뢰 기반, 및 신뢰 또는 보호 동작의 다른 양태는 TEE(890) 및 프로세서(852)를 통해 에지 컴퓨팅 노드(850)에서 구현될 수 있다.
도 8a 및 도 8b의 예시는 컴퓨팅 노드 및 컴퓨팅 장치를 위한 예시적인 구성요소를 제각기 포함하지만, 본 명세서에 개시된 예들은 이에 제한되지 않는다. 본 명세서에서 사용되는 바와 같이, "컴퓨터"는 상이한 유형의 컴퓨팅 환경에서 도 8a 및/또는 도 8b의 예시적인 구성요소의 일부 또는 전부를 포함할 수 있다. 예시적인 컴퓨팅 환경은 참여하는 에지 컴퓨팅 장치 중 특정 장치가 이종 또는 동종 장치가 되도록 분산 네트워킹 배열의 에지 컴퓨팅 장치(예컨대, 에지 컴퓨터)를 포함한다. 본 명세서에 사용된 "컴퓨터"는 개인용 컴퓨터, 서버, 사용자 장비, 가속기 등을 포함할 수 있으며, 이들의 임의의 조합도 포함할 수 있다. 일부 예에서, 분산 네트워킹 및/또는 분산 컴퓨팅은 도 8a 및/또는 8b에 예시된 바와 같은 임의의 수의 에지 컴퓨팅 장치를 포함하며, 이들 각각은 서로 다른 하위 구성요소, 서로 다른 메모리 용량, I/O 기능 등을 포함할 수 있다. 예를 들어, 분산 네트워킹 및/또는 분산 컴퓨팅의 일부 구현이 특정 원하는 기능과 연관되기 때문에, 본 명세서에 개시된 예들은 분산 컴퓨팅 작업의 기능적 목적을 충족시키기 위해, 도 8a 및/또는 8b에 도시된 구성요소의 상이한 조합을 포함한다. 일부 예에서, "컴퓨팅 노드" 또는 "컴퓨터"라는 용어는 도 8a의 예시적인 프로세서(804), 메모리(806), 및 I/O 서브시스템(808)만 포함한다. 일부 예에서, 분산 컴퓨팅 작업(들)의 하나 이상의 목표하는 기능은 데이터 저장을 수용하기 위한 장치(예컨대, 하나 이상의 데이터 저장 장치(810)), 입력/출력 기능부(예컨대, 예시적인 주변 장치(들)(814)), 및/또는 네트워크 통신 기능부(예컨대, 예시적인 NIC(820))와 같이 에지 네트워킹 환경의 상이한 부분에 위치하는 하나 이상의 대체 장치/구조에 의존한다.
일부 예에서, 분산 컴퓨팅 및/또는 분산 네트워킹 환경(예컨대, 에지 네트워크)에서 동작하는 컴퓨터는 계산 낭비를 줄이는 방식으로 특정 목적 기능을 수용하도록 구성된다. 예를 들어, 컴퓨터는 도 8a 및 8b에 개시된 구성요소의 서브세트를 포함하기 때문에, 이런 컴퓨터는, 그렇지 않으면 사용되지 않거나 충분히 활용되지 않을 컴퓨팅 구조를 포함하지 않으면서, 분산 컴퓨팅 목적 기능의 실행을 만족한다. 이와 같이, 본 명세서에서 사용되는 용어 "컴퓨터"는 분산 컴퓨팅 작업의 목적 기능을 만족 및/또는 실행할 수 있는 도 8a 및/또는 8b의 구조의 임의의 조합을 포함한다. 일부 예에서, 컴퓨터는, 동적 수요와 관련하여 축소 또는 확대되는 방식으로, 대응하는 분산 컴퓨팅 목적 기능에 상응하는 방식으로 구조화된다. 일부 예에서, 분산 컴퓨팅 요청(들)의 하나 이상의 작업을 처리하는 능력이 주어지면 상이한 컴퓨터가 호출 및/또는 인스턴스화되어, 작업을 충족할 수 있는 임의의 컴퓨터가 이러한 컴퓨팅 활동을 진행한다.
도 8a 및 8b의 도시된 예에서, 컴퓨팅 장치는 운영 체제를 포함한다. 본 명세서에서 사용되는 바와 같이, "운영 체제"는 도 8a의 예시적인 에지 컴퓨팅 노드(800) 및/또는 도 8b의 예시적인 에지 컴퓨팅 노드(850)와 같은 예시적인 컴퓨팅 장치를 제어하기 위한 소프트웨어이다. 예시적인 운영 체제는 소비자 기반 운영 체제(예컨대, Microsoft® Windows® 10, Google® Android® OS, Apple® Mac® OS 등)를 포함하지만 이에 국한되지 않는다. 예시적인 운영 체제는 또한 실시간 운영 체제, 하이퍼바이저 등과 같은 산업 중심 운영 체제를 포함하지만 이에 국한되지 않는다. 제1 에지 컴퓨팅 노드의 예시적인 운영 체제는 제2 에지 컴퓨팅 노드의 예시적인 운영 체제와 동일할 수도 있고 상이할 수도 있다. 일부 예에서, 운영 체제는 특정 통신 프로토콜 및/또는 인터프리터와 같이 운영 체제에 고유하지 않은 하나 이상의 기능 및/또는 동작을 용이하게 하기 위해 대체 소프트웨어를 호출한다. 일부 예에서, 운영 체제는 운영 체제에 고유하지 않은 다양한 기능을 인스턴스화한다. 일부 예에서 운영 체제는 다양한 정도의 복잡성 및/또는 기능을 포함한다. 예를 들어, 제1 에지 컴퓨팅 노드에 대응하는 제1 운영 체제는 동적 입력 조건에 대한 반응성에 대한 특정 성능 기대치를 갖는 실시간 운영 체제를 포함하고, 제2 에지 컴퓨팅 노드에 대응하는 제2 운영 체제는 최종 사용자 I/O를 용이하게 하는 그래픽 사용자 인터페이스 기능을 포함한다.
추가 예들에서, 비일시적 머신 판독가능 매체(예컨대, 컴퓨터 판독가능 매체)는 또한, 머신에 의해 실행할 명령어를 저장, 인코딩 또는 전달할 수 있으며 머신으로 하여금 본 개시의 방법들 중 하나 이상을 수행하게 하거나, 또는 그러한 명령어에 의해 활용되거나 또는 이와 연관되는 데이터 구조를 저장, 인코딩 또는 전달할 수 있는 임의의 유형의 매체(예컨대, 저장 장치, 저장 디스크 등)를 포함한다. 따라서, "비일시적 머신 판독가능 매체"는 고체 상태 메모리와, 광학 및 자기 매체를 포함할 수 있지만, 이에 한정되지는 않는다. 머신 판독가능 매체의 특정 예는, 예컨대 제한적인 것은 아니지만 반도체 메모리 장치(예컨대, EPROM(electrically programmable read-only memory), EEPROM(electrically erasable programmable read-only memory)) 및 플래시 메모리 장치; 내부 하드 디스크 및 탈착식 디스크(예컨대, SSD)와 같은 자기 디스크; 자기 광 디스크 및 CD-ROM 및 DVD-ROM 디스크를 포함하는 비휘발성 메모리를 포함한다. 머신 판독가능 매체에 의해 구현되는 명령어는 또한, 다수의 전송 프로토콜 중 어느 하나(예컨대, HTTP)를 이용하여 네트워크 인터페이스 장치를 통해, 전송 매체를 사용하여 통신망을 통해 송신 또는 수신될 수 있다.
머신 판독 가능 매체는 비일시적 포맷으로 데이터를 호스팅할 수 있는 저장 장치 또는 기타 장치에 의해 제공될 수 있다. 본 명세서에서 사용되는 바와 같이, 비일시적 컴퓨터 판독 가능 매체라는 용어는 임의의 유형의 컴퓨터 판독 가능 저장 장치 및/또는 저장 디스크를 포함하고 전파 신호를 배제하고 전송 매체를 배제하도록 명시적으로 정의된다. 일 예에서, 머신 판독 가능 매체에 저장되거나 또는 다른 방식으로 제공된 정보는 명령어 자체 또는 명령어가 도출될 수 있는 포맷과 같은 명령어를 나타낼 수 있다. 명령어가 도출될 수 있는 이 포맷은 소스 코드, (예를 들어, 압축된 또는 암호화된 형태의) 인코딩된 명령어, (예를 들어, 다수의 패키지들로 분할된) 패키징된 명령어 등을 포함할 수 있다. 머신 판독가능 매체 내의 명령어를 나타내는 정보는 프로세싱 회로에 의해 본 명세서에서 논의된 동작들 중 임의의 것을 구현하는 명령어로 프로세싱될 수 있다. 예를 들어, 정보로부터 명령어를 도출하는 것(예컨대, 프로세싱 회로에 의해 프로세싱하는 것)은, (예컨대, 소스 코드, 객체 코드 등으로부터) 컴파일링, 해석, 로딩, 조직화(예컨대, 동적으로 또는 정적으로 링크)인코딩, 디코딩, 암호화, 암호해독, 패키징, 언패키징하는 것, 또는 달리 정보를 명령어들로 조작하는 것을 포함할 수 있다.
일 예에서, 명령어의 도출은 머신 판독가능 매체에 의해 제공되는 어떤 중간 또는 전처리된 포맷으로부터 명령어를 생성하기 위한 정보의 조립, 컴파일, 또는 해석(예컨대, 프로세싱 회로에 의한)을 포함할 수 있다. 정보는, 다수의 부분으로 제공될 때, 명령어를 생성하기 위해 조합, 언패킹, 및 수정될 수 있다. 예를 들어, 정보는 하나 또는 수 개의 원격 서버 상에서 다수의 압축된 소스 코드 패키지(또는 객체 코드, 또는 이진 실행가능 코드 등)에 있을 수 있다. 소스 코드 패키지는 네트워크를 통해 전송 중일 때 암호화되고, 필요한 경우 암호 해독되고, 압축 해제되며, 조립되고(예컨대, 링크되고), 로컬 머신에서 컴파일 또는 해석되고(예컨대, 라이브러리, 독립형 실행파일 등으로), 로컬 머신에 의해 실행될 수 있다.
도 8c는 예시적인 컴퓨터 판독가능 명령어(899)와 같은 소프트웨어를 프로세서 플랫폼(들)(898) 및/또는 도 8b의 예시적인 연결된 에지 장치(862)와 같은 하나 이상의 장치로 배포하기 위한 예시적인 소프트웨어 배포 플랫폼(896)을 도시한 것이다. 예시적인 소프트웨어 배포 플랫폼(896)은 소프트웨어를 저장하고 다른 컴퓨팅 장치(예컨대, 제3자, 도 8b의 예시적인 접속된 에지 장치(862))에 전송할 수 있는 임의의 컴퓨터 서버, 데이터 설비, 클라우드 서비스 등에 의해 구현될 수 있다. 예시적인 접속된 에지 장치는 고객, 클라이언트, 관리 장치(예컨대, 서버), 제3자(예컨대, 소프트웨어 배포 플랫폼(896)을 소유 및/또는 운영하는 엔티티의 고객)일 수 있다. 예시적인 접속된 에지 장치는 상업용 및/또는 가정 자동화 환경에서 동작할 수 있다. 일부 예들에서, 제3자는 예시적인 컴퓨터 판독가능 명령어(899)와 같은 소프트웨어의 개발자, 판매자, 및/또는 라이선스 제공자이다. 제3자는 사용 및/또는 재판매 및/또는 하위 라이선스를 위해 소프트웨어를 구매 및/또는 라이선스하는 소비자, 사용자, 소매업체, OEM 등일 수 있다. 일부 예에서, 분산 소프트웨어는 하나 이상의 사용자 인터페이스(UI) 및/또는 그래픽 사용자 인터페이스(GUI)의 디스플레이가 지리적으로 및/또는 논리적으로 서로 분리된 하나 이상의 장치(예컨대, 접속된 에지 장치)(예컨대, 배수 제어(예컨대, 펌프), 배전 제어(예컨대, 릴레이) 등을 담당하는 물리적으로 분리된 IoT 장치)를 식별하도록 한다.
도 8c의 도시된 예에서, 소프트웨어 배포 플랫폼(896)은 하나 이상의 서버 및 하나 이상의 저장 장치를 포함한다. 저장 장치는 컴퓨터 판독 가능 명령어(899)를 저장하는데, 이는 전술한 바와 같이 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882)에 대응할 수 있다. 예시적인 소프트웨어 배포 플랫폼(896)의 하나 이상의 서버는 네트워크(897)와 통신하며, 이는 인터넷 및/또는 본 명세서에서 설명된 임의의 예시적인 네트워크 중 하나 이상에 대응할 수 있다. 일부 예에서, 하나 이상의 서버는 상거래의 일부로서 요청 당사자에게 소프트웨어를 전송하라는 요청에 응답한다. 소프트웨어의 배송, 판매 및/또는 라이선스에 대한 지불은 소프트웨어 배포 플랫폼의 하나 이상의 서버에 의해 및/또는 제3자 지불 개체를 통해 처리될 수 있다. 서버는 구매자 및/또는 라이선서가 소프트웨어 배포 플랫폼(896)으로부터 컴퓨터 판독가능 명령어(899)를 다운로드할 수 있게 한다. 도 8b의 예시적인 컴퓨터 판독가능 명령어(882)에 대응할 수 있는 소프트웨어는, 본 명세서에서 논의된 기술을 구현하기 위해 컴퓨터 판독 가능 명령어(899)를 실행하는 예시적인 프로세서 플랫폼(들)(898)(예컨대, 예시적인 접속된 에지 장치)에 다운로드될 수 있다. 일부 예에서, 소프트웨어 배포 플랫폼(896)의 하나 이상의 서버는 예시적인 컴퓨터 판독 가능 명령어(899)의 요청 및 전송이 통과해야 하는 하나 이상의 보안 도메인 및/또는 보안 장치에 통신 가능하게 접속된다. 일부 예에서, 소프트웨어 배포 플랫폼(896)의 하나 이상의 서버는, 개선, 패치, 업데이트 등이 최종 사용자 장치의 소프트웨어에 배포 및 적용되도록 보장하기 위해, 소프트웨어(예컨대, 컴퓨터 판독가능 명령어(899)와 동일할 수 있는 도 8b의 예시적인 컴퓨터 판독 가능 명령어(882))에 대한 업데이트를 주기적으로 제공, 전송 및/또는 강제한다.
도 8c의 도시된 예에서, 컴퓨터 판독 가능 명령어(899)는 특정 포맷으로 소프트웨어 배포 플랫폼(896)의 저장 장치에 저장된다. 컴퓨터 판독 가능한 명령어의 포맷은 특정 코드 언어(예컨대, Java, JavaScript, Python, C, C#, SQL, HTML 등) 및/또는 특정 코드 상태(예컨대, 컴파일되지 않은 코드(예컨대, ASCII)), 해석된 코드, 링크된 코드, 실행 가능한 코드(예컨대, 바이너리) 등)를 포함하지만 이에 국한되지는 않는다. 일부 예에서, 소프트웨어 배포 플랫폼(896)에 저장된 컴퓨터 판독가능 명령어(899)는 예시적인 프로세서 플랫폼(들)(896)으로 전송될 때 제1 포맷이다. 일부 예들에서, 제1 포맷은 특정 유형의 프로세서 플랫폼(들)(898)이 실행할 수 있는 실행가능 바이너리이다. 그러나, 일부 예들에서, 제1 포맷은 예시적인 프로세서 플랫폼(들)(898) 상에서 실행을 가능하게 하기 위해 제1 포맷을 제2 포맷으로 변환하기 위한 하나 이상의 준비 작업을 필요로 하는 컴파일되지 않은 코드이다. 예를 들어, 수신 프로세서 플랫폼(들)(898)은, 프로세서 플랫폼(들)(898) 상에서 실행될 수 있는 제2 포맷의 실행 가능한 코드를 생성하기 위해, 제1 포맷의 컴퓨터 판독 가능 명령어(899)를 컴파일할 필요가 있을 수 있다. 또 다른 예들에서, 제1 포맷은, 프로세서 플랫폼(들)(898)에 도달하면, 명령어의 실행을 용이하게 하기 위해 해석기에 의해 해석되는 해석 코드이다.
도 9a는 일 실시예에 따른, 탈중개화된 증명을 지원하는 MEC 네트워크 아키텍처를 도시한 것이다. 도 9a는 하나 이상의 ETSI MEC 사양(예컨대, ETSI GS MEC 003, ETSI GS MEC 011, 및 ETSI GS MEC 030 사양)에 따라 기능을 제공하는 MEC 호스트(902, 904)를 갖는 MEC 아키텍처(900A)를 구체적으로 도시한 것이다. 구체적으로, MEC 플랫폼(932)에 대한 향상(예컨대, 도 10-14와 관련하여 논의됨) 및 V2X 메시지 시그널링(예컨대, V2X 메시지 가입 시그널링 및 V2X 메시지 발행 시그널링)이 MEC 아키텍처 900A 내에서 MEC V2X API 상호 운용성 지원을 제공하기 위해 사용될 수 있다.
도 9a를 참조하면, MEC 아키텍처(900A)는 MEC 호스트(902, 904), 가상화 인프라스트럭처 관리자(VIM)(908), MEC 플랫폼 관리자(906)(모바일 에지 플랫폼 관리자(Mobile Edge Platform Manager) 또는 MEPM이라고도 함), 모바일 에지 애플리케이션 오케스트레이터(MEAO)(MEC 오케스트레이터 또는 MEO라고도 함)(910), 운영 지원 시스템(OSS)(912), 사용자 앱 프록시(914), UE(920)에서 실행되는 UE 앱(918), 및 CFS 포털(916)을 포함한다. MEC 호스트(902)는 필터링 규칙 제어 모듈(940), DNS 처리 모듈(942), 서비스 레지스트리(938), 및 MEC 서비스(936)를 갖는 MEC 플랫폼(932)을 포함할 수 있다. MEC 호스트(904)는 MEC 앱(905)을 인스턴스화하는 데 사용되는 리소스를 포함할 수 있다. MEC 서비스(936)는, 데이터 플레인(924)을 포함하는 가상화 인프라스트럭처(922)에서 MEC 앱(또는 NFV)(926, 928)을 인스턴스화하기 위한 리소스를 선택하는 데 사용될 수 있는 적어도 하나의 스케줄러(937)를 포함할 수 있다. MEC 앱(926 및 928)은 서비스(930/931)를 제공하도록 구성될 수 있는데, 이 서비스는 하나 이상의 무선 접속과 연관된 상이한 유형의 네트워크 통신 트래픽을 처리하는 것을 포함할 수 있다.
MEC 플랫폼 관리자(906)는 MEC 플랫폼 요소 관리 모듈(944), MEC 앱 규칙 및 요구사항 관리 모듈(946), 및 MEC 앱 라이프사이클 관리 모듈(948)을 포함할 수 있다.
일부 양태에서, UE(920)는 네트워크 슬라이스 인스턴스(NSI)(980) 중 하나 이상을 통해 코어 네트워크(982) 중 하나 이상과 통신하도록 구성될 수 있다. 일부 양태에서, 코어 네트워크(982)는, UE에 슬라이스를 동적으로 할당하는 것과, 슬라이스와 연관된 네트워크 기능을 구성하는 것과, 슬라이스를 사용하여 데이터 통신하기 위해 MEC 앱을 구성하는 것과, UE에 슬라이스를 재할당하는 것과, 하나 이상의 NSI(980)에 의해 사용되는 리소스를 할당 또는 제할당하는 것을 포함하는 슬라이스 관리 기능 또는 기타 슬라이스 관련 관리 기능을 사용하여, NSI(980)를 동적으로 구성할 수 있다. 슬라이스 관리와 관련하여 수행되는 하나 이상의 기능은 사용자 요청(예컨대, UE를 통해)에 기초하여, 서비스 제공자의 요청에 기초하여 개시될 수도 있고, 또는 슬라이스 관련 성능 목표를 나타내는 기존 서비스 수준 계약(SLA)과 관련하여 자동으로 트리거될 수도 있다.
일부 실시예에서, MEC 애플리케이션(또는 앱)(예컨대, MEC 앱(926 또는 928))은 MEC 호스트(902)에 의해 제공되는 가상화 인프라스트럭처(922)의 최상단에서, 배치 가능한 인스턴스(예컨대, 가상 머신(VM), 쿠버네티스 포드(Kubernetes pod)와 같은 컨테이너 포드, 컨테이너화된 애플리케이션 또는 다른 유형의 가상화 컨테이너)와 같은, 가상화된 애플리케이션으로서 실행되고, MEC 플랫폼(932)과 상호작용하여 MEC 서비스를 소비 및 제공할 수 있다. 일부 양태에서, MEC 앱(예컨대, MEC 앱(926 또는 928))은 더 작은 서비스들(마이크로서비스라고도 함)로서 구성될 수 있으며, 각 마이크로서비스는 단일의 배치 가능한 인스턴스(예컨대, 단일 VM, 단일 VM, 컨테이너 또는 다른 유형의 인스턴스)를 차지한다. 또한, 마이크로서비스는 분산 마이크로서비스 아키텍처 상에 투명하게 계층화되는 인프라스트럭처를 제공하는 서비스 메시 패턴을 형성하여 연결될 수 있다. 분산 마이크로서비스 아키텍처의 예가 도 10에 도시되어 있고, 프록시 메시를 통해 상호 연결된 마이크로서비스가 도 11에 도시되어 있다. 사이드카 프록시를 통한 마이크로서비스들 사이의 예시적인 통신이 도 12 및 도 13에 도시되어 있다. 일부 실시예에서, MEC 아키텍처(900A)는 SMCP(934)를 사용하여, 서비스 메시 데이터 플레인에 배포되는 서비스 간 연결을 다루는 서비스 및 보안 정책을 관리한다. SMCP(934)는 MEO(910)의 일부로서 또는 MEC 아키텍처(900A)에서 독립형 컴퓨팅 노드로서 구성될 수 있고, 도 1 내지 도 8c와 관련하여 논의된 SMCP 기능을 수행하는 데 사용될 수 있다. 일부 실시예에서, SMCP의 사용과 연관된 개시된 기술은 서비스 메시 패러다임을 이용함으로써 MEC 아키텍처에 배치될 때 마이크로서비스의 네트워크를 보호하기 위해 사용될 수 있다. 또한, 개시된 기술은 하드웨어 RoT(Root-of-Trust) 및 사용 중인 모든 마이크로서비스의 무결성을 검증하기 위한 증명 메커니즘의 도움으로 제로 트러스트(Zero Trust) 보안을 더욱 강화하는 데 사용될 수 있다. 본 명세서에서 사용된 "제로 트러스트(Zero Trust)"라는 용어는 네트워크 사용자가 네트워크에서 사용 가능한 애플리케이션 및 데이터에 대한 액세스 권한을 부여받거나 유지하기 전에 보안 구성 및 상태에 대해 인증, 승인 및 지속적으로 검증되도록 요구하는 보안 프레임워크를 나타낸다. 서비스 및 보안 정책을 관리하기 위한 SMCP의 사용과 연관된 추가적인 기술은 도 14 내지 도 20과 관련하여 설명된다.
도 9b는 일 실시예에 따른, NFV(Network Function Virtualization) 환경에서의 MEC 참조 아키텍처(900B)를 도시한 것이다. MEC 아키텍처(900B)는 ETSI GR MEC 017 사양과 같은 ETSI MEC 사양에 따라 기능을 제공하도록 구성될 수 있다.
일부 양태에서, ETSI MEC는 MEC 인프라스트럭처에서 다수의 V2X 메시지 브로커에 대한 MEC V2X API 상호운용성 지원을 또한 이용할 수 있는 도 9b에 도시된 NFV 환경에 배치될 수 있다. 일부 양태에서, MEC 플랫폼은 가상화된 네트워크 기능(VNF)으로서 배치된다. MEC 애플리케이션은 ETSI NFV 관리 및 오케스트레이션(MANO) 구성요소(예컨대, VIM(908), MEAO(910), 네트워크 기능 가상화 오케스트레이터(NFVO)(935))에게 VNF처럼 보일 수 있다. 이 때문에 ETSI NFV MANO 기능의 재사용이 가능하다. 일부 양태에서, MANO 기능의 전체 세트가 사용되지 않을 수도 있고 특정 추가 기능이 필요할 수도 있다. 이러한 특정 MEC 애플리케이션은 본 명세서에서 논의되는 "MEC 앱 VNF"(또는 ME 앱 VNF)라는 이름으로 표시된다. 일부 양태에서 가상화 인프라스트럭처는 NFVI로 배치되고, 가상화된 리소스는 가상화 인프라스트럭처 관리자(VIM)에 의해 관리된다. 이를 위해, ETSI NFV 인프라스트럭처 사양(예컨대, ETSI GS NFV-INF 003, ETSI GS NFV-INF 004 및 ETSI GS NFV-INF 005)에 의해 정의된 절차 중 하나 이상이 사용될 수 있다.
일부 양태에서, MEC 앱 VNF는 개별 VNF처럼 관리되어, MEC-in-NFV 배치가 ETSI NFV MANO에 의해 정의된 바와 같이, 특정 오케스트레이션 및 수명 주기 관리(LCM) 작업을 NFVO 및 VNFM 기능 블록에 위임할 수 있게 된다.
일부 양태에서, 모바일 에지 플랫폼 관리자(MEPM)(906)는 LCM 부분을 하나 이상의 가상 네트워크 기능 관리자(VNFM(들))에게 위임하는 "모바일 에지 플랫폼 관리자-NFV"(MEPM-V)로 바뀔 수 있다. MEC 참조 아키텍처 ETSI GS MEC-003에 정의된 모바일 에지 오케스트레이터(MEO)는 리소스 오케스트레이션 및 세트 오케스트레이션 및 하나 이상의 NFV 네트워크 서비스(NS)로서의 MEC 앱 VNF 세트의 오케스트레이션에 대해 NFVO(935)를 사용하는 "모바일 에지 애플리케이션 오케스트레이터"(MEAO)(910)로 바뀔 수 있다. 일부 실시예에서, MEAO(910) 및 MEPM(906)은 연합 MEC 네트워크에서 MEC 시스템 사이의 통신을 포함하는 연합 관리 기능을 수행하도록 구성될 수 있다.
일부 양태에서, 모바일 에지 플랫폼 VNF, MEPM-V, 및 VNFM(MEC 플랫폼 LCM)은 3GPP TR 32.842의 앙상블 개념에 따라 단일 패키지로 배치될 수 있거나, 또는 VNFM이 일반 ETSI GS NFV-IFA 009에 따른 Generic VNFM이고 모바일 에지 플랫폼 VNF 및 MEPM-V는 단일 공급업체에서 제공된다.
일부 양태들에서, MEC 서비스를 제공 및/또는 소비하는 애플리케이션이 아닌 한, MEC 애플리케이션과 MEC 플랫폼 사이의 Mp1 참조 포인트는 MEC 애플리케이션에 대해 선택적일 수 있다. 여기서 논의되는 다양한 MEC 관련 인터페이스 및 참조 포인트는 ETSI GS MEC-003 및 ETSI GR MEC-024 사양과 같은 ETSI 관련 기술 사양에서 추가로 정의된다.
Mp1 참조 포인트는 MEC 플랫폼과 MEC 애플리케이션 사이의 참조 포인트이다. Mp1 참조 포인트는 서비스 등록, 서비스 발견 및 서비스에 대한 통신 지원을 제공한다. 또한 애플리케이션 가용성, 세션 상태 재배치 지원 절차, 트래픽 규칙 및 DNS 규칙 활성화, 영구 저장소 및 시간 정보에 대한 액세스 등과 같은 기타 기능을 제공한다. 이 참조 포인트는 서비스별 기능을 사용하고 제공하는 데 사용할 수 있다.
Mp2 참조 포인트는 MEC 플랫폼과 가상화 인프라스트럭처의 데이터 플레인 사이의 참조 포인트이다. Mp2 참조 포인트는 애플리케이션, 네트워크, 서비스 등 사이에서 트래픽을 라우팅하는 방법에 대해 데이터 플레인에 지시하는 데 사용된다.
Mp3 참조 포인트는 MEC 플랫폼들 사이의 참조 포인트이며, 이는 MEC 플랫폼들 사이의 제어 통신에 사용된다.
일부 양태에서, MEAO(910)와 MEPM-V(906) 사이의 Mm3 참조 포인트는 ETSI GS MEC 003에 의해 정의된 Mm3 참조 포인트에 기초한다. MEPM-V와 VNFM(MEC 애플리케이션 LCM) 사이의 스플릿에 제공하기 위한 변화가 참조 포인트에 대해 이루어질 수 있다.
일부 양태에서, 다음의 새로운 참조 포인트(Mv1, Mv2, 및 Mv3)가 MEC 앱 VNF의 관리를 지원하기 위해 ETSI MEC 아키텍처 및 ETSI NFV 아키텍처의 요소들 사이에 도입된다. 다음 참조 포인트는 기존의 NFV 참조 포인트와 관련되지만, 기능의 서브세트만 ETSI MEC에 사용될 수 있고, 다음의 확장, 즉, Mv1 (이 참조 포인트는 MEAO와 NFVO를 연결하고, ETSI NFV에서 정의된 Os-Ma-nfvo 참조 포인트와 관련된다); Mv2 (이 참조 포인트는 MEC 앱 VNF의 LCM을 수행하는 VNF 관리자를 MEPM-V와 연결하여 LCM 관련 통지가 이들 엔티티 사이에서 교환될 수 있도록 하며, ETSI NFV에서 정의된 Ve-Vnfm-em 참조 포인트와 관련되지만, 추가부를 포함할 수 있고, Ve-Vnfm-em에 의해 제공된 모든 기능을 사용하지는 않을 수도 있다); Mv3 (이 참조 포인트는 VNF 관리자를 MEC 앱 VNF 인스턴스와 연결하여, 메시지 교환을 허용하는데, 예컨대 MEC 애플리케이션 LCM 또는 초기 배치 특정 구성과 관련되게 하며; ETSI NFV에 정의된 Ve-Vnfm-vnf 참조 포인트와 관련되지만, 추가부를 포함할 수 있고 Ve-Vnfm-vnf에 의해 제공된 모든 기능을 사용하지는 않을 수도 있다)이 필요할 수 있다.
일부 양태에서, ETSI NFV에 의해 정의된 다음의 참조 포인트, 즉, Nf-Vn(이 참조 포인트는 각 MEC 앱 VNF를 NFVI와 연결한다); Nf-Vi(이 참조 포인트는 NFVI와 VIM을 연결한다); Os-Ma-nfvo(이 참조 포인트는 OSS와 NFVO를 연결한다)가 사용된다. 이는 주로 NS들을 관리하는 데 사용되는데, 즉, 서비스를 제공하도록 연결되어 조율되는 여러 VNF, 즉 Or-Vnfm(이 참조 포인트는 NFVO와 VNFM을 연결하며, 주로 NFVO가 VNF LCM 동작을 호출하는 데 사용된다); Vi-Vnfm(이 참조 포인트는 VIM과 VNFM을 연결하며, 주로 VNFM에 의해 사용되어 VNF가 필요로 하는 클라우드 리소스를 관리하기 위해 리소스 관리 동작을 호출하고, NFV 기반 MEC 배포에서는 이 참조 포인트가 1:1 ~ Mm6에 대응하는 것으로 추정된다); 및 Or-Vi(이 참조 포인트는 NFVO와 VIM을 연결하고, 주로 NFVO에 의해 사용되어 클라우드 리소스 용량을 관리한다)를 관리하는데 사용된다.
도 9c는 일 실시예에 따른, MEC 연합으로 구성된 도 9a의 MEC 네트워크 아키텍처의 변형인 MEC 아키텍처(900C)를 도시한 것이다. 도 9c를 참조하면, MEC 아키텍처(900C)의 MEC 호스트 레벨(960) 및 MEC 시스템 레벨(962)은 도 9a의 MEC 아키텍처(900A)의 대응하는 MEC 호스트 및 시스템 레벨과 동일하다. MEC 아키텍처(900C)는 다중 MEC 아키텍처(또는 MEC 시스템)를 관리하도록 구성된 MEC 연합 관리자(966)를 갖는 MEC 연합 레벨(964)을 더 포함한다. 이와 관련하여, 도 9c의 MEC 연합 관리자(966)는 MEC 아키텍처(또는 시스템)(900C) 및 하나 이상의 추가 MEC 시스템(968)(도 9c에서 "기타 MEC 시스템"으로 지칭됨)을 관리한다. 하나 이상의 추가 MEC 시스템(968)은 다른 MEC 연합 관리자(970)에 의해 관리될 수 있으며, 이는 Mff-fed 참조 포인트를 통해 MEC 연합 관리자(966)에 통신 가능하게 연결된다. MEC 연합 레벨(964)의 MEC 연합 관리자(966)는 또한 Mff-fed 참조 포인트를 통해 클라우드 시스템(또는 에지 클라우드)(972)에 통신 가능하게 연결된다. MEC 연합 관리자(966) 및 기타 MEC 연합 관리자(970)는 대응하는 Mfb-fed 참조 포인트를 통해 MEC 연합 브로커(974)에 통신 가능하게 연결될 수 있다.
도 10은 실시예에 따른 분산 마이크로서비스 환경(1000)을 도시한 것이다. 참조 MEC 아키텍처(900A, 900B, 900C)가 마이크로서비스 추상화 없이 예시되어 있지만, 일부 양태에서 MEC 애플리케이션 및 MEC 플랫폼의 구성요소는 다른 피어 서비스 및 마이크로서비스와 상호작용하는 마이크로서비스 네트워크로 분해될 수 있다(예컨대, 도 10에 도시됨).
분산형 마이크로서비스 환경(1000)의 서비스 메시는, 서로 통신하고 인그레스 노드(1002)를 통해 다른 네트워크와 통신하는 마이크로서비스(1004, 1006, 1008, 1010)를 포함한다. 분산 마이크로서비스 환경(1000)은 분산 마이크로서비스 아키텍처(예컨대, MEC 시스템)에 투명하게 계층화되는 서비스 메시 인프라를 제공한다. 서비스 메시 인프라스트럭처는 네트워크와 다수의 마이크로서비스 사이에 위치하며 배포된 마이크로서비스들 사이에 이스트-웨스트 바운드 트래픽(east-west bound traffic)을 균일하게 제어, 보호 및 모니터링한다. 일부 양태에서, 서비스 메시는 개별 마이크로서비스로부터의 제어/관리(보안 포함) 시그널링의 분리를 가능하게 한다. 이러한 시그널링은 도 11에 도시된 바와 같이 메시 토폴로지에 연결된 사이드카 프록시(프록시라고도 함)에 의해 수행될 수 있다.
도 11은 일 실시예에 따른, 마이크로서비스가 사이드카 프록시 메시에 의해 상호연결되는 분산 마이크로서비스 환경(1100)을 도시한 것이다. 도 11을 참조하면, 분산형 마이크로서비스 환경(1100)은 마이크로서비스(1102, 1104, 1106, 1108)를 포함하며, 각각의 마이크로서비스는 사이드카 프록시(예컨대, 대응하는 사이드카 프록시(1110, 1112, 1114, 1116))로 구성된다. 프록시와 관련된 예시적인 기능은 도 12에 도시되어 있다.
도 12는 일 실시예에 따른, 대응하는 사이드카 프록시를 사용하는 마이크로서비스들 사이의 예시적인 통신의 다이어그램(1200)을 도시한 것이다. 보다 구체적으로, 마이크로서비스(1202)는 프록시(1204)와 연관되고, 마이크로서비스(1208)는 프록시(1206)와 연관된다. 마이크로서비스들(1202 및 1208) 사이의 통신은 대응하는 프록시(1204 및 1206)를 통해(예컨대, 프록시들 사이의 통신 경로(1212)를 통해) 발생한다.
도 12에 도시된 바와 같이, 각각의 프록시(예컨대, 프록시(1204) 및 프록시(1206))는 신원, 서비스 엔드포인트 구성, 인증 및 프록시가 부착된 마이크로서비스에 대한 권한 부여와 관련된 기능을 수행할 수 있다. 일부 실시예에서, 계층 7 프로토콜은 대응하는 프록시를 사용하는 마이크로서비스들 사이의 통신(1210)에 사용될 수 있다(HTTP 기반 통신은 마이크로서비스와 그 프록시 사이에서 로컬로 라우팅됨).
일부 실시예에서, 서비스 메시(예컨대, 도 11에 도시된 마이크로서비스 및 해당 프록시의 메시)는 사이드카 프록시가 배치된 마이크로서비스에 대한 서비스 발견, 인증, 권한 부여 및 암호화를 용이하게 하는 마이크로서비스 배치에서 일관된 보안을 촉진하는 데 사용된다. 마이크로서비스 배치에서 더 큰 잠재적인 공격 표면이 제공될 경우, 서비스 메시의 운영 원칙은 MEC 아키텍처에 대한 제로 트러스트 보안 구성을 달성하기 위한 보안 격차를 메우는 데 도움이 된다.
도 13은 일 실시예에 따른, 서비스 메시(1300)의 컨트롤 플레인 및 데이터 플레인을 도시한 것이다. 도 13을 참조하면, 서비스 메시(1300)는 대응하는 프록시(1304 및 1308)를 갖는 마이크로서비스(1302 및 1306)에 의해 형성된다. 서비스 메시(1300)는 SMCP(1310) 및 서비스 메시 데이터 플레인(SMDP)(1312)을 더 포함한다. SMDP(1312)는 사이드카 프록시(1304 및 1308)의 일부로서 구성될 수 있는 반면, SMCP(1310)는 독립형 노드(예컨대, MEC 호스트)로서 또는 MEC 오케스트레이터(예컨대, 도 9a의 MEO(910))의 일부로서 구성될 수 있다.
일부 실시예에서, SMCP(1310)는 데이터 플레인에 배포되는 서비스 간 연결을 다루는 서비스 및 보안 정책을 관리한다. SMDP(1312)는 마이크로서비스들 간 연결의 클라이언트 및 서버 엔드포인트를 모두 처리하는 서비스 메시의 사이드카 프록시를 포함한다. 이와 관련하여, SMDP(1312)는 모든 마이크로서비스에 대해 정책 시행 지점(Policy Enforcement Point: PEP) 역할을 한다.
일부 실시예에서, 개시된 기술은 서비스 메시 패러다임을 이용함으로써 MEC 환경에 배치될 때 마이크로서비스의 네트워크를 보호하기 위해 사용될 수 있다. 개시된 기술은 또한 서비스 메시 내에서 사용 중인 마이크로서비스의 무결성을 검증하기 위한 증명 메커니즘과 하드웨어 RoT의 도움으로 제로 트러스트 보안을 더욱 강화하는 데 사용된다. 또한, 개시된 기술은 다음 기능들을 용이하게 하는 데 사용될 수 있다.
(a) 대응하는 VM/컨테이너를 대신하여, 호스트된 워크로드가 안전한 환경에서 기능하고 있다는 사이드카 프록시 증명
(b) 보안 강화를 담당하는 사이드카 프록시의 발견 및 프로비저닝을 지원하는 MEC 시스템
(c) SMCP에 의해 발행된 발생된 서비스 메시 보안 정책의 범위, 즉 MEC 호스트 수준, MEC 시스템 수준 또는 MEC 연합 수준에 대한 설명
(d) 서비스 메시 데이터 플레인 기능이 특권을 가진 컨트롤 플레인 기능으로부터 격리되도록 보장.
기존 증명 기술은 MEC 배치 내에서 구현될 때 서비스 메시에서 증명 기반 메커니즘(하드웨어 RoT 사용)을 사용하지 않는다. 또한, 기존 서비스 메시 시스템은 컨트롤 플레인을 사용하여 데이터 플레인을 통한 마이크로서비스/워크로드의 증명을 적용하지 않는다. 또한, MEC 기반 서비스 메시 시스템에서의 증명 기능의 설계는 현재 존재하지 않는 것으로 알려져 있다. 또한, 기존 기술이 증명 가능한 RoT를 사용하지 않고 컨트롤 플레인과 데이터 플레인을 분리하는 마이크로서비스 계층을 정의하지 않기 때문에, 개시된 증명 기술은 MEC 아키텍처에 사용되는 기존 증명 기술과 구별될 수 있다. 기존 증명 기술에 비해, 개시된 기술은 하드웨어 RoT로 증명 가능한 마이크로서비스 메시를 구현하는 MEC 인프라스트럭처에 대한 증명 기반 보안 메커니즘을 사용한다.
일부 실시예에서, 개시된 기술을 사용하는 솔루션 프레임워크는 다음 구성요소를 포함한다.
(a) MEC 환경에서 서비스 메시 배치에서 보안을 강화하기 위해 하드웨어 보안 모듈(HSM)(예컨대, RoT 회로)을 포함하는 증명 메커니즘, 여기서 사이드카 프록시는 마이크로서비스를 실행하는 VM/컨테이너의 하드웨어 증명을 실시하게 한다.
(b) 증명을 통한 마이크로서비스 무결성의 성공적인 검증에 의존하는 보안을 시행하는 것을 담당하는 사이드카 프록시의 프로비저닝 방법으로서, 이 방법은 MEC 기능 엔티티 및 참조 포인트와 관련되며, 다양한 보안 정책 시행 도메인(MEC 호스트, MEC 시스템 및 MEC 연합)에 적용.
제안된 기술은 최소 권한 액세스 원칙을 따르는 MEC 환경에 제로 트러스트 보안을 도입한다. 이는 네트워크 운영자와 최종 사용자 및 애플리케이션 개발자가 MEC 기술을 더 많이 채택하는 데 매우 중요하다. 개시된 기술의 이점은, MEC 마이크로서비스를 직접적으로 포함하지 않고 사이드카 프록시에 의해 촉진되는, MEC 인프라스트럭처에서 하드웨어 RoT 기술과 HSM을 사용하여 확장 가능한 방식으로 MEC 마이크로서비스 간에 신뢰를 구축하는 것이다. 제안된 기술의 결과로서, 마이크로서비스는 추가적인 보안 설정 없이 MEC API(예컨대, 로케이션(Location), V2X 등)를 노출할 수 있다. 또한, 개시된 기술에 의한 마이크로 세분화의 사용(예컨대, MEC 시스템 또는 MEC 연합을 포함하는 보안 경계의 서로 다른 영역에서 별도의 권한 부여 및 토큰 생성 사용)은 다수의 네트워크 운영자(예컨대, MNO)와의 MEC 연합 구성을 용이하게 할 것이다.
개시된 기술은 서비스 메시를 사용하여 MEC 환경에 배치될 때 마이크로서비스의 네트워크를 보호하고 하드웨어 RoT 및 사용 중인 모든 마이크로서비스의 무결성을 검증하기 위한 증명 메커니즘의 도움으로 제로 트러스트 보안을 더욱 강화하는 데 사용될 수 있다. 개시된 기술은 다음 4개 섹션에서 더 자세히 논의된다.
섹션 A: 증명 절차를 이용하여 MEC 아키텍처에서 서비스 메시에 결합된 마이크로서비스들 간의 신뢰를 설정하는 것을 포함하는 MEC 아키텍처에서 서비스 메시의 증명 기반 동작. 예를 들어, SMCP의 증명 서비스는 증명을 수행하기 위해 기본 하드웨어 RoT 엔티티를 활용하도록 프론트 엔드를 제공하는 데 사용될 수 있다.
섹션 B: 사이드카 프록시에 보안 구성 프로비저닝. 예를 들어, 개시된 기술은 사이드카 컨트롤러 및 SMCP를 포함하는 시그널링 프레임워크를 사용하여, 서비스 메시 초기화 단계에서 MEC 시스템에 걸친 마이크로서비스 인스턴스들에 대한 페어링 및 특정 사이드카 주입의 구성된 정책을 시행할 수 있다. 또한, 사이드카 프록시 컨테이너를 초기화하기 위해 증명 기반 절차가 사용될 수 있다.
섹션 C: "독립형" MEC 시스템에서 개시된 기술 사용. 예를 들어, 사이드카 프록시 컨트롤러는 MEO에서 인스턴스화될 수 있는 반면에, SMCP는 별도의 기능 엔티티 또는 MEO의 일부로 구현될 수 있다.
섹션 D: 각각이 자체적으로 배치된 서비스 메시를 갖는 다수의 MEC 시스템을 포함하는 MEC 연합에서 개시된 기술 사용.
섹션 A: MEC 아키텍처에서 서비스 메시의 증명 기반 운영
도 14는 일 실시예에 따른, 격리된 서비스 메시 컨트롤 플레인을 사용하는, 증명된 마이크로서비스 제어를 갖는 MEC 아키텍처에서 서비스 메시(1400)의 탈중개화된 증명 동작을 도시한 것이다. 도 14를 참조하면, 서비스 메시(1400)는 대응하는 프록시(1406 및 1408)를 갖는 마이크로서비스(1402 및 1404)를 포함한다. 각 마이크로서비스는 MEC 호스트에서, 배치 가능한 인스턴스(예컨대, 가상 머신(VM), 컨테이너 포드 또는 가상화 컨테이너)를 사용하여 인스턴스화된 MEC 앱으로서 구성될 수 있고, 대응하는 프록시도 동일한 MEC 호스트에서 인스턴스화된다. 일부 실시예에서, 각각의 마이크로서비스는 MEC 호스트의 컴퓨팅 노드 상에 구성된 하드웨어 RoT로 구성될 수 있다. 예를 들어, 마이크로서비스(1402)는 본 명세서에서 논의된 증명 기능에 사용되는 하드웨어 RoT 엔티티(1410)로 구성된다.
서비스 메시(1400)는 또한 데이터 플레인 API(1414)을 갖는 SMCP(1412)로 구성된다. SMCP(1412)는 증명 서비스(1438), 증명 검증기(1440), 저장 엔티티(1442), 및 사이드카 구성 블록(1444)으로 구성될 수 있다. SMCP(1412)의 기능은 본 명세서에서 더 자세히 논의된다.
보다 구체적으로, 도 14는 개별 마이크로서비스의 하드웨어 기반 증명에 의해 지원되는 서비스 메시(1400)에 의해 촉진되는 MEC 아키텍처 내의 마이크로서비스들 사이의 신뢰를 확립하기 위해 취해지는 탈중개화된 증명과 연관된 동작(1416-1436)을 예시한다. 이와 관련하여 "탈중개화된 증명(disintermediated attestation)"이라는 용어는 마이크로서비스 상호작용에서 제거되는(또는 탈중개화되는) 증명을 지칭한다. 그에 비해 기존의(또는 탈중개화되지 않은(non-disintermediated)) 증명 접근 방식은 페어와이즈(pairwise) 마이크로서비스 트랜잭션 사이의 증명 페이로드 교환을 전제 조건으로 포함한다. 각각의 페어와이즈 증명은 기존 애플리케이션 컨텍스트와 함께 관리되어야 하는 증명 컨텍스트를 추가로 초래할 수 있다. 그러나, 탈중개화된 증명은 이러한 비효율성을 방지한다.
일부 실시예에서, 개시된 기술은 SMCP(1412)에서 증명 서비스(1438)를 이용하여 프론트 엔드를 제공하고 증명을 수행하기 위해 기본 하드웨어 RoT 엔티티(1410)를 활용한다. 증명 검증자 서비스(증명 검증자(1440)라고도 함)는 무결성 리포트를 평가하여 마이크로서비스가 신뢰할 수 있는지 검증하고 증명 리포트를 증명 서비스(1438)에 발행한다. 하드웨어 RoT 개체(1410)는, 예를 들어 MEC 호스트의 일부 또는 배치된 MEC 시스템에 속하지 않는 별도의(그럼에도 불구하고 신뢰할 수 있는) 하드웨어 엔티티일 수 있다. 도 14에 도시되고 탈중개화된 증명과 연관된 동작(1416-1436)에 대한 더 자세한 설명이 본 명세서에 제공된다.
동작(1416)에서, 마이크로서비스(1402)가, 예를 들어 MEC 시스템의 MEC 호스트에 배치된 ("드라이버" VM /컨테이너로도 지칭되는 VM 또는 컨테이너의 형태의) MEO(910)에 의해 조율되고, 드라이버 VM/컨테이너에 맞춰진 MEO에 의해 사이드카 프록시(1406)가 주입된다.
동작(1418)에서, 초기화 시에, 사이드카 프록시(1406)가 하드웨어 RoT 엔티티(1410)에 의해 지원되는 증명 서비스(1438)에 증명 요청(1446)을 발행한다. 이 통신은 MEC Mp1 참조 포인트를 통해 발생한다. 일부 양태에서, RoT 엔티티(1410)는 신뢰할 수 있는 장치 아이덴티티 및 다른 구성들을 포함하는, 마이크로서비스를 호스팅하는 장치의 검증된 구성을 제공하도록 구성된다.
그러면 동작(1420)에서, 증명 서비스(1438)가 배치된 마이크로서비스(1402)의 연관된 VM/컨테이너로부터 증거 정보(1448)(클레임 정보를 포함할 수 있음)를 수집한다. 일부 양태에서, 증거 정보는 구성 데이터, 측정, 원격 측정, 추론, 파일 구조 정보, 리소스 액세스 요건 정보, 메모리 사용 정보, 이전 트랜잭션 정보, CPU 사용 정보, 기타 리소스 사용 정보, 대역폭 가용성 정보, 처리 상태 정보 등을 포함한다. 마이크로서비스를 호스팅하는 컴퓨팅 노드의 시스템 구성요소(하드웨어 RoT 엔티티(1410) 포함)는 하드웨어, 펌웨어, BIOS, 소프트웨어 등과 같은 현재 시스템 구성요소에 대한 증거 정보를 얻기 위해 RoT 엔티티(1410)에 의해 제공되는 기능을 통해 서명될 수 있는 일련의 측정을 수행할 수 있다.
증거 정보는 보안 관련성이 있는 운영 상태, 건강, 구성 또는 구조를 나타내는 마이크로서비스 환경에 대한 클레임 세트이다. 증거 정보는 관련성, 준수성 및 적시성을 확립하기 위해 검증 기관(예컨대, 증명 서비스(1438) 및 증명 검증자(1440))에 의해 평가될 수 있다. 타겟 환경이 신뢰성 속성에 대해 증명 환경에게 "거짓말"을 할 수 없도록 신뢰할 수 있는 방식으로 클레임을 수집할 수 있다. 증거 정보는 마이크로서비스의 타겟 환경과 안전하게 연관될 수 있으므로, 검증 엔티티를 속여서 다른 환경(더 신뢰할 수 있음)에서 발생한 클레임을 수락하게 할 수 없다. 일부 양태에서, 증거 정보는 증명 엔티티에서 검증 엔티티로 이동할 때 증거 정보를 관찰, 변경 또는 잘못 보낼 수 있는 "중간자" 공격자로부터 보호될 수 있다.
동작(1422)에서, 증명 서비스(1438)가 마이크로서비스(1402)를 실행하는 노드 상의 하드웨어 RoT 엔티티(1410)를 이용하여 수집된 증거 정보(1448)를 증명하고, 결과의 무결성 리포트(1450)를 증명 검증기(1440)로 전송한다.
동작(1424)에서, 증명 검증기(1440)가 수신된 무결성 리포트(1450)의 진정성을 검증하고, 계속해서 해당 상태 정보와 함께 이전에 컴파일된 매니페스트를 포함하는 저장 엔티티(1442)와 통신하여, 제시된 증거를 알려진 양호한 상태를 비롯하여 마이크로서비스(1402)에 사용되는 배치 가능한 인스턴스의 검증된 구성과 비교한다. 일부 양태에서, 검증된 구성은 하드웨어 RoT 엔티티(1410)에 의해 제공된다.
동작(1426)에서, 평가 후에, 증명 검증자(1440)가 증명 리포트(1452)를 증명 서비스(1438)로 다시 발행한다.
동작(1428)에서, 증명 서비스(1438)가 성공적인 검증의 신호로서, 증명 토큰(1454)을 생성하고 호출 사이드카 프록시(1406)로 전송한다.
동작(1430)에서, 사이드카 프록시(1406)는 SMCP(1412)에 대한 모든 요청에서 증명 토큰(1454)을 사용한다. 이와 관련하여, 사이드카 프록시(1406)가 사이드카 프록시 구성을 검색하기 위해 데이터 플레인 API(예컨대, 데이터 플레인 API(1414))를 호출할 수 있으며, 증명 상태를 유지하기 위해 메시 백엔드를 요구하지 않는다(대신 이 양태는 SMCP 1412에서 구현된다).
동작(1432)에서, SMCP(1412)의 데이터 플레인 인터페이스가 증명 서비스(1438)로 증명 토큰(1454)의 유효성을 검증하고, 계속해서 사이드카 프록시(1406)로부터의 요청을 처리한다.
동작(1434)에서, 사이드카 프록시(1406)가 플로우-스루 동작(1430-1432)을 반복함으로써 SMCP(1412)의 데이터 플레인 API(1414)에 다중 요청을 발행하여 SMCP(1412)로부터 그 구성(예컨대, 사이드카 프록시 구성 기능)을 획득한다.
동작(1436)에서, 구성된 사이드카 프록시(1406 및 1408) 사이에 전송 계층 보안(TLS) 세션이 확립될 수 있으며, 여기서 페어와이즈 TLS 엔드포인트는 증명 컨텍스트에 기초하여 상호 신뢰된다. SMDP에서 신뢰할 수 있는 통신이 발생하는 모든 페어와이즈 마이크로서비스 상호작용이 SMCP에 의해 중개되지 않기 때문에, 개시된 기술은 MEC 배치에서 확장될 수 있다.
일부 실시예에서, 위 흐름의 동작(1428)과 관련하여 언급된 증명 토큰(1454)은 사이드카 프록시(1406)가 일정 시간 동안(예컨대, 증명 토큰이 일정 시간 후에 만료되는 시간 제한 정책을 기반으로 함) 수행하는 증명 절차(예컨대, 드라이버 VM/컨테이너가 양호한 상태인지 증명하고 및 검증하는 것)의 결과이다. 또한, 시스템에 공격 검출 수단이 제공되는 경우, 증명 서비스(1438)는 유효 증명 토큰을 즉시 폐기하도록, 즉, 만료뿐만 아니라 사이드카 프록시가 관련 검사를 통과한 후 증명 토큰 및 새로운 구성을 다시 획득하게 하도록 동작하는 마이크로서비스에 대한 자격 증명 전에 폐기하도록 지시받을 수 있다.
다른 실시예에서, 사이드카(또는 일반적으로 컨테이너)가 TEE(Trusted Execution Environment) 또는 엔클레이브에서 인스턴스화되는 것을 고려하는 것은 위의 동작의 실행에 있어 필수적인 것이 아닐 수 있다.
일부 양태에서, 동작(1430)에서 토큰 검증이 실패하면, 사이드카 프록시(1406)는 데이터 플레인 API와 상호작용하기 위해 새로운 토큰을 수신하기 위해 동작들(1418-1428)을 진행할 수 있다.
일부 실시예에서, 증명 절차가 실패하면, 그 마이크로서비스는 MEO에 의해 제거될 수 있다.
일부 양태에서, 사이드카 프록시(1406)는 증명 서비스(1438)에 제공하기 위해 드라이버 VM/컨테이너 이미지(예컨대, 로컬 컨테이너 저장소)에 대한 포인터를 사용할 수 있다. 일부 양태에서, IP 테이블을 사용해서 드라이버 컨테이너로부터 사이드카를 통해 모든 네트워크 트래픽을 라우팅할 수 있다. 일부 양태에서, 하드웨어 RoT 엔티티는 신뢰할 수 있는 환경에서 실행된다.
섹션 B: 보안 강화를 담당하는 사이드카 프록시 프로비저닝
도 15는 일 실시예에 따른, 독립형 기능 엔티티로서 구현되는 서비스 메시 컨트롤 플레인(1506)의 다이어그램(1500)이다. 일부 실시예에서, MEC 시스템의 MEO(1502)는 서비스 메시 초기화 단계에서 MEC 시스템에 걸쳐 마이크로서비스 인스턴스에 대한 특정 사이드카 주입 및 페어링을 시행하는 것을 담당할 수 있다. 도 15에 도시된 바와 같이, 독립형 기능 엔티티 또는 MEO의 일부일 수 있는 SMCP(1506)는 (예컨대, 구성 동작(1508)을 통해) 사이드카 주입, 배치 가능한 인스턴스에 대한 사이드카 페어링(예컨대, VM, 포드, 컨테이너), MEO(1502) 내에서 인스턴스화된 사이드카 컨트롤러(1504)에 대한 SMCP 엔드포인트 정보에 대한 정책 가이드라인을 구성하는 것을 담당한다. 이 구성 정책(또는 그 업데이트)을 획득하면, 사이드카 컨트롤러(1504)는 MEC 시스템의 VIM(예컨대, VIM(908))에게 (직접 또는 MEPM을 통해), 매칭되는 마이크로서비스가 오케스트레이션될 때마다 선택된 사이드카 컨테이너를 인스턴스화하고 이를 마이크로서비스 인스턴스에 바인딩하도록 지시한다.
도 16은 일 실시예에 따른, 데이터 플레인 보안을 구현하는 증명된 마이크로서비스 사이드카 프록시(1604)의 프로비저닝을 도시한 다이어그램(1600)이다. 초기화의 일부로서 인스턴스화되면, 사이드카 프록시 컨테이너는 증명 토큰을 얻기 위해 도 14와 관련하여 자세히 설명된 것과 같은 증명 절차를 거칠 수 있다. 이에 따라, 사이드카 프록시(1604)는 SMCP(1606)와 상호작용하여 피어 서비스 엔드포인트, 인증을 위한 자격 증명, 및 관련 마이크로서비스(1602)가 서비스 메시에 연결된 다른 마이크로서비스와의 보안 연결을 수립할 수 있도록 하는 권한 부여 정책을 제공받을 수 있다. 노출된 서비스에 대한 정보도 이 프로세스에 의해 전달된다.
일부 양태에서, SMCP(1606)는 이러한 상호작용을 용이하게 하기 위해 데이터 플레인 API(1608)를 노출한다. 데이터 플레인 API에 대한 요청은 비동기적으로 처리될 수 있으며 앞서 언급한 단계에서 획득된 증명 토큰과 함께 제공될 수 있다.
데이터 플레인 API(1608)에서 요청을 수신하면, SMCP(1606)는 제공된 증명 토큰을 검증하도록 하는 요청을 증명 서비스(1610)에 내부적으로 발행한다. 성공적인 검증에 이어, 데이터 플레인 API(1608) 엔드포인트는 사이드카 프록시(1604)에 응답할 수 있다. 이와 관련하여, 사이드카 프록시 구성의 프로비저닝은 관련 마이크로서비스(1602)가 증명 서비스(1610)의 증명 절차에 의해 부과된 검사를 성공적으로 통과했는지에 의존한다.
데이터 플레인 API(1608)는 사이드카 프록시(1604)가 구성을 채우기 위해 상호작용할 수 있는 서비스(예컨대, 컴퓨팅 노드 아이덴티티 정보(1612), 서비스 엔드포인트 정보(1614), 인증 정보 또는 기능(1616), 및 권한 부여 정보 또는 기능(1618))를 노출한다. 사이드카 프록시(1604)가 완전히 구성되면, 사이드카 프록시는 마이크로서비스(1602)와 MEC 시스템의 다른 마이크로서비스 사이의 보안 통신을 용이하게 하는 위치에 있다.
일부 실시예에서, 증명 서비스(1610)는 증명 관련 정보를 사용하여 API 요청에 대한 증명 토큰의 유효성을 검증할 수 있다. 이 경로를 따른 모든 장애는 사이드카 프록시(1604)의 프로비저닝을 방지하고 따라서 MEC 배포에서 마이크로서비스의 참여를 방지한다. 이 경우, MEO는 장애 메시지를 수신하면 이 특정 사이드카와 맞춤형 마이크로서비스를 배포에서 거부할 수 있다.
섹션 C: 독립형 MEC 시스템에 서비스 메시 배치
위의 섹션 B와 관련하여 논의된 바와 같이, SMCP는 전체 MEC 시스템에 대한 VIM에서 사이드카 프록시의 오케스트레이션을 위한 정책 가이드라인을 제공한다.
도 17은 일 실시예에 따른, 독립형 서비스 메시 컨트롤 플레인을 사용하여 서비스 메시 보안 정책을 구현하는 MEC 시스템의 다이어그램(1700)이다. 도 17에 도시된 실시예에 기초하여, SMCP(1718)는 MEO(1702)와 통신하는 독립형 기능 엔티티이다. 이 경우, MEC 시스템의 MEO(1702)는 동작(1712)에서 (호스팅된 사이드카 컨트롤러(1704)를 통해) SMCP(1718)에 의해 구성된 정책 가이드라인(예컨대, 사이드카 주입에 관한 정책 구성, 배치 가능한 인스턴스에 대한 사이드카 페어링, 및 기타 기능 또는 구성)을 수신한 후, (동작(1712)에서) 정책을 승인한다. 그 후 동작(1714)에서, MEO(1702)가 매칭되는 마이크로서비스의 인스턴스화 및 오케스트레이션을 MEPM(1706)에 통지한다. 그러면 동작(1716)에서, MEPM(1706)이 VIM(1708)에게 선택된 사이드카 프록시 컨테이너를 인스턴스화하도록 지시한다. 동작(1710 및 1712)과 연관된 통신은 SMCP(1718)를 MEO(1702)에 연결하는 새로운 참조 포인트를 통해 수행될 수 있다. 동작(1714 및 1716)과 연관된 통신은 각각 참조 MEC 아키텍처의 Mm3 및 Mm6 참조 포인트를 통해 발생한다.
일부 실시예에서, SMCP(1718)가 독립형 기능 엔티티로서 구현될 경우, 이 엔티티를 MEC 시스템의 MEO(1702)에 연결하는 추가 참조 포인트가 사용될 수 있다. 그 결과, 관련 기능 엔티티는 지정되어야 하는 추가 참조 포인트를 포함하는 비용의 가벼운 기능 세트를 특징으로 할 수 있다.
일부 양태에서, SMCP(1718)를 시행 경로에서 벗어나게 하는 것은 컨트롤 플레인의 제어 관할 하에 남아 있는 시행 체크 포인트 또는 도메인 격리 컨텍스트를 사용할 수 있다.
도 18은 일 실시예에 따른, MEC 오케스트레이터(1802)의 일부인 서비스 메시 컨트롤 플레인(1806)을 사용하여 서비스 메시 보안 정책을 구현하는 MEC 시스템(1800)의 다이어그램이다. 도 18에 도시된 실시예에 기초하여, 도 17의 실시예에 대한 대안으로서, SMCP(1806) 및 사이드카 컨트롤러(1804)는 모두 MEC 시스템의 MEO(1802) 내에서 구현된다. 동작(1810)에서, SMCP(1806)가 사이드카 프록시 주입, 배치 가능한 인스턴스에 대한 사이드카 페어링, SMCP 엔드포인트 정보를 포함하는 기능에 대한 구성된 정책 가이드라인을 전달한다. 동작(1812)에서, 사이드카 컨트롤러(1804)가 SMCP(1806)에 매칭 마이크로서비스의 오케스트레이션 인스턴스화 및 오케스트레이션을 통지한다. 이 경우, 동작(1814)에서, 절차를 더욱 단순화하기 위해, VIM(1808)은 선택된 사이드카 컨테이너를 인스턴스화하도록 MEO(1802)에 의해 (정책이 SMCP(1806)에 의해 승인된 후) 직접 지시받을 수 있다. 이 통신은 MEC 시스템의 MEO(1802)를 VIM(1808)에 연결하는 Mm4 참조 포인트를 통해 발생할 수 있다.
일부 실시예에서, 도 18과 연관된 기능의 추가적인 보안 이점은 SMCP(1806)가 데이터 플레인 사이드카 컨트롤러가 컨트롤 플레인을 우회하지 않도록 보장할 수 있다는 것이다. 따라서, SMCP는 동작(1810)이 성공할 때까지 진행을 막는다(차단 동작(1812)). 동작(1812)이 성공적으로 완료되면, SMCP(1806)는 동작(1814)을 승인한다(예컨대, VIM(1808)이 선택된 사이드카 컨테이너를 인스턴스화하도록 지시한다).
일부 양태에서, 도 17과 도 18의 실시예들 사이의 구조적 차이점은 도 17의 실시예에서 비록 기능 엔티티가 "더 가벼운" 것으로 추정되더라도 인터페이스를 더 많이 소비한다는 것이다. 이에 비해, 도 18의 실시예에서는 반대 현상이 발생한다(예컨대, 더 적은 수의 인터페이스가 사용되지만, 기능 엔티티는 지정되어야 하는 기능 세트가 더 크다는 특징이 있음).
섹션 D: MEC 연합에서 서비스 메시 배치
도 19는 일 실시예에 따른, MEC 연합 브로커(1902)(또는 MEC 연합 관리자(1906 또는 1916)와 같은 MEC 연합 관리자)의 일부인 MEC 연합-전체 연합 서비스 메시 컨트롤러(1904)를 사용하여 MEC 연합(1900)에 걸친 서비스 메시의 배치도이다.
MEC 연합(1900)은 MEC 연합 관리자(1906), 사이드카 컨트롤러(1910) 및 SMCP(1912)를 갖는 MEO(1908), 및 VIM(1914)을 포함하는 제1 MEC 시스템을 포함한다. MEC 연합(1900)은 또한 MEC 연합 관리자(1916), 사이드카 컨트롤러(1920) 및 SMCP(1922)를 갖는 MEO(1918), 및 VIM(1924)을 포함하는 제2 MEC 시스템을 포함한다.
MEC 연합(1900)이 다수의 MEC 시스템(예컨대, 도 19에 도시된 바와 같이)으로 구성되는 양태에서, 각각의 관련된 MEC 시스템에 대해, SMCP 및 사이드카 제어기 모두는 각각의 MEC 시스템의 MEO에서 인스턴스화된다. MEC 연합과 연관된 일부 양태에서, 이스트/웨스트 바운드(East/West-bound) 인터페이스는 다른 연합 MEC 시스템에서 마이크로서비스를 발견하는 데 사용된다.
일부 실시예에서, 단일 연합 서비스 메시 컨트롤러(1904)는 전체 MEC 연합(1900)을 지칭하고, 관련된 MEC 연합 관리자 중 하나 내에(또는 존재하는 경우 MEC 연합 브로커 내에) 통합될 수 있다. 이 엔티티의 목적은 피어 MEC 시스템에서 서비스 ID, 엔드포인트 및 마이크로서비스의 자격 증명을 안전하게 광고하는 프로토콜을 제공하여, MEC 연합의 MEC 시스템에 걸쳐 마이크로서비스들 사이의 보안 통신을 가능하게 하는 것이다. 일부 양태에서, 동작 1926, 1928, 및 1930이 수행된 후(도 19에 도시된 바와 같이), 연합 서비스 메시 컨트롤러(1904)는 MEC 시스템에 걸쳐 자격 증명 번들의 마이크로서비스 엔드포인트 발견을 용이하게 하기 위한 동작(1932)을 수행한다.
도 20은 일 실시예에 따른, MEC 네트워크에서 SMCP 구성을 수행하기 위한 방법(2000)의 흐름도이다. 방법(2000)은 SMCP(예컨대, SMCP(1412)와 같은 본 명세서에서 논의된 SMCP 중 하나 이상)로 구성된 컴퓨팅 노드(예컨대, MEO 노드)에 의해 수행되는 동작(2002, 2004, 2006, 2008, 2010)을 포함할 수 있다.
동작(2002)에서, 증명 요청이 디코딩되며, 여기서 증명 요청은 배치 가능한 인스턴스(예컨대, 마이크로서비스(1402)를 인스턴스화하는 데 사용되는 VM)의 사이드카 프록시로부터 수신된다. 예를 들어, 사이드카 프록시(1406)는 MEC 네트워크의 MEC 호스트에서 인스턴스화된다. 사이드카 프록시(1406)는, 초기화 시에, 하드웨어 RoT 엔티티(1410)에 의해 지원되는 SMCP(1412)의 증명 서비스(1438)에 증명 요청(1446)을 발행한다. 이 통신은 MEC Mp1 참조 포인트를 통해 발생한다. 일부 양태에서, RoT 엔티티(1410)는 신뢰할 수 있는 장치 아이덴티티 및 다른 구성들을 포함하는, 마이크로서비스를 호스팅하는 장치의 검증된 구성을 제공하도록 구성된다.
동작 2004에서, 증명 요청에 응답하여 배치 가능한 인스턴스로부터 증거 정보가 수집된다. 증거 정보는 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함한다. 예를 들어, 증명 서비스(1438)는 배치된 마이크로서비스(1402)의 연관된 VM/컨테이너로부터 증거 정보(1448)(클레임 정보를 또한 포함할 수 있음)를 수집한다. 일부 양태에서, 증거 정보는 구성 데이터, 측정, 원격 측정, 추론, 파일 구조 정보, 리소스 액세스 요건 정보, 메모리 사용 정보, 이전 트랜잭션 정보, CPU 사용 정보, 기타 리소스 사용 정보, 대역폭 가용성 정보, 처리 상태 정보 등을 포함한다. 마이크로서비스를 호스팅하는 컴퓨팅 노드의 시스템 구성요소(하드웨어 RoT 엔티티(1410) 포함)는 하드웨어, 펌웨어, BIOS, 소프트웨어 등과 같은 현재 시스템 구성요소에 대한 증거 정보를 얻기 위해 RoT 엔티티(1410)에 의해 제공되는 기능을 통해 서명될 수 있는 일련의 측정을 수행할 수 있다.
동작(2006)에서, 무결성 리포트를 생성하기 위해 배치 가능한 인스턴스의 검증된 구성을 사용하여 증거 정보의 증명이 수행된다. MEC 호스트의 하드웨어 RoT로부터 받은 검증된 구성 및 무결성 리포트는 증거 정보를 포함한다. 예를 들어, 증명 서비스(1438)가 마이크로서비스(1402)를 실행하는 노드 상의 하드웨어 RoT 엔티티(1410)를 이용하여 수집된 증거 정보(1448)를 증명하고, 결과의 무결성 리포트(1450)를 증명 검증기(1440)로 전송한다.
동작(2008)에서, 무결성 리포트에 기초하여 증명 토큰이 생성된다.
동작(2010)에서, 증명 토큰이 MEC 호스트로의 전송을 위해 인코딩되며, 여기서 증명 토큰은 배치 가능한 인스턴스의 사이드카 프록시를 승인하여 배치 가능한 인스턴스와 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 용이하게 하는 구성을 얻는다. 예를 들어, 증명 검증기(1440)가 수신된 무결성 리포트(1450)의 진정성을 검증하고, 계속해서 해당 상태 정보와 함께 이전에 컴파일된 매니페스트를 포함하는 저장 엔티티(1442)와 통신하여, 제시된 증거를 알려진 양호한 상태를 비롯하여 마이크로서비스(1402)에 사용되는 배치 가능한 인스턴스의 검증된 구성과 비교한다. 일부 양태에서, 검증된 구성은 하드웨어 RoT 엔티티(1410)에 의해 제공된다. 증명 검증자(1440)는 평가 후에, 증명 리포트(1452)를 증명 서비스(1438)로 다시 발행한다. 증명 서비스(1438)는 성공적인 검증의 신호로서, 증명 토큰(1454)을 생성하고 호출 사이드카 프록시(1406)로 전송한다. 그러면 사이드카 프록시는 적어도 다른 마이크로서비스와 그 마이크로서비스의 데이터 교환을 용이하게 하기 위한 구성을 얻을 수 있다.
MEC 아키텍처에서 탈중개화된 증명과 연관된 본 기술은 도 1내지 도 8c와 관련하여 예시되고 논의된 에지 네트워크를 포함하는 배치 및 에지 컴퓨팅 전략의 많은 측면과 통합될 수 있음을 이해할 수 있을 것이다. 일반적인 수준에서 에지 컴퓨팅은, 총 소유 비용을 최적화하고 애플리케이션 지연을 줄이며, 서비스 기능을 개선하고, 보안 또는 데이터 개인 정보 보호 요구 사항에 대한 규정 준수를 개선하기 위해, 컴퓨팅 및 저장 리소스를 엔드포인트 장치(예컨대, 소비자 컴퓨팅 장치, 사용자 장비 등)에 더 가까이로 이동시키는 것을 의미한다. 일부 시나리오에서, 에지 컴퓨팅은 다양한 유형의 저장 및 컴퓨팅 리소스 사이에서 애플리케이션을 조율하고 관리하는 클라우드같은 분산 서비스를 제공한다. 그 결과, 이전에 대규모 원격 데이터 센터에서만 사용할 수 있었던 강력한 컴퓨팅 리소스가 엔드포인트에 더 가깝게 이동해서 네트워크의 "에지"에서 소비자가 사용할 수 있게 되었으므로, 에지 컴퓨팅의 일부 구현을 "에지 클라우드" 또는 "포그"라고도 한다.
위성 통신 네트워크의 맥락에서, 에지 컴퓨팅 동작은 위에서 논의된 바와 같이 위성 차량의 컴퓨팅 장비로 워크로드를 이동한다거나, 백업 또는 (중복) 링크 및 대기 시간이 짧은 서비스에 대한 연결을 제공하기 위해 위성 연결을 사용한다거나, 지상 액세스 포인트 또는 기지국에서 작업 부하 처리 동작을 조정한다거나, 위성 네트워크를 통해 데이터 및 콘텐츠 제공한다거나 하는 등의 동작을 통해 발생할 수 있다. 따라서, 모바일 네트워크 및 모바일 클라이언트 장치에 대해 아래에 설명된 동일한 에지 컴퓨팅 시나리오 중 많은 부분이 비지상 네트워크를 사용할 때도 동일하게 적용될 수 있다.
본 명세서에 기술된 기능 유닛 또는 능력은, 보다 구체적으로는 이들의 구현 독립성을 강조하기 위해 구성요소, 회로 또는 모듈로 지칭되거나 라벨링될 수 있음을 이해해야 한다. 이러한 구성요소는 임의의 수의 소프트웨어 또는 하드웨어 형식으로 구현될 수 있다. 예를 들어, 구성요소 또는 모듈은 맞춤형 VLSI(very-large-scale integration) 회로 또는 게이트 어레이, 논리 칩, 트랜지스터 또는 기타 개별 구성요소와 같은 기성품 반도체를 포함하는 하드웨어 회로로 구현될 수 있다. 구성요소 또는 모듈은 또한 필드 프로그램 가능 게이트 어레이, 프로그램 가능 어레이 로직, 프로그램 가능 논리 장치 등과 같은 프로그램 가능 하드웨어 장치로 구현될 수 있다. 구성요소 또는 모듈은 또한 다양한 유형의 프로세서에 의해 실행되도록 소프트웨어로 구현될 수도 있다. 실행가능 코드의 식별된 구성요소 또는 모듈은, 예를 들어, 객체, 절차 또는 기능으로 구성될 수 있는 컴퓨터 명령어의 하나 이상의 물리적 또는 논리적 블록을 포함할 수 있다. 그럼에도 불구하고, 식별된 구성요소 또는 모듈의 실행 파일은 물리적으로 함께 위치할 필요는 없지만, 논리적으로 함께 결합될 때, 구성요소 또는 모듈을 포함하고 구성요소 또는 모듈에 대해 명시된 목적을 달성하는 다른 위치에 저장된 다른 명령을 포함할 수 있다.
실제로, 실행 가능한 코드의 구성요소 또는 모듈은 단일 명령어 또는 많은 명령어일 수도 있고, 여러 개의 다른 코드 세그먼트에 걸쳐, 다른 프로그램들 사이에, 그리고 여러 개의 메모리 장치 또는 처리 시스템에 걸쳐 분산될 수도 있다. 특히, 설명된 프로세스의 일부 측면(예컨대, 코드 재작성 및 코드 분석)은 코드가 배포되는 것(예컨대, 센서 또는 로봇에 내장된 컴퓨터)과 다른 처리 시스템(예컨대, 데이터 센터의 컴퓨터)에서 발생할 수 있다. 유사하게, 동작 데이터는 본 명세서에서 구성요소 또는 모듈 내에서 식별 및 예시될 수 있으며, 임의의 적절한 형태로 구현되고 임의의 적절한 유형의 데이터 구조 내에서 구성될 수 있다. 동작 데이터는 단일 데이터 세트로서 수집되거나 또는 다른 저장 장치를 포함하여 다른 위치에 배포될 수 있으며, 적어도 부분적으로는 시스템 또는 네트워크에서 단지 전자 신호로서 존재할 수 있다. 구성 요소 또는 모듈은 수동 또는 능동일 수 있으며, 원하는 기능을 수행하도록 작동 가능한 에이전트를 포함할 수 있다.
현재 설명된 방법, 시스템 및 장치 실시예의 추가적인 예는 다음과 같은 비제한적인 구현을 포함한다. 하기의 비제한적인 예들 각각은 독립적일 수도 있고, 본 개시내용 전체에 걸쳐 또는 하기에 제공된 다른 예들 중 임의의 하나 이상과 치환되거나 또는 조합될 수 있다.
예 1은 다중 액세스 에지 컴퓨팅(Multi-Access Edge Computing: MEC) 네트워크에서 서비스 메시 컨트롤 플레인(service mesh control plane: SMCP)을 구현하는 컴퓨팅 노드로서, 네트워크 인터페이스 회로와, 상기 네트워크 인터페이스 회로에 결합된 프로세싱 회로를 포함하되, 상기 프로세싱 회로는, 배치 가능한 인스턴스의 사이드카 프록시로부터 상기 네트워크 인터페이스 회로를 통해 수신된 증명 요청을 디코딩 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 하고, 상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 하며, 상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성 - 상기 검증된 구성은 상기 MEC 호스트의 하드웨어 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 하고, 상기 무결성 리포트에 기초하여 증명 토큰을 생성하며, 상기 네트워크 인터페이스 회로를 통해 상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 하도록 구성된다.
예 2에서, 예 1의 발명 대상은, 상기 프로세싱 회로가 또한, 상기 배치 가능한 인스턴스의 알려진 보안 구성(known security configuration )을 저장 노드에서 검색하고, 상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하도록 구성되는 것을 포함한다.
예 3에서, 예 2의 발명 대상은, 상기 프로세싱 회로가 또한, 상기 검증에 기초하여 증명 리포트를 생성하고, 상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하도록 구성되는 것을 포함한다.
예 4에서, 예 1 내지 3의 발명 대상은, 상기 프로세싱 회로가 또한, 구성 정보에 대한 요청을 디코딩하도록 구성되되, 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 증명 토큰을 포함하는 것을 포함한다.
예 5에서, 예 4의 발명 대상은, 상기 프로세싱 회로가 또한, 상기 증명 토큰의 검증을 수행하고, 상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 네트워크 인터페이스 회로를 통해 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하도록 구성되는 것을 포함한다.
예 6에서, 예 5의 발명 대상은, 상기 구성 정보가, 상기 적어도 다른 배치 가능한 인스턴스와 연관된 제2 프록시와의 통신을 위해 상기 사이드카 프록시를 구성하는 전송 계층 보안(transport layer security: TLS) 정보를 포함하는 것을 포함한다.
예 7에서, 예 1 내지 6의 발명 대상은, 상기 컴퓨팅 노드가 상기 SMCP로 구성된 MEC 오케스트레이터(MEO) 노드인 것을 포함한다.
예 8에서, 예 7의 발명 대상은, 상기 프로세싱 회로가 또한, 상기 MEC 네트워크의 가상화 인프라스트럭처 관리자(Virtualized Infrastructure Manager: VIM)로 전송하기 위해 구성 명령어를 인코딩하도록 구성되며, 상기 구성 명령어는 상기 VIM으로 하여금 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 인스턴스화하게 하는 것을 포함한다.
예 9에서, 예 1 내지 8의 발명 대상은, 상기 배치 가능한 인스턴스가 상기 MEC 네트워크에서 제1 마이크로서비스를 제공하도록 인스턴스화되고, 상기 적어도 다른 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제2 마이크로서비스를 제공하도록 인스턴스화되는 것을 포함한다.
예 10에서, 예 9의 발명 대상은, 상기 MEC 네트워크가 서비스 메시 네트워크를 포함하고, 상기 서비스 메시 네트워크는 상기 제1 마이크로서비스 및 상기 제2 마이크로서비스를 포함하는 것을 포함한다.
예 11에서, 예 1 내지 10의 발명 대상은, 상기 배치 가능한 인스턴스가, 가상 머신(VM)과, 컨테이너 포드와, 가상화 컨테이너 중 하나인 것을 포함한다.
예 12에서, 예 11의 발명 대상은, 상기 하드웨어 RoT가 상기 배치 가능한 인스턴스에 대한 상기 증거 정보를 제공하도록 구성되고, 상기 증거 정보는, 상기 MEC 호스트와 연관된 구성 데이터, 측정 데이터, 원격 측정 데이터, 추론 데이터, 상기 MEC 호스트와 연관된 파일 구조 정보, 상기 MEC 호스트의 리소스 액세스 요건 정보, 상기 MEC 호스트에 대한 메모리 사용 정보, 상기 MEC 호스트와 연관된 이전의 트랜잭션 정보, 상기 MEC 호스트와 연관된 CPU 사용 정보, 상기 MEC 호스트와 연관된 대역폭 가용 정보, 및 상기 MEC 호스트와 연관된 프로세싱 상태 정보 중 적어도 하나를 포함하는 것을 포함한다.
예 13은 다중 액세스 에지 컴퓨팅(MEC) 네트워크에서 서비스 메시 컨트롤 플레인(SMCP)을 구현하도록 동작가능한 컴퓨팅 노드의 프로세싱 회로에 의해 실행될 경우에, 상기 프로세싱 회로로 하여금 동작들을 수행하게 하는 명령어가 저장되어 있는 적어도 하나의 비일시적 머신 판독 가능 저장 매체로서, 상기 동작들은, 배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 것 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 과, 상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 것 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 과, 상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 것 - 상기 검증된 구성은 상기 MEC 호스트의 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 과, 상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 것과, 상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 것 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 을 포함한다.
예 14에서, 예 13의 발명 대상은, 상기 동작들이, 상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 것과, 상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 것을 더 포함하는 것을 포함한다.
예 15에서, 예 14의 발명 대상은, 상기 동작들이, 상기 검증에 기초하여 증명 리포트를 생성하는 것과, 상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하는 것을 더 포함하는 것을 포함한다.
예 16에서, 예 13 내지 15의 발명 대상은, 상기 동작들이, 구성 정보에 대한 요청을 디코딩하는 것을 더 포함하되, 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 증명 토큰을 포함하는 것을 포함한다.
예 17에서, 예 16의 발명 대상은, 상기 동작들이, 상기 증명 토큰의 검증을 수행하는 것과, 상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하는 것을 더 포함하는 것을 포함한다.
예 18에서, 예 17의 발명 대상은, 상기 구성 정보는 상기 적어도 다른 배치 가능한 인스턴스와 연관된 제2 프록시와의 통신을 위해 상기 사이드카 프록시를 구성하는 전송 계층 보안(TLS) 정보를 포함하는 것을 포함한다.
예 19에서, 예 13 내지 18의 발명 대상은, 상기 컴퓨팅 노드가 SMCP로 구성된 MEC 오케스트레이터(MEO) 노드이고, 상기 동작들은, 상기 MEC 네트워크의 가상화 인프라스트럭처 관리자(VIM)로 전송하기 위해 구성 명령어를 인코딩하는 것을 더 포함하되, 상기 구성 명령어는 상기 VIM으로 하여금 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 인스턴스화하게 하는 것을 포함한다.
예 20에서, 예 13 내지 19의 발명 대상은, 상기 배치 가능한 인스턴스가 상기 MEC 네트워크에서 제1 마이크로서비스를 제공하도록 인스턴스화되고, 상기 적어도 다른 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제2 마이크로서비스를 제공하도록 인스턴스화되며, 상기 MEC 네트워크는 서비스 메시 네트워크를 포함하고, 상기 서비스 메시 네트워크는 상기 제1 마이크로서비스 및 상기 제2 마이크로서비스를 포함하는 것을 포함한다.
예 21은 다중 액세스 에지 컴퓨팅(MEC) 네트워크에서 서비스 메시 컨트롤 플레인(SMCP)을 수행하는 방법으로서, 배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 단계 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 와, 상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 단계 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 와, 상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 단계 - 상기 검증된 구성은 상기 MEC 호스트의 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 와, 상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 단계와, 상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 단계 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 를 포함한다.
예 22에서, 예 21의 발명 대상은, 상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 단계와, 상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 단계를 더 포함하는 것을 포함한다.
예 23에서, 예22의 발명 대상은, 상기 검증에 기초하여 증명 리포트를 생성하는 단계와, 상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하는 단계를 더 포함하는 것을 포함한다.
예 24에서, 예 21 내지 23의 발명 대상은, 구성 정보에 대한 요청을 디코딩하는 단계 - 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 상기 증명 토큰을 포함함 - 와, 상기 증명 토큰의 검증을 수행하는 단계와, 상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하는 단계를 더 포함하는 것을 포함한다.
예 25는 장치로서, 배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 수단 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 과, 상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 수단 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 과, 상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 수단 - 상기 검증된 구성은 상기 MEC 호스트의 하드웨어 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 과, 상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 수단과, 상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 수단 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 을 포함한다.
예 26에서, 예 25의 발명 대상은, 상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 수단과, 상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 수단을 더 포함하는 것을 포함한다.
예 27에서, 예 25 및 26의 발명 대상은, 상기 배치 가능한 인스턴스는, 가상 머신(VM)과, 컨테이너 포드와, 가상화 컨테이너 중 하나인 것을 포함한다.
예 28에서, 예 27의 발명 대상은, 상기 RoT가 상기 배치 가능한 인스턴스에 대한 상기 증거 정보를 제공하도록 구성되고, 상기 증거 정보는, 상기 MEC 호스트와 연관된 구성 데이터, 측정 데이터, 원격 측정 데이터, 추론 데이터, 상기 MEC 호스트와 연관된 파일 구성 정보, 상기 MEC 호스트의 리소스 액세스 요건 정보, 상기 MEC 호스트에 대한 메모리 사용 정보, 상기 MEC 호스트와 연관된 이전의 트랜잭션 정보, 상기 MEC 호스트와 연관된 CPU 사용 정보, 상기 MEC 호스트와 연관된 대역폭 가용 정보, 및 상기 MEC 호스트와 연관된 프로세싱 상태 정보 중 적어도 하나를 포함하는 것을 포함한다.
예 29는 예 1 내지 28 중 어느 하나를 구현하도록 구성된 프로세싱 회로를 포함하는, 에지 컴퓨팅 시스템에서 동작 가능한 에지 컴퓨팅 노드이다.
예 30은 예 1 내지 28 중 어느 하나를 수행하도록 구성된, 에지 컴퓨팅 시스템 내의 서버로서 동작 가능한, 에지 컴퓨팅 노드이다.
예 31은 예 1 내지 28 중 어느 하나를 수행하도록 구성된, 에지 컴퓨팅 시스템 내의 클라이언트로서 동작 가능한, 에지 컴퓨팅 노드이다.
예 32은, 에지 컴퓨팅 네트워크의 계층에서, 예 1 내지 28 중 어느 하나를 수행하도록 구성된, 집선 노드, 네트워크 허브 노드, 게이트웨이 노드, 또는 코어 데이터 프로세싱 노드로서 동작 가능한, 에지 컴퓨팅 노드이다.
예 33은 에지 컴퓨팅 시스템으로 하여금 예 1 내지 28 중 어느 하나를 구현할 수 있게 하는, 통신 네트워크를 제공 또는 동작시키도록 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 에지 컴퓨팅 네트워크이다.
예 34는 에지 컴퓨팅 시스템으로 하여금 예 1 내지 28 중 어느 하나를 구현할 수 있게 하는, 통신 네트워크를 제공 또는 동작시키도록 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 액세스 포인트이다.
예 35는 에지 컴퓨팅 시스템으로 하여금 예 1 내지 28 중 어느 하나를 구현할 수 있게 하는, 통신 네트워크를 제공 또는 동작시키도록 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 기지국이다.
예 36은 에지 컴퓨팅 시스템으로 하여금 예 1 내지 28 중 어느 하나를 구현할 수 있게 하는, 통신 네트워크를 제공 또는 동작시키도록 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 노변 유닛이다.
예 37은 공용 컴퓨팅 네트워크와 다른 사설 통신망에서 동작 가능한 온프레미스 서버로서, 에지 컴퓨팅 시스템으로 하여금 예 1 내지 28 중 어느 하나를 구현할 수 있게 한다.
예 38은 예 1 내지 28 중 어느 하나의 생체 보안 방법으로 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 3GPP 4G/LTE 모바일 무선 통신 시스템이다.
예 39는 예 1 내지 28 중 어느 하나의 생체 보안 방법으로 구성된 네트워킹 및 프로세싱 컴포넌트를 포함하는 5G 네트워크 모바일 무선 통신 시스템이다.
예 40은 예 1 내지 28 중 어느 하나를 구현하도록 구성된 에지 컴퓨팅 시스템과 연결하도록 구성된 네트워킹 및 프로세싱 회로를 포함하는 사용자 장치이다.
예 41은 에지 컴퓨팅 시스템으로 컴퓨트 동작을 조정하도록 구성된 프로세싱 회로를 포함하는 클라이언트 컴퓨팅 장치이며, 에지 컴퓨팅 시스템은 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 42는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 에지 컴퓨팅 시스템에서 동작 가능한 에지 컴퓨팅 노드이다.
예 43은 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 에지 컴퓨팅 시스템에서 동작 가능한 서비스 오케스트레이션 노드이다.
예 44는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 에지 컴퓨팅 시스템에서 동작 가능한 애플리케이션 오케스트레이션 노드이다.
예 45는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 에지 컴퓨팅 시스템에서 동작 가능한 멀티 테넌트 관리 노드이다.
예 46은 프로세싱 회로를 포함하는 에지 컴퓨팅 시스템으로서, 상기 에지 컴퓨팅 시스템은 하나 이상의 기능 및 서비스를 동작시켜 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 47은 복수의 에지 컴퓨팅 노드를 포함하는 에지 컴퓨팅 시스템으로서, 상기 복수의 에지 컴퓨팅 노드는 예 1 내지 28 중 어느 하나의 생체 보안 방법으로 구성된다.
예 48은 예 1 내지 28 중 어느 하나의 생체 보안 방법으로 구성된 에지 컴퓨팅 시스템 내에서 동작 가능한 네트워크 기능이 구현되어 있는 네트워킹 하드웨어이다.
예 49는 에지 컴퓨팅 시스템에서 동작 가능한 가속 기능이 구현되어 있는 가속 하드웨어로서, 상기 가속 기능은 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 50은 에지 컴퓨팅 시스템에서 동작 가능한 저장 기능이 구현되어 있는 저장 하드웨어로서, 상기 저장 하드웨어는 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 51은 에지 컴퓨팅 시스템에서 동작 가능한 컴퓨트 기능이 구현되어 있는 계산 하드웨어로서, 상기 계산 하드웨어는 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 52는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 차량-차량(vehicle-to-vehicle: V2V), 차량-사물(vehicle-to-everything: V2X), 또는 차량-인프라스트럭처(vehicle-to-infrastructure: V2I) 시나리오를 지원하기에 적합한 에지 컴퓨팅 시스템이다.
예 53은 하나 이상의 ETSI(European Telecommunications Standards Institute) MEC(Multi-Access Edge Computing) 사양에 따라 동작하기에 적합한 에지 컴퓨팅 시스템으로서, 상기 에지 컴퓨팅 시스템은 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 54는 하나 이상의 MEC(Multi-Access Edge Computing) 컴포넌트를 동작하기에 적합한 에지 컴퓨팅 시스템으로서, 상기 MEC 컴포넌트는 ETSI(European Telecommunications Standards Institute) MEC(Multi-Access Edge Computing) 사양에 따른 MEC 프록시, MEC 애플리케이션 오케스트레이터, MEC 애플리케이션, MEC 플랫폼, 또는 MEC 서비스 중 하나 이상으로부터 제공되고, 상기 MEC 컴포넌트는 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 55는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 마이크로서비스 클러스터, 사이드카를 갖는 마이크로서비스 클러스터, 또는 사이드카를 갖는 링크된 마이크로서비스 클러스터를 구비한, 에지메시로서 구성된 에지 컴퓨팅 시스템이다.
예 56은 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 전용 하드웨어, 가상 머신, 컨테이너, 컨테이너 상의 가상 머신 사이에 제공된 하나 이상의 격리 환경을 구현하도록 구성된 회로를 포함하는 에지 컴퓨팅 시스템이다.
예 57은 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 엔터프라이즈 서버, 노변 서버, 스트리트 캐비넷 서버, 또는 원격통신 서버로서 동작하도록 구성된 에지 컴퓨팅 서버이다.
예 58은 컴퓨트 오프로드, 데이터 캐싱, 비디오 프로세싱, 네트워크 기능 가상화, 무선 액세스 네트워크 관리, 증강 현실, 가상 현실, 자율 주행, 차량 지원, 차량 통신, 산업 자동화, 리테일 서비스, 제조 동작, 스마트 빌딩, 에너지 관리, 사물 인터넷 동작, 객체 검출, 음성 인식, 헬스캐어 애플리케이션, 게이밍 애플리케이션, 또는 가속 콘텐츠 프로세싱 중 하나 이상으로부터 제공된 사용 사례로 예 1 내지 28 중 어느 하나를 구현하도록 구성된 에지 컴퓨팅 시스템이다.
예 59는 예 1 내지 28 중 어느 하나를 구현하도록 구성된, 상이한 지리적 위치에서 다수의 소유자에 의해 동작되는 컴퓨팅 노드를 포함하는 에지 컴퓨팅 시스템이다.
예 60은 제각기의 클라우드 서비스를 운영하는 데이터 서버를 포함하는 클라우드 컴퓨팅 시스템으로서, 상기 제각기의 클라두드 서비스는 예 1 내지 28 중 어느 하나를 구현하기 위해 에지 컴퓨팅 시스템으로 조정하도록 구성된다.
예 61은 클라우드릿(cloudlet), 에지릿(edgelet), 또는 애플릿(applet) 서비스를 작동시키는 하드웨어를 포함하는 서버로서, 상기 서비스는 예 1 내지 28 중 어느 하나를 구현하기 위해 에지 컴퓨팅 시스템으로 조정하도록 구성된다.
예 62는 예 1 내지 28 중 어느 하나를 구현하기 위한, 적어도 하나의 프로세서 및 메모리를 갖는 하나 이상의 장치를 포함하는 에지 컴퓨팅 시스템 내의 에지 노드이다.
예 63은 에지 컴퓨팅 시스템 내의 에지 노드로서, 상기 에지 노드는, 관리 컨솔 서비스, 원격측정 서비스, 프로비저닝 서비스, 애플리케이션 또는 서비스 오케스트레이션 서비스, 가상 머신 서비스, 컨테이너 서비스, 기능 배치 서비스, 또는 컴퓨트 배치 서비스, 또는 가속 관리 서비스로부터 제공된 하나 이상의 서비스를 작동시키되, 상기 하나 이상의 서비스는 예 1 내지 28 중 어느 하나를 구현하도록 구성된다.
예 64는 에지 컴퓨팅 시스템의 네트워크 계층 사이에 분산된 분산 에지 노드 세트로서, 상기 네트워크 계층은 예 1 내지 28 중 어느 하나를 구현하도록 구성된 클로즈 에지, 로컬 에지, 엔터프라이즈 에지, 온프레미스 에지, 니어 에지, 미들 에지 또는 파 에지 네트워크 계층 사이에 분산된다.
예 65는, 하나 이상의 프로세서와, 하나 이상의 프로세서에 의해 실행될 경우에 상기 하나 이상의 프로세서로 하여금 예 1 내지 28 중 어느 하나를 수행하게 하는 명령어를 포함하는 하나 이상의 컴퓨터 판독가능 매체를 포함하는 에지 컴퓨팅 시스템의 장치이다.
예 66은, 전자 장치의 하나 이상의 프로세서가 명령어를 실행할 경우, 에지 컴퓨팅 시스템의 전자 장치로 하여금 예 1 내지 28 중 어느 하나를 수행하게 하는 명령어를 포함하는 하나 이상의 컴퓨터 판독가능 매체이다.
예 67은, 예 1 내지 28 중 어느 하나를 수행하는, 에지 컴퓨팅 시스템에서 통신되는 통신 신호이다.
예 68은 에지 컴퓨팅 시스템에서 통신되는 데이터 구조로서, 상기 데이터 구조는 예 1 내지 28 중 어느 하나를 수행하는, 데이터그램, 패킷, 프레임, 세그먼트, 프로토콜 데이터 유닛(PDU), 또는 메시지를 포함한다.
예 69는 에지 컴퓨팅 시스템에서 통신되는 신호로서, 상기 신호는 예 1 내지 28 중 어느 하나를 수행하는, 데이터그램, 패킷, 프레임, 세그먼트, 프로토콜 데이터 유닛(PDU), 메시지, 또는 데이터로 인코딩된다.
예 70은 에지 컴퓨팅 시스템에서 통신되는 전자기 신호로서, 상기 전자기 신호는 컴퓨터 판독가능 명령어를 반송하며, 하나 이상의 프로세서에 의한 상기 컴퓨터 판독가능 명령어의 실행은, 상기 하나 이상의 프로세서로 하여금 예 1 내지 28 중 어느 하나를 수행하게 한다.
예 71은 에지 컴퓨팅 시스템에서 사용되는 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 명령어를 포함하고, 상기 에지 컴퓨팅 시스템 내의 프로세싱 요소에 의한 상기 프로그램의 실행은 상기 프로세싱 요소로 하여금 예 1 내지 28 중 어느 하나를 수행하게 한다.
예 72는 예 1 내지 28 중 어느 하나를 수행하는 수단을 포함하는 에지 컴퓨팅 시스템의 장치이다.
예 73은 예 1 내지 28 중 어느 하나를 수행하는 로직, 모듈, 또는 회로를 포함하는 에지 컴퓨팅 시스템의 장치이다.
예 74는 프로세싱 회로에 의해 실행될 경우, 상기 프로세싱 회로로 하여금 예 1 내지 73 중 어느 하나를 구현하는 동작을 수행하게 하는 명령어를 포함하는 적어도 하나의 머신 판독가능 매체이다.
예 75는 예 1 내지 73 중 어느 하나를 구현하는 수단을 포함하는 장치이다.
예 76은 예 1 내지 73 중 어느 하나를 구현하는 시스템이다.
예 77은 예 1 내지 73 중 어느 하나를 구현하는 방법이다.
이들 구현이 특정한 예시적인 양태를 참조하여 설명되지만, 본 개시의 더 넓은 범위를 벗어나지 않고 이들 양태에 다양한 수정 및 변경이 이루어질 수 있음은 명백할 것이다. 본 명세서에 설명된 많은 구성 및 프로세스는, 더 큰 대역폭/처리량을 제공하고 서비스되는 에지 시스템에 이용 가능하게 될 수 있는 에지 서비스 선택을 지원하기 위해 조합 또는 병렬 구현으로 사용될 수 있다. 따라서, 본 명세서 및 도면은 제한적인 의미가 아니라 예시적인 것으로 간주되어야 한다. 본 명세서의 일부를 형성하는 첨부 도면은 제한이 아니라 예시를 통해 발명 대상이 실시될 수 있는 특정 양태를 보여준다. 예시된 양태는 당업자가 본 명세서에 개시된 교시를 실시할 수 있도록 충분히 상세하게 설명되어 있다. 본 개시의 범위를 벗어나지 않고 구조적 및 논리적 대체 및 변경이 이루어질 수 있도록, 다른 양태들이 활용되고 그로부터 유도될 수 있다. 따라서, 이 상세한 설명은 제한적인 의미로 받아들여서는 안 되며, 다양한 양태의 범위는 첨부된 청구범위와 함께 이러한 청구범위에 상응하는 균등물의 전체 범위에 의해서만 정의된다.
본 발명 대상의 이러한 양태는, 하나 초과의 양태가 개시되더라도, 단지 편의를 위해 그리고 본 출원의 범위를 어떠한 단일 양태 또는 발명 개념으로 자발적으로 제한하려는 의도 없이 본 명세서에서 개별적으로 및/또는 집합적으로 언급될 수 있다. 따라서, 특정 양태가 본 명세서에 예시되고 설명되지만, 동일한 목적을 달성하기 위해 계산된 임의의 구성이 도시된 특정 양태를 대체할 수 있음을 이해해야 한다. 본 개시는 다양한 양태의 임의의 적응 또는 변형을 포함하고자 한다. 이상의 양태들 및 본 명세서에서 구체적으로 설명되지 않은 다른 양태들의 조합은 위 설명을 검토해 보면 당업자에게 명백할 것이다.

Claims (28)

  1. 다중 액세스 에지 컴퓨팅(Multi-Access Edge Computing: MEC) 네트워크에서 서비스 메시 컨트롤 플레인(service mesh control plane: SMCP)을 구현하는 컴퓨팅 노드로서,
    네트워크 인터페이스 회로와,
    상기 네트워크 인터페이스 회로에 결합된 프로세싱 회로를 포함하되, 상기 프로세싱 회로는,
    배치 가능한 인스턴스의 사이드카 프록시로부터 상기 네트워크 인터페이스 회로를 통해 수신된 증명 요청을 디코딩 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 하고,
    상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 하며,
    상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성 - 상기 검증된 구성은 상기 MEC 호스트의 하드웨어 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 하고,
    상기 무결성 리포트에 기초하여 증명 토큰을 생성하며,
    상기 네트워크 인터페이스 회로를 통해 상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 하도록 구성되는,
    컴퓨팅 노드.
  2. 제1항에 있어서,
    상기 프로세싱 회로는 또한,
    상기 배치 가능한 인스턴스의 알려진 보안 구성(known security configuration)을 저장 노드에서 검색하고,
    상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하도록 구성되는,
    컴퓨팅 노드.
  3. 제2항에 있어서,
    상기 프로세싱 회로는 또한,
    상기 검증에 기초하여 증명 리포트를 생성하고,
    상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하도록 구성되는,
    컴퓨팅 노드.
  4. 제1항에 있어서,
    상기 프로세싱 회로는 또한, 구성 정보에 대한 요청을 디코딩하도록 구성되되, 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 증명 토큰을 포함하는,
    컴퓨팅 노드.
  5. 제4항에 있어서,
    상기 프로세싱 회로는 또한,
    상기 증명 토큰의 검증을 수행하고,
    상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 네트워크 인터페이스 회로를 통해 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하도록 구성되는,
    컴퓨팅 노드.
  6. 제5항에 있어서,
    상기 구성 정보는, 상기 적어도 다른 배치 가능한 인스턴스와 연관된 제2 프록시와의 통신을 위해 상기 사이드카 프록시를 구성하는 전송 계층 보안(transport layer security: TLS) 정보를 포함하는,
    컴퓨팅 노드.
  7. 제1항에 있어서,
    상기 컴퓨팅 노드는 상기 SMCP로 구성된 MEC 오케스트레이터(MEO) 노드인,
    컴퓨팅 노드.
  8. 제7항에 있어서,
    상기 프로세싱 회로는 또한,
    상기 MEC 네트워크의 가상화 인프라스트럭처 관리자(Virtualized Infrastructure Manager: VIM)로 전송하기 위해 구성 명령어를 인코딩하도록 구성되며, 상기 구성 명령어는 상기 VIM으로 하여금 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 인스턴스화하게 하는,
    컴퓨팅 노드.
  9. 제1항에 있어서,
    상기 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제1 마이크로서비스를 제공하도록 인스턴스화되고, 상기 적어도 다른 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제2 마이크로서비스를 제공하도록 인스턴스화되는,
    컴퓨팅 노드.
  10. 제9항에 있어서,
    상기 MEC 네트워크는 서비스 메시 네트워크를 포함하고, 상기 서비스 메시 네트워크는 상기 제1 마이크로서비스 및 상기 제2 마이크로서비스를 포함하는,
    컴퓨팅 노드.
  11. 제1항에 있어서,
    상기 배치 가능한 인스턴스는, 가상 머신(VM)과, 컨테이너 포드와, 가상화 컨테이너 중 하나인,
    컴퓨팅 노드.
  12. 제11항에 있어서,
    상기 하드웨어 RoT는 상기 배치 가능한 인스턴스에 대한 상기 증거 정보를 제공하도록 구성되고, 상기 증거 정보는,
    상기 MEC 호스트와 연관된 구성 데이터, 측정 데이터, 원격 측정 데이터, 추론 데이터, 상기 MEC 호스트와 연관된 파일 구조 정보, 상기 MEC 호스트의 리소스 액세스 요건 정보, 상기 MEC 호스트에 대한 메모리 사용 정보, 상기 MEC 호스트와 연관된 이전의 트랜잭션 정보, 상기 MEC 호스트와 연관된 CPU 사용 정보, 상기 MEC 호스트와 연관된 대역폭 가용 정보, 및 상기 MEC 호스트와 연관된 프로세싱 상태 정보 중 적어도 하나를 포함하는,
    컴퓨팅 노드.
  13. 다중 액세스 에지 컴퓨팅(MEC) 네트워크에서 서비스 메시 컨트롤 플레인(SMCP)을 구현하도록 동작가능한 컴퓨팅 노드의 프로세싱 회로에 의해 실행될 경우에, 상기 프로세싱 회로로 하여금 동작들을 수행하게 하는 명령어가 저장되어 있는 적어도 하나의 비일시적 머신 판독 가능 저장 매체로서,
    상기 동작들은,
    배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 것 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 과,
    상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 것 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 과,
    상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 것 - 상기 검증된 구성은 상기 MEC 호스트의 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 과,
    상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 것과,
    상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 것 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 을 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  14. 제13항에 있어서,
    상기 동작들은,
    상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 것과,
    상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 것을 더 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  15. 제14항에 있어서,
    상기 동작들은,
    상기 검증에 기초하여 증명 리포트를 생성하는 것과,
    상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하는 것을 더 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  16. 제13항에 있어서,
    상기 동작들은,
    구성 정보에 대한 요청을 디코딩하는 것을 더 포함하되, 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 증명 토큰을 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  17. 제16항에 있어서,
    상기 동작들은,
    상기 증명 토큰의 검증을 수행하는 것과,
    상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하는 것을 더 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  18. 제17항에 있어서,
    상기 구성 정보는 상기 적어도 다른 배치 가능한 인스턴스와 연관된 제2 프록시와의 통신을 위해 상기 사이드카 프록시를 구성하는 전송 계층 보안(TLS) 정보를 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  19. 제13항에 있어서,
    상기 컴퓨팅 노드는 SMCP로 구성된 MEC 오케스트레이터(MEO) 노드이고,
    상기 동작들은,
    상기 MEC 네트워크의 가상화 인프라스트럭처 관리자(VIM)로 전송하기 위해 구성 명령어를 인코딩하는 것을 더 포함하되, 상기 구성 명령어는 상기 VIM으로 하여금 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 인스턴스화하게 하는,
    비일시적 머신 판독 가능 저장 매체.
  20. 제13항에 있어서,
    상기 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제1 마이크로서비스를 제공하도록 인스턴스화되고, 상기 적어도 다른 배치 가능한 인스턴스는 상기 MEC 네트워크에서 제2 마이크로서비스를 제공하도록 인스턴스화되며, 상기 MEC 네트워크는 서비스 메시 네트워크를 포함하고, 상기 서비스 메시 네트워크는 상기 제1 마이크로서비스 및 상기 제2 마이크로서비스를 포함하는,
    비일시적 머신 판독 가능 저장 매체.
  21. 다중 액세스 에지 컴퓨팅(MEC) 네트워크에서 서비스 메시 컨트롤 플레인(SMCP)을 수행하는 방법으로서,
    배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 단계 - 상기 사이드카 프록시는 상기 MEC 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 와,
    상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 단계 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 와,
    상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 단계 - 상기 검증된 구성은 상기 MEC 호스트의 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 와,
    상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 단계와,
    상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 단계 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 를 포함하는,
    방법.
  22. 제21항에 있어서,
    상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 단계와,
    상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 단계를 더 포함하는,
    방법.
  23. 제22항에 있어서,
    상기 검증에 기초하여 증명 리포트를 생성하는 단계와,
    상기 증명 리포트가 상기 검증이 성공적이라고 나타낼 경우, 상기 증명 토큰을 생성하는 단계를 더 포함하는,
    방법.
  24. 제21항에 있어서,
    구성 정보에 대한 요청을 디코딩하는 단계 - 상기 요청은 상기 SMCP의 데이터 플레인 API(application programming interface)를 통해 상기 사이드카 프록시로부터 수신되고, 상기 요청은 상기 증명 토큰을 포함함 - 와,
    상기 증명 토큰의 검증을 수행하는 단계와,
    상기 증명 토큰의 상기 검증이 성공적인 경우, 상기 사이드카 프록시로 전송하기 위해 상기 구성 정보를 인코딩하는 단계를 더 포함하는,
    방법.
  25. 장치로서,
    배치 가능한 인스턴스의 사이드카 프록시로부터 수신된 증명 요청을 디코딩하는 수단 - 상기 사이드카 프록시는 다중 액세스 에지 컴퓨팅(MEC) 네트워크의 MEC 호스트 상에서 인스턴스화됨 - 과,
    상기 증명 요청에 응답하여 상기 배치 가능한 인스턴스로부터 증거 정보를 수집하는 수단 - 상기 증거 정보는 상기 배치 가능한 인스턴스의 적어도 하나의 보안 구성을 포함함 - 과,
    상기 배치 가능한 인스턴스의 검증된 구성을 사용해서 상기 증거 정보의 증명을 수행하여 무결성 리포트를 생성하는 수단 - 상기 검증된 구성은 상기 MEC 호스트의 하드웨어 RoT(root-of-trust)로부터 수신되고, 상기 무결성 리포트는 상기 증거 정보를 포함함 - 과,
    상기 무결성 리포트에 기초하여 증명 토큰을 생성하는 수단과,
    상기 MEC 호스트로 전송하기 위해 상기 증명 토큰을 인코딩하는 수단 - 상기 증명 토큰은 상기 배치 가능한 인스턴스의 상기 사이드카 프록시를 승인하여 상기 배치 가능한 인스턴스와 상기 MEC 네트워크 내의 적어도 다른 배치 가능한 인스턴스 사이의 데이터 교환을 가능하게 하는 구성을 획득함 - 을 포함하는,
    장치.
  26. 제25항에 있어서,
    상기 배치 가능한 인스턴스의 알려진 보안 구성을 저장 노드에서 검색하는 수단과,
    상기 배치 가능한 인스턴스의 상기 적어도 하나의 보안 구성을 상기 알려진 보안 구성과 비교하여 상기 무결성 리포트의 검증을 수행하는 수단을 더 포함하는,
    장치.
  27. 제25항에 있어서,
    상기 배치 가능한 인스턴스는, 가상 머신(VM)과, 컨테이너 포드와, 가상화 컨테이너 중 하나인,
    장치.
  28. 제27항에 있어서,
    상기 RoT는 상기 배치 가능한 인스턴스에 대한 상기 증거 정보를 제공하도록 구성되고,
    상기 증거 정보는,
    상기 MEC 호스트와 연관된 구성 데이터, 측정 데이터, 원격 측정 데이터, 추론 데이터, 상기 MEC 호스트와 연관된 파일 구성 정보, 상기 MEC 호스트의 리소스 액세스 요건 정보, 상기 MEC 호스트에 대한 메모리 사용 정보, 상기 MEC 호스트와 연관된 이전의 트랜잭션 정보, 상기 MEC 호스트와 연관된 CPU 사용 정보, 상기 MEC 호스트와 연관된 대역폭 가용 정보, 및 상기 MEC 호스트와 연관된 프로세싱 상태 정보 중 적어도 하나를 포함하는,
    장치.
KR1020220030578A 2021-04-12 2022-03-11 Mec 서비스 메시 프레임워크에서의 탈중개화된 증명 KR20220141227A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163173572P 2021-04-12 2021-04-12
US63/173,572 2021-04-12
US17/559,968 2021-12-22
US17/559,968 US20220116445A1 (en) 2021-04-12 2021-12-22 Disintermediated attestation in a mec service mesh framework

Publications (1)

Publication Number Publication Date
KR20220141227A true KR20220141227A (ko) 2022-10-19

Family

ID=81078037

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220030578A KR20220141227A (ko) 2021-04-12 2022-03-11 Mec 서비스 메시 프레임워크에서의 탈중개화된 증명

Country Status (3)

Country Link
US (1) US20220116445A1 (ko)
KR (1) KR20220141227A (ko)
DE (1) DE102022203247A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240074089A (ko) 2022-11-18 2024-05-28 주식회사 위즈온텍 도커 프라이빗 레포지토리를 포함하는 mec 특화 레포지토리 제공 방법
KR20240074087A (ko) 2022-11-18 2024-05-28 주식회사 위즈온텍 Mec 특화 ai 모델 레포지토리를 통한 ai 모델 업그레이드 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3103042A1 (fr) * 2019-11-12 2021-05-14 Orange Procédés de commande d’un réseau informatique de périphérie à accès multiple
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
CN111901157B (zh) * 2020-07-10 2023-01-10 苏州浪潮智能科技有限公司 一种基于k8s的服务部署方法、装置、设备、介质
US11689505B2 (en) * 2021-06-28 2023-06-27 Cisco Technology, Inc. Dynamic proxy response from application container
US20230047880A1 (en) * 2021-08-12 2023-02-16 Verizon Patent And Licensing Inc. Sidecar proxy as a service
US20230177179A1 (en) * 2021-12-08 2023-06-08 Change Healthcare Holdings, Llc Systems and methods for providing multi-tenant access to applications
US11792120B2 (en) * 2022-01-13 2023-10-17 HashiCorp Discovery and routing service for a cloud infrastructure
CN114945031B (zh) * 2022-04-16 2024-06-07 深圳市爱为物联科技有限公司 一种支持海量设备多通讯协议及消息协议接入的云原生物联网平台
US11876683B2 (en) * 2022-05-21 2024-01-16 Microsoft Technology Licensing, Llc Network functions delivery system for mobile networks
WO2023230831A1 (en) * 2022-05-31 2023-12-07 Intel Corporation Transparent transportation in cloud-to-pc extension framework
WO2023242800A1 (en) * 2022-06-17 2023-12-21 Lenovo (Singapore) Pte Limited Access security apparatus and method for wireless telecommunications network
US11558254B1 (en) * 2022-06-23 2023-01-17 Kong Inc. Configuration hash comparison
US20240121321A1 (en) * 2022-10-05 2024-04-11 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for removing stale context in service instances in providing microservices
CN115883655B (zh) * 2022-12-07 2024-06-07 中科驭数(北京)科技有限公司 服务请求处理方法、装置、电子设备及存储介质
CN117573379B (zh) * 2024-01-16 2024-03-29 国网湖北省电力有限公司信息通信公司 一种基于对称放缩合并的微服务部署方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240074089A (ko) 2022-11-18 2024-05-28 주식회사 위즈온텍 도커 프라이빗 레포지토리를 포함하는 mec 특화 레포지토리 제공 방법
KR20240074087A (ko) 2022-11-18 2024-05-28 주식회사 위즈온텍 Mec 특화 ai 모델 레포지토리를 통한 ai 모델 업그레이드 방법

Also Published As

Publication number Publication date
DE102022203247A1 (de) 2022-10-13
US20220116445A1 (en) 2022-04-14

Similar Documents

Publication Publication Date Title
US20220116445A1 (en) Disintermediated attestation in a mec service mesh framework
EP3972295A1 (en) Geofence-based edge service control and authentication
US11888858B2 (en) Calculus for trust in edge computing and named function networks
US20210119962A1 (en) Neutral host edge services
US20220116755A1 (en) Multi-access edge computing (mec) vehicle-to-everything (v2x) interoperability support for multiple v2x message brokers
EP4038520A1 (en) Methods and apparatus to attest objects in edge computing environments
US20210144202A1 (en) Extended peer-to-peer (p2p) with edge networking
EP4155933A1 (en) Network supported low latency security-based orchestration
EP4109257A1 (en) Methods and apparatus to facilitate service proxying
US20230164241A1 (en) Federated mec framework for automotive services
NL2033580B1 (en) End-to-end network slicing (ens) from ran to core network for nextgeneration (ng) communications
US20220014947A1 (en) Dynamic slice reconfiguration during fault-attack-failure-outage (fafo) events
EP4156637B1 (en) Software defined networking with en-route computing
US20210152543A1 (en) Automatic escalation of trust credentials
NL2032817B1 (en) Cross-layer automated fault tracking and anomaly detection
JP2023004857A (ja) ネットワークフローベースのハードウェア割り当て
US11996992B2 (en) Opportunistic placement of compute in an edge network
KR20230043044A (ko) 디지털 트윈 보조 회복성을 위한 방법 및 장치
US20240195789A1 (en) Cryptographic data processing using a dma engine
US20230018191A1 (en) Service roaming between edge computing platforms
WO2022056292A1 (en) An edge-to-datacenter approach to workload migration
CN115529677A (zh) 以信息为中心的网络非结构化数据载体
US20230319141A1 (en) Consensus-based named function execution
US20230014064A1 (en) Decentralized reputation management in a named-function network
WO2023081202A1 (en) Mec dual edge apr registration on behalf of edge platform in dual edge deployments