WinPcap編程1——簡介

來源:互聯網
上載者:User

http://www.cnblogs.com/TianFang/archive/2007/11/26/972681.html

WinPcap編程1——簡介

什麼是WinPcap

WinPcap是一個基於Win32平台的,用於捕獲網路資料包並進行分析的開源庫.

大多數網路應用程式通過被廣泛使用的作業系統元件來訪問網路,比如sockets。 
這是一種簡單的實現方式,因為作業系統已經妥善處理了底層具體實現細節(比如協議處理,封裝資料包等等),並且提供了一個與讀寫檔案類似的,令人熟悉的介面。

然而,有些時候,這種“簡單的方式”並不能滿足任務的需求,因為有些應用程式需要直接存取網路中的資料包。也就是說,那些應用程式需要訪問未經處理資料包,即沒有被作業系統利用網路通訊協定處理過的資料包。

WinPcap產生的目的,就是為Win32應用程式提供這種訪問方式; WinPcap提供了以下功能

  1. 捕獲未經處理資料包,無論它是發往某台機器的,還是在其他裝置(共用媒介)上進行交換的
  2. 在資料包發送給某應用程式前,根據使用者指定的規則過濾資料包
  3. 將未經處理資料包通過網路發送出去
  4. 收集並統計網路流量資訊

以上這些功能需要藉助安裝在Win32核心中的網路裝置驅動程式才能實現,再加上幾個動態連結程式庫DLL。

所有這些功能都能通過一個強大的編程介面來表現出來,易於開發,並能在不同的作業系統上使用。這本手冊的主要目標是在一些程式範例的協助下,敘述這些編程介面的使用。

什麼程式在使用WinPcap

WinPcap可以被用來製作網路分析、監控工具。一些基於WinPcap的典型應用有:

  1. 網路與協議分析器 (network and protocol analyzers)
  2. 網路監視器 (network monitors)
  3. 網路流量記錄器 (traffic loggers)
  4. 網路流量發生器 (traffic generators)
  5. 使用者級橋接器及路由 (user-level bridges and routers)
  6. 網路入侵偵測系統 (network intrusion detection systems (NIDS))
  7. 網路掃描器 (network scanners)
  8. 安全工具 (security tools)

什麼是WinPcap做不到的

WinPcap能獨立地通過主機協議發送和接受資料,如同TCP-IP。這就意味著WinPcap不能阻止、過濾或操縱同一機器上的其他應用程式的通訊:它僅僅能簡單地"監視"在網路上傳輸的資料包。所以,它不能提供類似網路流量控制、服務品質調度和個人防火牆之類的支援。

什麼是WinPcap

WinPcap是一個基於Win32平台的,用於捕獲網路資料包並進行分析的開源庫.

大多數網路應用程式通過被廣泛使用的作業系統元件來訪問網路,比如sockets。 
這是一種簡單的實現方式,因為作業系統已經妥善處理了底層具體實現細節(比如協議處理,封裝資料包等等),並且提供了一個與讀寫檔案類似的,令人熟悉的介面。

然而,有些時候,這種“簡單的方式”並不能滿足任務的需求,因為有些應用程式需要直接存取網路中的資料包。也就是說,那些應用程式需要訪問未經處理資料包,即沒有被作業系統利用網路通訊協定處理過的資料包。

WinPcap產生的目的,就是為Win32應用程式提供這種訪問方式; WinPcap提供了以下功能

  1. 捕獲未經處理資料包,無論它是發往某台機器的,還是在其他裝置(共用媒介)上進行交換的
  2. 在資料包發送給某應用程式前,根據使用者指定的規則過濾資料包
  3. 將未經處理資料包通過網路發送出去
  4. 收集並統計網路流量資訊

以上這些功能需要藉助安裝在Win32核心中的網路裝置驅動程式才能實現,再加上幾個動態連結程式庫DLL。

所有這些功能都能通過一個強大的編程介面來表現出來,易於開發,並能在不同的作業系統上使用。這本手冊的主要目標是在一些程式範例的協助下,敘述這些編程介面的使用。

什麼程式在使用WinPcap

WinPcap可以被用來製作網路分析、監控工具。一些基於WinPcap的典型應用有:

  1. 網路與協議分析器 (network and protocol analyzers)
  2. 網路監視器 (network monitors)
  3. 網路流量記錄器 (traffic loggers)
  4. 網路流量發生器 (traffic generators)
  5. 使用者級橋接器及路由 (user-level bridges and routers)
  6. 網路入侵偵測系統 (network intrusion detection systems (NIDS))
  7. 網路掃描器 (network scanners)
  8. 安全工具 (security tools)

什麼是WinPcap做不到的

WinPcap能獨立地通過主機協議發送和接受資料,如同TCP-IP。這就意味著WinPcap不能阻止、過濾或操縱同一機器上的其他應用程式的通訊:它僅僅能簡單地"監視"在網路上傳輸的資料包。所以,它不能提供類似網路流量控制、服務品質調度和個人防火牆之類的支援。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.