仮想ネットワークインタフェース
(virtual network interface: VIF から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/12/11 15:34 UTC 版)
|
|
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 (2025年12月)
|
仮想ネットワークインタフェース(かそうネットワークインタフェース、英語: virtual network interface: VIF)は、ネットワークインタフェースの抽象的な仮想化表現である。実際のネットワークインターフェイスコントローラー (NIC) に直接対応する場合と、そうでない場合がある。
OSレベルの仮想化
オペレーティングシステム (OS) のカーネルでは、メモリ上に仮想ネットワークインタフェースのテーブルを保持するのが一般的である。これにより、関連する物理インタフェースとは独立して、または直接的な物理インタフェースであるか、または例えばトンネルまたはブリッジインタフェースであるかに関係なく、システムがネットワークインタフェースの情報を格納し、動作させることが可能となる。また、単一の無定形の(容量やパフォーマンスが不明な)「インターネット」を想定するよりも、細かい方法でネットワーク接続に関するシステムのプロセスが相互作用することも可能となる。
W・リチャード・スティーヴンスは、著書「TCP/IP Illustrated」の第2巻で、マルチキャストルーティングに関する話題の中でカーネルの仮想インタフェーステーブルについて触れている。例えば、マルチキャストルーターは、物理インタフェース上とトンネルによるインタフェース上とで異なる動作をすることができる(例えば、物理インタフェースのメンバーシップ情報を収集するだけでよい)。従って、仮想インタフェースは、物理インタフェースを直接表すかどうかなど、いくつかの情報をユーザーに明らかにする必要がある[1] 。
いくつかのシステムでは、ユーザー空間アプリケーションが抽象的なネットワークインタフェース接続を参照することを可能にすることに加えて、指定された帯域幅制限とキューイングモデルによって抽象的なインタフェースに階層的に細分することにより、プロセスが所定の物理インタフェースの共有を(本来のOSの振る舞いを超えて)より良く調整することを可能にすることができる。これは、例えばそれが逸脱しないような階層の限定された枝を継承することによって、プロセスの制限を意味することができる。
ネットワーク抽象化のこの余分な層は、しばしば不必要であり、わずかな性能上の不利益をもたらす可能性がある。しかし、パフォーマンスのボトルネックを回避するために、実際には最適化のためにカーネルをバイパスするためにも、抽象化レイヤーを使用することも可能である[2]。
アプリケーションレベルの仮想化
VIFという用語は、アプリケーションがネットワークインタフェースを仮想化または抽象化するときにも使用される。ほとんどのソフトウェアは、ネットワークインタフェースの詳細に関わる必要はなく、また、OSを通じて抽象化がすでに利用可能な場合もあるので、この使用法はまれである。
関連項目
脚注
- ^ W. Richard Stevens; Gary R. Wright (1995), TCP/IP Illustrated, Volume 2: The Implementation, Addison-Wesley, pp. 401–434, ISBN 0-201-63354-X
- ^ Jin-Soo Kim; Kangho Kim; Sung-In Jung (2001), “Building a high-performance communication layer over virtual interface architecture on Linux clusters”, Proceedings of the 15th international conference on Supercomputing (ACM): 335–347, doi:10.1145/377792.377858 2009年2月9日閲覧。
外部リンク
- 仮想ネットワークインタフェースのページへのリンク