【以太網(wǎng)網(wǎng)卡的組成及工作原理,以太網(wǎng)網(wǎng)卡的類型有哪三種】網(wǎng)卡(Network Interface Card,簡稱NIC) , 也稱網(wǎng)絡(luò)適配器,是電腦與局域網(wǎng)相互連接的設(shè)備 。只要連接到局域網(wǎng),就需要安裝網(wǎng)卡 。一個網(wǎng)卡主要包括OSI的最下面的兩層,物理層和數(shù)據(jù)鏈路層 , 物理層的芯片稱之為PHY,數(shù)據(jù)鏈路層的芯片稱之為MAC控制器,這方面的內(nèi)容在之前已經(jīng)有過介紹(以太網(wǎng)——PHY、MAC和 MII基礎(chǔ)知識) 。
今天我們來了解網(wǎng)卡的工作原理,學(xué)習(xí)數(shù)據(jù)包的發(fā)送和接收的處理過程 。
網(wǎng)卡工作在OSI的最后兩層:物理層和數(shù)據(jù)鏈路層,物理層定義了數(shù)據(jù)傳送與接收所需要的電與光信號、線路狀態(tài)、時鐘基準(zhǔn)、數(shù)據(jù)編碼和電路等,并向數(shù)據(jù)鏈路層設(shè)備提供標(biāo)準(zhǔn)接口 。數(shù)據(jù)鏈路層則提供尋址機(jī)構(gòu)、數(shù)據(jù)幀的構(gòu)建、數(shù)據(jù)差錯檢查、傳送控制、向網(wǎng)絡(luò)層提供標(biāo)準(zhǔn)的數(shù)據(jù)接口等功能 。以太網(wǎng)卡中數(shù)據(jù)鏈路層的芯片稱之為MAC控制器 。很多網(wǎng)卡的這兩個部分是做到一起的 。他們之間的關(guān)系是PCI總線接MAC總線,MAC接PHY,PHY接網(wǎng)線(通過變壓裝置) 。

文章插圖
下面繼續(xù)讓我們看一下PHY和MAC之間是如何傳送數(shù)據(jù)和相互溝通的 。通過IEEE定義的標(biāo)準(zhǔn)的MII界面連接MAC和PHY 。這個界面是IEEE定義的 。MII界面?zhèn)鬟f了網(wǎng)絡(luò)的所有數(shù)據(jù)和數(shù)據(jù)的控制 。而MAC對PHY的工作狀態(tài)的確定和對PHY的控制則是使用SMI(Serial Management Interface)界面通過讀寫PHY的寄存器來完成的 。PHY里面的部分寄存器也是IEEE定義的,這樣PHY把自己目前的狀態(tài)反映到寄存器里面,MAC通過SMI總線不斷地讀取PHY的狀態(tài)寄存器以得知目前PHY的狀態(tài),例如連接速度、雙工的能力等 。當(dāng)然也可以通過SMI設(shè)置PHY的寄存器達(dá)到控制的目的,例如流控的打開關(guān)閉,自協(xié)商模式還是強(qiáng)制模式等 。
所以,不論是物理連接的MII界面和SMI總線還是PHY的狀態(tài)寄存器和控制寄存器都是有IEEE的規(guī)范的 , 因此不同公司的MAC和PHY一樣可以協(xié)調(diào)工作 。當(dāng)然為了配合不同公司的PHY的自己特有的一些功能,驅(qū)動需要做相應(yīng)的修改 。
工作過程
PHY在發(fā)送數(shù)據(jù)的時候,收到MAC過來的數(shù)據(jù)(對PHY來說 , 沒有幀的概念 , 對它來說,都是數(shù)據(jù)而不管什么地址,數(shù)據(jù)還是CRC),每4bit就增加1bit的檢錯碼,然后把并行數(shù)據(jù)轉(zhuǎn)化為串行流數(shù)據(jù),再按照物理層的編碼規(guī)則(10Based-T的NRZ編碼或100based-T的曼徹斯特編碼)把數(shù)據(jù)編碼再變?yōu)槟M信號把數(shù)據(jù)送出去 。收數(shù)據(jù)時的流程反之 。
現(xiàn)在來了解PHY的輸出后面部分 。
一顆CMOS制程的芯片工作的時候產(chǎn)生的信號電平總是大于0V的(這取決于芯片的制程和設(shè)計需求),但是這樣的信號送到100米甚至更遠(yuǎn)的地方會有很大的直流分量的損失 。而且如果外部網(wǎng)線直接和芯片相連的話,電磁感應(yīng)和靜電 , 很容易造成芯片的損壞 。
再就是設(shè)備接地方法不同,電網(wǎng)環(huán)境不同會導(dǎo)致雙方的0V電平不一致 , 這樣信號從A傳到B,由于A設(shè)備的0V電平和B點的0V電平不一樣,這樣會導(dǎo)致很大的電流從電勢高的設(shè)備流向電勢低的設(shè)備 。這時就需要Transformer(隔離變壓器) 。它把PHY送出來的差分信號用差模耦合的線圈耦合濾波以增強(qiáng)信號 , 并且通過電磁場的轉(zhuǎn)換耦合到連接網(wǎng)線的另外一端 。這樣不但使網(wǎng)線和PHY之間沒有物理上的連接而換傳遞了信號,隔斷了信號中的直流分量,還可以在不同0V電平的設(shè)備中傳送數(shù)據(jù) 。
隔離變壓器本身就是為耐2KV~3KV的電壓而設(shè)計的,同時起到防雷感應(yīng)保護(hù)的作用 。有些用戶的網(wǎng)絡(luò)設(shè)備在雷雨天氣時容易被燒壞,大都是PCB設(shè)計不合理造成的 , 而且大都燒毀了設(shè)備的接口,很少有芯片被燒毀的 , 就是隔離變壓器起到了保護(hù)作用 。

文章插圖
發(fā)送數(shù)據(jù)時,網(wǎng)卡首先偵聽介質(zhì)上是否有載波(載波由電壓指示),如果有 , 則認(rèn)為其他站點正在傳送信息,繼續(xù)偵聽介質(zhì) 。一旦通信介質(zhì)在一定時間段內(nèi)(稱為幀間縫隙IFG=9.6微秒)是安靜的,即沒有被其他站點占用 , 則開始進(jìn)行幀數(shù)據(jù)發(fā)送,同時繼續(xù)偵聽通信介質(zhì),以檢測沖突 。在發(fā)送數(shù)據(jù)期間,如果檢測到?jīng)_突,則立即停止該次發(fā)送,并向介質(zhì)發(fā)送一個“阻塞”信號,告知其他站點已經(jīng)發(fā)生沖突 , 從而丟棄那些可能一直在接收的受到損壞的幀數(shù)據(jù),并等待一段隨機(jī)時間(CSMA/CD確定等待時間的算法是二進(jìn)制指數(shù)退避算法) 。在等待一段隨機(jī)時間后,再進(jìn)行新的發(fā)送 。如果重傳多次后(大于16次)仍發(fā)生沖突,就放棄發(fā)送 。
接收時,網(wǎng)卡瀏覽介質(zhì)上傳輸?shù)拿總€?。?如果其長度小于64字節(jié),則認(rèn)為是沖突碎片 。如果接收到的幀不是沖突碎片且目的地址是本地地址,則對幀進(jìn)行完整性校驗,如果幀長度大于1518字節(jié)(稱為超長幀,可能由錯誤的LAN驅(qū)動程序或干擾造成)或未能通過CRC校驗 , 則認(rèn)為該幀發(fā)生了畸變 。通過校驗的幀被認(rèn)為是有效的,網(wǎng)卡將它接收下來進(jìn)行本地處理 。
了解更多:***/?&=nb
- 統(tǒng)籌是什么意思 醫(yī)保統(tǒng)籌是什么意思
- 床上的小黑蟲是什么蟲 床上的小黑蟲介紹
- 雪蓮花的功效
- 城之內(nèi)幸運(yùn)眷顧技能怎么獲得,動物大聯(lián)盟幸運(yùn)女神的眷顧怎么搭配
- 四物湯是哪四物,”四物”是指那四物?效果真的有那么好嗎?
- 中華柱是什么顏色的 關(guān)于中華柱的顏色介紹
- 壞人的經(jīng)典語句 有關(guān)壞人的經(jīng)典名言
- 瑾字取名的寓意是什么 瑾字可以取哪些名字
- 指甲脫落是什么原因 指甲脫落是什么原因引起的
- 馬踏飛燕是什么朝代的,馬踏飛燕是哪個朝代的人建造的?
