消費者として
多くの場合、オプションは消費者としてかなり制限されますが、使用する製品とそれらの接続方法を慎重に選択することにより、いくつかの方法でリスクを最小限に抑えることができます。
デバイスがインターネット接続を失ったときに何が起こるかを確認する
通常、簡単なGoogle検索を実行して、特定のデバイスがインターネットから切断されたときに何が起こるかを確認できます。Amazon Echoのように、リモートクラウドサーバーへの接続が失われると、一部のデバイスは完全に失敗します。
エコーでは、音声で話したり、コマンドを処理したり、メディアをストリーミングしたりするには、アクティブなWi-Fi接続が必要です。
時には、正当な理由があります(たとえば、「Amazon Echoは「常にリッスンしている」か「クラウドにデータを送信していますか?」で説明されているように、Echoはコマンドをクラウドにストリーミングして命令を処理する必要があります)。製品の見落としや設計上の欠陥である可能性があります。
デバイスを物理的に持っている場合は、ルーターのプラグを抜いて何が起こるかを確認することができます。これは、リモートサーバーが壊れる可能性が高いがローカル接続は機能するが、試してみる必要があるため、良いテストではないかもしれません。
するのに十分な時間と無駄に セットアップを改善するための生産的使用を、あなたは潜在的にあなたのデバイスからのパケットを盗聴でき、ならば、特定のドメイン-このように、ルータレベルのブロックを適用し、何が起こったか知っているだろうとmydeviceserver.com
完全にダウンしました。もちろん、これには長い時間がかかるため、多くの「スマート」デバイスを備えた大きな家ですべてのデバイスをテストするのは現実的ではない場合があります。
ローカル接続を使用する
スマートスイッチからライトをオンにするだけの場合は、すべてのトラフィックをインターネット経由で数千マイル離れたクラウドサーバーにルーティングし、電球に戻す必要がない場合があります。代わりにローカルデバイスを介してコマンドを発行します。多くの場合、これらのデバイスはZigBeeやZ-Waveなどのプロトコルを使用するため、トラフィックを調整するためにハブが必要になる場合があります(「家を自動化するときに一部のデバイスにハブが必要なのはなぜですか?」を参照)。
開発者として
IoTデバイスの開発者にとって、デバイスを注意深く設計することで、最近のS3の停止などの問題が消費者に影響を与えることを回避できます。もちろん、IoTデザイナーは常に注意深い設計で知られているわけではありませんが、これを読んでいる場合は、おそらくそのグループに属していません。
冗長になるサービスを設計する
特にAmazon S3の最近の停止については、できることはあまりなかったかもしれません。DevOps Stack Exchangeに関するこの質問で説明されているように、クロスリージョンレプリケーションがサービスの停止を潜在的に妨げた可能性があるといういくつかのレポートがありますが、それが本当に本当か、それとも単なる助言かについては議論されています。
可能であれば、なんらかの冗長性またはバックアップを用意することが理想的です。ただし、コストは高くなりますが、信頼性をさらに高める必要があります。それ以外の場合は、照明が応答しなくなり、電源スイッチが機能しなくなります。
インターネット接続がないシナリオのサポートを強化する
消費者がこの問題を回避できる方法の下に「ローカル接続を使用する」と記載しましたが、それは敗戦です。多くの場合、デバイスは承認されたWebサービス以外の方法での接続をサポートしていません。メーカーはこれに開発者の時間を費やすことに消極的です。サポートが多ければ、クラウドサービスへの依存度が低くなり、あまりにも多くのサーバー容量を支払う必要がないため、製造業者にもメリットがあります。
これらすべてのオプションを使用しても、なぜ多くのデバイスが影響を受けたのですか?
誰も時間を費やすことを望んでいないため、信頼性の高いシステムを設計するには多くの時間と労力を要し、多くの場合、同等の「ダム」ソリューション(単純な電気スイッチなど)よりもはるかに複雑です。
ソフトウェアが車ほど信頼できないのはなぜですか?ソフトウェアははるかに複雑ですが、自動車ほど厳密にはテストされていません。同じ問題がIoTにも当てはまるようです。ネットワークを介したデバイスの制御ははるかに複雑であるため、最近のS3インシデントで見たように、事態ははるかに簡単に失敗する可能性があります。