1. 局域網和以太網的區別和聯系
局域網:就是學校里面、各個大的公司里,自己組件的一個小型網絡。
以太網:以太網(Ethernet)指的是由Xerox公司創建並由Xerox、Intel和DEC公司聯合開發的基帶局域網規范,是當今現有局域網采用的最通用的通信協議標准。以太網絡使用CSMA/CD(載波監聽多路訪問及沖突檢測)技術,並以10M/S的速率運行在多種類型的電纜上。
聯系:是以太網就一定是局域網,但是局域網不一定就是以太網。以太網是一個規范,而大多數局域網都使用這個規范。
1.1 以太網常用的拓撲結構
(1)星狀
星型拓撲是由中央結點為中心與各結點連接組成,各結點與中央結點通過點到點的方式連接。中央結點執行集中式通信控制策略,所以中央結點的負荷很重!
在星型網中任何兩個結點進行通信必須經過中央結點的控制,所以中央結點的主要功能有三項:
1)為需要通信的設備建立物理連接;
當要求通信的結點發出通信請求后,控制器要檢查中央結點是否有空閑的通路、被叫設備空閑等等工作,從而決定是否建立雙發的物理連接。
2)在兩台設備通信過程中維持物理連接通路。
3)當通信完成或建立通信不成功要求拆線時,中央結點控制器能拆除通路。
星型拓撲特點:傳輸速度快,並且網絡構形簡單、建網容易、便於控制和管理。
但是,網絡可靠性低,網絡共享能力差,並且一旦中心節點出現故障則導致全網癱瘓。線路利用率不高!中央結點負荷重!
目前多采用HUB的連接方式。HUB起到信號的再生和轉發功能,其諸多端口之間電路上相互獨立,某端口的故障不會影響到其他端口。
HUB也可用到其它類型的布局方式!
(2)樹形
樹形結構網絡是天然的分級結構,又被稱為分級的集中式網絡。
特點:網絡成本低,結構比較簡單。在網絡中,任意兩個節點之間不產生回路,每個鏈路都支持雙向傳輸,並且,網絡中節點擴充方便、靈活,尋查鏈路路徑比較簡單。
但在這種結構網絡系統中,除葉節點及其相連的鏈路外,任何一個工作站或鏈路產生故障會影響整個網絡系統的正常運行。
3)總線型
用一條稱為總線的中央主電纜將相互之間以線性方式連接的工作站連接起來,這種網絡拓撲方式稱為總線布局;
由於網絡上的微機都通過相應的硬件接口直接連在總線上,任何一個結點的信息都可以沿總線向兩個方向傳輸拓展,並且能被總線中任何一個結點所接收!
總線上傳輸信息通常以基帶形式串行傳遞,每個結點的網絡接口板硬件均具有收、發功能:接收器負責收總線上的串行信息並將其轉換為並行信息送到微機工作站,發送器將並行信息轉換為串行信息廣播發送到總線上。
當總線上發送信息的地址與某結點的接口地址相符合時,該結點的接收器便接收信息。
總線具有一定的負載能力,故總線長度有一定的限制,一條總線也只能連接一定數量的結點。
總線布局特點:結構簡單靈活便於擴展、可靠性高、網絡響應速度快、設備量少、價格低、安裝使用方便、共享資源能力強;
注意:由於總線布局中的結點共享一條傳輸鏈路,一次只允許一個站發送信息,所以需要一種存取控制方式來管理網絡!
4)環形
環形結構是網絡中各節點通過一條首尾相連的通信鏈路連接起來的一個閉合環形結構網。環形結構網絡的結構也比較簡單,系統中各工作站地位相等。
系統中通信設備和線路比較節省。在網中信息設有固定方向單向流動,兩個工作站節點之間僅有一條通路,系統中無信道選擇問題;某個結點的故障將導致物理癱瘓。
環網中,由於環路是封閉的,所以不便於擴充,系統響應延時長,且信息傳輸效率相對較低。
2. CSMA/CD協議(半雙工通信)
局域網是用廣播信道的方式去傳送數據。若在局域網內有兩個pc機同時在其中傳播數據,就會發生碰撞,使兩個數據都失效,因此使用CSMA/CD協議來解決這類問題。
2.1 概述
1)多址接入
一種多址接入協議,許多站點以多址接入的方式鏈接在一根總線上,其實就是局域網中總線網這種形式。
2)載波監聽
發送前監聽,就是在發送數據前監聽總線中是否有數據在傳播,如果有就不發送。就是用電子技術檢測總線上有沒有其他計算機發送的數據信號。
3)碰撞檢測
邊發送邊監聽,在發送數據的中途也會監聽總線中是否會有其它數據,當幾個站同時在總線上發送數據時,總線上的信號電壓擺動值將會增大(互相疊加)。
當一個站檢測到的信號電壓擺動值超過一定的門限值時,就認為總線上至少有兩個站同時在發送數據,表明產生了碰撞。所謂“碰撞”就是發生了沖突。因此“碰撞檢測”也稱為“沖突檢測”
檢測到碰撞之后:
在發生碰撞時,總線上傳輸的信號產生了嚴重的失真,無法從中恢復出有用的信息來。
每一個正在發送數據的站,一旦發現總線上出現了碰撞,就要立即停止發送,免得繼續浪費網絡資源,然后等待一段隨機時間后再次發送。
通過例子也說明一下CSMA/CD協議會做哪些事情,借用下面這個圖來說明問題
分析:
第一步:B向D發送數據,在發送數據前,由於采用的CSMA/CD協議,那么先會進行載波監聽,看總線中是否有其他的數據傳輸(如果檢測,通過物理層的一些電磁波等)。
第二步:如果沒有,那么B就可以開始發送數據;由於B到D之間存在一定距離,在總線中傳輸數據需要時間,雖然很快,可能只需要十幾微秒;在發送的途中,遇到C向A發送數據,由於B到D的數據還沒傳過來,那么C也就沒監聽到總線中有數據,所以也開始發,那么在途中兩個數據就會相遇,這就形成了碰撞;在碰撞以后,兩個電磁波疊加,在總線中傳輸,在回到C或者B時,就會知道電磁波的不同,從而發生了碰撞。這就是碰撞檢測。
2.2 詳細描述
1)解釋名詞
傳播延時:
爭用期:發生碰撞所需要的最遲時間。A到B之間的任意時刻都可能會發生碰撞,那么A確認發生碰撞要2t時間,傳播時延是t;或者可能正好到B那里就發生碰撞,然后返回到A,又需要t的時間,總時間為2t;因此我們把這個2t時間就叫做爭用期。
舉例:在10Mb/s(傳播速率)的以太網,爭用期為51.2μs(微秒),那么在爭用期內可發送64字節,及512bit的數據。怎么算來的呢?
10Mb/s=10000Kb/s=10000000b/s(這里的換算是1000,指的是計算機網絡中傳輸的多少位多少位,也就是0101這樣的位數);
51.2μs=0.0512ms=0.0000512s(1s=1000ms=1000000μs);
51.2μs能傳多少bit呢?上面兩個相乘就為512bit了,換算為字節,字節的換算是1byte(字節)=8bit(位)所以512/8=64byte(字節)就這樣算過來的。
最短有效幀:64字節;即發送64個字節之后,肯定就不會發生碰撞;因此以太網規定最短有效幀長為64字節,凡長度小於64字節的幀都是由於沖突而異常中止的無效幀。
2)二進制指數類型退避算法
這個算法就是在發生碰撞后,pc機該如何處理,在什么時間后再次發送數據。
其實就是四部曲:
第一步:確定基本退避時間,一般就是爭用期2t;
第二步:定義參數k:K=Min[重傳次數,10];
第三步:從整數集合中 [0,1,...,(2的k次方-1)]隨機取一個數,記為r,重傳所需要等待的時延就是r倍的基本退避時間(r*2t);
第四步:當重傳16次還不能成功則丟棄該幀,並向高層匯報。
解釋:首先第一次傳數據,重傳次數為0,那么k=0,從整數集合中只有0這個值,那么r=0,等待的時延就是r*2t=0,所以第一次傳數據需要等待的時延就是0;
不需要等待,除非先檢測到有數據已經在傳;如果第一次傳數據發現碰撞,重傳次數為1,那么k=1,整數集合中就有0,1兩個值,隨機取值,取到r=1,那么等待的時延就是2t,意思就是在第一次發生碰撞后,需要等待2t的時間,才能在重新發送數據,也可能不需要等就直接發,r=0時。
2.3 以太網信道利用率問題
分析圖:
分析:一個幀從開始發送,經可能發生的碰撞后,將再重傳數次,到發送成功(發送成功這段時間T0是指數據的發送時延,幀長為L(bit),數據發送速率為C(b/s),因而幀的發送時間為L/C=T0(s));
幀發出去以后,要經過端到端的傳播時延τ,真正占用信道的時間是TO+τ;前面發生的碰撞損耗的時間,數據並沒有占用信道,都是在浪費信道;真正占用信道的時間是指數據發送成功且不發生碰撞到達目的地的這段時間;
每發送一幀需要的平均時間:信道中發生碰撞浪費的時間+數據傳輸成功所用的占用期。
公式和參數a(信道利用率)的理解:
首先理解一下信道利用率,借用上面的圖,就是占用期在其圖中的比例越大,則信道利用率越高。但是不確定前面發生多少次碰撞,只是一個平均的估算值,所以就定義a的公式,用τ/T0來代表信道利用率。
1)a→0表示一發生碰撞就立即可以檢測出來,並立即停止發送,因而信道利用率很高。
a→0,即τ越小,而T0越大;即發送時延盡可能大一點,而t傳播時延盡可能小一點;現實意義就是數據在在信道中傳播的時間如果很小很小,數據一發送,就能在很少的時間里面檢測出碰撞來,那么花費在爭用期(發生碰撞)的時間就少,成功發送數據占的時間就長了,信道的利用率就很高。
2)a越大,表明爭用期所占的比例增大,每發生一次碰撞就浪費許多信道資源,使得信道利用率明顯降低。即T0越小,而r很大,那發生一次碰撞就浪費很多信道資源,因為在信道中傳輸無用的波占的時間太長。因此成功發送的占用期自然就變小,所以信道利用率就越低。
根據上面的分析信道利用率,就發現,影響信道利用率的就跟T0和τ有關,也就是跟以太網的連線長度有關,所以在以太網中,有最遠距離的限制,就是不能讓τ太大,以至於a很大,信道利用率太低;還有發送的幀長也有最小幀長的限制,因為怕發送的數據幀太短,而發送速率就一定,那么發送時延T0就太小,會讓a的值越大,信道利用率就太低。
2.4 最大信道利用率
理想的情況下就是不發生碰撞,一發送完數據,另一個數據就又發送,也就是一有空閑時間,就發送數據。這個時候信道利用率是否是就是100%?錯誤!!!
對CSMA/CD協議的討論,大致到此。前面討論的前提是已經知道誰發送給誰了,然后說的數據在傳播過程中遇到的問題。
3. PC機與PC機怎么找到對方
MAC地址用來識別數據鏈路層中相連的節點;
網卡––每一個網絡出廠時會刻錄上一個實際的、唯一個MAC地址。
MAC地址的格式:
48bit,6個字節。一般用16進制數字加上冒號的形式來表示(例如:08:00:27:03:fb:19);
前3個字節是廠商編碼(管理機構配置),后3個字節是流水編號(廠家自配);
每個網卡都擁有識別數據幀中mac地址的功能;且是在網卡出廠時就已確定,不能修改;
mac地址通常是唯一的(虛擬機中的mac地址不是真實的mac地址,可能會沖突;也有些網卡支持用戶配置mac地址).
數據幀格式:
在以太網中,發送的數據幀最小要是64個字節:6個目的MAC地址,6個源MAC地址,2個字節代表數據包的類型,還有4個字節是FCS,用來進行CRC算法檢測的,剩下的46個字節就是數據包最少要發送的字節數,如果數據包實際發的少於46,那么會給這個數據包自動補充0,來達到需要的字節數。
插入8字節:前7個字節用來使發送的數據幀的的比特同步,也叫作前同步碼,最后一個字節,幀的開始定界符,也就是告訴接收方,從這個字節開始,后面是是MAC幀。
前同步碼存在原因:在接受MAC幀后,並不能馬上識別出幀開始定界符,沒有那么快的反應分辨出來,所以需要在前面加同步碼,使接收方有反應的時間;所有同步碼都是1010101010101這樣的bit。前7個字節的同步碼跟最后一個字節中的前6個bit位相同。
4. 高速以太網
從最早的使用集線器連接的以太網(CSMA/CD,半雙工,10Mb/s)到使用網橋階段的擴展以太網(CSMA/CD,半雙工,10Mb/s或100Mb/s)到現在的高速以太網(半雙工/全雙工通信)。
4.1 高速以太網
10BASE-T是傳送基帶信號的雙絞線以太網,T表示采用雙絞線,現10BASE-T采用的是無屏蔽雙絞線(UTP),傳輸速率是10Mb/s。
在雙絞線上傳送100Mb/s基帶信號的星型拓撲以太網,仍使用EEE802.3的CSMA/CD協議。支持全雙工和半雙工,可在全雙工方式下工作而無沖突。
速率≥100Mb/s的以太網稱為高速以太網。
傳輸距離增長;因為光纖(傳輸過程的穩定性),速率增強,且不局限於局域網,擴展有城域網,廣域網。
4.2 吉比特(Gb/s)以太網
(1)吉比特以太網
在光纖或雙絞線上傳送1Gb/s信號。支持全雙工和半雙工,可在全雙工方式下工作而無沖突。
(2)10吉比特以太網
與10Mb/s,100Mb/s和1Gb/s以太網的幀格式完全相同。
在光纖上傳送10Gb/s信號。只工作在全雙工方式,因此沒有爭用問題,也不使用CSMA/CD協議。
保留了802.3標准規定的以太網最小和最大幀長,便於升級。也就是最小64字節,最大是多少不知道。
不再使用銅線而只使用光纖作為傳輸媒體。
優點:
成熟的技術
互操作性很好
在廣域網中使用以太網時價格便宜。
統一的幀格式簡化了操作和管理