第二章 電腦網路與通訊 2-1 Internet 的發展 2-2 電腦如何進行通訊 2-3 網際網路協定(IP) 2-4 網路路徑的選擇 2-5 路由表是如何生成的 2-6 選路徑依賴於網路位元 2-7 如何將網域名稱解析成位址 2-8 如何決定資料連接層位址
2-1 Internet 的發展 在21世紀,新世代網際網路將成為一個強而有力且多用途的環境,以供商業、教育、文化、休閒娛樂等層面的應用。
2-1-1 Internet 的發展速度 根據摩根史坦利公司(Morgan Stanley)的調查,美國廣播業者花了38年的時間,才讓聽眾人數超過5000萬;同樣人數,無線電視業者花了13年,有線電視則用了10年,而網際網路卻只花了5年工夫,就讓美國地區的上網人數超過5000萬人。
網際網路與傳統媒體的發展比較
2-1-2 網際網路進入社會各個角落
2-2 電腦如何進行通訊 要使兩台電腦能互相通信必須解決下面的問題: 1) 電腦互相通信的速率以及使用什麽樣的媒介? 2) 如果使用的通信媒介是多台電腦共用的,如何決定在某一個時刻該由哪台電腦發送資料? 3) 如何對電腦進行編址,以便唯一地區分開每個資料的發送者和接收者? 4 )如果兩台電腦不是直連在一起的,資料如何選出一條從起點到目的地的合適通路? 5) 如何檢測通信過程中的錯誤,檢測到錯誤後又如何去校正錯誤? 6) 通信過程中使用什麽數位格式來表示資料?
2-2-1 協定層 OSI(Open System Interconnection)七層中的每一層都完成一組特定的功能,進而爲上一層提供一定的服務。規定各層如何操作的那些原則和規程就稱爲協定。 OSI模型中每一層的協定都與它的上層或下層的協定無關。這使得每一層可以獨立地採用新技術,而不影響其它層 。
2-2-2 OSI 中每一層的功能 1. 實體層(Physical layer) :它通過通信設施或媒介把位元從一個地方傳到另一個地方。 2. 資料連接層(Data link layer) :負責確保實體層連結的資料之正確性。 3. 網路層(Network layer) :利用資料連接層提供的資料傳送功能,在通信的源和目的之間傳送資料。
4. 傳輸層(Transport layer) :傳輸層協定規定了檢錯和糾錯方法。送入傳輸層,並通過可靠的端到端傳輸功能到達對端,然後從對端傳輸層送出的資料稱爲「資料流」。 5. 會談層(Session layer) :會談層接收從傳輸層送來的可靠的資料流程,並向高層提供封富的、應用導向的服務。
6. 展現層(Presentation layer) :定義了在一個應用中互相交換資訊的語義和語法,這使得無論它們各自存儲資料的方式是否不同,使用不同硬體和作業系統的電腦之間都可以交換資訊。 7. 應用層(Application layer) :這一層傳送用戶執行的某個電腦程式的特定資訊,提供使用者網路上的服務。
OSI中的資料傳輸 發訊端有一些資料要傳送給收信端,將資料交給應用層,應用層在資料的前面加上個標頭AH,再交給展現層。展現層將其內容處理後,在資料的前面加上個標頭PH,再交給會議層。會議層在資料的前面加上個標頭SH,再交給傳輸層。傳輸層在資料的前面加上個標頭TH,再交給網路層。OSI模型中的資料傳輸便反覆這項過程直到資料抵達實體層後,才確實地傳輸到收訊機器中。而在收訊機器中,隨著接收資訊的層層傳送,各種不同的標頭也逐一被去掉,直到抵達收訊端的應用程式為止。
2-2-3 網路層提供的服務 網路層的目的是隱藏各種連接的具體特性,向傳輸層提供一個邏輯上的網路,它將資料通過一條或多條連接從來源電腦傳送到目的電腦。一個資料包括從傳輸層送來的資料段和網路層的協定標頭。因此,從傳輸層向下看網路層時,看到的是一種將資料段從來源端傳送到目的地的服務。
2-3 網際網路協定(IP) TCP/IP之網路層協定稱爲網際網路協定(IP)。OSI第4層(即傳輸層) 中有兩種廣泛採用的協定:傳輸控制協定(TCP),它爲高層提供可靠的、資料流導向的服務;而用戶資料協定(UDP)則爲高層提供沒有可靠性保證的、無連接的服務。 網際網路的網路協定(IP)和有可靠性保證的傳輸層協定(TCP)一起構成了網際網路協定群的名稱。
2-3-1 ICMP ICMP 的全稱是 Internet Control Message Protocol。從技術教度來說,ICMP 就是一個 "錯誤偵測與回報機制",其目的就是讓我們能夠檢測網路的連線狀況,也能確保連線的準確性,其功能主要有﹕ 偵測遠端主機是否存在。 建立及維護路由資料。 重導資料傳送路徑。 資料流量控制。
2-3-2 IP 的功能 和其他所有的網路層協定一樣,IP 將資料從源端發送到目的端點,這種服務有時也稱爲“端到端的資料傳送”。IP 所提供的可靠性服務稱爲“盡力而爲”,也就是說IP 將盡力將資料傳送到目的端,但並不保證它一定能無差錯地到達目的端。 如果一個應用要求可靠通信,就應由傳輸層來保證無差錯的端到端傳輸。在網際網路中,傳輸控制協定(TCP)便提供了可靠的端到端的資料傳送。
2-3-3 IP封包格式 I P封包是指從傳輸層或更高層送來的一段資料,以及加在資料前面的一個IP 標頭。[ RFC791 ]定義 IP 標頭中所示的各個欄位(域),其中最主要的欄位是源位址和目的位址。這些位址的作用和郵政系統中信封上的位址作用相似,說明了發送者和接收者的位址。
2-3-4 節點如何得到一個IP位址 節點可以通過手動和自動兩種方法得到它們的IP位址。手動配置時通常只是將IP位址輸入到節點的組態檔案中。自動配置IP位址通常有兩種方法。第一種方法是,用戶用數據機、電話線和家用個人電腦撥接到ISP,經由 PPP協定的IPCP向ISP的撥入設備請求一個IP位址。另一種方法是採用動態主機配置協定 DHCP。
2-4 網路路徑的選擇 在互連網路上交換資訊的一個基本要求是每個站都具有可達的唯一位址。規定了地址之後,接下來便是如何選擇路徑到達訊息的終點。路徑選擇涉及規定路徑選擇參數以及如何獲得這些參數。
2-4-1 什麽是路由表 每一個IP節點,無論是主機還是路由器,都需要一個路由表來作轉發決策,而且它需要爲發送的每一個封包作轉發決策,包括由該節點産生的封包(如由傳輸層送來的資料段)以及它接收到的封包,這些封包將分別按各自的路徑轉發到它們的目的節點上。 路由表中的每一項,簡單地說也就是一條路由,至少包括4個欄位: 目的位址(Target)、字首長度( Prefix-Length)、下一跳位址(Next Hop)以及通訊埠。
2-4-2 存在多個匹配表項時怎麽辦 IP封包的選路徑原則可以歸納如下: 2) 如果存在一條網路位元路由與IP封包的目的IP位址的網路位元相匹配,那麽必須選用這條路由。 3) 在沒有相匹配的特定主機路由或網路位元路由時,如果存在一條或多條預設路由,那麽可以採用預設路由中的任一條來轉發資料。 4) 如果沒有任何匹配路由,就宣告路由錯誤,並向資料封包的源端發送一條 ICMP 無法到達的訊息。
2-4-3 選路徑實例
2-4-4 IP 路由技術總結 IP路由技術的重要特性可歸納如下: 4) 對於同一條網路上的多台主機,可以只用一條網路位元路由,而無需列出所有的特定主機路由。
2-5 路由表是如何生成的 1. 靜態配置路由表項:許多節點的路由表是由它們的主要用戶或網路管理人員手動設定完成的。 2. ICMP 重導向:如果一台路由器覺得它的鄰接節點沒有採用最好的下一跳節點,這台路由器可以通過向該主機發送ICMP 重導向訊息,告訴那台主機對於這個目的位址可以選另一台路由器作爲下一跳節點。
3. 動態路由協定:雖然動態路由協定直接或非直接地利用I P 在路由器之間傳送資訊。動態路由協定具有極高的可靠性。這是因爲,大多數路由協定允許路由器爲同一個目的位址保留多條路由。如果一台或多台路由器、一條或多條網路暫時發生了故障,IP可以繞過這些故障。 4.可達性廣播:當一台路由器向第二台路由器發送路由更新資訊,告訴第二台路由器它可以到達一個或多個目的位址時,我們就說這台路由器在做這些位址的可達性廣播。
2-6 選路徑依賴於網路位元 網路位元路由可以簡化節點的IP路由表。 從一台電腦通過一個或多個路由器到另一台電腦,我們稱它叫做路徑(Route)。
2-7 如何將網域名稱解析成位址 在網際網路中用DNS(Domain Name System )可以將主機名轉譯成IP位址。例如,當你讓最喜歡的Web 瀏覽器從http://www.lp.org/ 上取一個檔案時,它做的第一件事就是找到主機名稱爲www.lp.org 的電腦IP位址。你的電腦向網域名稱伺服器(DNS)發出一個詢問,網域名稱伺服器則回應你想要的主機之IP位址。
2-8 如何決定資料連接層位址 當某個節點想向另一個節點發送IP 包時,它用自己的路由表決定下一跳的IP 位址。到現在爲止,我們還沒有介紹過發送節點如何得到下一跳的資料連接層位址,以便將IP包放在連接層中發送出去,這一節將簡單地介紹這個過程。
2-8-1 位址解析協定 ARP是定義在RFC 826中的Internet標準,主要的功能是將IP位址對應到硬體位址(MAC Address)。它運作的方法是將ARP要求以廣播的方式傳送到網路上,擁有該IP位址的節點便會回應其硬體位址,因此ARP必須在支援封包廣播的實體網路上才能使用。雖然技術上,ARP是用來找尋硬體位址,而RARP(Reverse ARP)是用來進行反向動作,但實際上, ARP卻經常用來同時執行上述兩種動作。
2-8-2 代理ARP和ARP 當一台移動電腦轉到一條新的網路上時,就不可能接收其他節點從原來的網路上發送的ARP請求。由別的節點代爲發送的ARP應答就稱爲位址解析協定代理(Proxy ARP),該節點就稱爲其它節點的ARP代理。