연결
디바이스는 MQTT PINGREQ 또는 PINGRESP 메시지에 대해 무료로 30초마다 ping을 실행할 수 있습니다.
메시징
MQTT 메시지 측정
MQTT CONNECT | Will 주제 사이즈 및 Will 메시지 페이로드가 포함된 메시지 크기로 측정됩니다. MQTT5를 사용하는 경우 사용자 속성과 같은 추가 문자열 및 이진 변수 헤더 속성과 Will 속성에서도 메시지가 측정됩니다. |
MQTT PUBACK(디바이스로부터 수신) | MQTT5를 사용하는 경우 사용자 속성을 포함한 메시지 크기를 기준으로 측정됩니다. 그렇지 않으면 단일 5KB 메시지로 측정됩니다. |
MQTT SUBSCRIBE | Subscribe 메시지에 제출된 주제의 크기와 전송된 사용자 속성의 크기로 측정됩니다(MQTT5를 사용하는 경우). |
MQTT PUBLISH(디바이스로부터 수신) | 페이로드와 주제의 크기(바이트)로 측정됩니다. MQTT5를 사용하는 경우 사용자 속성의 크기, 응답 주제, 상관 관계 데이터 및 콘텐츠 유형도 측정되는 페이로드 크기에 포함됩니다. |
MQTT PUBLISH(서비스에서 전송) |
페이로드와 주제의 크기(바이트)로 측정됩니다. MQTT5를 사용하는 경우 사용자 속성의 크기, 응답 주제, 상관 관계 데이터 및 콘텐츠 유형도 측정되는 페이로드 크기에 포함됩니다. |
MQTT RETAINED | 페이로드와 주제의 크기(바이트)로 측정됩니다. MQTT5를 사용하는 경우 사용자 속성의 크기, 응답 주제, 상관 관계 데이터 및 콘텐츠 유형도 측정되는 페이로드 크기에 포함됩니다. RETAIN 플래그와 함께 게시된 MQTT 인바운드 메시지의 경우 인바운드 MQTT PUBLISH 및 MQTT RETAINED에 대해 계정이 측정됩니다. |
다음 MQTT 메시지는 측정에서 제외됩니다.
- MQTT PINGREQ
- MQTT PINGRESP
- MQTT DISCONNECT
- MQTT CONNACK
- MQTT PUBACK(서비스에서 전송)
- MQTT SUBACK
- MQTT UNSUBSCRIBE
WebSocket 연결 내에서 전송되는 MQTT 메시지는 상호 인증된 TLS 연결 내 MQTT 메시지처럼 측정됩니다.
HTTP 요청 및 응답 측정
요청 | HTTP 요청의 본문 섹션을 인코딩하는 데 필요한 5KB 메시지 수로 측정됩니다. HTTP 게시 메시지 API를 사용하는 경우 사용자 속성의 크기, 응답 주제, 상관 관계 데이터 및 콘텐츠 유형도 측정되는 페이로드 크기에 포함됩니다. |
부정 응답 |
HTTP가 4xx 및 5xx 범위의 HTTP 응답 코드로 응답하고 본문을 포함하는 경우 AWS IoT Core는 응답 본문을 인코딩하는 데 필요한 5KB 메시지의 수를 측정합니다. |
LoRaWAN 측정
LoRaWAN.Uplink | 메시지 수로 측정됨(디바이스에서 전송) |
LoRaWAN.Downlink | 메시지 수로 측정됨(서비스에서 전송) |
LoRaWAN.Join | 메시지 수로 측정됨(디바이스에서 전송) |
LoRaWAN.UplinkACK | 메시지 수로 측정됨(서비스에서 전송) |
LoRaWAN.DownlinkACK | 메시지 수로 측정됨(디바이스에서 전송) |
Sidewalk 측정
Sidewalk.Uplink | 메시지 수로 측정됨(디바이스에서 전송) |
Sidewalk.Downlink | 메시지 수로 측정됨(서비스에서 전송) |
참고: Amazon Sidewalk 통합 기능으로 AWS IoT Core에 연결하는 Amazon Sidewalk 디바이스에서 전송된 메시지는 LoRaWAN 메시징 요금 수준을 사용하여 측정됩니다.
레지스트리
다음 API 작업 중 하나를 호출할 때마다 Registry 작업에 대한 요금이 부과됩니다.
- AddThingToThingGroup
- AttachThingPrincipal
- CreateThing
- CreateThingGroup
- CreateDynamicThingGroup
- CreateThingType
- DescribeThing
- DescribeThingGroup
- DescribeThingType
- ListPrincipalThings
- ListThingGroups
- ListThingGroupsForThing
- ListThingPrincipals
- ListThings
- ListThingsInThingGroup
- ListThingTypes
- UpdateThing
- UpdateThingGroup
- UpdateDynamicThingGroup
- UpdateThingGroupsForThing
- GetWirelessDeviceStatistics
- GetWirelessGatewayStatistics
모든 List 작업에 대해 측정은 API 호출에서 반환된 모든 레코드의 총 크기를 고려합니다. 예를 들어 ListThings API 호출이 레지스트리에서 (50) 2KB 사물을 반환하는 경우 요청은 (100) 1,000 단위로 요금이 부과되며 요청 100개로 측정됩니다. Registry Events를 옵트인하는 경우 모든 업데이트 메시지에 메시지 요금이 부과됩니다.
디바이스 섀도우
Device Shadow 작업은 GetThingShadow 또는 UpdateThingShadow에 대한 API 호출을 수행하거나 MQTT 메시지가 디바이스 섀도우를 생성, 업데이트 또는 가져올 때 측정됩니다. 디바이스 섀도우 업데이트를 옵트인하는 경우 모든 업데이트 메시지에 메시지 요금이 부과됩니다.
규칙 엔진
규칙은 최대 10개의 작업을 호출할 수 있습니다. 여기에서 작업은 외부 함수 호출(예: get_thing_shadow(), aws_lambda(), get_dynamodb()) 또는 외부 서비스에 대한 호출(예: Amazon S3, Amazon Kinesis, Amazon SNS)입니다. 산술 및 논리 SQL 함수는 작업으로 측정되지 않습니다. 다음 외부 기능 호출은 작업(get_secret())으로 측정되지 않습니다.
고객의 Amazon Virtual Private Cloud(VPC) 내부 리소스로 메시지를 전송하는 규칙 작업은 추가 작업으로 측정됩니다. 이 추가 작업은 규칙당 작업 10개 제한에 포함되지 않습니다. 규칙 작업인 Apache Kafka 작업에 대해 VPC가 지원됩니다.
트리거되는 규칙은 항상 최소한 하나의 규칙과 하나의 작업을 측정합니다. 예를 들어 하나의 규칙을 시작하는 5KB 메시지는 해당 작업을 호출하지 않더라도 하나의 규칙과 하나의 작업을 측정합니다.
AWS IoT Core에서 생성된 메시지를 처리하는 규칙은 메시지 크기에 관계없이 단일 규칙으로 측정됩니다. 예를 들어 7KB 디바이스 섀도우 문서는 상당히 큰 /delta 또는 /documents 메시지를 게시할 수 있습니다. 그러나 이러한 업데이트로 시작된 모든 규칙은 메시지가 5KB인 것처럼 측정됩니다.
Protobuf-to-JSON 디코딩: 규칙 엔진에서 decode() 함수를 사용하여 프로토콜 버퍼(Protobuf) 메시지를 JavaScript Object Notation(JSON) 형식으로 디코딩하면 1개의 작업으로 측정됩니다. 규칙 엔진은 규칙 내의 디코딩 작업에 대해 비용을 청구하며, 디코딩 작업은 설명자 파일을 캐싱하여 최적화할 수 있습니다. 규칙 엔진을 사용하여 Protobuf 메시지를 디코딩하면 트리거된 규칙 1개 + 규칙 작업 1개(데이터를 다운스트림 AWS 서비스로 전송) + Protobuf-to-JSON 디코딩 1회에 대한 비용이 청구됩니다. 그러나 Protobuf 메시지를 JSON으로 디코딩하는 것에 대해서는 5kB 증분 단위의 요금이 부과되지 않습니다. 1개의 디코딩(작업)에 대해 최대 Protobuf 페이로드 크기 128kB까지 요금이 부과됩니다.
규칙 작업인 HTTP 작업에 대해서는 요금 페이지의 '데이터 전송' 아래에 나열된 표준 EC2 데이터 전송 요금이 적용됩니다.
더 많은 AWS IoT Core 리소스 검색