Pcap
pcap (packet capture) とは、コンピュータネットワーク管理の分野におけるパケットスニファのためのAPIである。Unix系のシステムではpcapはlibpcapとして実装されている。Windowsではlibpcapを移植したWinPcapが使われていたが、開発が終了したためWindows Vista以降を対象としたNpcapが後継として使われている。
モニタリングソフトウェアは、ネットワーク上を流れているパケットをキャプチャするためにlibpcapやWinPcapを利用することができる。さらに新しいバージョンでは、リンク層上にパケットを送り出すことや利用可能なネットワークインターフェースの一覧を取得することもできる。
libpcap/WinPcapはキャプチャしたパケットをファイルに保存したり、保存したファイルから読み出したりできる。つまり、アプリケーションはキャプチャしたネットワークのトラフィックをそのまま解析したり、いったん保存したトラフィックを解析することが、単一の解析プログラムだけで実現できる。libpcap/WinPcapのフォーマットで保存されたファイルは、そのフォーマットを理解するアプリケーションによって読み込める。
libpcap/WinPcapは、オープンソースや商用のネットワークツールのパケットキャプチャ・フィルタリングエンジンを提供している。これにはプロトコル・アナライザ(パケットスニファ)、ネットワークモニタ、侵入検知システム、トラフィックジェネレータ、ネットワークテスターなどが含まれる。
pcap APIの実装はC言語とC++で書かれており、Java、.NET、さらにスクリプト言語などではたいていラッパーが利用可能である。