- 사물 인터넷›
- AWS IoT Core›
- 기능
AWS IoT Core 기능
페이지 주제
주요 기능주요 기능
AWS IoT 디바이스 SDK
AWS IoT 디바이스 SDK를 사용하면 하드웨어 디바이스 또는 모바일 애플리케이션을 AWS IoT Core에 쉽고 빠르게 연결할 수 있습니다. AWS IoT 디바이스 SDK는 디바이스에서 MQTT, HTTP 또는 WebSockets 프로토콜을 사용하여 AWS IoT Core와 연결하고, 인증하고, 메시지를 교환하는 데 도움이 됩니다. AWS IoT 디바이스 SDK는 C, JavaScript 및 Arduino를 지원하며, 클라이언트 라이브러리, 개발자 안내서 및 제조업체용 포팅 안내서가 포함되어 있습니다. 또한 이를 대체하는 오픈 소스를 사용하거나 자체 SDK를 작성할 수도 있습니다.
AWS IoT 디바이스 SDK 설명서에서 자세히 알아보거나 SDK를 다운로드하여 시작하세요.
Device Advisor
Device Advisor는 개발 과정의 IoT 디바이스 검증을 위한 완전관리형 클라우드 기반 테스트 기능입니다. 이 도구는 AWS IoT Core와의 안정적이고 안전한 연결을 위해 IoT 디바이스를 검증하는 데 도움이 되는 사전 구축된 테스트를 제공합니다. Device Advisor를 사용하면 IoT 디바이스가 AWS IoT Core와 안정적으로 상호운용되는지 테스트하고 보안 모범 사례를 따를 수 있습니다. 디바이스를 프로덕션 환경에 배포하기 전에 개발 중 발생하는 가장 일반적인 디바이스 소프트웨어 문제를 식별 및 해결할 수 있습니다. 또한 Device Advisor는 하드웨어 파트너가 AWS Partner Device Catalog에 디바이스를 포함할 수 있는 자격을 부여하는 데 사용할 수 있는 서명된 자격 증명 보고서를 제공합니다. Device Advisor의 개요 페이지, 기술 설명서 및 블로그에서 자세히 알아보고 시작하세요.
디바이스 게이트웨이
디바이스 게이트웨이는 AWS에 연결하는 IoT 디바이스를 위한 진입점의 역할을 합니다. 디바이스 게이트웨이는 모든 활성 디바이스 연결을 관리하고 여러 프로토콜의 시맨틱을 구현하여 디바이스가 AWS IoT Core와 안전하고 효율적으로 통신할 수 있도록 지원합니다. 현재 디바이스 게이트웨이는 MQTT, WebSockets 및 HTTPS 프로토콜을 지원합니다. MQTT 또는 WebSockets를 통해 연결하는 디바이스의 경우, 디바이스 게이트웨이를 통해 장기간 양방향 연결이 유지되므로 이러한 디바이스에서 언제든지 짧은 지연 시간으로 메시지를 주고받을 수 있습니다. 디바이스 게이트웨이는 완전관리형 서비스로, 사용자가 인프라를 관리할 필요 없이 수십억 개의 디바이스를 지원하도록 자동 확장됩니다. AWS IoT로 마이그레이션하는 경우 디바이스 게이트웨이는 기존 아키텍처 및 IoT 디바이스에 대한 영향을 최소화하면서 인프라를 이전하는 기능을 제공합니다. 구성 가능 엔드포인트에 대해 자세히 알아보려면 여기에서 설명서를 읽어보세요.
AWS IoT Core 사용 설명서의 프로토콜 섹션에서 자세히 알아보세요.
메시지 브로커
메시지 브로커는 MQTT 버전 5.0 메시지 표준 기반의 짧은 지연 시간으로 모든 IoT 디바이스와 애플리케이션 간에 안전하게 메시지를 전송하는 고처리량 게시/구독 메시지 에이전트입니다. 메시지 브로커의 유연한 주제 구조는 다수의 디바이스에서 메시지를 송신 또는 수신하는 데 도움이 됩니다. 일대일 명령 및 제어 메시징부터 일대다(100만 개 이상) 브로드캐스트 알림 시스템과 그 사이의 모든 것에 이르는 메시징 패턴을 지원합니다. 또한 개별 연결의 권한을 주제 수준에서 관리하는 데 도움이 되는 세분화된 액세스 제어를 설정할 수 있습니다. 이렇게 하면 디바이스와 애플리케이션에서 사용자가 설정한 데이터만 전송하고 수신합니다. 메시지 브로커는 완전관리형 서비스이므로, 사용자가 어떻게 사용하든 관계없이 메시지 볼륨에 맞춰 자동으로 확장 또는 축소되며 사용자는 인프라를 전혀 운영할 필요가 없습니다.
AWS IoT Core 사용 설명서의 디바이스 통신 프로토콜 섹션에서 자세히 알아보세요.
CoAP 프로토콜
CoAP(Constrained Application Protocol)는 배터리로 구동되는 IoT 센서와 같이 제약이 있는 장치를 위해 특별히 구축된 특수 인터넷 애플리케이션 계층 프로토콜입니다. CoAP는 경량 UDP(User Datagram Protocol) 프로토콜로 친숙한 HTTP 스타일 요청/응답 메시징을 제공하므로 디바이스가 클라우드와 자주 통신하지 않고 저전력 상태에서 오프라인으로 대부분의 시간을 보내는 IoT 사용 사례에 적합한 프로토콜입니다. AWS IoT Core는 파트너가 개발한 AWS기반 IoT 플랫폼을 통해 NB-IoT(Narrowband IoT) 기술을 사용하는 등 셀룰러 디바이스에 대한 CoAP/UDP 지원을 제공합니다. 1NCE, Aeris 및 Telefonica와 같은 파트너는 CoAP 프로토콜을 지원하기 위해 AWS IoT Core에 전용 서비스를 구축하여 고객이 자체 브로커를 구축하거나 전용 클라우드 리소스를 관리하지 않고도 디바이스를 클라우드에 직접 연결할 수 있도록 합니다.
인증 및 권한 부여
AWS IoT Core는 모든 연결 지점에서 상호 인증 및 암호화를 제공하므로 디바이스와 AWS IoT Core 간에 입증된 자격 증명 없이는 데이터가 교환되지 않습니다. AWS IoT Core는 AWS 인증 메서드(SigV4), X.509 인증서 기반 인증, 고객 생성 토큰 기반 인증(사용자 지정 권한 부여자를 통해)을 지원합니다. HTTP를 통해 연결하면 이러한 메서드를 모두 사용할 수 있고, MQTT를 통해 연결하면 인증서 기반 인증을 사용할 수 있으며, WebSockets를 통해 연결하면 SigV4 또는 사용자 지정 권한 부여자를 사용할 수 있습니다. AWS IoT Core에서는 AWS IoT Core에서 생성한 인증서와 선호하는 인증 기관(CA)에서 서명한 인증서도 사용할 수 있습니다. 원하는 정책을 각 인증서에 매핑하여 디바이스 또는 애플리케이션에 액세스 권한을 부여하거나, 디바이스를 직접 조작하지 않고도 액세스 권한을 취소할 수 있습니다.
콘솔이나 API를 사용해 디바이스에 대한 인증서와 정책을 생성, 배포 및 관리할 수 있습니다. 이러한 디바이스 인증서는 AWS IoT Core를 사용해 구성된 관련 IoT 정책으로 프로비저닝 및 활성화하고 해당 정책과 연결할 수 있습니다. 이 기능은 원하는 경우 개별 디바이스에 대한 액세스 권한을 즉시 취소하는 데 도움이 됩니다. 또한 AWS IoT Core는 앱 사용자에 대한 고유 식별자를 생성하고 제한적인 임시 AWS 보안 인증 정보를 가져오는 데 필요한 모든 단계를 처리하는 Amazon Cognito를 사용하여 사용자 모바일 앱으로부터의 연결도 지원합니다. 디바이스가 X.509 인증서를 통해 인증된 후에는 AWS IoT Core에서 임시 AWS 보안 인증 정보를 제공하므로 해당 디바이스에서 DynamoDB 또는 S3와 같은 다른 AWS 서비스에 좀 더 쉽게 액세스할 수 있습니다.
AWS IoT Core에 대한 플릿 프로비저닝을 사용하면 개수에 상관없이 제작된 디바이스를 대규모로 클라우드에 손쉽게 온보딩할 수 있습니다. 따라서 완벽한 관리형 디바이스 온보딩 경험에서 고유한 디지털 ID로 디바이스를 설정할 수 있습니다. 또한 각 디바이스에서 AWS IoT Core에 처음 연결할 때 AWS IoT를 자동으로 연결하고 조작하는 데 필요한 디바이스 측 구성 및 클라우드 측 구성이 수행됩니다. 플릿 프로비저닝은 추가 요금 없이 고객에게 제공됩니다. 플릿 프로비저닝에 대해 자세히 알아보세요.
AWS IoT Core 사용 설명서의 보안 및 인증 섹션에서 자세히 알아보세요.
레지스트리
레지스트리는 디바이스에 대한 자격 증명을 설정하고 디바이스의 속성 및 기능 같은 메타데이터를 추적합니다. 레지스트리는 디바이스 유형이나 연결 방식과 관계없이 지속적으로 형식이 지정되는 각 디바이스에 ID를 할당합니다. 또한 디바이스의 기능을 설명하는 메타데이터를 지원합니다. 예를 들어 센서가 온도를 보고하는지 여부와 데이터가 화씨인지 섭씨인지 설명하는 메타데이터를 사용할 수 있습니다.
레지스트리는 디바이스 메타데이터를 추가 요금 없이 저장하는 데 도움이 됩니다. 최소 7년에 한 번 레지스트리 항목에 액세스하거나 이를 업데이트하면 레지스트리의 메타데이터가 만료되지 않습니다.
AWS IoT Core 사용 설명서의 레지스트리 섹션에서 자세히 알아보세요.
디바이스 섀도
AWS IoT Core를 사용하면 각 디바이스의 영구, 가상 버전 또는 디바이스 섀도우를 생성할 수 있습니다. 여기에는 디바이스의 최신 상태가 포함되므로 애플리케이션 또는 다른 디바이스에서 메시지를 읽고 디바이스와 상호 작용할 수 있습니다. 디바이스 섀도우는 디바이스가 오프라인이더라도 각 디바이스의 최종 보고된 상태와 원하는 이후 상태를 유지합니다. API 또는 규칙 엔진을 사용하여 디바이스의 최종 보고된 상태를 가져오거나 원하는 이후 상태를 설정할 수 있습니다.
디바이스 섀도우는 상시 가용 REST API를 제공하므로 디바이스와 상호 작용하는 애플리케이션을 손쉽게 구축할 수 있습니다. 또한 애플리케이션은 디바이스의 현재 상태를 확인하지 않고도 디바이스의 원하는 이후 상태를 설정할 수 있습니다. AWS IoT Core는 원하는 상태와 최종 보고된 상태의 차이를 비교하여 디바이스에 차이를 없애도록 명령합니다.
AWS IoT 디바이스 SDK를 사용하면 디바이스에서 손쉽게 디바이스 섀도우와 상태를 동기화하고, 디바이스 섀도우를 사용하여 설정한 원하는 이후 상태에 응답할 수 있습니다.
디바이스 섀도우를 사용하면 최대 1년까지 무료로 디바이스 상태를 저장할 수 있습니다. 최소 1년에 한 번 이상 디바이스 섀도우를 업데이트하면 영구적으로 유지되고, 그렇지 않으면 만료됩니다.
AWS IoT Core 사용 설명서의 디바이스 섀도우 섹션에서 자세히 알아보세요.
규칙 엔진
규칙 엔진은 인프라를 관리할 필요 없이 글로벌 규모로 연결된 디바이스에서 생성된 데이터를 수집, 처리, 분석하고 이를 기반으로 조치를 취하는 데 도움이 됩니다. 규칙 엔진은 AWS IoT Core에 게시된 수신 메시지를 평가하고, 정의한 비즈니스 규칙에 따라 이를 변환하고 다른 디바이스나 클라우드 서비스로 전송합니다. 규칙은 하나 이상의 디바이스의 데이터에 적용할 수 있으며 하나 이상의 작업을 동시에 수행할 수 있습니다.
또한 규칙 엔진은 AWS IoT Analytics, AWS IoT Events, AWS Lambda, Amazon Kinesis, Amazon S3, Amazon DynamoDB, Amazon CloudWatch, Amazon Simple Notification Service(SNS), Amazon Simple Queue Service (SQS), Amazon Elasticsearch Service, AWS Step Functions 및 Amazon Location Service를 포함하여 AWS 엔드포인트로 메시지를 라우팅할 수 있습니다. 외부 엔드포인트에는 AWS Lambda, Amazon Kinesis, Amazon SNS 및 규칙 엔진의 네이티브 HTTP 작업을 사용하여 연결할 수 있습니다.
AWS Management Console에서 규칙을 작성하거나 유사 SQL 구문을 사용하여 규칙을 작성할 수 있습니다. 메시지의 콘텐츠에 따라 다르게 동작하는 규칙을 작성할 수 있습니다. 예를 들어 온도 값이 특정 임계치를 초과하는 경우 AWS Lambda로 데이터를 전송하는 규칙을 시작할 수 있습니다. 또한 다른 서비스의 데이터와 같이 클라우드의 다른 데이터를 고려하는 규칙을 작성할 수 있습니다. 예를 들어 온도가 5개의 다른 디바이스 평균보다 15% 이상 높으면 작업을 시작하도록 할 수 있습니다.
규칙 엔진은 데이터 변환에 사용할 수 있는 수십 개의 함수를 제공하고, AWS Lambda를 사용하여 원하는 만큼 추가로 함수를 생성할 수 있습니다. 예를 들어 다양한 값을 처리해야 하는 경우 수신되는 숫자의 평균을 사용할 수 있습니다. 또한 규칙을 사용하여 AWS Lambda에서 Java, Node.js 또는 Python 코드의 런타임을 시작할 수 있으므로 디바이스 데이터를 처리할 때의 유연성과 성능을 최대화할 수 있습니다.
자세히 알아보려면 AWS IoT Core 사용 설명서의 규칙 엔진 섹션을 참조하세요.
AWS IoT Core for LoRaWAN
AWS IoT Core for LoRaWAN은 저전력 광대역 네트워크(LoRaWAN) 기술을 사용하는 무선 디바이스에 연결하는 데 도움이 됩니다. 이제 LoRaWAN Network Server(LNS)를 개발하거나 운영할 필요 없이 AWS IoT Core를 사용하여 자체 LoRaWAN 디바이스와 게이트웨이를 AWS에 연결하는 방법으로 프라이빗 LoRaWAN 네트워크를 설정할 수 있습니다. 이렇게 하면 반복적인 개발 작업과 LNS 및 관련 인프라 운영 부담이 줄어들어 네트워크 설정 시간이 빨라집니다.
AWS IoT Core for LoRaWAN은 오픈소스 LoRaWAN 게이트웨이와 LNS 간 통신 프로토콜(Basic Station)을 지원합니다. 따라서 사용자 지정 게이트웨이 소프트웨어를 작성하거나 테스트하지 않고도 LoRaWAN 게이트웨이를 AWS IoT Core에 연결할 수 있습니다. 일단 LoRaWAN 게이트웨이 및 디바이스가 연결되면 디바이스 데이터 스트림이 자동으로 AWS IoT Core 규칙 엔진으로 라우팅되므로 IoT 애플리케이션 개발을 가속화할 수 있습니다.
개발자는 AWS IoT Core 규칙 엔진을 사용하여 디바이스 데이터에 대한 변환 및 조치를 수행하는 간단한 SQL 쿼리를 수행하거나 경보를 트리거하거나 Amazon S3와 같은 AWS 서비스로 라우팅하는 것과 같은 규칙을 작성할 수 있습니다. 또한 엔지니어는 연결 문제를 해결하기 위해 콘솔에서 커넥티드 디바이스 및 게이트웨이에 대한 쿼리를 수행할 수도 있습니다. 사용량에 따른 요금으로 월 약정 없이 사용할 수 있으므로 LoRaWAN 디바이스 플릿을 안정적으로 연결 및 확장하고 AWS 서비스를 통해 더 빠르고 효율적으로 애플리케이션을 구축할 수 있습니다.
AWS IoT 파트너를 이용하면 내장된 소프트웨어를 수정할 필요 없이 처음부터 AWS IoT Core에 연결되는 AWS IoT Core for LoRaWAN 적격 게이트웨이를 사용하여 더 쉽게 시작할 수 있습니다. AWS IoT Core for LoRaWAN 사용 인증을 마친 게이트웨이를 찾으려면 AWS Partner Device Catalog를 검색하세요.
*LoRaWAN은 LoRa Alliance의 라이선스하에 사용되는 상표입니다.
디바이스 위치
AWS IoT Core 디바이스 위치는 기존의 글로벌 위치 추적 서비스(GPS) 하드웨어 없이 위도 및 경도 좌표와 같은 위치 데이터를 사용하여 IoT 디바이스 플릿을 추적하고 관리하는 데 도움이 됩니다. 디바이스 위치 기능을 사용하면 전력 소비량이 높은 GPS 하드웨어를 사용할 필요가 없고 엔지니어링 제약 조건 내에서 작동하는 적절한 위치 기술을 선택할 수 있습니다. 디바이스 위치를 사용하면 비즈니스 프로세스를 개선하고, 유지 보수 작업을 단순화 및 자동화하며, 새로운 사용 사례를 지원할 수 있습니다. 예를 들어 현장 서비스 팀은 디바이스 정보를 지속적으로 확인하여 유지 보수 작업을 수행해야 하는 디바이스 위치를 빠르게 파악할 수 있습니다. 또한 특정 리전에 대한 액세스를 제한하는 등 위치 기반 보안의 향상된 기능을 지원하고 IoT 솔루션의 보안 태세를 개선할 수 있습니다.
AWS IoT Core for Amazon Sidewalk
Amazon Sidewalk는 더 나은 연결 옵션을 통해 커넥티드 디바이스 작동을 개선하는 공유 네트워크입니다. Amazon 운영 하에 무료로 제공되는 Sidewalk는 새 디바이스를 간편하게 설정하는 데 도움이 될 수 있습니다. 또한 디바이스의 저대역폭 작동 범위를 확장하고 디바이스가 홈 Wi-Fi의 범위를 벗어나도 온라인 상태를 유지할 수 있도록 도와줍니다.
AWS IoT Core for Amazon Sidewalk를 사용하면 Sidewalk 지원 디바이스 플릿을 AWS IoT Core에 보다 쉽게 온보딩하고 확장 가능한 IoT 솔루션을 구축할 수 있습니다.