ネットワークスタック
μHTTP2 ツールキット
Cypherbridge HTTP2 ツールキットは、組込み機器やIoT機器向けに設計されたHTTP/2クライアントプロトコルスタックです。
RFC7540 および RFC7541 で規定されている HTTP/2 プロトコル機能を実装しています。
高速なWeb通信、IoT通信で期待される次世代 HTTP version2 (HTTP/2) の仕様が策定され、多くのWWWサーバー、アプリケーションサーバーでHTTP/2機能の普及が進んでいます。
小メモリ設計で、CPU、OS、TCPスタックに依存することなく使うことができます。HTTP/2では必須とされるTLS1.2のセキュアソケットライブラリーも付属します。
HTTP/2 とは
HTTP/2 は HTTP/1.1 に比べて大幅な改善が施されています。HTTP/2プロトコルの主な機能と利点は以下のとおりです。
- HTTP ヘッダーの HPACK データ圧縮:HTTP/1.1 はすべて ASCII テキストであり、ペイロードサイズが小さい場合、特定の操作におけるヘッダーのオーバーヘッドがペイロードのかなりの部分を占める可能性があります。
- サーバープッシュ:従来の HTTP/1.1 は、クライアントからのリクエストとサーバーからのレスポンスによって開始されますが、HTTP/2 は、持続的な HTTP/2 接続において、要求されていないサーバーペイロードをサポートします。
- 複数のリクエストとレスポンスをパイプライン処理することで、メッセージを処理できます。
- フレーム:HTTP/2 は、接続、切断、データ、受信、送信ウィンドウサイズなどのフレームタイプを実装しています。
- 優先度:フレームに優先順位を付けることで、パケットキューイングを回避できます。
- HTTP/2 は、ウィンドウフレームメカニズムによるフロー制御を実装しています。
- 単一接続上で多重化された論理データストリームにより、HTTP/2 接続ではクライアントとサーバーが複数の一方向ストリームを管理できます。マルチストリームは、TCP パケットレベルで単一の TCP 接続上にインターリーブされる同時転送を使用することで、ヘッドオブラインブロッキングを解決します。
- TLS 経由の暗号化は完全にサポートされており、ほとんどの場合、HTTP/2 接続では必須となります。

μHTTP2 ツールキットはHTTP/2規格に基づいており、YouTube、Google、Amazon、Wikipedia などの人気サイトでテストされています。プラットフォーム、OS、ネットワークスタック間での移植性を高めるためのプラットフォーム移植レイヤーと統合された動的バイトプールメモリマネージャーが含まれています。
また、μHTTP2 ツールキットは、HTTP/2 を必要とする IoT クラウドサービスと連携するプロジェクトに最適です。例えば、Amazon Alexa Voice Service (AVS) は、単一の TCP 接続上で複数のストリームを管理するために HTTP/2 を利用しています。認証、ディレクティブ、イベントREST APIは、μHTTP2ツールキットで完全にサポートされます。Alexa RESTサービスプロトコルライブラリーやコンパニオンサーバー認証ハンドラーなど、Alexa固有の機能はオプションコンポーネントとして利用できます。
μHTTP2 Toolkitの特長
- RFC7540 (HTTP/2)、RFC7541 (HPACK) をフルサポート
- TLS1.2セキュアソケットライブラリー付属、必須のHTTPS要件に対応
- HTTP/2接続とHTTP/1.1接続を動的に切り替え管理、HTTP/1フォールバック機能をサポート
- Amazon Alexa Voice Service (AVS) に必要な認証機能、REST APIなど完全サポート
- CPU、OS、TCP/IPスタック非依存
- すべてC言語で記述、ソースコードを提供
- Radius認証クライアントも提供可能(オプション)
- HTTP/2サーバー機能も提供可能(オプション)
対応メソッド
RFC7231 Section 4.3定義の下記リクエストメソッドをすべてサポートしています。
- GET
- POST
- PUT
- HEAD
- DELETE
- OPTIONS
- TRACE
- CONNECT (use for HTTP proxy tunneling)
アーキテクチャ
接続相手に合わせてHTTP/2とHTTP/1.1の接続が可能です。
「Cypherbridge」シリーズの特長
Cypherbridge社は、組込み開発でのセキュリティ実装に最適なパッケージ製品を提供します。

- ANSI Cソースコードのご提供
- ロイヤリティ不要のプロダクトライセンス
- プラットフォームに非依存
・RTOS、ハードウェアタイマーに依存しない構造
・CPU、OS などのプラットフォームに依存せす、C/C++ ライブラリーをサポートするあらゆるプラットフォームに移植することが可能 - 当社による迅速なサポート
- 組込み機器開発の期間を短縮し、開発コストの削減に貢献
- 製品を活用した受託開発もお請けします。お気軽にご相談ください。
お問い合わせフォーム
フォームが表示されるまでしばらくお待ち下さい。
恐れ入りますが、しばらくお待ちいただいてもフォームが表示されない場合は、 こちらまでお問い合わせください。
関連製品
-

μSSL SDK
組込み用SSLスタック μSSL SDK は、TLS 1.3、1.2、1.1、1.0、SSL 3.0、PKI X.509証明書、暗号、ハッシュ、ネットワークプロトコルのベースの規格を実装することが可能な移植性の良い ANSI C ソースコードのスタックです。
-

μSSH Secure Shell SDK
μSSH SDK は、対話型シェルとSSHでトンネリングされたTCP/IPレイヤのための ANSI C ソースコードを提供し、製品の市場投入を加速するお手伝いをします。
-

μCrypt 暗号ツールキット
ソフトウェア暗号ライブラリー μCrypt暗号ツールキットは、暗号処理とハッシュ処理のためのコンパクトなANSI Cソフトウェアライブラリーです。
-

μMODBUS Toolkit
μMODBUS Toolkit は、リソースが割り当てられた中小規模のメモリモデルでうまく動くように設計されたコンパクトなソフトウェアライブラリーです。
-

μMQTT Toolkit
μMQTT Toolkit は、 Cypherbridge Systems 社が提供する MQTT 3.1 プロトコルを実装した組込み向けMQTT クライアント開発キットで、ANSI C によるソースコードで提供されます。