Weitere ähnliche Inhalte Ähnlich wie SORACOM Conference "Discovery" 2018 | F2. SORACOMサービスを利用したIoTアプリケーションのクラウド連携 (20) Mehr von SORACOM,INC (20) SORACOM Conference "Discovery" 2018 | F2. SORACOMサービスを利用したIoTアプリケーションのクラウド連携9. IoTにおけるクラウドの活用
• データの受信 … ストリーム処理、イベント処理
• データの加工 … 形式の変換、バイナリのパース
• データの保存 … DBやストレージへの保存
• データの分析 … 可視化、機械学習
• データの活用 … デバイス制御、異常検知、故障予測
Things
Internet API
Endpoint
Stream
Transform
Storage Query Visualize
AI
Feedback
Control
Device
Twin
Alert
TLS
SDK
Key
10. 機能 AWS Azure GCP
データの受信 Kinesis
API Gateway
Event Hubs/ Stream
Analytics
Cloud Pub/Sub
データの加工 Lambda/Glue
DataPipeline/EMR
Data Factory
Functions
Cloud Dataflow
Cloud Functions
データの保存 S3/RDS/Redshift/
ES
Storage/Database
Data Lake Store
Cloud Storage
Cloud SQL BigQuery
データの分析・活用 EMR/ML/ES
Athena/QuickSight
Rekognition
Power BI
HD Insight/ML
Cognitive Services
Cloud Data Studio
Cloud Datalab
Cloud Dataproc
Cloud ML/Speech…
主要クラウドベンダーのサービス
IoT特化サービス AWS IoT/ Greengrass IoT Hub/IoT Edge Cloud IoT Core
11. 各社ストリームサービス仕様
Amazon Kinesis Data
Streams
Azure Service Bus Cloud Pub/Sub
対応プロトコル HTTPS - REST HTTPS - REST
AMQP1.0 (TCP with TLS)
HTTPS - REST
認証方法 AWS Signature v4
(HMAC-SHA256)
SAS
(HMAC-SHA256)
OAuth2.0 (JWT)
Device SDK C,C++/JS/Java/
Python/iOS/Android
.NET/Java/Node.js/
PHP/Python/Ruby
C#/Go/Java/Node.js/PHP
/Python/Ruby
比較的リッチなデバイスを対象としている
17. SORACOMプラットフォーム
SORACOMのグローバルなインフラ
世界中の国・地域で利用可能
ライブラリ & SDKs
CLI(Go), Ruby, Swift
Web インターフェース
User Console
データ転送支援
SORACOM Beam
クラウドアダプタ
SORACOM Funnel
データ収集・蓄積
SORACOM Harvest
プライベート接続
SORACOM
Canal
デバイスLAN
SORACOM
Gate
IoT向けデータ通信
SORACOM Air
Cellular (2G, 3G, LTE) / LPWA (LoRaWAN, Sigfox, LTE-M)
専用線接続
SORACOM
Direct
仮想専用線
SORACOM
Door
API
Web API, Sandbox
データ通信
ネットワーク
データ転送
インタフェース
SIM認証・証明
SORACOM Endorse
デバイス管理
SORACOM Inventory
透過型
トラフィック処理
SORACOM
Junction
ダッシュボード作成/共有
SORACOM Lagoon
セキュアプロビジョニング
SORACOM Krypton
データ活用
デバイス支援
アクセス権限管理
SORACOM Access
Management
アプリケーション
18. SORACOMプラットフォーム
SORACOMのグローバルなインフラ
世界中の国・地域で利用可能
ライブラリ & SDKs
CLI(Go), Ruby, Swift
Web インターフェース
User Console
データ転送支援
SORACOM Beam
クラウドアダプタ
SORACOM Funnel
データ収集・蓄積
SORACOM Harvest
プライベート接続
SORACOM
Canal
デバイスLAN
SORACOM
Gate
IoT向けデータ通信
SORACOM Air
Cellular (2G, 3G, LTE) / LPWA (LoRaWAN, Sigfox, LTE-M)
専用線接続
SORACOM
Direct
仮想専用線
SORACOM
Door
API
Web API, Sandbox
データ通信
ネットワーク
データ転送
インタフェース
SIM認証・証明
SORACOM Endorse
デバイス管理
SORACOM Inventory
透過型
トラフィック処理
SORACOM
Junction
ダッシュボード作成/共有
SORACOM Lagoon
セキュアプロビジョニング
SORACOM Krypton
データ活用
デバイス支援
アクセス権限管理
SORACOM Access
Management
アプリケーション
A-3 セッションにて!
21. • 暗号化オフロード
• HTTP HTTP(S)
• MQTT MQTT(S)
• TCP TCP(S)
•プロトコル変換
• TCP HTTP(S)
• UDP HTTP(S)
• LPWA HTTP(S)
SORACOM Beam
汎用プロトコル向け「データ転送支援サービス」
<対応プロトコル>
クラウド上で認証情報の管理や接続先の変更が可能
22. SORACOM Beam のアーキテクチャ
IoTデバイス クラウド
アプリケーション
インターネット
SORACOM
Beam
認証情報
tcp://beam.soracom.io:1234
udp://beam.soracom.io:23080
http://beam.soracom.io:8888
ヘッダ ペイロード
ヘッダ ペイロード
※一部抜粋
23. • HTTPベースのサービス(一例)
• AWS
• API Gateway+Lambda
• EC2(+ELB/ALB) / Elastic Beanstalk
• Azure
• App Service / API Apps
• Azure Functions
• GCP
• GAE / GCE / GKE
• Cloud Functions
SORACOM Beam で繋がる
クラウドサービス(HTTP)
24. •MQTTベースのサービス
• AWS
• AWS IoT Core
• GCP
• Cloud IoT Core
•Azure
• IoT Hub
• IBM
• Watson IoT
SORACOM Beam で繋がる
クラウドサービス(MQTT)
新機能!
新機能!
30. 送りたいペイロード: 15 byte
{"key":"value"}
HTTPSで送る場合: 7653 byte
6998(TLS)+320(TCP)+200(IP)
+120(HTTP)+15=7653
UDPで送る場合: 43 Byte
8(UDP)+20(IP)+15=43
どれぐらい通信量が違うのか?
0
1000
2000
3000
4000
5000
6000
7000
8000
HTTPS UDP
Data Length
ペイロード HTTP IP TCP UDP TLS
35. X-Soracom-Signature計算式
(※SORACOM Air for Cellularの場合)
SHA256(${事前共有鍵文字列}+x-soracom-imei=${IMEI}x-soracom-imsi=${IMSI}x-soracom-
timestamp=${TIMESTAMP})
例)
事前共有鍵: topsecret
IMSI: 440101111111111
IMEI: 1111122222333333
TIMESTAMP: 1445587157992
SHA256('topsecret'+'x-soracom-imei=1111122222333333x-soracom-imsi=440101111111111x-soracom-
timestamp=1445587157992')
署名ヘッダ詳細
38. SIMグループの複数認証情報対応
$ soracomgroupsput-config
--group-idxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
--namespaceSoracomBeam
--body'
[
{
"key": "mqtt://beam.soracom.io:1883",
"value": {
"enabled":true,
"name":”ENTRY_POINT_NAME",
"addEquipmentHeader":false,
"addSignature":false,
"addSubscriberHeader":true,
"customHeaders":{},
"skipStatusCode":false,
"useClientCert":true,
"clientCerts":{
"default":{
"$credentialsId":”client-cert-#{imsi}"
}
},
"useGoogleIoT":false,
"addDeviceIdHeader":false,
"destination":"mqtts://data.iot.ap-northeast-1.amazonaws.com:8883"
}
}
]'
新機能!
39. SIMグループの複数認証情報対応
$ soracomgroupsput-config
--group-idxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
--namespaceSoracomBeam
--body'
[
{
"key": "mqtt://beam.soracom.io:1883",
"value": {
"enabled":true,
"name":”ENTRY_POINT_NAME",
"addEquipmentHeader":false,
"addSignature":false,
"addSubscriberHeader":true,
"customHeaders":{},
"skipStatusCode":false,
"useClientCert":true,
"clientCerts":{
"default":{
"$credentialsId":"client-cert-#{imsi}"
}
},
"useGoogleIoT":false,
"addDeviceIdHeader":false,
"destination":"mqtts://data.iot.ap-northeast-1.amazonaws.com:8883"
}
}
]'
プレースホルダーとして
#{imsi} を含める
新機能!
"client-cert-#{imsi}"
43. SORACOM Funnel Adaptors
AWS API
SORACOM
Funnel
Endpoint
Amazon Kinesis Data Streams
Amazon Kinesis Data Firehose
Microsoft Azure Event Hubs
AWS IoT Core
Custom API
Partner
Cloud service
Developed and hosted by SPS Partner
Developed and hosted by SORACOM
Google API
Google Cloud Pub/Sub
AWS API
AWS API
Azure API
45. SORACOM FunnelがAmazon Kinesis Video Streamsをサポート!
カメラへのAWSクレデンシャルの配備をSORACOM Funnelが解決
Amazon Kinesis Video Streamsのサポート
SORACOM
Funnel
AWS
認証情報
Amazon
Kinesis
Video Streams
カメラ群
ビデオ
ストリーム
ビデオ
ストリーム
新機能!
50. SORACOM Funnel – 出力フォーマット
※Amazon Kinesis Video Streams連携を除く
{
"operatorid": "ソラコムのアカウントID",
"timestamp": "funnelがデータを受け取った日時(unixtime)",
"destination": {
"resourceUrl":"送信先クラウドサービスのURL",
"service":"(aws-iot|kinesis|firehose|eventhubs|pubsub)",
"provider": "(aws|azure|google)"
},
"credentialId":"ソラコムの認証情報のID",
"payloads": "送信されたデータ本体",
"sourceProtocol": "(tcp|udp|http|sigfox|lora|unspecified)",
"imsi": "送信元のSIMのIMSI"
}
以下フォーマットのJSONで出力されます
55. USSD とは、Unstructured Supplementary Service Data の略で、SORACOM
Air の Global SIM (plan01s および plan01s-LowDataVolume) で利用可能なデー
タ送受信方法です。
USSD は、デバイスから AT コマンドを用いて送信することも可能ですし、ス
マートフォンの電話アプリなどで特殊な番号にダイヤルすることでもデータを
送信することができます。
USSD を使用する際はデータ通信のセッションを作成する必要がありませんの
で、簡単にデータを送信することが可能となりますし、データ通信そのものに
は料金が発生しません。(Beam / Funnel / Harvest の利用料金は別途発生しま
す)
USSDとは?新機能!
56. • 現時点では、テキストフォーマット (Data Coding Scheme = 15, GSM 7bit
default alphabet) での送信にのみ対応しています。
• 送信時は、*{Service Code}*{任意のデータ}# という形式の MMI 文字列を使
用します。
“Service Code” は以下の通りです。
• 901011 ... SORACOM Beam
• 901021 ... SORACOM Funnel
• 901031 ... SORACOM Harvest
• “任意のデータ” には GSM 7bit default alphabet の範囲内の文字を使用可
能です。
USSD機能の仕様新機能!