1. 程式人生 > >計算機網絡(一)——互聯網層

計算機網絡(一)——互聯網層

計算機網絡 互聯網 網絡連接 交換機 路由器

計算機網絡,顧名思義,是由若幹鏈路組成的,這些鏈路結點可以是計算機,集線器,交換機或路由器等;網絡和網絡之間可以通過路由器進行互聯,這就是互聯網的由來,而因特網就是最大的互聯網;網絡的存在是將許多計算機連接在一起,而因特網的存在是將許多網絡連接在一起;網絡的主要功能是讓不同的主機之間進行數據的通信,實現大範圍的資源共享;計算機之間的數據通信是通過接口來實現的;

因特網的組成部分分為邊緣部分和核心部分;邊緣部分為網絡中的各個主機組成,核心部分是由連接這些網絡的路由器組成,為邊緣部分的主機提供服務;

計算機網絡之間的通信是一個十分復雜的問題,為了實現計算機之間的通信,人們提出了關於是各種計算機能夠在世界各個範圍內通信的開放系統互連基本參考模型OSI/RM;只要遵循OSI定律的計算機,就可以在世界任何一個地方進行通信;OSI的七層協議由底向上為物理層,數據鏈路層,網絡層,運輸層,會話層,表示層,以及應用層;其中運輸層是為了協調上三層與下三層之間的關系,上三層是資源子網,實現了資源共享的功能,下三層是通信子網,實現了數據通信的功能;層次結構實現了下一層的協議為上層提供服務,要實現本層的協議,還需要下一層協議所提供的服務;OSI的協議實現太過復雜,且運行效率太低,層次劃分不夠合理,有些功能在多個層次中出現,這些都是導致OSI協議失敗的原因;但這不妨礙我們去了解一下關於這老牌的通信協議OSI;

OSI協議:

物理層:其作用是盡可能的屏蔽掉傳輸媒體和通信手段的差異,使上層的數據鏈路層沒有感覺到這些差異;物理層還可以通過使用信道復用技術,如頻分復用,時分復用,和統計時分復用等,節省系統資源;

數據鏈路層:其主要使用的是點對點通信以及廣播通信,首先將一段數據封裝成幀,進行透明傳輸處理,進行差錯檢測,若無差錯則將數據從數據鏈路層發往網絡層;

網絡層:主要是為了網上不同主機提供通信服務,以及選擇合適的路由,使從運輸層傳下來的數據能夠通過合適的路由找到目的主機;

運輸層:屏蔽上三層與下三層的細節,上三層不需要理會下三層是如何實現,反之亦然;起到一個紐帶的作用;在傳輸層將數據分為更小的數據段,以此實現更可靠的數據傳輸機制,防止資源狼糞;可以進行虛電路機制,流量控制等功能;

會話層:會話層定義了如何開始結束一個會話;

表示層:編碼和解碼,加密和解密,壓縮和解壓縮;表示層是為了統一數據格式;確保某一個系統應用層所發送的信息能夠正確的理解;

應用層:應用層是與其他計算機進行通信的一個應用,他是對應應用程序的通信服務;

OSI的七層協議的概念雖然清楚但卻不夠實用;反之TCP/IP協議是一個四層的體系結構,它包含著應用層,運輸層,網絡層,網絡接口層;

在這裏先講解一下關於網絡層的主要功能;網路層負責為不同的主機傳遞信息,在TCP/IP協議,網絡層將數據封裝成IP數據報的形式進行傳輸;在網絡層所具有的協議有ARP,RARP,ICMP,IGMP;IP協議需要依賴於ARP與RARP協議所提供的服務,而ICMP,IGMP協議的實現需要依賴於IP協議;

ARP協議是一種地址解析協議,將描述範圍的邏輯地址轉化為具體描述的物理地址;

RARP協議則與ARP協議相反,是將具體描述的物理地址轉化為描述範圍的邏輯地址;

IGMP:完成互聯網多播通信的協議;

ICMP:用於在IP主機與路由器之間傳遞控制消息;

IP:

IP地址一共32位二進制構成,由兩部分組成,網絡位部分以及主機位部分,根據不同類型的IP地址網絡號與主機號之間的分配存在變化;

A類IP地址:第一位二進制位必須為0,網絡位有八位,主機位有24位;

B類IP地址:前兩位二進制位必須為10,網絡位為16位,主機位為16位;

C類IP地址:前三位二進制位必須為110,網絡位為24位,主機位為8位;

D類IP地址:前四位二進制位必須為1110,網絡位為32位,通常用於組播通信,不給主機用;

E類IP地址:前四個二進制位必須為1111,保留用於科學研究;

IP地址

A類

00000000 00000000 00000000 00000000—011111111 11111111 11111111 11111111

0.0.0.0-127.255.255.255

第一個8位組全為0的,是無效的IP,因為其表示整個IP地址棧;

第一個8位組,除了第一位以外全部為1,稱為環回地址;兩者皆非有效地址;

所以A類地址可指派的網絡位有2^7-2;可指派的主機位有2^24-2

B類:128.0.0.0~191.255.255.255

10000000.00000000.00000000.00000000

10111111.11111111.11111111.11111111


C類:192.0.0.0~223.255.255.255

11000000.00000000.00000000.00000000

11011111.11111111.11111111.11111111


D類:224.0.0.0~239.255.255.255

11100000.00000000.00000000.00000000

11101111.11111111.11111111.11111111


E類:240.0.0.0~255.255.255.255

11110000.00000000.00000000.0000000

11111111.11111111.11111111.1111111

IP地址適用於點分十進制表示法:

1.將32位的IP地址位,以8位為一組,共劃分為4組;

2.每一組之間使用“.”符號進行分隔;

3.將每個8位組轉換為十進制表示;

如:10000000 00001011 00000011 00011111

128 11 3 31


IP地址2:

保留地址:不能選擇為其他主機配置使用的IP地址;

0.0.0.0-0.255.255.255

127.0.0.0-127.255.255.255


自動分配地址段:

169.254.0.0-169.254.255.255


網絡地址:主機位全為0的地址;

1.0.0.0:表示一個範圍的名稱;


廣播地址:主機位全為1的地址;

1.255.255.255:作為目的地址代表整個網段中的所有IP地址;


定向廣播地址:往這個地址發送數據,所有主機都可收到;

255.255.255.255


IPv4:的地址總數:2^32=42億9400萬

去除的IP地址:

D類和E類:5億

0和127網段的地址:3500萬

169,254的網段地址:65536

網絡地址:126+16384+209萬

廣播地址:126+16384+209萬


可以分配給主機使用的IP地址為36億


為了解決IP地址枯竭的問題,人們采用了私有地址與公有地址轉換的方式來提高IP地址利用率,減少IP地址的消耗;

私有地址:可以在不同互聯網中使用;

公有地址:可以在互聯網中使用但地址必須唯一;

NAT:地址轉換;

SNAT:源地址轉化;使用公有IP地址替換私有IP地址,但用戶需要訪問另一個網絡時可以通過將私有IP地址轉化為公有IP地址進行訪問;在多個網絡中進行訪問的公有地址,若想訪問一個網絡,需要將公有地址的外殼換成私有地址,才能在該網絡中使用;

DNAT:目的地址轉換,使用私有IP地址替換數據包中的公有IP地址;


IP數據報:

IP數據報的格式能夠說明IP協議都具有什麽功能,一個數據報由首部和數據兩部分組成,首部的固定長度共20個字節,下面介紹各個字段的含義;

(1)版本:4位,指IP協議的版本,通信雙方所使用的IP協議必須一樣;

(2)首部長度:4位,表示首部的長度,首部長度最少20字,最多達60字;

(3)區分服務:8位,用來獲得更好的服務;

(4)總長度:16位,表示包括首部的整個數據報的長度;

(5)標識:16位,標識數據來源以及由哪個數據分片得來的;

(6)標誌:3位,最低位記為MF標誌後面是否還有分片,中間位DF標誌該數據段是否不能分片,最後 一位無意義;

(7)片偏移:13位,較長的數據段通過分組成多個片,某片在分組中的相對位置;

(8)生存時間:8位,表明數據報在網絡中的壽命;

(9)協議:8位,協議字段表示該數據段使用的是哪種協議;

(10)首部檢驗和:16位,這個字段只檢驗首部,不檢驗數據部分;每經過一個路由器,都要重新檢 驗一個首部檢驗和,因為首部可能會發生變化;

(11)源地址:32位,發送方地址;

(12)目的地址:32位,接收方地址;


使用IP地址:

使用IP地址進行數據的通信,最基本的就是要知道兩個進行通信的主機的源地址和目的地址,在這裏講述一下如何獲得通信雙方的源地址以及目的地址;

源IPv4地址,發送數據的主機上配置的IP地址;

源IPv4的配置方式:

手動配置:

手動配置必須要對各個IP地址非常了解,避免IP地址選擇錯誤,這種方式定義的IP地址雖然精確到 位,但也容易發生手誤,這在某些特殊環境中是不被允許的,所以不建議使用;

自動配置:

BOOTP:啟動協議,這種協議下分配的IP地址其周期是永久的,即主機分配的IP地址永久使用,不更改

但這種情況的弊端也很明顯,那就是浪費IP資源,針對目前世界IP地址匱乏的環境下,這種浪費資源 的做法並不可取;

DHCP:動態主機配置協議;這個協議下所分配的IP地址,並不是永久分配給一個主機使用的,它存在 著“租約”協定,即當分配一個IP地址後,由服務器給定一個租約時間,當租約到期時,視情 況而定是否續租,或者不再使用這個IP地址;當到達租約的50%時,主機就會向分配此IP地址的 服務器發出續租請求,發送三次仍沒有回應時放棄,當到達租約的87.5%時,廣播信道,看是否 有服務器能夠提供與當前使用的相同的IP地址,若有則建立聯系,若無則在IP地址租約滿時, 放棄此IP地址,采用其他IP地址;

DHCP協議客戶端地址的租借過程——四線會話

①客戶端發送DHCP Discover消息,搜索當前網絡中的服務器是否有合適的IP地址給主機使用;

②接收到DHCP Discover的服務器查看自身的地址池中是否有合適的IP地址,若有則將該IP地址的信 息,封裝到DHCP Offer中發送給客戶端;

③客戶端接收到的第一個DHCP Offer的消息作為IP地址的首選,因為第一個到達的,他的服務器的效 率較高,在續租時也會容易些;客戶端接受到後,發送DHCP request的消息給服務器,表示可以使用 此IP地址;

④提供IP地址的服務器收到DHCPRequest消息後,將IP地址和對應主機的物理地址臨時綁定;並且開始 租約計時;發生DHCP ACK確認消息;不是提供該IP地址的服務器收到DHCP Request,將該IP地址重新 放入地址池中,並給客戶端發送DHCP NAK消息,非確認消息;


配置目的IP地址:

手動解析:在地址欄中直接指定目標的IP地址,不過這種形式,要記住幾種常用的IP地址還行,若是 大量的IP地址,則明顯不適用;

自動解析:

DNS協議:使用域名的方式代替IP地址,解析域名獲得其IP地址並跳轉;在DNS服務器上保存在特定 的域名和IP地址的映射關系;可以完成地址解析的任務;

正向解析協議:將域名解析成IP地址進行跳轉;

反向解析協議:將IP地址解析成域名進行跳轉;

DNS解析的結果會還存在本地服務器中,需要我們網卡配置中開啟才可使用;


計算機網絡(一)——互聯網層