小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IP基礎(chǔ)知識

 為毛要起辛八吉 2016-04-13

基礎(chǔ)知識部分

1、TCP/IP協(xié)議的系統(tǒng)網(wǎng)絡(luò)模型
TCP/IP是由一系列協(xié)議組成的協(xié)議組,其名字是由這些協(xié)議的兩個協(xié)議組成的,即傳輸控制協(xié)議(Transmision Control Protocol——TCP)和網(wǎng)間協(xié)議(Internet Protocol——IP)。TCP/IP與國際標準化組織ISO指定的開放系統(tǒng)互連參考模型OSI相類似,TCP/IP也采用層次化結(jié)構(gòu),共分四層,如圖1-2-1所示:

應(yīng)用層

SMTP

FTP

TELNET


DNS

SNMP

TFTP

ASN.1

傳輸層
TCP
UDP
網(wǎng)間網(wǎng)層
IP
ICMP

網(wǎng)絡(luò)接口層
ARP
RARP










圖1-2-1
TCP/IP協(xié)議的系統(tǒng)網(wǎng)絡(luò)模型

應(yīng)用層:向用戶提供一些常用的應(yīng)用程序,比如文件傳輸、電子郵件等。用戶還可以根據(jù)需要,建立自己的專用程序。應(yīng)用層協(xié)議包括FTP、DNS、TELNET、SMTP、HTTP、SNMP等;
傳輸層:提供應(yīng)用程序端到端的通信。主要包括TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報協(xié)議)協(xié)議。
傳輸層的主要功能為:
格式化信息流,提供可靠傳輸。傳輸層采用接受確認、出錯重發(fā)的通信機制。每一個分組中都帶有校驗和接收端以次來校驗接收分組的正確性。
不同應(yīng)用程序間的識別。為了區(qū)別不同的應(yīng)用程序,傳輸層在每個分組總增加識別信源和信宿應(yīng)用程序的信息。不同的應(yīng)用程序具有不同的端口編號。
網(wǎng)間網(wǎng)層:負責相鄰計算機之間的通信。它負責向傳輸層提供統(tǒng)一的數(shù)據(jù)報,屏蔽各種物理網(wǎng)絡(luò)的數(shù)據(jù)格式的差別。網(wǎng)間網(wǎng)層協(xié)議包括IP、ICMP、ARP、RARP等。網(wǎng)間網(wǎng)層的主要功能如下:
數(shù)據(jù)格式的轉(zhuǎn)換。接收來自傳輸層的呼叫請求,將呼叫請求分組裝入IP數(shù)據(jù)報,填充報頭,選擇去往目的地址的路徑,然后將數(shù)據(jù)報發(fā)往適當?shù)木W(wǎng)絡(luò)端口;
IP地址功能
尋址。接收來自網(wǎng)絡(luò)的數(shù)據(jù)報,檢查其合法性,然后尋找路由——如果數(shù)據(jù)報已到達目的地(本機),則曲調(diào)報頭,將剩下的分組交給傳輸層上適當?shù)膫鬏攨f(xié)議;如果該數(shù)據(jù)報還未到達目的地,則轉(zhuǎn)發(fā)該數(shù)據(jù)報。
尋徑。
處理ICMP報文,“Internet Control Message Protocol”(Internet控制消息協(xié)議)的縮寫,處理路徑、控制、擁塞等問題。控制消息是指網(wǎng)絡(luò)通不通、主機是否可達、路由是否可用等網(wǎng)絡(luò)本身的消息。這些控制消息雖然并不傳輸用戶數(shù)據(jù),但是對于用戶數(shù)據(jù)的傳遞起著重要的作用。我們在網(wǎng)絡(luò)中經(jīng)常會使用到ICMP協(xié)議,只不過我們覺察不到而已。比如我們經(jīng)常使用的用于檢查網(wǎng)絡(luò)通不通的Ping命令,這個“Ping”的過程實際上就是ICMP協(xié)議工作的過程。還有其他的網(wǎng)絡(luò)命令如跟蹤路由的Tracert命令也是基于ICMP協(xié)議的。
網(wǎng)絡(luò)接口層:負責接收數(shù)據(jù)報,通過網(wǎng)絡(luò)向外發(fā)送,或者從網(wǎng)絡(luò)上接收物理幀,抽出IP數(shù)據(jù)報,交給IP層。
TCP/IP協(xié)議的組成
TCP/IP協(xié)議是由一組龐大的協(xié)議群組成,其中常用的協(xié)議及其所在的層次說明如下。
(一)、地址解析協(xié)議ARP/RARP
ARP實現(xiàn)IP地址到物理地址的轉(zhuǎn)換,RARP實現(xiàn)物理地址到IP地址的轉(zhuǎn)換。他們起著屏蔽物理地址的重要作用。物理地址,即為通常所說的MAC地址。MAC地址長48位(12個十六進制數(shù)字),IEEE定義了前6個十六進制數(shù)字表示制造商,后6個十六進制數(shù)字表示接口數(shù)或其他有用信息。末端設(shè)備一般只有一個MAC地址。Router和其它連網(wǎng)設(shè)備通常有多個MAC地址。
(二)、網(wǎng)間互連協(xié)議IP
IP協(xié)議是INTERNET網(wǎng)上最重要的協(xié)議軟件之一。它詳細規(guī)定了INTERNET網(wǎng)上的計算機進行通信時應(yīng)當遵守的規(guī)則。IP負責在網(wǎng)絡(luò)上傳誦由TCP或UDP生成的數(shù)據(jù)段。IP協(xié)議對網(wǎng)絡(luò)上的設(shè)備使用統(tǒng)一的網(wǎng)間網(wǎng)地址,即IP地址,并且根據(jù)IP地址確定路由和目的主機。
IP是網(wǎng)絡(luò)層協(xié)議(第三層),它包括地址訪問信息和路由數(shù)據(jù)包的控制信息。RFC791中有IP的詳細說明,IP是Internet協(xié)議簇中的主要網(wǎng)絡(luò)層協(xié)議,它與傳輸控制協(xié)議(TCP)一起,代表了Internet協(xié)議的核心。IP有兩個主要功能,一是提供通過互聯(lián)網(wǎng)絡(luò)的無連接和最有效的數(shù)據(jù)報分發(fā);二是提供數(shù)據(jù)的分組和重組,以支持最大傳輸單元(MTU)不同的數(shù)據(jù)鏈路。
IP數(shù)據(jù)包格式
IP數(shù)據(jù)包格式如下圖所示。下面對圖中的IP數(shù)據(jù)包格式做幾點說明:
版本:標識現(xiàn)在使用的IP版本。
IP報頭長度(IHL):在一個32位的字節(jié)中指示數(shù)據(jù)報頭的長度。
服務(wù)類型:指定高層協(xié)議希望處理的當前數(shù)據(jù)報的方式,并設(shè)置數(shù)據(jù)報的重要性級別。
總長度:指定整個IP數(shù)據(jù)包以字節(jié)計數(shù)的長度,包括數(shù)據(jù)和報頭。
標識:包含標識當前數(shù)據(jù)報的整型值,該域可幫助將數(shù)據(jù)報組合在一起。
標志:由一個3位的域構(gòu)成,其中兩個低位(權(quán)值最?。┛刂品侄?,最低位標識數(shù)據(jù)包是否可被分段,中間位標識該數(shù)據(jù)包是否是一系列數(shù)據(jù)包中的最后一個。第三位或最高位沒有使用。
段位移:指示該段中的數(shù)據(jù)相對于原始數(shù)據(jù)報中數(shù)據(jù)起點的位置,以便目的地IP進程可以正確地重組原始數(shù)據(jù)報。
生命期:維護一個逐步減小到0的計數(shù)器,0時丟棄數(shù)據(jù)報。這樣可以防止數(shù)據(jù)包無休止地循環(huán)。
協(xié)議:指示當IP進程結(jié)束后,哪一個高層協(xié)議接收收到的數(shù)據(jù)包。
頭校驗和:幫助保證IP頭的完整性。
源地址:標識發(fā)送節(jié)點。
目的地址:標識接收節(jié)點。
選項:允許IP支持多種選項,如安全。
32


數(shù)據(jù):包含高層信息。

版本
IHL
服務(wù)類型
總長度
標識
標志
段位移
生命期
協(xié)議
頭校驗和
源地址
目的地址
選項(+)
數(shù)據(jù)(可變)






圖1-2-2 IP數(shù)據(jù)包的格式
(四)、傳輸控制協(xié)議TCP
TCP的目的是保證可靠數(shù)據(jù)傳輸,提供無差錯的通信服務(wù)。它把從上層應(yīng)用程序傳來的數(shù)據(jù)裝配成標準的數(shù)據(jù)報,保證數(shù)據(jù)的正確傳輸。TCP是一種可靠的、面向連接的協(xié)議,并可以實現(xiàn)流控和差錯控制。TCP提供的可靠性是利用一種稱為“重傳肯定確認(PAR)”機制來實現(xiàn)的。TCP是面向連接的,它在兩個通信主機之間建立一個邏輯的端對端連接,通過握手來實現(xiàn)。TCP的流控是通過窗口來實現(xiàn)。
TCP提供IP環(huán)境下的數(shù)據(jù)可靠傳輸。TCP對應(yīng)OSI參考模型的傳輸層(第四層)。TCP提供的服務(wù)包括數(shù)據(jù)流傳送、可靠性、有效流控、全雙工操作和多路復用。
使用數(shù)據(jù)流傳送,TCP發(fā)送以序列號標識的非結(jié)構(gòu)化比特流。這種服務(wù)給應(yīng)用帶來了便利,因為它們不必在將數(shù)據(jù)傳給TCP之前對數(shù)據(jù)進行分塊。TCP將它們分組,并傳給IP發(fā)送。
通過面向連接、端到端和可靠的數(shù)據(jù)包發(fā)送,TCP提供互聯(lián)網(wǎng)絡(luò)數(shù)據(jù)包傳輸?shù)目煽啃?。TCP通過使用轉(zhuǎn)發(fā)確認號對字節(jié)排序來實現(xiàn)可靠性,確認號將源節(jié)點希望接收的下一個字節(jié)指示給目的節(jié)點。在一段指定時間內(nèi),沒有確認的字節(jié)將重新發(fā)磅。TCP的可靠性機制允許設(shè)備處理丟失、延遲、重復或錯讀數(shù)據(jù)包。超時機制允許設(shè)備檢測丟失的數(shù)據(jù)包并請求重新傳輸。
TCP提供有效的流控,這表示當向源節(jié)點發(fā)送確認時,接收TCP進程指示它們可以接收而不會引起其內(nèi)部緩沖區(qū)溢出的最高序列號。
全雙工操作表示TCP進程可以同時進行發(fā)送和接收。
最后,TCP的多路復用表示大量高層對話可以同時通過一個單獨的連接發(fā)送出去。
建立TCP連接:
為了使用可靠的傳輸服務(wù),TCP主機之間必須建立面向連接的會話。連接是通過使用“三路握手”機制建立的。
通過使兩邊使用相同的起始序列號,三路握手機制可同步一個連接的兩端。這個機制也保證兩邊都為傳輸數(shù)據(jù)作好準備,并知道另一邊已準備好要傳輸?shù)臄?shù)據(jù)。這樣,在會話建立期間和會話結(jié)束后,數(shù)據(jù)包都不會被傳送或重新傳送。
每個主機都隨機選擇一個序列號,并用它跟蹤正在發(fā)送和接收的數(shù)據(jù)流中的字節(jié)。然后,三路握手進行下面的動作:
第一個主機(主機A)通過發(fā)送一個請求連接數(shù)據(jù)包初始化連接,該數(shù)據(jù)包帶有初始序列號(X)和SYN位組。第二個主機(主機B)接收SYN,記錄序列號X,并通過確認SYN(使用一個ACK=X+1)來應(yīng)答。主機B含有其自己的初始化序列號(SEQ=Y)。SYN=20表示主機已經(jīng)收到了0 – 19字節(jié),希望接收字節(jié)20。這個技術(shù)叫作前向確認。然后,主機A通過前向確認,指示主機A希望接收的下一個字節(jié)(ACK=Y+1),并確認主機B發(fā)送的所有字節(jié)。
我們來看看這三次對話的簡單過程:主機A向主機B發(fā)出連接請求數(shù)據(jù)包:我想給你發(fā)數(shù)據(jù),可以嗎?,這是第一次對話;主機B向主機A發(fā)送同意連接和要求同步(同步就是兩臺主機一個在發(fā)送,一個在接收,協(xié)調(diào)工作)的數(shù)據(jù)包:可以,你什么時候發(fā)?,這是第二次對話;主機A再發(fā)出一個數(shù)據(jù)包確認主機B的要求同步:我現(xiàn)在就發(fā),你接著吧!,這是第三次對話。三次對話的目的是使數(shù)據(jù)包的發(fā)送和接收同步,經(jīng)過三次對話之后,主機A才向主機B正式發(fā)送數(shù)據(jù)。
數(shù)據(jù)傳輸開始。
確認和重傳輸(PAR):
一個簡單的傳輸協(xié)議可能會提供可靠的流控技術(shù),使用該技術(shù),源節(jié)點發(fā)送一個數(shù)據(jù)包,啟動定時器,然后在發(fā)送新的數(shù)據(jù)包之前等待一個確認消息。如果在定時器歸0之前還沒有收到確認消息,源節(jié)點就重新傳輸該數(shù)據(jù)包。這種技術(shù)就叫確認和重傳輸。
通過給每個數(shù)據(jù)包設(shè)備一個序列號,主機可用PAR跟蹤丟失或重復的數(shù)據(jù)包。重復數(shù)據(jù)包可能是因網(wǎng)絡(luò)延時而過早重傳輸引起的。該序列號在確認消息中發(fā)回,因此可被跟蹤。
PAR是對帶寬的一種低效使用方法,因為主機在發(fā)送一個新的數(shù)據(jù)包之前,必須等待一個確認消息,并且在同一時間只能發(fā)送一個數(shù)據(jù)包。
TCP滑行窗口:
與PAR相比,TCP滑行窗口提供了對網(wǎng)絡(luò)帶寬更有效的使用方法,它使主機在等待一個確認消息的同時,可以發(fā)送多個字節(jié)組或數(shù)據(jù)包。
在TCP中,接收者在每個數(shù)據(jù)包中指定當前窗口大小。因為TCP提供面向比特流的連接,窗口大小以字節(jié)數(shù)表示。這意味著窗口就是發(fā)送者在等待確認消息的同時可發(fā)送的數(shù)據(jù)字節(jié)數(shù)。在連接建立階段即可指定初始窗口大小,但它隨著發(fā)送數(shù)據(jù)變化,以提供流控,例如一個0大小的窗口表示“沒有數(shù)據(jù)發(fā)送”。
在TCP滑行窗口操作中,發(fā)送者有一系列字節(jié)(序列號為1到10)要發(fā)送給接收者,而接收者的滑行窗口大小為5。那么發(fā)送者將圍繞前五個字節(jié)設(shè)置一個窗口,并將它們同時發(fā)送。然后等待一個確認消息。
接收者會使用ACK=6響應(yīng),指示它已經(jīng)接收到節(jié)字1 – 5,正等待第6個字節(jié)。同樣,接收者將指示窗口大小為5。發(fā)送者將滑行窗口向右移動5個字節(jié),發(fā)磅字節(jié)6 – 10。接收者使用ACK=11響應(yīng),指示它們期望接收序列號為11的字節(jié)。在這個數(shù)據(jù)包中,接收者可能指示其窗口大小為0(如果其內(nèi)部緩沖區(qū)已滿)。這時,發(fā)送者就不能再發(fā)送任何字節(jié),直到接收者發(fā)送另一數(shù)據(jù)包,其中的窗口大小比0大。
TCP數(shù)據(jù)包格式:
下圖給出了一個TCP數(shù)據(jù)包的基本格式。


32位


源端口
目的端口
序列號
確認號
數(shù)據(jù)偏移
保留
標志
窗口
校驗和
緊急指針
選項(+)
數(shù)據(jù)(可變)




圖1-2-3
TCP數(shù)據(jù)包的基本格式

下面對圖所示的TCP數(shù)據(jù)包基本格式做幾點說明:
源端口和目的端口:標識高層源和目的進程接受TCP服務(wù)的點。
序列號:通常指當前消息中的數(shù)據(jù)第一個字節(jié)中設(shè)置的數(shù)值。在連接建立階段,這個域也用于標識在要進行的傳輸中使用的初始化序列號。
確認號:包含數(shù)據(jù)包的發(fā)送者希望接收的數(shù)據(jù)中的下一個字節(jié)的序列號。
數(shù)據(jù)偏移:指向TCP頭中的一個32位的數(shù)值。
保留:用于將來使用。
標志:攜帶各種控制信息,包括用于建立連接的SYN和ACK位及用于結(jié)束連接的FIN位。
窗口:指定發(fā)送者的接收窗口大小(也就是可用于接收數(shù)據(jù)的緩沖區(qū)空間)。
校驗和:指示頭在傳輸是否被破壞。
緊急指針:指向數(shù)據(jù)包中的第一個緊急數(shù)據(jù)字節(jié)。
選項:指定TCP的各種選項。
數(shù)據(jù):包含上層信息。
IP地址結(jié)構(gòu)與表示

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多