一. 網(wǎng)絡體系結(jié)構(gòu)的基本概念
1、什么是網(wǎng)絡協(xié)議
在生活中,我們多于通信協(xié)議并不陌生,一種語言本身就是一種協(xié)議。在我們寄信或者請假時,假條內(nèi)容的格式就是一種協(xié)議。這樣的例子很多。在計算機中,計算機網(wǎng)絡由多臺主機組成,主機之間需要不斷的交換數(shù)據(jù)。要做到有條不紊的交換數(shù)據(jù),就需要一定的或者實現(xiàn)約定好的通信規(guī)則。
為網(wǎng)絡數(shù)據(jù)交換制定的通信規(guī)則,我們稱為網(wǎng)絡協(xié)議(protocol)。
2、層次結(jié)構(gòu)
層次(Layer)結(jié)構(gòu)是處理計算機網(wǎng)絡問題的最基本的方法,對于一些復雜的問題,我們經(jīng)常采用“化整為零,分而治之”的思想,將一個復雜的問題分解為若個小問題去解決。
3、接口
(1)同一主機的相鄰層之間存在著明確的接口,相鄰層之間通過接口來傳遞信息。
(2)低層通過接口向高層提供服務。只要接口不變,低層協(xié)議不變,實現(xiàn)低層協(xié)議的技術(shù)變化不會影響整個系統(tǒng)的工作。
國產(chǎn)接口測試和接口文檔生產(chǎn)工具:apipost



4、網(wǎng)絡體系結(jié)構(gòu)
(1)網(wǎng)絡體系結(jié)構(gòu)是網(wǎng)絡層次結(jié)構(gòu)和各層協(xié)議之間的集合。
(2)網(wǎng)絡體系結(jié)構(gòu)對計算機網(wǎng)絡實現(xiàn)的功能應該精確定義。
(3)網(wǎng)絡體系結(jié)構(gòu)是抽象的,而實現(xiàn)網(wǎng)絡協(xié)議的技術(shù)是具體的。
OSI七層協(xié)議模型主要是:應用層(Application)、表示層(Presentation)、會話層(Session)、傳輸層(Transport)、網(wǎng)絡層(Network)、數(shù)據(jù)鏈路層(Data Link)、物理層(Physical)。
1、物理層:比特
主要定義物理設備標準,如網(wǎng)線的接口類型、光纖的接口類型、各種傳輸介質(zhì)的傳輸速率等。它的主要作用是傳輸比特流(就是由1、0轉(zhuǎn)化為電流強弱來進行傳輸,到達目的地后在轉(zhuǎn)化為1、0,也就是我們常說的數(shù)模轉(zhuǎn)換與模數(shù)轉(zhuǎn)換)。這一層的數(shù)據(jù)叫做比特。
2、數(shù)據(jù)鏈路層:幀
定義了如何讓格式化數(shù)據(jù)以進行傳輸,以及如何讓控制對物理介質(zhì)的訪問。這一層通常還提供錯誤檢測和糾正,以確保數(shù)據(jù)的可靠傳輸。
3、網(wǎng)絡層:數(shù)據(jù)報
在位于不同地理位置的網(wǎng)絡中的兩個主機系統(tǒng)之間提供連接和路徑選擇。Internet的發(fā)展使得從世界各站點訪問信息的用戶數(shù)大大增加,而網(wǎng)絡層正是管理這種連接的層。
4、運輸層:報文段/用戶數(shù)據(jù)報
定義了一些傳輸數(shù)據(jù)的協(xié)議和端口號(WWW端口80等),如:
TCP(transmission control protocol –傳輸控制協(xié)議,傳輸效率低,可靠性強,用于傳輸可靠性要求高,數(shù)據(jù)量大的數(shù)據(jù))
UDP(user datagram protocol–用戶數(shù)據(jù)報協(xié)議,與TCP特性恰恰相反,用于傳輸可靠性要求不高,數(shù)據(jù)量小的數(shù)據(jù),如QQ聊天數(shù)據(jù)就是通過這種方式傳輸?shù)模?主要是將從下層接收的數(shù)據(jù)進行分段和傳輸,到達目的地址后再進行重組。常常把這一層數(shù)據(jù)叫做段。
5、會話層:
通過運輸層(端口號:傳輸端口與接收端口)建立數(shù)據(jù)傳輸?shù)耐?。主要在你的系統(tǒng)之間發(fā)起會話或者接受會話請求(設備之間需要互相認識可以是IP也可以是MAC或者是主機名)
6、表示層:
可確保一個系統(tǒng)的應用層所發(fā)送的信息可以被另一個系統(tǒng)的應用層讀取。例如,PC程序與另一臺計算機進行通信,其中一臺計算機使用擴展二一十進制交換碼(EBCDIC),而另一臺則使用美國信息交換標準碼(ASCII)來表示相同的字符。如有必要,表示層會通過使用一種通格式來實現(xiàn)多種數(shù)據(jù)格式之間的轉(zhuǎn)換。
7.應用層:報文
1 第五層——應用層(application layer)
應用層(application layer):是體系結(jié)構(gòu)中的最高。直接為用戶的應用進程(例如電子郵件、文件傳輸和終端仿真)提供服務。
在因特網(wǎng)中的應用層協(xié)議很多,如支持萬維網(wǎng)應用的HTTP協(xié)議,支持電子郵件的SMTP協(xié)議,支持文件傳送的FTP協(xié)議,DNS,POP3,SNMP,Telnet等等。
2. 第四層——運輸層(transport layer)
運輸層(transport layer):負責向兩個主機中進程之間的通信提供服務。由于一個主機可同時運行多個進程,因此運輸層有復用和分用的功能
復用,就是多個應用層進程可同時使用下面運輸層的服務。
分用,就是把收到的信息分別交付給上面應用層中相應的進程。
運輸層主要使用以下兩種協(xié)議:
(1) 傳輸控制協(xié)議TCP(Transmission Control Protocol):面向連接的,數(shù)據(jù)傳輸?shù)膯挝皇菆笪亩?,能夠提供可靠的交付?/p>
(2) 用戶數(shù)據(jù)包協(xié)議UDP(User Datagram Protocol):無連接的,數(shù)據(jù)傳輸?shù)膯挝皇怯脩魯?shù)據(jù)報,不保證提供可靠的交付,只能提供“盡最大努力交付”。
3. 第三層——網(wǎng)絡層(network layer)
網(wǎng)絡層(network layer)主要包括以下兩個任務:
(1) 負責為分組交換網(wǎng)上的不同主機提供通信服務。在發(fā)送數(shù)據(jù)時,網(wǎng)絡層把運輸層產(chǎn)生的報文段或用戶數(shù)據(jù)報封裝成分組或包進行傳送。在TCP/IP體系中,由于網(wǎng)絡層使用IP協(xié)議,因此分組也叫做IP數(shù)據(jù)報,或簡稱為數(shù)據(jù)報。
(2) 選中合適的路由,使源主機運輸層所傳下來的分組,能夠通過網(wǎng)絡中的路由器找到目的主機。
協(xié)議:IP,ICMP,IGMP,ARP,RARP
4. 第二層——數(shù)據(jù)鏈路層(data link layer)
數(shù)據(jù)鏈路層(data link layer):常簡稱為鏈路層,我們知道,兩個主機之間的數(shù)據(jù)傳輸,總是在一段一段的鏈路上傳送的,也就是說,在兩個相鄰結(jié)點之間傳送數(shù)據(jù)是直接傳送的(點對點),這時就需要使用專門的鏈路層的協(xié)議。
在兩個相鄰結(jié)點之間傳送數(shù)據(jù)時,數(shù)據(jù)鏈路層將網(wǎng)絡層交下來的IP數(shù)據(jù)報組裝成幀(framing),在兩個相鄰結(jié)點之間的鏈路上“透明”地傳送幀中的數(shù)據(jù)。
每一幀包括數(shù)據(jù)和必要的控制信息(如同步信息、地址信息、差錯控制等)。典型的幀長是幾百字節(jié)到一千多字節(jié)。
5. 第一層——物理層(physical layer)
物理層(physical layer):在物理層上所傳數(shù)據(jù)的單位是比特。物理層的任務就是透明地傳送比特流。