簡介
網卡上面裝有處理器和
存儲器(包括
RAM和
ROM)。網卡和區域網路之間的通信是通過電纜或
雙絞線以串列傳輸方式進行的。而網卡和計算機之間的通信則是通過計算機
主機板上的
I/O匯流排以並行
傳輸方式進行。因此,網卡的一個重要功能就是要進行串列/並行轉換。由於網路上的
數據率和計算機匯流排上的數據率並不相同,因此在網卡中必須裝有對數據進行快取的
存儲晶片。
網卡以前是作為擴展卡插到計算機匯流排上的,但是由於其價格低廉而且
乙太網標準普遍存在,大部分新的計算機都在
主機板上集成了
網路接口。這些
主機板或是在主機板晶片中集成了乙太網的功能,或是使用一塊通過
PCI (或者更新的
PCI-Express匯流排)連線到主機板上的廉價網卡。除非需要多接口或者使用其它種類的網路,否則不再需要一塊獨立的網卡。甚至更新的主機板可能含有內置的雙網路(
乙太網)接口。
在安裝網卡時必須將管理網卡的設備
驅動程式安裝在計算機的作業系統中。這個驅動程式以後就會告訴網卡,應當從
存儲器的什麼位置上將區域網路傳送過來的
數據塊存儲下來。網卡還要能夠實現
乙太網協定。
網卡並不是獨立的自治單元,因為網卡本身不帶電源而是必須使用所插入的計算機的電源,並受該計算機的控制。因此網卡可看成為一個半自治的單元。當網卡收到一個有差錯的幀時,它就將這個幀丟棄。當網卡收到一個正確的幀時,它就使用中斷來通知該計算機並交付給
協定棧中的
網路層。當計算機要傳送一個
IP數據包時,它就由協定棧向下交給網卡組裝成幀後傳送到區域網路。
隨著
集成度的不斷提高,網卡上的晶片的個數不斷的減少,雖各個廠家生產的網卡種類繁多,但其功能大同小異。
主要功能
1、數據的封裝與解封
傳送時將上一層傳遞來的數據加上首部和尾部,成為
乙太網的幀。接收時將乙太網的幀剝去首部和尾部,然後送交上一層
2、鏈路管理
屬性設定
通過高級網卡選項可以提升網路性能:
如果伺服器性能低下,那么可能是由於網路負載較大。標準的
乙太網數據包大小為1518個位元組,大多數檔案被拆分為成百上千甚至上百萬個數據包或者幀。這些小的
數據包通過
網路傳輸,和眾多節點共享
網路頻寬,但是
數據幀的傳送與接收會帶來CPU開銷。
大多數網卡支持
巨型幀,這意味著能夠處理高達9000位元組的數據包或者幀。巨型幀在每個數據包中包括更多的數據,因此網路中需要傳輸的數據包數量就變小了。
吞吐量提升意味著開銷——數據包頭與其他數據包內容——以及CPU開銷減少了。
巨型幀肯定存在缺點。管理員必須對網路中的所有節點進行配置才能支持巨型幀的傳輸。巨型幀並不是IEEE標準的一部分,因此不同的網卡配置的巨型幀大小有所不同。為了在節點之間高效傳輸巨型幀要做一些實驗。更大的數據包可能會增加某些負載的延遲,因為其他節點要等更長的時間才能使用頻寬,請求與傳送被丟棄或者被破壞的數據包也需要花更長的時間。
IT專業人員可能放棄巨型幀而使用具有LSO以及LRO功能的網卡。LSO和LRO允許CPU通過網卡傳輸更多數量的數據,而且基本上與巨型幀提供了相同的CPU性能。
乙太網在每傳送一個數據包後都要等一段時間,這稱之為幀間距。這為其他
網路節點占用頻寬並傳送數據包提供了機會。幀間距等於傳送96個
數據位的時間。例如,1Gb乙太網使用標準的0.096ms的幀間距,10Gb乙太網的幀間距為0.0096ms。
利用這一固定的數據包傳輸之間的間距並非總是有效而且在網路
負載較大的情況下可能會降低網路性能。支持自適應幀間距的網卡能夠基於網路負載動態調整幀間距,這有可能提升網路性能。除非接近網路頻寬,否則調整幀間距通常不會提升網路性能。
全方位的網路
性能基準測試能夠展現網路使用模式。如果乙太網連線頻繁達到頻寬上限,那么升級到速度更快的乙太網或者使用
網卡綁定而非調整幀間距將能夠提升網路性能。
限制CPU中斷,提升CPU性能
當數據包在網路中傳輸時,網卡會產生CPU中斷。乙太網速度越快,CPU中斷的頻率也就越高,CPU必須更多地關注
網路驅動器以及其他處理數據包的軟體。如果流量起伏不定,CPU性能可能會變得不穩定。支持人為中斷
節流的網卡能夠減少CPU中斷頻率,將CPU從網卡中放出來,很可能能夠提升CPU性能。
中斷限制越多並不一定越好。過高的中斷限制可能會降低CPU的回響能力;CPU將需要花更長的時間來處理所有正在產生的中斷。當高速小數據包近乎實時地到達時,限制中斷將會降低性能。在多種模式下對網路以及CPU性能進行測試直到能夠建立起充分的
系統回響能力,產生平滑的CPU中斷。
還可以考慮支持TCP/IP卸載功能的網卡。這些網卡能夠線上處理眾多CPU密集型
工作任務,同時減少對CPU的
中斷請求。
對事件敏感的數據類型比如
VoIP或者視頻通常按照高優先權流量對待,但是網路對所有數據包一視同仁。採用數據包標記,被標記的數據包能夠被分到作業系統設定的流量佇列中,在處理其他低優先權的數據包之前先處理高優先權的VoIP以及視頻數據包。包標記有助於QoS戰略,而且是很多
VLAN部署的一個必要組成部分。
如果網路性能低於已定義的基準,可以對網卡進行調整,務必對伺服器以及網卡進行
基準測試後再對配置進行更改。這些推薦的網卡調整不會帶來顯著的性能提升,但是也不受預算的限制。隨時間變化評估並觀察網路性能,檢查任何意想不到的後果,比如提升了某個工作負載性能卻降低了其他工作負載的性能。
網卡驅動
由於驅動功能層的存在,協定驅動程式和網卡驅動程式之間相互獨立,大大簡化了
網路設備增加和
網路組件擴展的
複雜度。網路協定棧主要支持增強型的網路
設備驅動 (Enhanced Network Driver)。
END設備驅動程式的裝載
END設備驅動程式的裝載主要就是完成END設備驅動 程式與驅動功能抽象層的掛接,使得網路協定棧實現對 END設備的控制。具體過程包括: 初始化網卡和
PHY設備,配置網卡和 PHY 設備的通信參數等;為網卡
控制結構分配空間同時初始化END_OBJ結構,END_OBJ結構主要包括網卡控制結構以及與網路協定棧相關的參數信息;對
網卡驅動對應的參數串進行解析和處理;為
接收數據分配空間,保證接收數據的存放;通過配置END_OBJ結構中的NET_FUNCS 參數實現網卡驅動與網路協定棧的掛接。
啟動 END 設備
END設備的
啟動過程主要包括
中斷處理程式的掛接和使 能網卡中斷。對於網卡設備來說,其
處理數據的方式可分為中斷和輪詢兩種
工作模式,在END設備啟動過程中,將接收數據和傳送數據均設定為中斷模式,並掛接接收和傳送數據的中斷處理程式,最後使能網卡中斷、接收和傳送中斷,則可完成END設備的啟動。
網路數據包的接收
對於網路
數據包的接收來說,作業系統的網路協定棧無需網卡驅動實現對網路數據包的處理。當網卡設備接 收到數據後,其會產生一個接收中斷,在接收中斷處理程式中, 程式會調用netJobAdd函式啟動一個任務程式將網卡設備接收到的
數據傳遞給驅動功能抽象層,網路協定棧通過驅動功能抽象層的接收函式獲取到網路數據包並進行相應的數據處理。此處利用netJobAdd 函式可以減少接收中斷的
處理時間,提高網路數據的接收能力。
網路數據包的傳送
對於網路數據包的傳送來說,當網路協定棧傳送數據時,其會將數據放置到緩衝區中,並通過調用驅動功能抽象層的傳送函式將緩衝區中的
數據傳送給網卡設備,網卡設備接收到數據後就將其置於傳送緩衝區中等待數據的傳送。
分類
按照網卡支持的計算機種類分類,主要分為標準乙太網卡和
PCMCIA網卡:
按照網卡支持的傳輸速率分類,主要分為10Mbps網卡、100Mbps網卡、10/100Mbps自適應網卡和1000Mbps網卡四類:
根據傳輸速率的要求,10Mbps和100Mbps網卡僅支持10Mbps和100Mbps的傳輸速率,在使用
非禁止雙絞線UTP作為傳輸介質時,通常10Mbps網卡與3類UTP配合使用,而100Mbps網卡與5類UTP相連線。10/100Mbps自適應網卡是由網卡
自動檢測網路的傳輸速率,保證網路中兩種不同傳輸速率的
兼容性。隨著區域網路傳輸速率的不斷提高,1000Mbps網卡大多被套用於高速的伺服器中。
按網卡所支持的匯流排類型分類,主要可以分為ISA、
EISA、
PCI等:
雙網卡切換
為了使2塊網卡實現高效雙
冗餘備份,必須保證這2塊網卡具有相同的
物理地址和
IP位址這樣 對於上層
套用系統而言,系統中呈現“單網卡”的特徵;反之,當系統中一塊網卡切換到另一塊網卡工作時,如果IP位址發生變化,則系統無法正常接收和傳送數據。如果IP位址不改變,而物理地址改變,則會引起
協定棧中
ARP綁定表的變化,而重新對應ARP綁定表中IP位址與網卡物理地址的關係會延長兩個網卡之間的切換時間。
然而,每塊網卡的物理地址在全世界範圍內是唯一的,它保存在網卡的
PROM中。為了使2塊網卡具有相同的物理地址,在網卡初始化時,從PROM中讀出其中一塊網卡的物理地址,將該物理地址的內容寫入另一 塊網卡物理
地址暫存器和
數據結構變數中,在此情況下,這2塊網卡就具有完全相同的物理地址了。
有線網卡
LC接口名字的由來是根據
光纖模組的接口定義而命名的。光纖模組按其接口可以分為:SC、LC、ST、FC等幾種類型。
SC接口光纖網卡的含義:
SC接口光纖網卡名字的由來是根據光纖模組的接口定義而命名的。光纖模組按其接口可以分為:SC、LC、ST、FC、MTRJ等幾種類型。由於SC接口光纖操作的便利性,從而使得帶SC接口
光模組的網卡,
得到廣泛運用,而經常被人們所提起,因為也誕生了:SC接口光纖網卡這個名詞。
SC/APC 單纖,
單模 波長1310/1550nm 10/20KM
SC/PC 雙纖,單模 波長1310nm 10/20/40KM
SFP是 (Small Form-factor Pluggables)可以簡單的理解為
GBIC的升級
版本。SFP模組(體積比GBIC模組減少一半,可以在相同面板上配置多出一倍以上的
連線埠數量。由於SFP模組在功能上與GBIC基本一致,因此,也被有些交換機廠商稱為小型化GBIC(Mini-GBIC)。
SFP光纖網卡,故名思議,就是一種小型可熱撥插模組的光纖網卡。在網卡集成SFP插槽,用戶可根據實際需要,插入多模或者單模
SFP光模組,而且可以根據實際傳輸距離,插入不同傳統距離的光模組;而不需要根據網卡本身。這就給用戶很大的選擇空間。
無線網卡
物理層具體實現無線電信號的接收與發射,它與
無線網卡硬體中的擴頻通信機相對應。物理層提供空閒
信道估計CCA信息給MAC層,以便決定是否可以傳送信號,通過MAC層的控制來實現無線網路的
CSMA/CA協定,而MAC-PHY子層主要實現數據的打包與拆包,把必要的
控制信息放在
數據包的前面。
IEEE802.11協定指出,物理層必須有至少一種提供空閒信道估計CCA信號的方法。無線網卡的工作原理如下:當物理層接收到信號並確認無錯後提交給MAC-PHY子層,經過拆包後把數據上交MAC層,然後判斷是否是發給本網卡的數據,若是則上交,否則丟棄。
如果物理層接收到的發給本網卡的信號有錯,則需要通知傳送端重發此包信息。當網卡有數據需要傳送時,首先要判斷信道是否空閒。若空,隨機退避一段時間後傳送;否則,暫不傳送。由於網卡為時分
雙工工作,所以,傳送時不能接收,接收時不能發。
2.IEEE
802.11b :使用2.4GHz頻段,傳輸速度11Mbps
3.IEEE 802.11g:使用2.4GHz頻段,傳輸速度54Mbps
4.IEEE
802.11n :使用2.4GHz頻段或5Ghz頻段,傳輸速度可達300Mbps
5.IEEE
802.11ac:使用2.4GHz頻段或5Ghz頻段傳輸速度最大可達1.73Gbps
無線網卡的作用、功能跟普通電腦網卡一樣,是用來連線到區域網路上的。它只是一個信號收發的設備,只有在找到上網際網路的出口時才能實現與網際網路的連線,所有
無線網卡只能局限在已布有
無線區域網路的範圍內。
無線網卡就是不通過有線連線,採用無線信號進行連線的網卡。
無線網卡可以根據不同的接口類型來區分,第一種是
USB無線網卡,是最常見的;第二種是台式機專用的PCI/PCI-
E接口無線網卡;第三種是筆記本電腦內置的MINI-
PCIE/M.2 1216接口無線網卡。
就如上面所說,我們光有
無線網卡是無法連線無線網路,還必須有
無線路由器或無線AP。
無線網卡就好比是
接收器,無線路由相當於發射器。其實還是需要有線的Internet線路接入到
無線貓上,再將信號轉化為無線的信號發射出去,由
無線網卡接收。
虛擬網卡
隨著嵌入式設備對網路需求的增長,物聯網技術通過傳 感器獲取大量數據,這些數據通過嵌入式網關進行處理,這就涉及到各種
網路通信算法。但是通常嵌入式軟
硬體開發時間是不均衡的。如果網路通信算法已經完成。而硬體仍然處於調試狀態,導致網路通信算法不能夠及時驗證,則開發效率降低。
虛擬網卡測試平台提供了不需要具體硬體參與,就能完成多網卡設備的通信算法驗證,降低了
軟體開發周期。 並且通過分析虛擬網卡接收和傳送的數據包,進而對算法的
準確性和性能進行測試。
故障及解決方法
網路連線不穩定
在網卡工作正常的情況下,網卡的
指示燈是長亮的(而在傳輸數據時,會快速地閃爍)。如果出現時暗時明,且
網路連線老是不通的情況,最可能的原因就是網卡和
PCI插槽
接觸不良。和其他PCI設備一樣,頻繁拔插網卡或移動電腦時,就很容易造成此類故障,重新拔插一下網卡或換插到其他
PCI插槽都可解決。此外,灰塵多、網卡
金手指被嚴重氧化,網線接頭損壞也會造成此類故障。只要清理一下灰塵、用報紙把“金手指"擦亮即可解決。
驅動程式出現的故障
網卡和其他硬體一樣,
驅動程式不完善也極易引起故障,比如果用瑞顯(
Realtek)RT18469晶片的網卡,在Windows下就經常會出現Net-BIOSTCP/IP方面的錯誤。棉驅動更新到最新版後,此類問題就會迎刃而解。所以,當網卡出現一些不明緣由的故障時,可以到“
驅動之家”等專業網站更新驅動來解決(推薦大家優先使用經過
微軟WHQL認證的驅動,通過此認證的驅動程式與Windows系統的
兼容性是最好的)。一般在排除硬體,
網路故障前提下,升級或重裝驅動可以解決很多莫名故障。如果網卡故障是發生在驅動程式更新之後的話,可以用網卡自帶的驅動程式來恢復一下。
磁場導致故障
網卡與其它電子產品一樣。很容易受到
磁場干擾而發生故障。所以,網卡和
網路布線時,就要採用屏蕺性強的網線和網卡設備,同時儘可能地避開
微波爐、電冰櫃、電視機等大功率強磁場設備,降低網卡故障的幾率。
網卡數據收發異常
第一步:依次單擊“開始”、“
控制臺”命令,彈出系統控制臺視窗,用 滑鼠雙擊“網路和共享中心”圖示,點擊其後界面中的“管理網路連線”按鈕,進 入網路連線列表視窗,
右擊“
本地連線”圖示,執行
快捷選單中的“屬性”命令, 打開本地連線屬性對話框,選中
TCP/
IPv4協定選項,點擊“屬性”按鈕,切換到對應協定屬性對話框,看看這裡的IP位址等參數是否設定正確,如果用戶輸入了錯誤的IP位址,或者對
網路參數配置不熟悉,就很容易引起網路故障。設定好了網路參數,或許故障現象就能自動消失了。
第二步:檢查網卡設備
工作狀態是否正常。首先用手觸摸網卡附近是否存在溫度過高現象,在計算機長時間工作的情況下,如果計算機
散熱性能不好的話,很容易使網卡發生性能下降現象。當確認由於溫度過高引起網卡工作不正常時,只要暫時關閉計算機一段時間,就能解決問題。其次檢查一些
應用程式或
軟體系統有沒有對網卡設備進行操作許可權方面的限制,比方說
保密系統或
網路病毒,可能會影響網卡設備的工作狀態,此時只要查殺乾淨
病毒,或取消程式或軟體對網卡許可權的限制,就能恢復網卡設備
運行狀態。第三判斷網卡自身是否存在硬體問題。打開系統
設備管理器視窗,展開網路適配器節點,用滑鼠右鍵單擊目標網卡設備,進入對應設備屬性對話框,選擇“常規”標籤,在對應標籤頁面中就能直觀看到網卡設備是否有問題了。如果從里還不能識別出網卡究競是否正常時,不妨通過加裝一塊正常網卡的方法,來判斷舊網卡是否在質量方面存在問題。最後嘗試用滑鼠右鍵單擊“本地連線”圖示,執行快捷選單中的“修復”命令,這樣或許能解決一些網卡錯誤,從而恢復網卡的工作狀態。
第三步:通過專業線纜測試儀器,對物理線路的
連通性進行測試,以此來判斷
網路線纜是否有斷點,網卡水晶頭是否接觸不良。如果發現網路線纜有斷點,必須要重新更換新的網路線纜。如果看到
水晶頭接觸不好時,不妨選用質量較高的頭,重新製作網路接頭。
第四步:要檢查交換機的工作狀態。在長時間工作後,交換機設備很容易出現老化現象,這時會引起連線到該交換機中的所有計算機上網不正常,所以觀察其他計算機的上網狀態,如果有多台計算機網卡數據收發異常,那十有八九是交換機問題,只要重新更換交換機即可。如果其他計算機上網正常,那不妨嘗試換插一個交換連線埠,看看是否是連線埠模組有問題。有的時候,小小的灰塵也能引起交換機或網卡設備的性能下降,因此要加強設備的保養。