第二章 TCP/IP 基礎知識
?
TCP/IP ?transmission control protocol and ip internet protocol 是互聯網眾多通信協議中最為著名的。
?
2.2 TCP/IP 的標準化
2.2.2 TCP/IP 標準化精髓
TCP/IP 協議始終具有很強的實用性。
相比于TCP/IP ,OSI 之所以未能達到普及,主要原因在于未能盡早的制定可行性較強的協議、未能提出應對技術快速更新的協議以及沒有能及時進行后期的改良的方案。
2.2.3 TCP/IP 規范 ——RFC
那些需要標準化的協議,被人們列為RFC (Request For Comment)文檔并在互聯網上公布。RFC不僅記錄了協議規范內容,還包含了協議的實現和運用的相關信息,以及實驗方面的信息。
?
2.3 互聯網基礎知識
互聯網與TCP/IP 的關系
互聯網的協議就是TCP/IP ,TCP/IP 就是互聯網協議
2.3.3 互聯網的結構
互聯網中的每個網絡都是由骨干網(BackBone)和末端網(Stub)組成的。每個網絡之間通過NOC network opeartion center 相連。如果網絡的運營商不同,它的網絡連接方式和使用方法也會不同。連接這種異構網絡需要IX 的支持 internet
?exchange 網絡交換中心 。總之互聯網就是眾多異構的網絡通過IX 互聯的一個巨型網絡。
?
?
?
2.4 TCP/IP 協議分層模型
?
2.4.4 互聯網層? 網絡層
?
IP ? 是跨越網絡傳送數據包,使整個互聯網 都能收到數據的協議。IP協議使數據能夠發送到地球的另一端這期間它使用IP地址作為主機的標識。
ICMP?
IP數據包在發送途中一旦發生異常導致無法到達對端目標地址時,需要給發送端發送一個發生異常的通知。ICMP就是為這一功能而指定的。它有時也被用來診斷網絡的健康狀況。
ARP?
從分組數據包的IP地址中解析出物理地址MAC地址的一種協議。
2.4.5? 傳輸層
傳輸層最主要的功能就是嫩鞏固讓應用程序之間實現通信。計算機內部,通常同一時間運行著多個程序。為此,必須分清是那些程序與哪些程序在進行通信。識別這些應用程序的是端口號。
TCP
TCP是一種面向有鏈接的傳輸層協議。他可以保證兩端通信主機之間的通信可達。TCP 能夠正確處理在傳輸過程中丟包、傳輸順序亂掉等異常情況。此外TCP還能夠有效利用帶寬,緩解網絡擁堵。
為了建立與斷開鏈接,有時需要至少7次的發包收包,導致網絡流量的浪費。
UDP?
面向無連接的傳輸層協議。UDP 不會關注對端是否真的收到了傳送過去的數據,如果需要見擦汗對端是否收到分組數據包,或者對端首付連接到網絡,則需要在應用程序中實現。
?
2.5 TCP /IP 分層模型與通信示例
2.5.1 數據包首部
包、幀、數據報、段、消息
包可以說是全能性術語。幀用于表示數據鏈路層中包的單位。而數據報是IP和UDP等網絡層以上的分層中包的單位。段則表示TCP數據流的信息。最后,消息是指應用協議中數據的單位。
在數據包的首部,明確標明了協議應該如何讀取數據。反過來,看到首部也就能夠了解協議必要的信息以及所要處理內容。因此看到包首部就如同看到協議的規范。 首部就像是協議 的臉。
2.5.3 經過數據鏈路的包
分組數據包 經過以太網的數據鏈路時如圖
?
?
第三章?
數據鏈路
3.1 數據鏈路的作用
3.2.1 MAC 地址
MAC 地址用于識別 數據鏈路中互連的節點。
3.2.2 共享介質網絡
共享介質網絡指由多個設備共享一個通信介質的一種網絡。設備之間使用同一個載波信道進行發送和接受。。為此,基本采用半雙工通信,并有必要對介質進行訪問控制。
共享介質網絡有兩種介質訪問控制方式 :一種是爭用方式,另一種是令牌傳遞方式
爭用方式 是指爭奪獲取數據傳輸的權利 也叫CSMA 載波監聽多路訪問 。這種方式通常令網絡中的各個站采用先到先得的方式占用信道發送數據,如果多個站同時發送幀,則會產生沖突現象。也因此會導致網絡擁堵與性能下降。
在一部分以太網上,采用了改良的CSMA的另一種方式CSMA/CD 方式 。CSMA/CD 要求每個站提前見檢查沖突,一旦發生沖突,則盡早釋放信道。carrier sense multiple access with collision detection .
?
令牌傳遞方式
令牌傳遞方式是沿著令牌環發送一種叫做令牌的特殊報文,是控制傳輸的一種方式。只有獲得令牌的站才能發送數據。這種方式有兩個特點:一是不會有沖突,二是每個站都有通過平等循環獲得兩排的機會。
3.2.3 非共享介質網絡
非共享介質網絡是指不共享介質,是對介質采取專用的一種傳輸控制方式。
網絡中的每個站直連交換機,由交換機負責轉發數據幀。此方式下,發送端與接收端并不共享通信介質,因此很多情況下采用全雙工通信方式。
?
3.2.5 環路檢測技術
通過網橋連接網絡時,一旦出現環路該如何處理?這與網絡的拓撲結構和所使用的網橋種類有直接關系。最壞的情況下,數據幀會在環路中被一而再再而三的持續轉發。而一旦這種數據幀越積越多將會導致網絡癱瘓。
為此,有必要解決網絡中的環路問題。具體有生成樹與源路由兩種方式。
生成樹方式
?
每個網橋必須在每1~10秒內相互交換BPDU birdge protocol data unit 包,從而判斷哪些端口使用哪些不適用,以便消除環路。一旦發生故障,則自動切換通信線路,利用哪些沒有被使用的端口繼續進行傳輸。
?
以某一網橋為構造樹的根,并對每個端口設置權重。這一權重可以由網絡管理員適當的設置,指定優先使用哪些端口以及發生問題時該使用哪些端口。
生成樹發其實語計算機和路由器的功能沒有關系,但是只要有生成樹的功能就足以消除環路。
IEEE802.1 D中所定義的生成樹方法有一個弊端,就是在發生故障切換網絡時需要幾十秒。為了解決這個用時過長的問題,在IEEE 802.1W中定義了一個叫RSTPrapid spanning tree protocl 的方法。
源路由法?
源路由判斷發送數據的源地址是通過那個網橋實現傳輸的,并將幀寫入RIF (Routing information field )。網橋則根據這個RIF 信息發送幀給目標地址。因此,即使網橋中出現了環路,數據幀也不會被反復轉發,可成功的發送到目標地址。
?
?
3.2.6 VLAN?
該交換機按照其端口區分了多個網段,從而區分了廣播數據傳播的范圍、減少了網絡負載并提高了網絡的安全性。然而異構的兩個網段之間,就需要利用具有路由功能的交換機,或者在各段中間通過路由器的連接才能實現通信。
對這種VLAN 進行了擴展,定義了IEEE 802.1Q的標準,該標準允許包含跨越異構交換機的網段。TAG VLAN ID 的標簽進行唯一標識。在交換機中傳輸幀時,在以太網首部加入這個VID標簽,根據這個值將數據幀發送給哪個網段。
3.3 以太網?
在眾多鏈路中最為著名,使用最為廣泛的是以太網。它的規范簡單,易于NIC網卡及驅動程序實現。
3.3.1 以太網連接形式
3.3.2 以太網的分類
3.3.4 以太網的幀格式?
以太網幀前端有一個叫做前導碼preamble的部分,它由0、1數字交替組合而成,表示一個以太網的開始,也是對端網卡能夠確保與其同步的標志。前導碼末尾是一個叫做SFD Start frame delimiter的域,它的值是11.在這個域之后就是以太網的本體。前導碼與SFD 合起來占8個字節。
以太網本體的前端是以太網的首部,它總共占14個字節。分別是6個字節的目標MAC地址、6個字節的源MAC 地址以及2個字節的上層協議類型。
?
緊隨幀頭后面的是數據。一個數據幀所能容納的最大數據范圍是46~1500個字節。幀尾是一個叫做FCS frame check sequence 幀檢驗序列 的四個字節。
類型通常跟數據一起傳送,它包含用以標識協議類型的編號,即比哦啊名以太網的再上一層網絡協議的類型。
幀尾最后出現的是FCS。用它可以檢查幀是否有所損壞。
?
FCS 中保存著整個幀除以生成多項式的余數。在接收端也用同樣的方式計算,如果得到的FCS的值相同,就判斷所接受的幀沒有差錯。
?
帶有VLAN標記的交換機之間流動的以太網幀格式
?
數據鏈路層分為兩層
如果再進一步細分,還可以將數據鏈路層分為介質訪問控制層和邏輯鏈路控制層
介質訪問控制層 根據以太網或FDDI等不同數據鏈路所特有的首部信息進行控制。與之相比,邏輯鏈路層則根據以太網或FDDI等不同數據鏈路所共有的幀頭信息進行控制。
?
3.4 無線通信
無線通信通常使用電磁波、紅外線、激光等方式進行傳播數據。一般在辦公室的局域網內組成的較高速的連接稱為無線局域網
3.4.1 無線通信的種類?
無線PAN personal area network?
無線Lan local area network 802.11?
無線MAN metropolitan area network 802.16?
無線RAN regional area network 802.22等無線標準
無線WAN wide area network 的最典型就是手機通信。
?
3.4.2 IEEE 802.11
定義了無線LAN協議中物理層與數據鏈路層的一部分(MAC)。
作為一種通信方式,IEEE 802.11 在物理層上使用電磁波或紅外線,通信速度為1Mpbs或2Mbps。現在已經基本無人使用了。
?
3.4.6 使用無線LAN 時的注意事項
3.4.7 藍牙
?
3.5PPP?
3.5.1 ppp定義
Point to point protocol PPP 指點對點,即1對1 連接計算機的協議。PPP相當于位于OSI參考模型第二層的數據鏈路層
PPP可以使用電話線或ISDN、專線、ATM線路 。人們更多的是在用ADSL或有線電視通過PPPo? Etry 實現互聯網接入。
PPPoE? PPP over ethernet?
僅有PPP無法實現通信,還需要有物理層的支持。
3.5.2 LCP 與NCP?
?
在PPP的主要功能有兩個協議:一個是不依賴上層的LCP 協議(Link control protocol ),另一個是依賴上層的NCP 協議(Network control protocol)
如果上層 為IP,此時的NCP也叫做IPCP ip control protocol?
通過PPP連接 ,通常需要進行用戶名密碼的驗證,并且對通信兩端進行雙方向的驗證。
3.5.3 PPP的幀格式
PPP 的數據幀格式
HDLC就是在每個幀的前后加上一個8位字節 "01111110"用來區分幀。這一個8位字節叫做標志碼。在兩個標志碼中間不允許出現連續6個以上的1。
在通過電腦進行撥號時,PPP已在軟件中實現。因此,那些插入或刪除0的操作或FCS 計算都交由電腦的CPU去處理。這也是為什么人們常說PPP這種方式會給計算機帶來大量負荷的原因所在。
3.5.4 PPPoE?
有些互聯網接入服務商在以太網上利用PPPoE? PPP over ethernet 提供PPP功能。
?
單純的以太網沒有驗證能力,也沒有建立和斷開連接的處理,因此無法按時計費。
而才喲個PPPoE管理以太網連接,就可以利用PPP的驗證等功能使各家ISP 可以有效的管理終端用戶的使用。
3.6? 其他數據鏈路
ATM asynchronous transfer mode 是以一個叫做信元 的單位進行傳輸的數據鏈路,由于其線路占用時間段和能夠高效傳輸大容量數據等特點主要用于廣域網的連接。
ATM的特點?
3.6.13 高速PLC
高速PLC 是指在家里或辦公室內利用電力線上傳MHz~數十MHz 頻帶范圍,實現通信方式。使用電力線不用重新布線,也能進行日常生活以及家電設備或辦公設備的控制。然而,本不是為通信目的而設計的電力線在傳輸高頻信號時,極容易收到電波干擾,一般僅限于市內使用。
3.7 VPN
虛擬專用網絡用于連接距離較遠的地域。這種服務包括IP-VPN和廣域以太網
IP-VPN?
?
在IP網絡上建立VPN
網絡服務商提供一種在IP網絡上使用MPLS技術構建VPN的服務。其中MPLS(Multiprotocol Label Switching? 多協議標簽交換 )在IP包種附加一個驕傲做標簽(Label)的信息進行傳輸控制。每個用戶的標簽信息不同,因此在通過MPLS網時,可以輕松的判斷出目標地址。這樣一來就可以將多個不同用戶的VPN信息 通過MPLS 網加以區分,形成封閉的私有網絡。還能進行用戶級的帶寬控制。
除了使用服務提供商 的IP -VPN 服務之外,有時企業還可以在互聯網上建立自己的VPN,一般采用的是IPsec技術。該方法對VPN通信中的IP包進行驗證和加密,在互聯網上構造一個封閉的私有網絡。雖然這種方式可以利用價格低廉的互聯網通信線路,并且還可以根據自己的情況對數據進行不同級別的加密,但是有時會收到網絡擁堵的影響。
廣域以太網
廣域以太網 則是作為數據鏈路層的以太網上利用VLAN 實現VPN的技術。該技術還可以使用TCP/IP 中的其他協議。
?