大家都知道計算機(jī)里面存儲的是一堆01組成的二進(jìn)制代碼,那么計算機(jī)是怎樣把這些數(shù)字信號傳輸出去的呢?
計算機(jī)只有一根網(wǎng)線是和外界相連的,而和網(wǎng)線連接的地方叫做網(wǎng)卡,而網(wǎng)卡的作用就是把計算機(jī)的數(shù)字信號轉(zhuǎn)換成光電信號發(fā)送出去。要想知道計算機(jī)是如何傳輸數(shù)據(jù)的首先要了解的是網(wǎng)卡的工作原理。
計算機(jī)生成的數(shù)據(jù)包只是存放在內(nèi)存中的一串?dāng)?shù)字信息,沒有辦法直接發(fā)送給對方。因此,我們要將數(shù)字信息轉(zhuǎn)換為電或者光信號,才能在網(wǎng)線或者光纖上傳輸。
負(fù)責(zé)這個轉(zhuǎn)換工作的設(shè)備叫網(wǎng)卡,但是網(wǎng)卡是無法單獨(dú)工作的,要控制網(wǎng)卡還需要網(wǎng)卡驅(qū)動程序,想必大家新買的電腦第一件事肯定是裝系統(tǒng),然后是裝驅(qū)動,這里的驅(qū)動就包含了網(wǎng)卡,顯卡,鍵盤,鼠標(biāo)的驅(qū)動等。如果沒有網(wǎng)卡驅(qū)動,網(wǎng)卡是工作不了的,也就是上不了網(wǎng)了,同樣沒有顯卡啟動,你的電腦也就顯示不了東西。
不同廠商的網(wǎng)卡在結(jié)構(gòu)上有所不同,因此網(wǎng)卡的驅(qū)動程序也是由各大網(wǎng)卡廠商開發(fā)的專門的應(yīng)用程序。
網(wǎng)卡的內(nèi)部結(jié)構(gòu)如下圖:

網(wǎng)卡并不是通電后就開始工作的,而是和其他硬件一樣需要初始化,計算機(jī)啟動操作系統(tǒng)后,網(wǎng)卡驅(qū)動程序會對硬件進(jìn)行初始化,然后網(wǎng)卡才能進(jìn)入工作狀態(tài)。
網(wǎng)卡的內(nèi)部存儲著全世界唯一的地址叫做MAC地址,這是在生產(chǎn)網(wǎng)卡的時候?qū)懭氲模@個地址不能被修改,因?yàn)樗菍懺?a href="http://www.3532n.com/tags/rom/" target="_blank">ROM當(dāng)中的,ROM是只讀存儲器,但是可以在Windows系統(tǒng)里面被模擬修改成其他MAC地址。
網(wǎng)卡中的保存的MAC地址會由網(wǎng)卡驅(qū)動程序讀取并分配給MAC模塊,網(wǎng)卡驅(qū)動從IP模塊獲取數(shù)據(jù)包后,會將其復(fù)制到網(wǎng)卡內(nèi)的緩沖區(qū)中,然后MAC模塊會將數(shù)據(jù)包從緩沖區(qū)取出,并在開頭加上報頭和起始幀分界符,在末尾加上用于檢測錯誤的幀校驗(yàn)系列如下圖:

報頭是一串像10101010…這樣 1 和 0 交替出現(xiàn)的比特序列,長度為 56 比特,它的作用是確定包的讀取時機(jī)。
當(dāng)這些 1010 的比特序列被轉(zhuǎn)換成電信號后,會形成如下圖這樣的波形。接收方在收到信號時,遇到這樣的波形就可以判斷讀取數(shù)據(jù)的時機(jī)。

用電信號來表達(dá)數(shù)字信息時,我們需要讓 0 和 1 兩種比特分別對應(yīng)特定的電壓和電流,例如下圖這樣的電信號就可以表達(dá)數(shù)字信息。

通過電信號來讀取數(shù)據(jù)的過程就是將這種對應(yīng)關(guān)系顛倒過來。也就是說,通過測量信號中的電壓和電流變化,還原出 0 和 1 兩種比特的值。
加上一系列報頭等數(shù)據(jù)之后,我們就可以將數(shù)據(jù)包通過網(wǎng)線發(fā)送出去了,發(fā)送信號的操作分為2種,一種是使用集線器的半雙工模式,另一種是使用交換機(jī)的全雙工模式。
什么是半雙工?什么是全雙工?半雙工就是同一時間只能一方發(fā)送一方接收。而全雙工,收發(fā)雙方可以同時發(fā)送數(shù)據(jù)。
然后MAC 模塊從報頭開始將數(shù)字信息按每個比特轉(zhuǎn)換成電信號,由 PHY, 或者叫 MAU 的信號收發(fā)模塊發(fā)送出去。在這里,將數(shù)字信息轉(zhuǎn)換為電信的速率就是網(wǎng)絡(luò)的傳輸速率,例如每秒將 10 Mbit 的數(shù)字信息轉(zhuǎn)換為電信號發(fā)送出去,則速率就是 10 Mbit/s。
接下來,PHY(MAU)模塊會將信號轉(zhuǎn)換為可在網(wǎng)線上傳輸?shù)母袷剑?并通過網(wǎng)線發(fā)送出去。
以太網(wǎng)規(guī)格中對不同的網(wǎng)線類型和速率以及其對應(yīng)的信號格式進(jìn)行了規(guī)定,但 MAC 模塊并不關(guān)心這些區(qū)別,而是將可轉(zhuǎn)換為任意格式的通用信號發(fā)送給 PHY(MAU)模塊,然后 PHY(MAU)模塊再將其轉(zhuǎn)換為可在網(wǎng)線上傳輸?shù)母袷健?/p>
網(wǎng)卡將包轉(zhuǎn)換為電信號并發(fā)送出去的過程到這里就結(jié)束了,有興趣深入了解的同學(xué)請關(guān)注我。
原文標(biāo)題:計算機(jī)是怎樣把數(shù)據(jù)通過網(wǎng)線傳輸出去的?
文章出處:【微信公眾號:一口Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
計算機(jī)
+關(guān)注
關(guān)注
19文章
7807瀏覽量
93202 -
網(wǎng)卡
+關(guān)注
關(guān)注
4文章
339瀏覽量
28908 -
傳輸數(shù)據(jù)
+關(guān)注
關(guān)注
1文章
128瀏覽量
16505
原文標(biāo)題:計算機(jī)是怎樣把數(shù)據(jù)通過網(wǎng)線傳輸出去的?
文章出處:【微信號:yikoulinux,微信公眾號:一口Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
工業(yè)邊緣計算機(jī)是什么?有什么功能?
龍芯主板讓工控計算機(jī)擁有安全可信的核心
上海計算機(jī)視覺企業(yè)行學(xué)術(shù)沙龍走進(jìn)西井科技
工控機(jī)與普通計算機(jī)的核心差異解析
【作品合集】賽昉科技VisionFive 2單板計算機(jī)開發(fā)板測評
工業(yè)計算機(jī)的重要性
CYUSB3014在不關(guān)機(jī)的情況下用USB 2.0的線連接電腦,計算機(jī)無法識別FX3,這種情況正常嗎?
自動化計算機(jī)經(jīng)過加固后有什么好處?
自動化計算機(jī)的功能與用途
工業(yè)計算機(jī)與商用計算機(jī)的區(qū)別有哪些
一文帶你了解什么是機(jī)器視覺網(wǎng)卡
NVIDIA技術(shù)賦能歐洲最快超級計算機(jī)JUPITER
一文帶你了解工業(yè)計算機(jī)尺寸
計算機(jī)網(wǎng)絡(luò)入門指南
NVIDIA 宣布推出 DGX Spark 個人 AI 計算機(jī)
計算機(jī)如何傳輸數(shù)據(jù) 網(wǎng)卡的工作原理
評論