NIC

summary:

NIC[Network Interface Card]とは,コンピュータやサーバとネットワークとの物理的・論理的接続を担うための拡張カード,またはチップセットである.送受信するデータパケットを適切に処理し,上位レイヤにデータを引き渡す役割を持つ.さらに,MACアドレスを保持し,イーサネットなどのネットワークプロトコルに従って通信を制御する.

現代のNICは単なるデータリンク層のインターフェースにとどまらず,オフロード機能やプロトコル処理支援機能を持つ高度なプロセッサとして機能し,CPU負荷を軽減しつつ高速なネットワーク通信を実現するデバイスである.

NICの起源は,1970年代末から1980年代初頭にかけて,コンピュータネットワークが商用化される過程に求めることができる.当初のネットワーク接続は,コンピュータに内蔵された特殊な通信回路に依存していたが,ネットワーク技術の多様化と普及に伴い,汎用的に使用可能な拡張カード形式のNICが開発された.特にイーサネット技術の登場と普及が,NICの一般化を決定づけた.1980年代には3Com社が世界初の商用イーサネットNICである3C100を開発・販売し,パーソナルコンピュータにネットワーク接続機能を持たせるための標準的手段としてNICが定着した.

技術的には,初期のNICは単純な物理層[PHY]とデータリンク層[MAC]処理のみを担当していたが,1990年代以降,ネットワーク速度の向上に伴い,より高度な処理能力が求められるようになった.具体的には,チェックサムオフロード,TCPセグメンテーションオフロード[TSO],ジャンボフレーム対応など,パケット処理の一部をCPUからNICへ移譲する機能が導入された.さらに近年では,仮想化技術の発展に伴い,SR-IOV[Single Root I/O Virtualization]やDPDK[Data Plane Development Kit]といった,超低レイテンシー・高スループット通信を可能にする機能がNICに組み込まれている.

RDMA[Remote Direct Memory Access]機能を持つNIC[しばしばRNICと呼ばれる]は,従来のNICをさらに発展させたものであり,ネットワーク越しにリモートメモリアクセスを直接実行可能とすることで,カーネルバイパスとゼロコピー転送を実現している.これにより,高性能コンピューティングや大規模データセンターにおける低遅延通信が可能となっている.また,最近ではスマートNIC[SmartNIC]あるいはDPU[Data Processing Unit]と呼ばれる形態も登場し,NIC自体にプログラマブルなプロセッサコアやメモリを搭載し,パケットフィルタリング,暗号化,ストレージ処理などのオフロード機能を備えることで,データセンターのCPUリソース削減とネットワーク効率向上に貢献している.特に,NVIDIA Mellanox ConnectX,Intel Fortville,Broadcom NetXtremeなどのベンダーが先進的なNICを提供し,市場をリードしている.

現代では,NICはPCIe[Peripheral Component Interconnect Express]バスを介してホストシステムと接続されることが一般的であり,10Gbps,25Gbps,40Gbps,100Gbpsといった高帯域通信に対応している.また,IoTデバイスや組み込みシステム向けには,小型かつ省電力のネットワークインターフェースも開発されている.さらに,無線LAN用のNIC[ワイヤレスNIC]も広く普及しており,IEEE 802.11規格に準拠したWi-Fi通信を可能にしている.

このように,NICは単なるインターフェース装置から,ネットワークデータパス全体を最適化するための高度な演算デバイスへと進化を遂げてきたのである.

Mathematics is the language with which God has written the universe.





















NIC OpenConfig マルチプレクサ Telcordia GR規格 1FINITY Pulsar