TCP/IP スタックの移植 - FreeRTOS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

TCP/IP スタックの移植

このセクションでは、オンボード TCP/IP スタックの移植とテストについて説明します。プラットフォームが TCP/IP および TLS 機能を別のネットワークプロセッサまたはモジュールにオフロードする場合は、この移植のセクションをスキップして ネットワークトランスポートインターフェイスの移植 を参照してください。

FreeRTOS+TCP は、FreeRTOS カーネル用のネイティブ TCP/IP スタックです。FreeRTOS+TCP は FreeRTOS エンジニアリングチームによって開発および管理されており、FreeRTOS で使用することをお勧めする TCP/IP スタックです。詳細については、「FreeRTOS+TCP の移植」を参照してください。または、サードパーティの TCP/IP スタック lwIP を使用することもできます。このセクションで説明するテスト手順では、TCP プレーンテキストのトランスポートインターフェイスのテストを使用するため、実装されている特定の TCP/IP スタックには依存しません。

FreeRTOS+TCP の移植

FreeRTOS+TCP は、FreeRTOS カーネル用のネイティブ TCP/IP スタックです。詳細については、「FreeRTOS.org」を参照してください。

前提条件

FreeRTOS+TCP ライブラリを移植するには、次のものが必要です。

移植

FreeRTOS+TCP ライブラリの移植を開始する前に、GitHub ディレクトリを調べて、ボードへの移植が既に存在するかどうか確認してください。

移植が存在しない場合は、次の操作を行います。

  1. FreeRTOS.org の「FreeRTOS+TCP を別のマイクロコントローラーへ移植する」の手順に従って、FreeRTOS+TCP をデバイスに移植します。

  2. 必要に応じて、FreeRTOS.org の「FreeRTOS+TCP を新しい Embedded C コンパイラへ移植する」の手順に従って、FreeRTOS+TCP を新しいコンパイラに移植します。

  3. ベンダー提供のイーサネットまたは Wi-Fi ドライバーを使用する新しい移植を NetworkInterface.c というファイルに実装します。テンプレートについては、GitHub リポジトリを参照してください。

移植を作成済みであるか、移植が既に存在する場合は、FreeRTOSIPConfig.h を作成し、設定オプションをプラットフォームに適切な内容に設定します。設定オプションの詳細については、FreeRTOS.org の「FreeRTOS+TCP の設定」を参照してください。

テスト

FreeRTOS+TCP ライブラリを使用するか、サードパーティのライブラリを使用するかにかかわらず、以下の手順に従ってテストします。

  • トランスポートインターフェイスのテストで、connect/disconnect/send/receive API の実装を提供します。

  • プレーンテキスト TCP 接続モードでエコーサーバーをセットアップし、トランスポートインターフェイスのテストを実行します。

注記

アーキテクチャで TCP/IP ソフトウェアスタックを移植する必要がある場合に、FreeRTOS 用にデバイスを正式に認定するには、AWS IoT Device Tester を使用して、プレーンテキスト TCP 接続モードでトランスポートインターフェイステストと照合しながらデバイスの移植されたソースコードを検証する必要があります。「FreeRTOS ユーザーガイド」の「Using AWS IoT Device Tester for FreeRTOS」に記載されている手順に従って、移植の検証に使う AWS IoT Device Tester を設定します。特定のライブラリのポートをテストするには、Device Tester configs フォルダの device.json ファイルで正しいテストグループを有効にする必要があります。