1. 程式人生 > >《計算機網路-第六版》學習筆記

《計算機網路-第六版》學習筆記

本學習筆記僅供個人學習研究使用

第一章 概述

(1)       計算機網路向用戶提供的最重要的功能有兩個,即:連通性和共享。

(2)       網路把許多計算機連線在一起,而因特網把許多網路連線在一起。

(3)       因特網交換點IXP的主要作用是允許兩個網路直接相連並交換分組,而不需要通過第三個網路來轉發分組。

(4)       因特網從工作方式上看可以分為邊緣部分和核心部分:

(5)       處在因特網邊緣的部分就是連線在因特網上所有的主機,又稱端系統,通訊方式可以劃分為C/S方式(客戶-伺服器方式)和P2P方式(對等方式)。兩者區別在於在對等連線中的每一個主機即是客戶又同時是伺服器。

(6)       網路核心部分為邊緣部分大量主機提供連通性。有三種資料交換方式:電路交換——整個報文的位元流連續地從源點直達終點;報文交換——整個報文先傳送到相鄰結點,分組交換——單個分組(報文的一部分)傳送到相鄰結點,全部儲存下來後查詢轉發表,轉發到下一個結點。後兩者提高了網路通道利用率,時延小,同時也具有更好的靈活性。

(7)       計算機網路最簡單的定義是:一些互相連線的、自治的計算機的集合。按網路作用範圍可以分為廣域網WAN、都會網路MAN、區域網LAN、個人區域網PAN。

(8)       計算機網路的效能指標有:速率、頻寬、吞吐量、時延(總時延=傳送時延+傳播時延+處理時延+排隊時延)、時延頻寬積(傳播時延*頻寬)、往返時間RTT(從傳送方傳送資料開始,到傳送方接收來自接收方的確認經歷的時間)、利用率(通道或網路利用率過高會產生非常大的時延,因為在網路結點排隊時間長)。

(9)       網路協議主要由語法、語義和同步組成。語法,即資料與控制資訊的結構或格式,語義,即需要發出何種控制資訊,完成何種動作以及做出何種響應,同步,即事件實現順序的詳細說明。

(10)    計算網路體系結構如圖。


在五層協議的體系結構中,各層主要功能有:

 

l  應用層。應用層的任務是通過應用程序間的互動來完成特定網路應用。應用層協議定義的是應用程序間通訊和互動的規則。傳送的資料單元是報文。

l  運輸層。運輸層的任務就是負責向兩個主機中程序之間的通訊提供通用的資料傳輸服務。主要使用TCP和UDP協議。

l  網路層。網路層主要負責為分組交換網上的不同主機提供通訊服務。在傳送資料時,網路層把運輸層產生的報文或使用者資料報封裝成分組或包(IP資料報)進行傳送。

l  資料鏈路層。在兩個相鄰結點之間傳送資料時,資料鏈路層將網路層交下來的IP資料報組裝成幀,在兩個相鄰結點的鏈路上傳送幀。

l  物理層。物理層負責傳輸位元流。物理層規定:為傳輸資料所需要的物理鏈路建立、維持、拆除,而提供具有機械的,電子的,功能的和規範的特性。物理媒體不屬於物理層。

TCP/IP協議表示方法:

第二章 物理層


2.1 物理層的基本概念

物理層考慮的是怎樣才能在連線各種計算機的傳輸媒體上傳輸資料位元流,而不是具體的傳輸媒體。通訊方式有

·  單向通訊

·  雙向交替通訊:又稱半雙工通訊,一方傳送一方接收,過一段時間後再反過來

·  雙向同時通訊:又稱全雙工通訊,通訊的雙方可以同時傳送和接收訊息

數字訊號常用編碼方式有不歸零制,歸零制,曼徹斯特編碼,差分曼徹斯特編碼;基本的帶通調製方法有調幅AM,調頻FM,調相PM。


夏農公式指出:

 

說明通道的頻寬或通道中的信噪比越大,資訊的極限傳輸速率就越高。

2.2 物理層下面的傳輸媒體

·  


雙絞線:把兩根互相絕緣的銅導線絞合起來。可減少相鄰導線的電磁干擾,常用於電話系統。模擬傳輸和數字傳輸都可以使用雙絞線,其通訊距離一般為幾到幾十公里。遮蔽雙絞線STP,無遮蔽雙絞線UTP。

·  同軸電纜:具有很好的抗干擾特性,被廣泛用於傳輸較高速率的資料。隨著技術的進步被雙絞線取代。

·  光纜:原理是光的全反射。單模光纖像一根波導,可使光線一直向前傳播,而不會產生多次反射。多模光纖可以存在多條不同角度入射的光線在一條光纖中傳播。

·  微波接力通訊

2.3 通道複用技術

·頻分複用、時分複用

·  頻分複用FDM的所有使用者在相同的時間佔用不同的頻率頻寬資源;時分複用的所有使用者在不同的時間佔用相同的頻率頻寬資源。

·  


·  統計時分複用

使用STDM幀來傳送複用的資料。按需動態分配時隙(非同步)。要加上使用者的地址資訊。

·  波分複用

WDM,就是光的頻分複用,用同一根光纖來同時傳輸多個頻率很接近的光載波訊號。

·  碼分複用

CDM,每一個使用者可以在同樣的時間使用同樣的平臺進行通訊,由於各使用者使用經過特殊挑選的不同碼型,因此各使用者之間不會造成干擾。

2.4 寬頻接入技術

·  非對稱數字使用者線ADSL


用數字技術對現有的模擬電話使用者進行改造,使它能夠承載寬頻數字業務。ADSL在使用者線的兩端各安裝一個ADSL調變解調器,主要採用DMT離散多音調調製技術(頻分複用)。

 

ADSL是藉助於在使用者線兩端安裝的調變解調器對數字訊號進行了調製,使調製後的數字訊號的頻譜適合在原來的使用者線上傳輸,而不需要重新佈線。

·  光纖同軸混合網(HFC)網


除可傳送電視節目外,還能提供電話、資料和其他寬頻互動型業務。HFC網把原有線電視網中的同軸電纜主幹部分改換成光纖。光纖從頭端連線到光纖結點,在光纖結點光訊號被轉換為電訊號,然後通過同軸電纜傳送到每個使用者家庭。

·  FTTx技術

光纖到戶FTTH就是把光纖一直鋪設到使用者家庭,只有在光纖進入使用者的家門後,才把光訊號轉換為電訊號,這樣做就可以使使用者獲得最高的上網速率。FTTB指光纖到大樓,FTTF指光纖到樓層。

第三章 資料鏈路層

3.1 使用點對點通道的資料鏈路層

資料鏈路層把網路交下來的資料構成幀傳送到鏈路上,以及把接收到的幀中的資料取出並上交給網路層。

3.1.1 三個基本問題

l   封裝成幀:給IP資料報新增首部和尾部,用於標記幀的開始和結束。其中MTU是指幀的資料部分長度上限——最大傳送單元。

l  透明傳輸。透明表示一個實際存在的事物看起來好像不存在一樣。幀使用首部和尾部進行定界,如果幀的資料部分含有和首部尾部相同的內容,那麼幀的開始和結束位置就會被錯誤的判定。需要在資料部分出現首部尾部相同的內容前面插入轉義字元,如果出現轉義字元,那麼就在轉義字元前面再加個轉義字元,在接收端進行處理之後可以還原出原始資料。這個過程透明傳輸的內容是轉義字元,使用者察覺不到轉義字元的存在。

l  差錯檢測。在資料鏈路層廣泛使用了迴圈冗餘校驗CRC的檢錯技術。差錯分為位元差錯和傳輸差錯(幀丟失、幀重複和幀失序),使用CRC檢驗能實現無位元差錯的傳輸,但這還不是可靠傳輸。

3.2 點對點協議PPP

網際網路使用者通常需要連線到某個 ISP 之後才能接入到網際網路,PPP協議是使用者計算機和 ISP 進行通訊時所使用的資料鏈路層協議,其內容是接收方每收到一個幀,就進行CRC檢驗,如果CRC檢驗正確就收下這個幀,反之就丟棄這個幀,其他什麼也不做。

PPP協議不需要糾錯,也不需要流量控制。PPP協議只支援點對點的鏈路通訊,只支援全雙工鏈路。

LCP:鏈路控制協議,簡稱LCPLinkControl Protocol)。它是PPP協議的一個子集,在PPP通訊中,傳送端和接收端通過傳送LCP包來確定那些在資料傳輸中的必要資訊。

NCP:網路控制協議。NCP有很多種,如IPCPBCPIPv6CP,最為常用的是IPCPInternet Protocol Control Protocol)協議。NCP的主要功能是協商PPP報文的網路層引數,如IP地址,DNS Server IP地址,WINSServer IP地址等。PPPoE使用者主要通過IPCP來獲取訪問網路的IP地址或IP地址段

3.3 使用廣播通道的資料鏈路層

3.3.1 區域網的資料鏈路層

區域網按照網路拓撲可分為星形網,環形網和匯流排網

共享通道在技術上有兩種方法:(1)靜態劃分通道:頻分複用、時分複用、波分複用和碼分複用等。(2)動態媒體接入控制:隨機接入,所有使用者可隨機地傳送資訊,會產生碰撞,和受控接入使用者不能隨機發送訊息,必須服從一定的控制,如令牌環網和輪詢(polling)。

IEEE802委員會最開始把區域網 的資料鏈路層拆成兩個子層,即邏輯鏈路控制LLC子層和媒體接入控制MAC子層。與接入到傳輸媒體有關的內容都放在MAC子層,與LLC層無關。後來乙太網在區域網市場取得了壟斷地位,LLC層的作用就逐漸消失了。

計算機與外界區域網的連線是通過通訊介面卡。

CSMA/CD協議(載波監聽多點接入/碰撞檢測)

為了通訊的簡便,乙太網採取了以下兩種措施:

(1)    採用無連線的工作方式。因此乙太網提供的服務是盡最大努力的交付,即不可靠交付。雖然採用最簡單的隨機接入,但是CSMA/CD協議能協調好總線上各計算機的工作,其工作模式就像沒有會議主持人的討論會,任何人都可以隨意發言,但是不能打斷其他人,若碰巧多個人同時發言,則大家都立即停止,等待一段時間再發言。

(2)    乙太網傳送的資料都使用曼徹斯特編碼的訊號。

CSMA/CD協議的要點有:

(1)    多點接入/準備傳送。乙太網是匯流排型網路。傳送過程是:介面卡聰從網路層獲得一個分組,加上乙太網的首部和尾部組成乙太網幀,放入介面卡的快取中。乙太網美髮送完一幀,一定要把已傳送的幀暫時保留一下。

(2)    載波監聽。不管是在傳送前,還是在傳送中,每個站都必須不停地檢測通道。

(3)    碰撞檢測。 衝突檢測,邊傳送邊監聽。發生衝突後,介面卡會立即停止傳送,然後等待一段隨機時間後再次傳送。乙太網使用截斷二進位制指數退避演算法來確定碰撞後重傳的時機。若重傳達16次仍不成功,則停止重傳而向上報錯。

(4)    強化碰撞。當傳送資料的站一旦發現發生了碰撞時,除了立即停止傳送資料外,還要再繼續傳送32位元或48位元的人為干擾訊號,以便讓所有使用者都知道現在已經發生了碰撞。

 

3.4 使用廣播通道的乙太網

3.4.1 使用集線器的星形拓撲

集線器有一些特點:

(1)    使用集線器的乙太網在邏輯上仍是一個匯流排網(星形匯流排),各站共享邏輯上的匯流排,使用的還是CSMA/CD協議。

(2)    一個集線器有許多介面。

(3)    集線器工作在物理層,它的每個介面僅僅簡單地轉發位元,不進行碰撞檢測(發生碰撞,所有介面都收不到正確的幀)

3.4.2 乙太網的MAC層

區域網的地址是每一個站的名字或識別符號。當路由器通過介面卡連線到區域網時,,介面卡的硬體地址就用來標誌路由器的某個介面。路由器如果同時連線到兩個網路上,那麼它就需要兩個介面卡和兩個硬體地址。

介面卡每從網路上收到一個MAC幀(不小於64位元組)就先用硬體檢查MAC幀中的目的地址。如果是發往本站的幀(單播幀,廣播幀,多播幀)就收下,否則丟棄。

乙太網介面卡的混雜方式:只要聽到有幀在乙太網上傳輸就都悄悄地接收下來(竊聽)。有利於網路維護和管理人員分析乙太網上的流量,學習理解各種網路協議的工作原理。

MAC幀的格式(假定使用IP協議)

 

插入的8位元組是為了使接收端迅速實現位同步。它由兩個欄位構成,第一個欄位是7個位元組的前同步碼,作用是調整接收端時鐘頻率,第二個欄位是1位元組的幀開始定界符。

乙太網傳輸資料以幀為單位,各幀之間必須有一定的間隙。因此,接收端只需要只要找到幀開始定界符,後面的連續到達的位元流就都屬於同一個MAC幀。可見乙太網不需要使用幀結束定界符,也不需要使用位元組插入來保證透明傳輸。(區別在於PPP幀是連續傳送)

3.5 擴充套件的乙太網

3.5.1 在物理層擴充套件乙太網

擴充套件主機和集線器之間的距離的一種簡單方法是使用一對光纖和一對光纖調變解調器(光訊號與電訊號的轉換),可以使主機和幾公里以外的集線器相連線。

使用多個集線器可以連線成覆蓋更大範圍的多級星形結構的乙太網。

缺點:(1) 三個碰撞域合為一個。最大吞吐量還是原來一個系的。

(2) 如果不同的系使用不同的乙太網技術,那麼就不可能用集線器將它們互連起來。

3.5.2 在資料鏈路層擴充套件乙太網

使用網橋:根據MAC幀的目的地址對收到的幀進行轉發和過濾。當網橋收到一個幀時,並不是向所有的介面轉發此幀,而是先檢查此幀的目的MAC地址,再確定將該幀轉發到哪一個介面(轉發表)或丟棄。

網橋優點:(1)過濾通訊量,增大吞吐量。不同網段上的通訊不會互相干擾,吞吐量變為各網段吞吐量之和。

(2)擴大物理範圍

(3)提高可靠性 當網路出現故障時,一般隻影響個別網段。

(4)可互聯不同的物理層、不同MAC子層和不同速率的乙太網.因為只負責資料轉發。

缺點:(1)轉發和執行 CSMA/CD演算法增加時延

(2)在MAC子層沒有流量控制功能

(3)使用者太多時會因傳播過多的廣播訊息產生網路風暴

l  透明網橋:乙太網上的站點並不知道所傳送的幀將經過哪幾個網橋,還是種即插即用裝置。按照自學習演算法建立轉發表。要點:轉發表中沒有站點的地址時,將地址和收到此幀的介面號寫入轉發表,並將此幀傳送給該介面以外的所有介面。若查表發現目的地址的埠就是接收此幀的埠,則丟棄。為避免轉發產生的幀在網路中不斷地兜圈子,透明網橋使用了生成樹演算法。

l  源路由網橋:在傳送幀時,把詳細的路由資訊放在幀的首部中。為了發現合適的路由,源站以廣播方式向欲通訊的目的站傳送一個發現幀作為探測之用。可以獲得最佳路由。

l  多介面網橋——乙太網交換機

乙太網交換機的每個介面都直接與一個單個主機或另一個集線器相連,並且一般都工作在全雙工方式。每一對相互通訊的主機都能像獨佔傳輸媒體那樣,無碰撞地傳輸資料。

利用乙太網交換機可以很方便地實現虛擬區域網(VLAN):由一些區域網網段構成的與物理位置無關的邏輯組,而這些網段具有某些共同的需求。虛擬區域網限制了接收廣播資訊的工作站數,使得網路不會因為傳播過多的廣播資訊而引起效能惡化。在乙太網的幀格式中插入一個4位元組的識別符號,用來指明發送該幀的工作站屬於哪一個虛擬區域網。

 

3.6高速乙太網

3.6.1 100BASE-T乙太網

100BASE-T是在雙絞線上傳送100Mb/s基帶訊號的星型拓撲乙太網,仍使用IEEE802.3的CSMA/CD協議,又稱快速乙太網。使用者只需要更換一個介面卡,再配上一個100Mb/s的集線器,就可以很方便地由10BASE-T乙太網直接升級到100MB/s。可以在全雙工方式下工作而無衝突發生,因此CSMA/CD協議對全雙工方式工作的快速乙太網是不起作用的。MAC幀使用IEEE802.3協議規定的幀格。

3.6.2 吉位元乙太網

特點:

(1)    允許在1Gb/s下全雙工和半雙工(使用CSMA/CD)兩種工作方式。

(2)    使用IEEE802.3協議規定的幀格式。

(3)    與10BASE-T和100BASE-T技術向後相容。

物理層使用兩種成熟的技術:一種來自現有的乙太網,另一種則是光纖通道FC。

在半雙工工作模式下,就必須進行碰撞檢測,不同的是採用了載波延伸和分組突發的方法。

l  10吉位元和100吉位元乙太網

10GE幀格式與10Mb/s,100Mb/s和1Gb/s乙太網的幀格式完全相同。只工作在全雙工方式,因此不存在爭用問題,當然也不使用CSMA/CD協議。

l  使用乙太網進行寬頻接入

PPPoE(PPP over Ethernet):把PPP幀再封裝到乙太網中來

modem接入技術面臨一些相互矛盾的目標,既要通過同一個使用者前置接入裝置連線遠端的多個使用者主機,又要提供類似撥號一樣的接入控制,計費等功能,而且要儘可能地減少使用者的配置操作。PPPoE的目標就是解決上述問題,通過把最經濟的區域網技術-乙太網和點對點協議的可擴充套件性及管理控制功能結合在一起,網路服務提供商和電信運營商便可利用可靠和熟悉的技術來加速部署高速網際網路業務。它使服務提供商在通過數字使用者線、電纜調變解調器或無線連線等方式,提供支援多使用者的寬頻接入服務時更加簡便易行。

第四章 網路層

4.1 網路層提供的兩種服務

類似於電話網的面向連線的通訊方式——虛電路

簡單靈活的、無連線的、盡最大努力交付的資料報服務。不提供服務質量的承諾。

4.2 網際協議IP

與IP協議配套使用的還有3個協議:

l  地址解析協議ARP

l  網際控制報文協議ICMP

l  網際組管理協議IGMP

4.2.1 虛擬互連網路

網路的中間裝置

l  物理層——轉發器

l  資料鏈路層——網橋或橋接器

l  網路層——路由器

l  網路層以上——閘道器,用閘道器連線兩個不相容的系統需要在高層進行協議的轉換。

所謂虛擬互連網路就是邏輯互連網路,它的意思就是互連起來的各種物理網路的異構性是客觀存在的,但是我們利用IP協議就可以使這些效能各異的網路在網路層上看起來好像是一個統一的網路,它們稱為IP網。使用IP網的好處是:當IP網上的主機進行通訊時,就好像在一個單個網路上通訊一樣,它們看不見互連的各網路的具體異構細節。

 

分類的IP地址

IP地址就是給因特網上的每一個主機的每一個介面分配一個在全世界範圍是唯一的32位識別符號。IP地址=網路號+主機號。

由於CIDR的廣泛使用,A,B,C類地址的區分已成為歷史。

常用的三種類別的IP地址

l  A類地址:可指派的網路號是126個(128-2),減2的原因是:第一,網路號欄位全為0的IP地址是保留地址,意思是本網路。第二,網路號為01111111保留位本地軟體環回測試本主機的程序之間的通訊之用。若主機發送一個目的地址為環回地址的IP資料報,本主機的協議軟體就處理資料報中的資料,而不會把資料報傳送到任何網路。可指派的主機號也要減2:全0的主機號欄位表示該IP地址是本主機所連線到的單個網路地址,全1表示該網路上的所有主機。

l  B類地址:128.0.0.0不指派,故網路數減1。主機數減2。

l  C類地址:192.0.0.0不指派,故網路數減1。主機數減2。

IP地址有一些重要特點:

1.      主機號由得到網路號的單位自行分配。路由器僅根據目的主機所連線的網路號來轉發分組。

2.      多歸屬主機:當一個主機同時連線到兩個網路上時,該主機就必須同時具有兩個相應的IP地址,其網路號必須是不同的。

3.      用轉發器或網橋連線起來的若干個區域網仍為一個網路。

IP地址與硬體

地址解析協議ARP

每一個主機都設有一個ARP快取記憶體,裡面有本區域網上的各主機和路由器的IP地址到硬體地址的對映表。

ARP協議的步驟是:

l  ARP程序在本區域網上廣播發送一個ARP請求分組。

l  本區域網上的所有主機上執行的ARP程序都收到此ARP請求分組。

l  主機B的IP地址與ARP請求分組 中要查詢的IP地址一致,就收下這個ARP請求分組,並向主機A傳送ARP響應分組(單播),並在這個ARP響應分組中寫入自己的硬體地址。

l  主機A收到主機B的ARP響應分組後,就在其ARP快取記憶體中寫入B的IP地址到硬體地址的對映。

為什麼不使用硬體地址通訊?因為全世界各式各樣的網路使用不同的硬體地址,要使這些異構網路能夠相互通訊就必須進行非常複雜的硬體地址轉換工作。但是連線到因特網的主機只需要擁有統一的IP地址,它們之間的通訊就像在一個網路上那樣簡便,因為計算機軟體自動呼叫ARP協議。

IP資料報的格式

IP層轉發分組的流程

在路由表中,對每一條路由最主要的是以下兩個資訊:目的網路地址+下一跳地址。分組轉發演算法如下:

4.3 劃分子網和構造超網

劃分子網的基本思路如下:

(1)       將物理網路劃分為若干個子網純屬一個單位內部的事情,對外仍表現為一個網路。

(2)       劃分子網的方法是從網路的主機號借用若干位作為子網號,IP地址變為網路號+子網號+主機號。

(3)       其他網路給本單位某主機發IP資料報,先發給本單位的路由器,路由器再按照目的網路和子網號找到目的子網,進行交付。

把三級IP地址和收到的資料報的目的IP地址逐位相與,就得到子網的網路地址。

不劃分子網時使用預設子網掩碼(網路號欄位全1)。

劃分子網增加了靈活性,卻介紹了能連線在網路上的主機總數。

劃分子網後,路由器轉發分組的演算法如下:

無分類域間路由選擇CIDR,使IP地址變為網路字首+主機號。採用斜線記法,在IP地址後面加上斜線,然後寫上網路字首所佔的位數。網路字首都相同的連續的IP地址組成了一個CIDR地址塊。

最長字首匹配:在查詢路由表時可能會得到不止一個匹配結果,應當從結果中選擇具有最長網路字首的路由。

4.4 網際控制報文協議ICMP

允許主機或路由器報告差錯情況和提供有關異常情況的報告。ICMP報文作為IP層資料報的資料,加上資料報的首部,組成IP資料報。

ICMP差錯報告報文有:終點不可達、源點抑制、時間超過、引數問題、改變路由(重定向)。

4.5 因特網的路由選擇協議

分為內部閘道器協議IGP(RIP、OSPF)和外部閘道器協議EGP(BGP)。

4.5.1  內部閘道器協議RIP

RIP(路由資訊協議)是一種分散式的基於距離向量的路由選擇協議,是因特網的標準協議。特點如下:

(1)       僅和相鄰路由器交換資訊。

(2)       路由器交換的資訊是當前路由器所知道的全部資訊,即自己的路由表。

(3)       按固定的時間間隔交換路由資訊。

路由表中最主要的資訊就是:到某個網路的距離,以及應經過的下一跳地址。路由表更新的原則是找出到每個目的網路的最短距離。使用距離向量演算法

RIP協議使用UDP進行傳送。

RIP協議存在的一個問題是當網路故障時,要經過較長的時間才能將此資訊傳送到所有的路由器。

4.5.2 內部閘道器協議OSPF

開放最短路徑優先協議,使用了最短路徑演算法SPF。主要特徵是使用分散式的鏈路狀態協議。直接用IP資料包傳送。其特點是:

(1)       使用洪泛法向本自治系統中的所有路由器傳送資訊。

(2)       傳送的是與本路由器相鄰的所有路由器的鏈路狀態。

(3)       只有當鏈路狀態發生變化時,才與其他路由表交換資訊。

OSPF劃分區域,好處是把利用洪泛法交換鏈路狀態資訊的範圍侷限於每一個區域而不是整個自治系統,減少了網路上的通訊量。

4.5.3 外部閘道器協議BGP

邊界閘道器協議BGP並非要尋找一條最佳路由。採用了路徑向量選擇協議。

在配置BGP的時候,每個自治系統要選擇至少一個路由器作為該自治系統的BGP發言人。發言人直接通過TCP建立BGP會話,交換路由資訊。

4.5.4 路由器的構成

整個路由器結構可劃分為兩大部分:路由選擇部分和分組轉發部分。路由選擇部分的核心是路由選擇處理機,能根據路由選擇協議構造並維護路由表;分組轉發部分由交換結構、一組輸入埠、一組輸出埠組成。

在網路層處理模組,若接收的是路由資訊的分組,就送往路由選擇處理機;若接收到的是資料分組,則按照分組首部中的目的地址查詢轉發表,送往對應的輸出埠。為了使交換功能分散化,往往把複製的轉發表放在每一個輸入埠中,路由選擇處理機負責對各轉發表的副本進行更新。

交換結構主要有三種:

4.6 IP多播

當多播組的主機數很大時,採用多播方式就可以明顯地減輕網路中各種資源的消耗(依靠多播路由器)。在多播資料報的目的地址寫入的是多播組的識別符號(每一個D類地址標誌一個多播組),然後設法讓加入到這個多播組的主機的IP地址與多播組的識別符號關聯起來。

IP多播可以分為以下兩種:

4.6.1 在區域網上進行硬體多播

乙太網硬體地址欄位中的第1位元組的最低位為1時即為多播地址。

4.6.2 在因特網上進行多播

IGMP協議讓連線在本地區域網上的多播路由器知道本區域網上是否有主機參加或退出了某個多播組。還需要使用多播路由選擇協議。多播資料報可以由沒有加入多播組的主機發出,也可以通過沒有組成員接入的網路。

網際組管理協議IGMP的工作可分為兩個階段:

1.      當某個主機加入新的多播組時,該主機發送一個IGMP報文,宣告自己要成為該組的成員,本地的多播路由器收到IGMP報文後,還要利用多播路由器選擇協議把這種組成員關係轉發給其他多播路由器。

2.      組成員關係是動態的。只要有一個主機對某個組響應,那麼多播路由器就認為這個組是活躍的。

4.7 虛擬專用網VPN

RFC1918指明瞭一些專用地址,這些地址只能用於一個機構的內部通訊,而不能用於和因特網上的主機通訊。在因特網中的所有路由器,對目的地址是專用地址的資料報一律不進行轉發。

資料報從R1傳送到R2可能要經過因特網中的很多個網路和路由器。但從邏輯上看,兩者之間好像是一條直通的點對點鏈路。

4.8 網路地址轉換NAT

解決專用網內部的一些主機本來已經分配到了本地IP地址,但又想和因特網上的主機通訊的問題。

 

第五章 運輸層

5.1 運輸層協議概述

運輸層向它上面的應用層提供通訊服務,它屬於面向通訊部分的最高層,同時也是使用者功能中的最底層。只有主機的協議棧才有運輸層。

 

可以看出,網路層為主機之間提供邏輯通訊,而運輸層為應用程序之間提供端到端的邏輯通訊。

硬體埠是不同硬體裝置進行互動的介面,而軟體埠是應用層的各種協議程序與運輸實體進行層間互動的一種地址。

5.2 使用者資料報協議UDP

UDP只在IP的資料報服務之上增加了很少一點的功能,這就是複用和分用的功能以及差錯檢測的功能。UDP的主要特點是:

1.       UDP是無連線的                                                                                                                                                                                                                                               

2.      UDP盡最大努力交付(不保證可靠交付)

3.      UDP是面向報文的。UDP對應用層交下來的報文,既不合並,也不拆分。一次交付一個完整的報文。

 

 

4.      UDP沒有擁塞控制

5.      UDP支援一對一、一對多、多對一和多對多的互動通訊

6.      UDP首部開銷小,只有8個位元組

如果接收方UDP發現收到的報文中的目的埠號不正確,就丟棄該報文,並由ICMP協議傳送“埠不可達”差錯報文給傳送方。

IP資料報的檢驗和只檢驗IP資料報的首部,但UDP的檢驗和把首部和資料部分一起檢驗。

5.3 傳輸控制協議TCP

TCP最主要的特點 :

1.      TCP是面向連線的運輸層協議

2.      每一條TCP連線只能有兩個端點,每一條TCP連線只能是點對點的

3.      TCP提供可靠交付的服務。通過TCP連線傳送的資料,無差錯、不丟失、不重複,並且按序到達。

4.      TCP提供全雙工通訊。TCP兩端都設有傳送快取和接收快取。

5.      面向位元組流。TCP中的流指的是流入到程序或從程序流出的位元組序列。

6.      TCP把連線作為最基本的抽象。每一條TCP連線唯一地被通訊兩端的兩個套接字(IP地址+埠號)所確定。

5.4  可靠傳輸的工作原理

TCP下面的IP層提供的是不可靠的傳輸,因此,TCP必須採用適當的措施才能使得兩個運輸層之間的通訊變得可靠。

5.4.1 停止等待協議

“停止等待”就是每傳送完一個分組就停止傳送,等待對方的確認,收到確認後再發送下一個分組。四種情況:

5.4.2 連續ARQ協議

傳送方首先將傳送視窗內的所有分組連續傳送出去,而不用等待確認。接收方採用累計確認的方式,在收到幾個分組後,對按序到達的最後一個分組傳送確認,表明這個分組之前的所有分組都已經正確收到了。傳送方每收到一個確認,就把傳送視窗向前滑動一個分組的位置。

 

 

若傳送方傳送了5個分組,但是中間第三個丟失了,接收方就只能對前兩個分組發回確認。傳送方重發後3個分組,這叫做“回退N”,表示需要退回來重傳已傳送的N個分組。

5.5 TCP報文段的首部格式

5.6 TCP可靠傳輸的實現

TCP的滑動視窗是以位元組為單位的。傳送窗口裡的序號表示允許傳送的序號。後沿的部分表示已傳送且已收到了確認。接收窗口裡的序號表示允許接收的序號,後沿的部分表示已傳送確認並交付主機。沒有按序到達的資料存在接受快取裡面。

超時重傳時間根據Karn演算法確定。

選擇確認SACK能實現只傳送缺少的資料而不重傳已經正確到達接收方的資料。

5.7 TCP的流量控制

所謂流量控制就是讓傳送方的傳送速率不要太快,要讓接收方來得及接收。

5.8 TCP的擁塞控制

所謂擁塞控制就是防止過多的資料注入到網路中,這樣可以使網路中的路由器或鏈路不致過載。四種演算法:慢開始、擁塞避免、快重傳和快恢復。

5.9 TCP的運輸連線管理

TCP的連線建立

三次握手建立連線:A執行客戶程式,B執行TCP伺服器程式,A主動開啟連線,而B被動開啟連線。

B的TCP伺服器程序先建立傳輸控制塊TCB,準備接受客戶程序的連線請求。然後伺服器程序就處於LISTEN狀態,等待客戶的連線請求。

A的TCP客戶程序也是首先建立傳輸控制模組TCB,然後向B發出連線請求報文段。

A最後還要傳送一次確認,是為了防止已失

效的連線請求報文段(在網路節點中滯留,延遲到達)突然又傳送到了B,產生錯誤。

TCP的連線釋放

資料傳輸結束後,通訊的雙方都可釋放連線。假設A的程序先發出釋放連線報文段,停止傳送資料,主動關閉連線。

為什麼A在TIME-WAIT狀態必須等待2MSL時間?一個原因是保證A傳送的最後一個ACK報文段能夠到達B,另一個是防止前面提到的已失效的連線請求報文段出現在本連線中。

TCP還設定有一個保活計時器。客戶端主機故障時,伺服器收不到訊息,保活計時器使得伺服器不會再白白等待下去,方法是隔一段時間傳送一個探測報文段,連續傳送多個報文段後無響應,即認為客戶端故障,關閉連線。

TCP的有限狀態機

方框表示TCP可能具有的狀態。粗實線箭頭表示對客戶程序的正常變遷,粗虛線箭頭表示對伺服器程序的正常變遷,細線箭頭表示異常變遷。

第六章 應用層

6.1 域名系統DNS  

因特網的域名系統DNS被設計成一個聯機分散式資料庫系統,並採用客戶-伺服器方式。DNS使大多數名字都在本地進行解析。

一個伺服器所負責的管轄的範圍叫做區。每一個區設定相應的許可權域名伺服器,用來儲存該區中的所有主機的域名到IP地址的對映。“區”是域的子集。

因特網上的DNS伺服器是按照層次安排的,每一個域名伺服器都只對域名體系中的一部分進行管轄。可分為四種類型:

                                                                                                                                              

l  根域名伺服器

根域名伺服器採用了任播技術,當DNS客戶向某個根域名伺服器進行查詢時,因特網上的路由器就能找到離這個DNS客戶最近的一個根域名伺服器。

在許多情況下,根域名伺服器並不直接把待查詢的域名直接轉換成IP地址,而是告訴本地域名伺服器下一步應該找哪一個頂級域名伺服器進行查詢。    

l  頂級域名伺服器

負責管理在該頂級域名伺服器註冊的所有二級域名。當收到DNS查詢請求時,就給出相應回答。

l  許可權域名伺服器:負責一個區的域名伺服器,當一個許可權域名伺服器不能給出回答時,會指向其他的許可權域名伺服器。

l  本地域名伺服器:當所要查詢的主機也屬於同一個本地ISP時,該本地域名伺服器立即就能將所查詢的主機名轉換為他的IP地址。

域名解析過程:

第一,主機向本地域名伺服器的查詢一般都是採用遞迴查詢。如果主機所詢問的本地域名伺服器不知道被查詢域名的IP地址,那麼本地域名伺服器就以DNS客戶的身份,向其他根域名伺服器繼續發出查詢請求報文,代替該主機繼續查詢。

第二,本地域名伺服器向根域名伺服器是查詢通常是採用迭代查詢。當根域名伺服器收到本地域名伺服器發出的迭代查詢請求報文時,要麼給出所查詢的IP地址,要麼告訴本地域名伺服器:你下一步應當向哪一個域名伺服器進行查詢。然後讓本地域名伺服器進行後續的查詢。

    

域名伺服器廣泛地使用了快取記憶體,用來存放最近查詢過的域名以及從何處獲得域名對映資訊的記錄。

6.2 檔案傳送協議

6.2.1  FTP的基本工作原

建立了兩個並行的TCP連線:控制連線和資料連線。                    

6.3 遠端終端協議TELNET

能將使用者的擊鍵傳到遠地主機,同時也能將遠地主機的輸出通過TCP連線返回到使用者螢幕,讓使用者感覺到好像鍵盤和顯示器是直接連線在遠地主機上。

6.4 全球資訊網WWW

6.4.1 全球資訊網概述

全球資訊網是一個大規模的、聯機式的資訊儲藏所。全球資訊網文件所駐留的主機則執行伺服器程式,因此這個主機也稱為全球資訊網伺服器。客戶程式向伺服器程式發出請求,伺服器程式向客戶程式送回客戶所要的全球資訊網文件。

6.4.2 統一資源定位符

<協議>://<主機>:<埠>/<路徑>

6.4.3 超文字傳送協議HTTP

HTTP協議定義了瀏覽器怎樣向全球資訊網伺服器請求全球資訊網文件,以及伺服器怎樣把文件傳送給瀏覽器。HTTP是面向事務的應用層協議。

 

請求一個全球資訊網文件所需的時間是該文件的傳輸時間加上兩倍往返時間RTT:一個RTT用於連線TCP連線,另一個RTT用於請求和接收全球資訊網文件。

HTTP/1.0的主要缺點,就是每請求一個文件就要有兩倍RTT的開銷。另一種開銷就是全球資訊網客戶和伺服器為每一次建立新的TCP連線都要分配快取和變數,特別是全球資訊網伺服器往往要同時服務於大量客戶的請求,這種非持續連線會使全球資訊網伺服器的負擔很重。

HTTP/1.1協議較好地解決了這個問題,它使用了持續連線。所謂持續連線就是全球資訊網伺服器在傳送響應後仍然在一段時間內保持這條連線。這種持續連線分為流水線方式和非流水線方式。

代理伺服器是一種網路實體,它又稱為全球資訊網快取記憶體。代理伺服器把最近的一些請求和響應暫存在本地磁碟中,有時候作為伺服器,有時候作為客戶。

HTTP有兩類報文:請求報文和響應報文。請求報文的第一行指定了HTTP方法,有如下幾種:

HTTP響應報文中重要的是狀態碼。

HTTP協議是無狀態的,但在實際工作中,一些全球資訊網站點希望識別使用者,故使用了Cookie來跟蹤使用者。Cookie表示在HTTP伺服器和客戶之間傳遞的狀態資訊。工作流程是:使用者A瀏覽網站時,該網站伺服器會給A一個唯一的識別碼,新增在響應報文中發給使用者。瀏覽器從而在自己的Cookie檔案中新增這一行。當A繼續瀏覽網站時,每傳送一個HTTP請求報文,其瀏覽器就會在Cookie首部行中加入識別碼,網站就可以跟蹤使用者在網站的活動了。

6.4.4 全球資訊網的文件

HTML是超文字標記語言。XML是可擴充套件標記語言,宗旨是傳輸資料而不是像HTML一樣顯示資料。XML將使用者介面與結構化資料分隔開來。

CGI是一個標準,它定義了活動文件該如何建立,輸入資料應如何提供給應用程式,以及輸出結果應如何使用。Cgi程式又稱cgi-bin指令碼。使用了CGI的web伺服器如下圖。

 

6.5 電子郵件

一個電子郵件系統應由使用者代理、郵件伺服器以及郵件傳送協議(“推”——如SMTP)和郵件讀取協議(“拉”——如POP3)。

6.6 動態主機配置協議DHCP

 

DHCP省去了手動給計算機配置IP地址的麻煩。當執行客戶軟體的計算機移至一個新的網路時,就可以使用DHCP獲取其配置資訊(IP地址、子網掩碼、預設路由器的IP地址、域名路由器的IP地址),不需要手工干預。

DHCP使用客戶-伺服器方式。主機在啟動時廣播一個發現報文(目的地址為全1),由DHCP伺服器進行回答。中間還存在著DHCP中繼代理的角色。

DHCP伺服器分配給客戶的IP地址是臨時的,因此客戶只能在一段有限的時間內使用這個分配到的IP地址,這個時間稱為租用期。

6.7 簡單網路管理協議SNMP

SNMP是專門設計用於在 IP 網路管理網路節點(伺服器、工作站、路由器、交換機及HUBS等)的一種標準協議。SNMP 使網路管理員能夠管理網路效能,發現並解決網路問題以及規劃網路增長。通過SNMP 接收隨機訊息(及事件報告)網路管理系統獲知網路出現問題。

SNMP的前身是簡單閘道器監控協議(SGMP),用來對通訊線路進行管理。隨後,人們對SGMP進行了很大的修改,特別是加入了符合Internet定義的SMI和MIB,改進後的協議就是著名的SNMP。基於TCP/IP的SNMP網路管理框架是工業上的現行標準,由3個主要部分組成,分別是管理資訊結構SMI(StructureofManagement Information)、管理資訊庫MIB和管理協議SNMP。

6.8 應用程序跨越網路的通訊

第九章 無線網路和行動網路

9.1  無線區域網WLAN

9.1.1 無線區域網的組成

IEEE 802.11是無線乙太網的標準,採用此協議的無線區域網稱為Wi-Fi。它使用星形拓撲,其中心叫做接入點AP,在MAC層使用CSMA/CA協議。802.11規定無線區域網的最小構件是基本服務集BSS,包括一個基站和若干個移動站,所有的站在本BSS內都可以直接通訊。

一個BSS內可以有多個AP,移動站只能在多個AP中選擇一個建立關聯,通常選擇訊號最強的那個。此後,這個移動站就和選定的AP互相使用802.11關聯協議進行對話,之後通過DHCP協議獲取IP地址。

移動站與AP建立關聯的方法有兩種。一種是被動掃描,另一種是主動掃描。

9.1.2 802.11區域網的物理層

根據物理層的不同,802.11無線區域網可再細分為不同的型別。

9.1.3 802.11區域網的MAC層協議

CSMA/CD協議不能用於無線區域網,因為碰撞檢測(CD)在無線環境下不能使用,無線區域網不需要進行碰撞檢測。

802.11標準設計了獨特的MAC層。它通過協調功能來確定在基本服務集BSS中的移動站,在什麼時候能傳送資料或接收資料。

分佈協調功能DCF向上提供爭用伺服器,在每一個結點使用CSMA機制的分散式接入演算法,讓各個站通過爭用通道來獲取傳送權。點協調功能PCF是選項,是用接入點AP集中控制整個BSS內的活動。

為避免碰撞,802.11規定,所有的站在完成傳送後,必須再等待一段很短的時間繼續監聽才能傳送下一幀。這段時間稱為幀間間隔IFS。

幀間間隔有兩種:SIFS,短幀間間隔,用來分割屬於一次對話的幀;DIFS,分佈協調功能幀間間隔,用來發送資料幀和管理幀。

CSMA/CA演算法歸納如下:

9.1.4 802.11區域網的MAC幀

802.11共有三種類型的幀:控制幀、資料幀和管理幀。