TCPIP 協(xié)議棧及 OSI 參考模型詳解_第1頁
TCPIP 協(xié)議棧及 OSI 參考模型詳解_第2頁
TCPIP 協(xié)議棧及 OSI 參考模型詳解_第3頁
TCPIP 協(xié)議棧及 OSI 參考模型詳解_第4頁
TCPIP 協(xié)議棧及 OSI 參考模型詳解_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、TCP/IP 協(xié)議棧及 OSI 參考模型詳解OSI參考模型OSI RM:開放系統(tǒng)互連參考模型(open systeminterconnection reference model)OSI參考模型具有以下優(yōu)點:· 簡化了相關(guān)的網(wǎng)絡(luò)操作;· 提供設(shè)備間的兼容性和標準接口;· 促進標準化工作;· 結(jié)構(gòu)上可以分隔;· 易于實現(xiàn)和維護。20世紀60年代以來,計算機網(wǎng)絡(luò)得到了飛速增長。各大廠商為了在數(shù)據(jù)通信網(wǎng)絡(luò)領(lǐng)域占據(jù)主導(dǎo)地 位,紛紛推出了各自的網(wǎng)絡(luò)架構(gòu)體系和標準,如IBM公司的SNA,Novell IPX/SPX協(xié)議,Apple公司的AppleTalk協(xié)

2、議,DEC公司的DECnet,以及廣泛流行的TCP/IP協(xié)議。同時,各大廠商針對自己的協(xié)議生產(chǎn)出了不同的硬件和軟件。各個廠商的共同努力促進了網(wǎng)絡(luò)技術(shù)的快速發(fā)展和網(wǎng)絡(luò)設(shè)備種類的迅速增長。但由于多種協(xié)議的并存,也使網(wǎng)絡(luò)變得越來越復(fù)雜;而且,廠商之間的網(wǎng)絡(luò)設(shè)備大部分不能兼容,很難進行通信。為了解決網(wǎng)絡(luò)之間的兼容性問題,幫助各個廠商生產(chǎn)出可兼容的網(wǎng)絡(luò)設(shè)備,國際標準化組織ISO于1984年提出了OSI RM(OpenSystem Interconnection Reference Model,開放系統(tǒng)互連參考模型)。OSI 參考模型很快成為計算機網(wǎng)絡(luò)通信的基礎(chǔ)模型。在設(shè)計OSI 參考模型時,遵循了以下原

3、則:各個層之間有清晰的邊界,實現(xiàn)特定的功能;層次的劃分有利于國際標準協(xié)議的制定;層的數(shù)目應(yīng)該足夠多,以避免各個層功能重復(fù)。 OSI分層通常OSI參考模型第一層到第三層稱為底層(lower layer),又叫介質(zhì)層(media layer),底層負責數(shù)據(jù)在網(wǎng)絡(luò)中的傳送,網(wǎng)絡(luò)互連設(shè)備往往位于下三層,以硬件和軟件的方式來實現(xiàn)。OSI參考模型的第五層到第七層稱為高層(upper layer),又叫住幾層(host layer),高層用于保障數(shù)據(jù)的正確傳輸,以軟件方式來實現(xiàn)。OSI七層功能:TCP/IP協(xié)議棧由于OSI模型和協(xié)議比較復(fù)雜,所以并沒有得到廣泛的應(yīng)用。而TCP/IP(transfe

4、r control protocol/internet protocol,傳輸控制協(xié)議/網(wǎng)際協(xié)議)模型因其開放性和易用性在實踐中得到了廣泛的應(yīng)用,TCP/IP協(xié)議棧也成為互聯(lián)網(wǎng)的主流協(xié)議。TCP/IP模型各個層次分別對應(yīng)于不同的協(xié)議。TCP/IP協(xié)議棧是數(shù)據(jù)通信協(xié)議的集合 ,包含許多協(xié)議。其協(xié)議棧名字來源于其中最主要的兩個協(xié)議TCP(傳輸控制協(xié)議)和IP(網(wǎng)際協(xié)議)。TCP/IP協(xié)議棧負責確保網(wǎng)絡(luò)設(shè)備之間能夠通信。它是一組規(guī)則,規(guī)定了信息如何在網(wǎng)絡(luò)中傳輸。 TCP/IP模型的層間通信與數(shù)據(jù)封裝TCP/IP每一層都讓數(shù)據(jù)得以通過網(wǎng)絡(luò)進行傳輸,這些層之間使用PDU(協(xié)議數(shù)據(jù)單元)彼此交換

5、信息,確保網(wǎng)絡(luò)設(shè)備之間能夠通信。A. 傳輸層數(shù)據(jù)中加入TCP報頭后得到PDU被稱為segment(數(shù)據(jù)段);B. 數(shù)據(jù)段被傳遞給網(wǎng)絡(luò)層,網(wǎng)絡(luò)層添加IP報頭得到的PDU被稱為packet(數(shù)據(jù)包);C. 數(shù)據(jù)包被傳遞到數(shù)據(jù)鏈路層,封裝數(shù)據(jù)鏈路層報頭得到的PDU被稱為frame(數(shù)據(jù)幀);D. 幀被轉(zhuǎn)換為比特,通過網(wǎng)絡(luò)介質(zhì)傳輸。這種協(xié)議棧向下傳遞數(shù)據(jù),并添加報頭和報尾的過程稱為封裝,數(shù)據(jù)被封裝并通過網(wǎng)絡(luò)傳輸后,接收設(shè)備將刪除添加的信息,并根據(jù)報頭中的信息決定如何將數(shù)據(jù)沿協(xié)議棧上傳給合適的應(yīng)用程序,這個過程稱為解封裝。不同設(shè)備的對等層之間依靠封裝和解封裝來實現(xiàn)相互間的通信。物理層物理層功能:

6、3; 規(guī)定介質(zhì)類型、接口類型、信令類型;· 規(guī)范在終端系統(tǒng)之間激活、維護和關(guān)閉物理鏈路的電氣、機械、流程和功能等方面的要求;· 規(guī)范電平、數(shù)據(jù)速率、最大傳輸距離和物理接頭等特征。物理層標準規(guī)定了物理介質(zhì)和用于將設(shè)備與物理介質(zhì)相連的接頭。如上圖,局域網(wǎng)常用的物理層標準有IEEE指定的以太網(wǎng)標準802.3、令牌總線標準802.4、令牌環(huán)網(wǎng)標準802.5以及美國國家標準組織ANSI的X3T9.5委員會制訂的光纜標準FDDI(fiber distributed data interface,光纖分布式數(shù)據(jù)接口)等。廣域網(wǎng)常用的物理層標準有電子工業(yè)協(xié)會和電信工業(yè)協(xié)會EIA/TIA制定

7、的公共物理層接口標準EIA/TIA-232(即RS-232)、國際電信聯(lián)盟ITU制定的串行線路接口標準V.24和V.35、以及有關(guān)各種數(shù)字接口的物理和電氣特性的標準G.703等。物理層介質(zhì)和物理層設(shè)備:物理層介質(zhì):· 同軸電纜(coaxical cable)· 雙絞線(twisted pair)· 光纖(fiber)· 無線電波(wireless raido)同軸電纜:同軸電纜是一種早期使用的傳輸介質(zhì),同軸電纜的標準分為兩種,10BASE2和10BASE5.這兩種標準都支持10Mbps的傳輸速率,最長傳輸距離分別為185米和500米。10BASE5和10

8、BASE2的同軸電纜使用的同軸電纜的直徑分別為9.5mm和5mm,所以前者又稱為粗纜,后者又稱為細纜。一般情況下,10BASE2同軸電纜使用BNC接頭,10BASE5同軸電纜使用N型接頭。目前,10Mbps的傳輸速率早已不能滿足目前企業(yè)網(wǎng)絡(luò)需求,因此同軸電纜在目前企業(yè)網(wǎng)絡(luò)中很少應(yīng)用。雙絞線:雙絞線采用了一對互相絕緣的金屬導(dǎo)線互相絞合的方式來抵御一部分外界電磁波干擾。把兩根絕緣的銅導(dǎo)線按一定密度互相絞在一起,可以降低信號干擾的程度,每一根導(dǎo)線在傳輸中輻射的電波會被另一根線上發(fā)出的電波抵消,“雙絞線”的名字也是由此而來的。與同軸電纜相比雙絞線(twistedpair)具有更低的制造和部署成本,因此

9、在企業(yè)網(wǎng)絡(luò)中被廣泛應(yīng)用。雙絞線可分為屏蔽雙絞線(shieldedtwisted pair,STP)和非屏蔽雙絞線(unshieldedtwisted pair,UTP)。屏蔽雙絞線在雙絞線與外層絕緣封套之間有一個金屬屏蔽層,可以屏蔽電磁干擾。雙絞線有很多種類型,不同類型的 雙絞線所支持的傳輸速率一般也不相同。例如,3類雙絞線支持10Mbps傳輸速率;5類雙絞線支持100Mbps傳輸速率,滿足快速以太網(wǎng)標準;超5類雙絞線及更高級別的雙絞線支持千兆以太網(wǎng)傳輸。雙絞線線序:568A線序:1-綠白,2-綠,3-橙白,4-藍,5-藍白,6-橙,7-棕白,8-棕568B線序:1-橙白,2-橙,3-綠白,4

10、-藍,5-藍白,6綠,7-棕白,8-棕根據(jù)網(wǎng)線兩端連接網(wǎng)絡(luò)設(shè)備的不同,網(wǎng)線又分為直通線(平行線)和交叉線兩種。直通線(平行線)就是按照前面介紹的568A標準或568B標準制作(即雙絞線兩端的線序一樣,568A的線序不常用,現(xiàn)主流用的都是568B的線序)交叉線的一端保持原來的線序,另一端把1和3對調(diào),2和5對調(diào)。直通線和交叉線的應(yīng)用:1. 同種類型設(shè)備之間使用交叉線連接,不同類型設(shè)備之間使用直通線連接;2. 路由器和PC屬于DTE(DataTerminal Equipment,數(shù)據(jù)終端設(shè)備)類型設(shè)備,交換機和HUB數(shù)據(jù)DCE(Data Circuit-terminatingEquipment,數(shù)

11、據(jù)通信設(shè)備)類型設(shè)備。光纖雙絞線和同軸電纜傳輸數(shù)據(jù)時使用的是電信號,而光纖傳輸數(shù)據(jù)時使用的是光信號。光纖支持的傳輸速率包括10Mbps,100Mbps,1Gbps,10Gbps,甚至更高。根據(jù)光纖傳輸光信號模式的不同,光纖又可分為單模光纖和多模光纖。單模光纖只能傳輸一種模式的光,不存在模間色散,因此適用于長距離高速傳輸。多模光纖允許不同模式的光在一根光纖上傳輸,由于模間色散較大而導(dǎo)致信號脈沖展寬嚴重,因此多模光纖主要用于局域網(wǎng)中的短距離傳輸。光纖連接器種類喝多,常用的連接器包括ST,FC,SC,LC連接器。串口電纜網(wǎng)絡(luò)通信中常常會用到各種各樣的串口電纜。常用的串口電纜標準為RS-232,同時也

12、是推薦的標準。但是RS-232的傳輸速率有限,傳輸距離僅為6米。其他的串口電纜標準可以支持更長的傳輸距離,例如RS-422和RS-485的傳輸距離可達1200米。RS-422和RS-485串口電纜通常使用V.35接頭,這種接頭在上世紀80年代已經(jīng)淘汰,但是現(xiàn)在仍在幀中繼、ATM等傳統(tǒng)網(wǎng)絡(luò)上使用。V.24是RS-232標準的歐洲版。RS-232本身沒有定義接頭標準,常用的接頭類型為DB-9和DB-25。現(xiàn)在,RS-232已逐漸被FireWire、USB等新標準取代,新產(chǎn)品和新設(shè)備已普遍使用USB標準。沖突域如圖是一個10BASE5以太網(wǎng),每個主機都是用同一根同軸電纜來與其它主機進行通信,因此,這

13、里的同軸電纜又被稱為共享介質(zhì),相應(yīng)的網(wǎng)絡(luò)被稱為共享介質(zhì)網(wǎng)絡(luò),或簡稱為共享式網(wǎng)絡(luò)。共享式網(wǎng)絡(luò)中,不同的主機同時發(fā)送數(shù)據(jù)時,就會產(chǎn)生信號沖突的問題,解決這一問題的方法一般是采用載波偵聽多路訪問/沖突檢測技術(shù)(carrier sense multiple access/collisiondetection)。CSMA/CD的基本工作過程如下:1. 終端不停地檢測共享線路的狀態(tài)。如果線路空閑,則可以發(fā)送數(shù)據(jù);如果線路不空閑,則等待一段時間后繼續(xù)檢測(延時時間由退避算法決定)。2. 如果有另一個設(shè)備同時發(fā)送數(shù)據(jù),兩個設(shè)備發(fā)送的數(shù)據(jù)會產(chǎn)生沖突。3. 終端設(shè)備檢測到?jīng)_突之后,馬上停止發(fā)送自己的數(shù)據(jù),并發(fā)送特

14、殊阻塞信息,以強化沖突信號,使線路上其他站點能夠盡早檢測到?jīng)_突。4. 終端設(shè)備檢測到?jīng)_突后,等待一段時間之后再進行數(shù)據(jù)發(fā)送(延時時間由退避算法決定)。CSMA/CD的工作原理可簡單總結(jié)為:先聽后發(fā),邊發(fā)邊聽,沖突停發(fā),隨機延遲后重發(fā)。物理層設(shè)備:中繼器和集線器數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層又分為MAC子層和LLC子層MACSub-layer:media access controlsub-layer介質(zhì)訪問控制子層MAC子層負責指定數(shù)據(jù)如何通過物理線路進行傳輸,并向下與物理層通信,它定義了物理編址、網(wǎng)絡(luò)拓撲、線路規(guī)范、錯誤通知、按序傳遞和流量控制等功能。LLCSub-layer:logic link c

15、ontrol sub-layer邏輯鏈路控制子層LLC子層負責識別協(xié)議類型并對數(shù)據(jù)進行封裝以便通過網(wǎng)絡(luò)進行傳輸。LLC子層主要執(zhí)行數(shù)據(jù)鏈路層的大部分功能和網(wǎng)絡(luò)層的部分功能。如幀的收發(fā)功能,在發(fā)送時,幀由發(fā)送的數(shù)據(jù)加上地址和CRC校驗等構(gòu)成,接收時將幀拆開,執(zhí)行地址識別、CRC校驗,并具有幀順序控制、差錯控制、流量控制等功能。此外,它還執(zhí)行數(shù)據(jù)報、虛電路、多路復(fù)用等部分網(wǎng)絡(luò)層的功能。數(shù)據(jù)鏈路層協(xié)議數(shù)據(jù)鏈路層協(xié)議規(guī)定了數(shù)據(jù)鏈路層幀的封裝方式。局域網(wǎng)常用的數(shù)據(jù)鏈路層協(xié)議有IEEE802.2 LLC標準。廣域網(wǎng)常用的數(shù)據(jù)鏈路層協(xié)議有:· HDLC(high-level data link c

16、ontrol,高級數(shù)據(jù)鏈路控制)· PPP(point-to-point protocol,點到點協(xié)議)· FR(frame relay,幀中繼)數(shù)據(jù)鏈路層-以太網(wǎng)地址(MAC地址)網(wǎng)絡(luò)設(shè)備的MAC地址是全球唯一的。MAC地址由48個二進制位組成,通常我們用十六進制數(shù)字來表示。其中前6位十六進制數(shù)字由IEEE統(tǒng)一分配給設(shè)備制造商,后6位十六進制數(shù)字由廠商自行分配。 網(wǎng)絡(luò)層· 功能:在不同的網(wǎng)絡(luò)之間轉(zhuǎn)發(fā)數(shù)據(jù)包· 提供邏輯地址,如果數(shù)據(jù)跨網(wǎng)絡(luò)傳遞,則需要使用邏輯地址來尋址。· 路由:將數(shù)據(jù)報文從一個網(wǎng)絡(luò)轉(zhuǎn)發(fā)到另一個網(wǎng)絡(luò)。· 設(shè)備

17、:路由器、三層交換機網(wǎng)絡(luò)層協(xié)議常用網(wǎng)絡(luò)層協(xié)議有:· IP(Internet Protocol):IP為網(wǎng)絡(luò)層最主要的協(xié)議,其功能即為網(wǎng)絡(luò)層的主要功能,一是提供邏輯編址,二是提供路由功能,三是報文的封裝和解封裝。ICMP、ARP、RARP協(xié)議輔助IP工作。· ICMP(Internet Control Message Protocol)是一個管理協(xié)議并為IP提供信息服務(wù),ICMP消息承載在IP報文中。· ARP(Address Resolution Protocol)實現(xiàn)IP地址到硬件地址的動態(tài)映射,即根據(jù)已知的IP地址獲得相應(yīng)的硬件地址。· RARP(R

18、everse Address Resolution Protocol)實現(xiàn)硬件地址到IP地址的動態(tài)映射,即根據(jù)已知的硬件地址獲得相應(yīng)的IP地址。網(wǎng)絡(luò)層地址:網(wǎng)絡(luò)地址在網(wǎng)絡(luò)層唯一標識一臺網(wǎng)絡(luò)設(shè)備。網(wǎng)絡(luò)地址包含兩部分:網(wǎng)絡(luò)ID+主機ID(下節(jié)主要內(nèi)容) 傳輸層主要功能:· 分段上層數(shù)據(jù);· 建立端到端連接;· 將數(shù)據(jù)從一端主機傳送到另一端主機;· 保證數(shù)據(jù)按序、可靠、正確傳輸。傳輸層協(xié)議:傳輸層協(xié)議主要包含傳輸控制協(xié)議TCP(transfer control protocol)和用戶數(shù)據(jù)報文協(xié)議UDP(user datagram protocol)

19、TCP提供面向連接的、可靠的字節(jié)流服務(wù)。面向連接意味著使用TCP協(xié)議作為傳輸層協(xié)議的兩個應(yīng)用之間在相互交換數(shù)據(jù)之前必須建立一個TCP連接。TCP通過確認、校驗、重組等機制為上層應(yīng)用提供可靠的傳輸服務(wù)。但是TCP連接的建立以及確認、校驗等機制都需要耗費大量的工作并且會帶來大量的開銷。UDP提供簡單的、面向數(shù)據(jù)報的服務(wù)。UDP不保證可靠性,即不保證報文能夠到達目的地。UDP適用于更關(guān)注傳輸效率的應(yīng)用,如SNMP、Radius等,SNMP監(jiān)控網(wǎng)絡(luò)并斷續(xù)發(fā)送告警等消息,如果每次發(fā)送少量信息都需要建立TCP連接,無疑會降低傳輸效率,所以諸如SNMP、Radius等更注重傳輸效率的應(yīng)用程序都會選擇UDP作

20、為傳輸層協(xié)議。另外,UDP還適用于本身具備可靠性機制的應(yīng)用層協(xié)議。 應(yīng)用層功能· 為用戶提供接口、處理特定的應(yīng)用;· 數(shù)據(jù)加密、解密、壓縮、解壓縮;· 定義數(shù)據(jù)表示的標準。應(yīng)用層協(xié)議應(yīng)用層有許多協(xié)議,以下協(xié)議可以幫助您使用和管理 TCP/IP 網(wǎng)絡(luò):· FTP(File TransferProtocol) 文件傳輸協(xié)議。用于傳輸獨立的文件,通常用于交互式用戶會話。· HTTP(HypertextTransfer Protocol)超文本傳輸協(xié)議。 用于傳輸那些構(gòu)成萬維網(wǎng)上的頁面的文件。· TELNET :遠程終端訪問。用于傳

21、送具有TELNET控制信息的數(shù)據(jù)。它提供了與終端設(shè)備或終端進程交互的標準方法,支持終端到終端的連接及進程到進程分布式計算的通信。· SMTP(Simple MessageTransfer Protocol)簡單郵件傳輸協(xié)議 和· POP3(Post OfficeProtocol)郵局協(xié)議用于發(fā)送和接收郵件。· DNS(Domain NameServer)是一個域名服務(wù)的協(xié)議,提供域名到IP地址的轉(zhuǎn)換,允許對域名資源進行分散管理。· TFTP(Trivial FileTransfer Protocol)簡單文件傳輸協(xié)議。設(shè)計用于一般目的的、高吞吐量的文件傳

22、輸。· RIP(RoutingInformation Protocol)路由器用來在 IP 網(wǎng)絡(luò)上交換路由信息的協(xié)議。· SNMP(Simple NetworkManagement Protocol)用于收集網(wǎng)絡(luò)管理信息,并在網(wǎng)絡(luò)管理控制臺和網(wǎng)絡(luò)設(shè)備(例如路由器、網(wǎng)橋和服務(wù)器)之間交換網(wǎng)絡(luò)管理信息。· Radius(RemoteAuthentication Dial In User Service)撥號接入遠端認證協(xié)議完成接入用戶的認證、授權(quán)、計費功能的協(xié)議。 TCP/IP協(xié)議棧的封裝過程以傳輸層采用TCP或者UPD、網(wǎng)絡(luò)層采用IP、鏈路層采用Ether

23、net為例,可以看到TCP/IP中報文的封裝過程如上圖所示。用戶數(shù)據(jù)經(jīng)過應(yīng)用層協(xié)議封裝后傳遞給傳輸層,傳輸層封裝TCP頭部,交給網(wǎng)絡(luò)層,網(wǎng)絡(luò)層封裝IP頭部后,再交給數(shù)據(jù)鏈路層,數(shù)據(jù)鏈路層封裝Ethernet幀頭和幀尾,交給物理層,物理層以比特流的形式將數(shù)據(jù)發(fā)送到物理線路上。TCP SegmentTCP協(xié)議概述:TCP為應(yīng)用程序提供一種面向連接的、可靠的服務(wù)。TCP的可靠性:· 面向連接的傳輸· 最大報文段長度· 傳輸確認機制· 首部和數(shù)據(jù)的檢驗和· 流量控制TCP首部格式TCP使用IP作為網(wǎng)絡(luò)層協(xié)議,TCP數(shù)據(jù)段被封裝在一個IP數(shù)據(jù)包內(nèi)。TCP

24、數(shù)據(jù)段由TCP Head(頭部)和TCP Data(數(shù)據(jù))組成。TCP最多有60個字節(jié)的首部,如果沒有任選字段,正常的長度是20字節(jié)。TCP Head如上圖標識的一些字段組成,這里列出幾個常用的字段。· 16位源端口號:TCP會為源應(yīng)用程序分配一個源端口號。· 16位目的端口號:目的應(yīng)用程序的端口號。每個TCP段都包含源和目的端的端口號,用于尋找發(fā)端和收端應(yīng)用進程。這兩個值加上IP首部中的源端IP地址和目的端IP地址可以唯一確定一個TCP連接。· 32位序列號:用于標識從TCP發(fā)端向TCP收端發(fā)送的數(shù)據(jù)字節(jié)流。· 32位確認序列號:確認序列號包含發(fā)送確認

25、的一端所期望收到的下一個序號。確認序列號為上次成功收到的數(shù)據(jù)序列號加1。· 4位首部長度:表示首部占32bit字的數(shù)目。因為TCP首部的最大長度為60字節(jié)。· 16位窗口大?。罕硎窘邮斩似谕邮盏淖止?jié),由于該字段為16位,因而窗口大小最大值為65535字節(jié)。· 16位檢驗和:檢驗和覆蓋了整個TCP報文段,包括TCP首部和TCP數(shù)據(jù)。該值由發(fā)端計算和存儲并由接收端進行驗證。TCP的三次握手(建立連接)和四次揮手(斷開連接)TCP連接的建立是一個三次握手的過程。如圖所示:1、請求端(通常也稱為客戶端)發(fā)送一個SYN段表示客戶期望連接服務(wù)器端口,初始序列號為a。2、服務(wù)

26、器發(fā)回序列號為b的SYN段作為響應(yīng)。同時設(shè)置確認序號為客戶端的序列號加1(a+1)作為對客戶端的SYN報文的確認。3、客戶端設(shè)置序列號為服務(wù)器端的序列號加1(b+1)作為對服務(wù)器端SYN報文段的確認。這三個報文段完成TCP連接的建立。TCP連接的建立是一個三次握手的過程,而TCP連接的終止則要經(jīng)過四次握手。如圖所示:1、請求端(通常也稱為客戶端)想終止連接則發(fā)送一個FIN段,序列號設(shè)置為a。2、服務(wù)器回應(yīng)一個確認序號為客戶端的序列號加1(a+1)的ACK確認段,作為對客戶端的FIN報文的確認。3、服務(wù)器端向客戶端發(fā)送一個FIN終止段(設(shè)置序列號為b,確認號為a+1)。4、客戶端返回一個確認報文

27、(設(shè)置序列號為b+1)作為響應(yīng)。以上四次交互完成雙方向的連接的關(guān)閉。TCP滑動窗口機制:TCP滑動窗口技術(shù)通過動態(tài)改變窗口大小來調(diào)節(jié)兩臺主機間的數(shù)據(jù)傳輸。每個TCP/IP主機支持全雙工數(shù)據(jù)傳輸,因此TCP有兩個滑動窗口:一個用于接收數(shù)據(jù),另一個用于發(fā)送數(shù)據(jù)。TCP使用肯定確認技術(shù),其確認號指的是下一個所期待的字節(jié)。如圖中所示以數(shù)據(jù)單方向發(fā)送為例,介紹滑動窗口如何實現(xiàn)流量控制。服務(wù)器端向客戶端發(fā)送4個大小為1024字節(jié)的數(shù)據(jù)段,其中發(fā)送端的窗口大小為4096,客戶端到以ACK4097響應(yīng),窗口大小調(diào)整為2048,表明客戶端(即接收端)緩沖區(qū)只能處理2048個字節(jié)的數(shù)據(jù)段。于是發(fā)送端改變其發(fā)送速率

28、。發(fā)送接收端能夠接收的數(shù)據(jù)段大小2048的數(shù)據(jù)段。 UDP協(xié)議概述· UDP為應(yīng)用程序提供面向無連接的服務(wù)。傳輸數(shù)據(jù)之前源端和目的端不需要建立連接。· 不需要維持連接狀態(tài),收發(fā)狀態(tài)等,因此服務(wù)器可同時向多個客戶端傳輸相同的消息。· UDP適用于對傳輸效率要求高的運用。UDP首部格式UDP和TCP一樣都使用IP作為網(wǎng)絡(luò)層協(xié)議,TCP數(shù)據(jù)報被封裝在一個IP數(shù)據(jù)包內(nèi)。由于UDP不象TCP一樣提供可靠的傳輸,因此UDP的報文格式相對而言較簡單。整個UDP首部有如下標識:· 16位源端口號:為源端應(yīng)用程序分配的一個源端口號。· 16位目的端口號

29、:目的應(yīng)用程序的端口號· 16位UDP長度:是指UDP首部和UDP數(shù)據(jù)的字節(jié)長度。該字段的最小值為8。· 16位UDP檢驗和:該字段提供與TCP檢驗和同樣的功能,只不過在UDP協(xié)議中該字段是可選的。TCP VS UDPIP packet網(wǎng)絡(luò)層收到傳輸層的TCP數(shù)據(jù)段后會再加上網(wǎng)絡(luò)層IP頭部信息。普通的IP頭部固定長度為20個字節(jié)(不包含IP選項字段)。IP報文頭主要由以下字段組成:報文長度是指頭部占32比特字的個數(shù),包括任何選項。由于它是一個4比特字段,24=16,除掉全0項共有15個有效值比特字段,其中最大值也為15,表示頭部占15個32比特。因此32*15/8=60字節(jié)

30、,頭部最長為60字節(jié)。版本號(Version)字段標明了IP協(xié)議的版本號,目前的協(xié)議版本號為4。下一代IP協(xié)議的版本號為6。8比特的服務(wù)類型(TOS,Type of Service)字段包括一個3比特的優(yōu)先權(quán)字段(COS,Class of Service),4比特TOS字段和1比特未用位。4比特TOS分別代表最小時延、最大吞吐量、最高可靠性和最小費用??傞L度(Total length)是整個IP數(shù)據(jù)報長度,包括數(shù)據(jù)部分。由于該字段長16比特,所以IP數(shù)據(jù)報最長可達65535字節(jié)。盡管可以傳送一個長達65535字節(jié)的IP數(shù)據(jù)報,但是大多數(shù)的鏈路層都會對它進行分片。而且,主機也要求不能接收超過57

31、6字節(jié)的數(shù)據(jù)報。UDP限制用戶數(shù)據(jù)報長度為512字節(jié),小于576字節(jié)。而事實上現(xiàn)在大多數(shù)的實現(xiàn)(特別是那些支持網(wǎng)絡(luò)文件系統(tǒng)NFS的實現(xiàn))允許超過8192字節(jié)的IP數(shù)據(jù)報。標識符(Identification)字段唯一地標識主機發(fā)送的每一份數(shù)據(jù)包。通常每發(fā)送一份報文它的值就會加1。生存時間(TTL,Time to Live)字段設(shè)置了數(shù)據(jù)包可以經(jīng)過的路由器數(shù)目。一旦經(jīng)過一個路由器,TTL值就會減1,當該字段值為0時,數(shù)據(jù)包將被丟棄。協(xié)議字段確定在數(shù)據(jù)包內(nèi)傳送的上層協(xié)議,和端口號類似,IP協(xié)議用協(xié)議號區(qū)分上層協(xié)議。TCP協(xié)議的協(xié)議號為6,UDP協(xié)議的協(xié)議號為17。報頭校驗和(Head checks

32、um)字段計算IP頭部的校驗和,檢查報文頭部的完整性。源IP地址和目的IP地址字段標識數(shù)據(jù)包的源端設(shè)備和目的端設(shè)備IP地址信息。 Ethernet frame以太網(wǎng)頭部由三個字段組成:DMAC:表示目的終端MAC地址。SMAC:表示源端MAC地址。LENGTH/TYPE字段:根據(jù)值的不同有不同的含義:當LENGHT/TYPE > 1500時,代表該數(shù)據(jù)幀的類型(比如上層協(xié)議類型)常見的協(xié)議類型有:· 0X0800 IP數(shù)據(jù)包· 0X0806 ARP請求/應(yīng)答報文· 0X8035 RARP請求/應(yīng)答報文。當LENGTH/TYPE < 1500時

33、,代表該數(shù)據(jù)幀的長度。案例分析如上圖所示,通過例舉出的TELNET協(xié)議的抓包實例,進一步加深對報文封裝的理解。上圖為AR1使用TELNET協(xié)議遠程登錄AR2進行的TCP三次握手過程。上圖為數(shù)據(jù)鏈路層封裝。如圖可知使用的是Ethernet II格式封裝。DMAC為:00e0:fc3b:6792SMAC為:00e0:fc80:64f3type:字段為0x0800表明數(shù)據(jù)字段封裝是IP報文。上圖為網(wǎng)絡(luò)層報文封裝。一個網(wǎng)絡(luò)層IP包是由IP頭部和IP數(shù)據(jù)組成。上圖表明是一個IPv4的報文報文頭為20字節(jié)協(xié)議字段為0x06,表明數(shù)據(jù)封裝的是一個TCP報文。數(shù)據(jù)的源IP地址為,目的IP地址為上圖為傳輸層數(shù)據(jù)封裝。如圖所示的傳輸層使用的是TCP協(xié)議源端口號為隨機端口號49895,目的端口號為公認TELNET協(xié)議端口號23附:常用默認端口號 網(wǎng)絡(luò)層數(shù)據(jù)包的包格式里面有個很重要的字段叫做協(xié)議號。比如在傳輸層如果是TCP連接那么在網(wǎng)絡(luò)層IP包里面的協(xié)議號就將會有個值是6如果是UDP的話那個值就是17傳輸層。傳輸層通過接口關(guān)聯(lián)(端口的字段叫做端口)應(yīng)用層。用netstat an 可以查看本機開放的端口號。代理服務(wù)器常用以下端口:· HTTP協(xié)議代理服務(wù)器

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論