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

分享

IP基礎(chǔ)知識

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

基礎(chǔ)知識部分

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


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

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






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


32位


源端口
目的端口
序列號
確認(rèn)號
數(shù)據(jù)偏移
保留
標(biāo)志
窗口
校驗(yàn)和
緊急指針
選項(xiàng)(+)
數(shù)據(jù)(可變)




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

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

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多