システムソフトウェアの通信分野における2010年頃からの研究まとめ(IIR vol.60 2章) | IIJ Engineers Blog

システムソフトウェアの通信分野における2010年頃からの研究まとめ(IIR vol.60 2章)

2023年09月26日 火曜日


【この記事を書いた人】
IIJ Engineers Blog編集部

開発・運用の現場から、IIJのエンジニアが技術的な情報や取り組みについて執筆する公式ブログを運営しています。

「システムソフトウェアの通信分野における2010年頃からの研究まとめ(IIR vol.60 2章)」のイメージ

IIR vol.60 第2章では「システムソフトウェアの通信分野における2010年頃からの研究まとめ」と題して、まずシステムソフウェアにおける通信処理の挙動について触れ、次に過去の研究がそれらをどのように高速化しようと取り組んできたかについてまとめます。最後にそれらをふまえて、IIJ技術研究所が近年行っている取り組みについて紹介します。

本報告のポイント

  • 10Gbpsなど、ネットワークが高速化するに伴い、ネットワークに接続されたコンピュータが効率的に通信を処理することが重要になってきました。その中でも、NIC(ネットワークインターフェースカード)とアプリケーションの間でデータを仲介するシステムソフトウェア(OSなど)の処理速度を高速化する事について、研究コミュニティでは2010年代より様々な研究と実装がなされてきました。
  • 本稿ではまず、一般的なOSで通信に関する処理がどのように実装されているのかについて、アプリケーション・カーネル・NIC間のデータ転送のフローを解説します。
  • 次に、研究コミュニティによる高速化の取り組みとして、「システムコール呼び出しコストの削減」、「ユーザ空間とNIC間のパケット受け渡しの効率化」、「ネットワークスタック設計の再考」、「仮想マシン通信の高速化」のアウトラインを紹介します。
  • 最後に、IIJ技術研究所が現在取り組んでいる研究について紹介します。一つは、前項で上げた各種の研究を既存アプリケーションから透過的に利用するためにシステムコールを効率的にフックする方法「Zpoline」です。二つ目は、仮想マシンが安全を確保したまま、コンテキストスイッチなく共有メモリにアクセスするための「ELISA」です。

本レポートの全文はこちらからご覧いただけます。

関連リンク

IIJ Engineers Blog編集部

2023年09月26日 火曜日

開発・運用の現場から、IIJのエンジニアが技術的な情報や取り組みについて執筆する公式ブログを運営しています。

Related
関連記事