版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、TCP/IP 協(xié)議棧及 OSI 參考模型詳解OSI參考模型OSI RM:開放系統(tǒng)互連參考模型(open systeminterconnection reference model)OSI參考模型具有以下優(yōu)點(diǎn):· 簡(jiǎn)化了相關(guān)的網(wǎng)絡(luò)操作;· 提供設(shè)備間的兼容性和標(biāo)準(zhǔn)接口;· 促進(jìn)標(biāo)準(zhǔn)化工作;· 結(jié)構(gòu)上可以分隔;· 易于實(shí)現(xiàn)和維護(hù)。20世紀(jì)60年代以來,計(jì)算機(jī)網(wǎng)絡(luò)得到了飛速增長(zhǎng)。各大廠商為了在數(shù)據(jù)通信網(wǎng)絡(luò)領(lǐng)域占據(jù)主導(dǎo)地 位,紛紛推出了各自的網(wǎng)絡(luò)架構(gòu)體系和標(biāo)準(zhǔn),如IBM公司的SNA,Novell IPX/SPX協(xié)議,Apple公司的AppleTalk協(xié)
2、議,DEC公司的DECnet,以及廣泛流行的TCP/IP協(xié)議。同時(shí),各大廠商針對(duì)自己的協(xié)議生產(chǎn)出了不同的硬件和軟件。各個(gè)廠商的共同努力促進(jìn)了網(wǎng)絡(luò)技術(shù)的快速發(fā)展和網(wǎng)絡(luò)設(shè)備種類的迅速增長(zhǎng)。但由于多種協(xié)議的并存,也使網(wǎng)絡(luò)變得越來越復(fù)雜;而且,廠商之間的網(wǎng)絡(luò)設(shè)備大部分不能兼容,很難進(jìn)行通信。為了解決網(wǎng)絡(luò)之間的兼容性問題,幫助各個(gè)廠商生產(chǎn)出可兼容的網(wǎng)絡(luò)設(shè)備,國(guó)際標(biāo)準(zhǔn)化組織ISO于1984年提出了OSI RM(OpenSystem Interconnection Reference Model,開放系統(tǒng)互連參考模型)。OSI 參考模型很快成為計(jì)算機(jī)網(wǎng)絡(luò)通信的基礎(chǔ)模型。在設(shè)計(jì)OSI 參考模型時(shí),遵循了以下原
3、則:各個(gè)層之間有清晰的邊界,實(shí)現(xiàn)特定的功能;層次的劃分有利于國(guó)際標(biāo)準(zhǔn)協(xié)議的制定;層的數(shù)目應(yīng)該足夠多,以避免各個(gè)層功能重復(fù)。 OSI分層通常OSI參考模型第一層到第三層稱為底層(lower layer),又叫介質(zhì)層(media layer),底層負(fù)責(zé)數(shù)據(jù)在網(wǎng)絡(luò)中的傳送,網(wǎng)絡(luò)互連設(shè)備往往位于下三層,以硬件和軟件的方式來實(shí)現(xiàn)。OSI參考模型的第五層到第七層稱為高層(upper layer),又叫住幾層(host layer),高層用于保障數(shù)據(jù)的正確傳輸,以軟件方式來實(shí)現(xiàn)。OSI七層功能:TCP/IP協(xié)議棧由于OSI模型和協(xié)議比較復(fù)雜,所以并沒有得到廣泛的應(yīng)用。而TCP/IP(transfe
4、r control protocol/internet protocol,傳輸控制協(xié)議/網(wǎng)際協(xié)議)模型因其開放性和易用性在實(shí)踐中得到了廣泛的應(yīng)用,TCP/IP協(xié)議棧也成為互聯(lián)網(wǎng)的主流協(xié)議。TCP/IP模型各個(gè)層次分別對(duì)應(yīng)于不同的協(xié)議。TCP/IP協(xié)議棧是數(shù)據(jù)通信協(xié)議的集合 ,包含許多協(xié)議。其協(xié)議棧名字來源于其中最主要的兩個(gè)協(xié)議TCP(傳輸控制協(xié)議)和IP(網(wǎng)際協(xié)議)。TCP/IP協(xié)議棧負(fù)責(zé)確保網(wǎng)絡(luò)設(shè)備之間能夠通信。它是一組規(guī)則,規(guī)定了信息如何在網(wǎng)絡(luò)中傳輸。 TCP/IP模型的層間通信與數(shù)據(jù)封裝TCP/IP每一層都讓數(shù)據(jù)得以通過網(wǎng)絡(luò)進(jìn)行傳輸,這些層之間使用PDU(協(xié)議數(shù)據(jù)單元)彼此交換
5、信息,確保網(wǎng)絡(luò)設(shè)備之間能夠通信。A. 傳輸層數(shù)據(jù)中加入TCP報(bào)頭后得到PDU被稱為segment(數(shù)據(jù)段);B. 數(shù)據(jù)段被傳遞給網(wǎng)絡(luò)層,網(wǎng)絡(luò)層添加IP報(bào)頭得到的PDU被稱為packet(數(shù)據(jù)包);C. 數(shù)據(jù)包被傳遞到數(shù)據(jù)鏈路層,封裝數(shù)據(jù)鏈路層報(bào)頭得到的PDU被稱為frame(數(shù)據(jù)幀);D. 幀被轉(zhuǎn)換為比特,通過網(wǎng)絡(luò)介質(zhì)傳輸。這種協(xié)議棧向下傳遞數(shù)據(jù),并添加報(bào)頭和報(bào)尾的過程稱為封裝,數(shù)據(jù)被封裝并通過網(wǎng)絡(luò)傳輸后,接收設(shè)備將刪除添加的信息,并根據(jù)報(bào)頭中的信息決定如何將數(shù)據(jù)沿協(xié)議棧上傳給合適的應(yīng)用程序,這個(gè)過程稱為解封裝。不同設(shè)備的對(duì)等層之間依靠封裝和解封裝來實(shí)現(xiàn)相互間的通信。物理層物理層功能:
6、3; 規(guī)定介質(zhì)類型、接口類型、信令類型;· 規(guī)范在終端系統(tǒng)之間激活、維護(hù)和關(guān)閉物理鏈路的電氣、機(jī)械、流程和功能等方面的要求;· 規(guī)范電平、數(shù)據(jù)速率、最大傳輸距離和物理接頭等特征。物理層標(biāo)準(zhǔn)規(guī)定了物理介質(zhì)和用于將設(shè)備與物理介質(zhì)相連的接頭。如上圖,局域網(wǎng)常用的物理層標(biāo)準(zhǔn)有IEEE指定的以太網(wǎng)標(biāo)準(zhǔn)802.3、令牌總線標(biāo)準(zhǔn)802.4、令牌環(huán)網(wǎng)標(biāo)準(zhǔn)802.5以及美國(guó)國(guó)家標(biāo)準(zhǔn)組織ANSI的X3T9.5委員會(huì)制訂的光纜標(biāo)準(zhǔn)FDDI(fiber distributed data interface,光纖分布式數(shù)據(jù)接口)等。廣域網(wǎng)常用的物理層標(biāo)準(zhǔn)有電子工業(yè)協(xié)會(huì)和電信工業(yè)協(xié)會(huì)EIA/TIA制定
7、的公共物理層接口標(biāo)準(zhǔn)EIA/TIA-232(即RS-232)、國(guó)際電信聯(lián)盟ITU制定的串行線路接口標(biāo)準(zhǔn)V.24和V.35、以及有關(guān)各種數(shù)字接口的物理和電氣特性的標(biāo)準(zhǔn)G.703等。物理層介質(zhì)和物理層設(shè)備:物理層介質(zhì):· 同軸電纜(coaxical cable)· 雙絞線(twisted pair)· 光纖(fiber)· 無線電波(wireless raido)同軸電纜:同軸電纜是一種早期使用的傳輸介質(zhì),同軸電纜的標(biāo)準(zhǔn)分為兩種,10BASE2和10BASE5.這兩種標(biāo)準(zhǔn)都支持10Mbps的傳輸速率,最長(zhǎng)傳輸距離分別為185米和500米。10BASE5和10
8、BASE2的同軸電纜使用的同軸電纜的直徑分別為9.5mm和5mm,所以前者又稱為粗纜,后者又稱為細(xì)纜。一般情況下,10BASE2同軸電纜使用BNC接頭,10BASE5同軸電纜使用N型接頭。目前,10Mbps的傳輸速率早已不能滿足目前企業(yè)網(wǎng)絡(luò)需求,因此同軸電纜在目前企業(yè)網(wǎng)絡(luò)中很少應(yīng)用。雙絞線:雙絞線采用了一對(duì)互相絕緣的金屬導(dǎo)線互相絞合的方式來抵御一部分外界電磁波干擾。把兩根絕緣的銅導(dǎo)線按一定密度互相絞在一起,可以降低信號(hào)干擾的程度,每一根導(dǎo)線在傳輸中輻射的電波會(huì)被另一根線上發(fā)出的電波抵消,“雙絞線”的名字也是由此而來的。與同軸電纜相比雙絞線(twistedpair)具有更低的制造和部署成本,因此
9、在企業(yè)網(wǎng)絡(luò)中被廣泛應(yīng)用。雙絞線可分為屏蔽雙絞線(shieldedtwisted pair,STP)和非屏蔽雙絞線(unshieldedtwisted pair,UTP)。屏蔽雙絞線在雙絞線與外層絕緣封套之間有一個(gè)金屬屏蔽層,可以屏蔽電磁干擾。雙絞線有很多種類型,不同類型的 雙絞線所支持的傳輸速率一般也不相同。例如,3類雙絞線支持10Mbps傳輸速率;5類雙絞線支持100Mbps傳輸速率,滿足快速以太網(wǎng)標(biāo)準(zhǔn);超5類雙絞線及更高級(jí)別的雙絞線支持千兆以太網(wǎng)傳輸。雙絞線線序:568A線序:1-綠白,2-綠,3-橙白,4-藍(lán),5-藍(lán)白,6-橙,7-棕白,8-棕568B線序:1-橙白,2-橙,3-綠白,4
10、-藍(lán),5-藍(lán)白,6綠,7-棕白,8-棕根據(jù)網(wǎng)線兩端連接網(wǎng)絡(luò)設(shè)備的不同,網(wǎng)線又分為直通線(平行線)和交叉線兩種。直通線(平行線)就是按照前面介紹的568A標(biāo)準(zhǔn)或568B標(biāo)準(zhǔn)制作(即雙絞線兩端的線序一樣,568A的線序不常用,現(xiàn)主流用的都是568B的線序)交叉線的一端保持原來的線序,另一端把1和3對(duì)調(diào),2和5對(duì)調(diào)。直通線和交叉線的應(yīng)用:1. 同種類型設(shè)備之間使用交叉線連接,不同類型設(shè)備之間使用直通線連接;2. 路由器和PC屬于DTE(DataTerminal Equipment,數(shù)據(jù)終端設(shè)備)類型設(shè)備,交換機(jī)和HUB數(shù)據(jù)DCE(Data Circuit-terminatingEquipment,數(shù)
11、據(jù)通信設(shè)備)類型設(shè)備。光纖雙絞線和同軸電纜傳輸數(shù)據(jù)時(shí)使用的是電信號(hào),而光纖傳輸數(shù)據(jù)時(shí)使用的是光信號(hào)。光纖支持的傳輸速率包括10Mbps,100Mbps,1Gbps,10Gbps,甚至更高。根據(jù)光纖傳輸光信號(hào)模式的不同,光纖又可分為單模光纖和多模光纖。單模光纖只能傳輸一種模式的光,不存在模間色散,因此適用于長(zhǎng)距離高速傳輸。多模光纖允許不同模式的光在一根光纖上傳輸,由于模間色散較大而導(dǎo)致信號(hào)脈沖展寬嚴(yán)重,因此多模光纖主要用于局域網(wǎng)中的短距離傳輸。光纖連接器種類喝多,常用的連接器包括ST,FC,SC,LC連接器。串口電纜網(wǎng)絡(luò)通信中常常會(huì)用到各種各樣的串口電纜。常用的串口電纜標(biāo)準(zhǔn)為RS-232,同時(shí)也
12、是推薦的標(biāo)準(zhǔn)。但是RS-232的傳輸速率有限,傳輸距離僅為6米。其他的串口電纜標(biāo)準(zhǔn)可以支持更長(zhǎng)的傳輸距離,例如RS-422和RS-485的傳輸距離可達(dá)1200米。RS-422和RS-485串口電纜通常使用V.35接頭,這種接頭在上世紀(jì)80年代已經(jīng)淘汰,但是現(xiàn)在仍在幀中繼、ATM等傳統(tǒng)網(wǎng)絡(luò)上使用。V.24是RS-232標(biāo)準(zhǔn)的歐洲版。RS-232本身沒有定義接頭標(biāo)準(zhǔn),常用的接頭類型為DB-9和DB-25?,F(xiàn)在,RS-232已逐漸被FireWire、USB等新標(biāo)準(zhǔn)取代,新產(chǎn)品和新設(shè)備已普遍使用USB標(biāo)準(zhǔn)。沖突域如圖是一個(gè)10BASE5以太網(wǎng),每個(gè)主機(jī)都是用同一根同軸電纜來與其它主機(jī)進(jìn)行通信,因此,這
13、里的同軸電纜又被稱為共享介質(zhì),相應(yīng)的網(wǎng)絡(luò)被稱為共享介質(zhì)網(wǎng)絡(luò),或簡(jiǎn)稱為共享式網(wǎng)絡(luò)。共享式網(wǎng)絡(luò)中,不同的主機(jī)同時(shí)發(fā)送數(shù)據(jù)時(shí),就會(huì)產(chǎn)生信號(hào)沖突的問題,解決這一問題的方法一般是采用載波偵聽多路訪問/沖突檢測(cè)技術(shù)(carrier sense multiple access/collisiondetection)。CSMA/CD的基本工作過程如下:1. 終端不停地檢測(cè)共享線路的狀態(tài)。如果線路空閑,則可以發(fā)送數(shù)據(jù);如果線路不空閑,則等待一段時(shí)間后繼續(xù)檢測(cè)(延時(shí)時(shí)間由退避算法決定)。2. 如果有另一個(gè)設(shè)備同時(shí)發(fā)送數(shù)據(jù),兩個(gè)設(shè)備發(fā)送的數(shù)據(jù)會(huì)產(chǎn)生沖突。3. 終端設(shè)備檢測(cè)到?jīng)_突之后,馬上停止發(fā)送自己的數(shù)據(jù),并發(fā)送特
14、殊阻塞信息,以強(qiáng)化沖突信號(hào),使線路上其他站點(diǎn)能夠盡早檢測(cè)到?jīng)_突。4. 終端設(shè)備檢測(cè)到?jīng)_突后,等待一段時(shí)間之后再進(jìn)行數(shù)據(jù)發(fā)送(延時(shí)時(shí)間由退避算法決定)。CSMA/CD的工作原理可簡(jiǎn)單總結(jié)為:先聽后發(fā),邊發(fā)邊聽,沖突停發(fā),隨機(jī)延遲后重發(fā)。物理層設(shè)備:中繼器和集線器數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層又分為MAC子層和LLC子層MACSub-layer:media access controlsub-layer介質(zhì)訪問控制子層MAC子層負(fù)責(zé)指定數(shù)據(jù)如何通過物理線路進(jìn)行傳輸,并向下與物理層通信,它定義了物理編址、網(wǎng)絡(luò)拓?fù)?、線路規(guī)范、錯(cuò)誤通知、按序傳遞和流量控制等功能。LLCSub-layer:logic link c
15、ontrol sub-layer邏輯鏈路控制子層LLC子層負(fù)責(zé)識(shí)別協(xié)議類型并對(duì)數(shù)據(jù)進(jìn)行封裝以便通過網(wǎng)絡(luò)進(jìn)行傳輸。LLC子層主要執(zhí)行數(shù)據(jù)鏈路層的大部分功能和網(wǎng)絡(luò)層的部分功能。如幀的收發(fā)功能,在發(fā)送時(shí),幀由發(fā)送的數(shù)據(jù)加上地址和CRC校驗(yàn)等構(gòu)成,接收時(shí)將幀拆開,執(zhí)行地址識(shí)別、CRC校驗(yàn),并具有幀順序控制、差錯(cuò)控制、流量控制等功能。此外,它還執(zhí)行數(shù)據(jù)報(bào)、虛電路、多路復(fù)用等部分網(wǎng)絡(luò)層的功能。數(shù)據(jù)鏈路層協(xié)議數(shù)據(jù)鏈路層協(xié)議規(guī)定了數(shù)據(jù)鏈路層幀的封裝方式。局域網(wǎng)常用的數(shù)據(jù)鏈路層協(xié)議有IEEE802.2 LLC標(biāo)準(zhǔn)。廣域網(wǎng)常用的數(shù)據(jù)鏈路層協(xié)議有:· HDLC(high-level data link c
16、ontrol,高級(jí)數(shù)據(jù)鏈路控制)· PPP(point-to-point protocol,點(diǎn)到點(diǎn)協(xié)議)· FR(frame relay,幀中繼)數(shù)據(jù)鏈路層-以太網(wǎng)地址(MAC地址)網(wǎng)絡(luò)設(shè)備的MAC地址是全球唯一的。MAC地址由48個(gè)二進(jìn)制位組成,通常我們用十六進(jìn)制數(shù)字來表示。其中前6位十六進(jìn)制數(shù)字由IEEE統(tǒng)一分配給設(shè)備制造商,后6位十六進(jìn)制數(shù)字由廠商自行分配。 網(wǎng)絡(luò)層· 功能:在不同的網(wǎng)絡(luò)之間轉(zhuǎn)發(fā)數(shù)據(jù)包· 提供邏輯地址,如果數(shù)據(jù)跨網(wǎng)絡(luò)傳遞,則需要使用邏輯地址來尋址。· 路由:將數(shù)據(jù)報(bào)文從一個(gè)網(wǎng)絡(luò)轉(zhuǎn)發(fā)到另一個(gè)網(wǎng)絡(luò)。· 設(shè)備
17、:路由器、三層交換機(jī)網(wǎng)絡(luò)層協(xié)議常用網(wǎng)絡(luò)層協(xié)議有:· IP(Internet Protocol):IP為網(wǎng)絡(luò)層最主要的協(xié)議,其功能即為網(wǎng)絡(luò)層的主要功能,一是提供邏輯編址,二是提供路由功能,三是報(bào)文的封裝和解封裝。ICMP、ARP、RARP協(xié)議輔助IP工作。· ICMP(Internet Control Message Protocol)是一個(gè)管理協(xié)議并為IP提供信息服務(wù),ICMP消息承載在IP報(bào)文中。· ARP(Address Resolution Protocol)實(shí)現(xiàn)IP地址到硬件地址的動(dòng)態(tài)映射,即根據(jù)已知的IP地址獲得相應(yīng)的硬件地址。· RARP(R
18、everse Address Resolution Protocol)實(shí)現(xiàn)硬件地址到IP地址的動(dòng)態(tài)映射,即根據(jù)已知的硬件地址獲得相應(yīng)的IP地址。網(wǎng)絡(luò)層地址:網(wǎng)絡(luò)地址在網(wǎng)絡(luò)層唯一標(biāo)識(shí)一臺(tái)網(wǎng)絡(luò)設(shè)備。網(wǎng)絡(luò)地址包含兩部分:網(wǎng)絡(luò)ID+主機(jī)ID(下節(jié)主要內(nèi)容) 傳輸層主要功能:· 分段上層數(shù)據(jù);· 建立端到端連接;· 將數(shù)據(jù)從一端主機(jī)傳送到另一端主機(jī);· 保證數(shù)據(jù)按序、可靠、正確傳輸。傳輸層協(xié)議:傳輸層協(xié)議主要包含傳輸控制協(xié)議TCP(transfer control protocol)和用戶數(shù)據(jù)報(bào)文協(xié)議UDP(user datagram protocol)
19、TCP提供面向連接的、可靠的字節(jié)流服務(wù)。面向連接意味著使用TCP協(xié)議作為傳輸層協(xié)議的兩個(gè)應(yīng)用之間在相互交換數(shù)據(jù)之前必須建立一個(gè)TCP連接。TCP通過確認(rèn)、校驗(yàn)、重組等機(jī)制為上層應(yīng)用提供可靠的傳輸服務(wù)。但是TCP連接的建立以及確認(rèn)、校驗(yàn)等機(jī)制都需要耗費(fèi)大量的工作并且會(huì)帶來大量的開銷。UDP提供簡(jiǎn)單的、面向數(shù)據(jù)報(bào)的服務(wù)。UDP不保證可靠性,即不保證報(bào)文能夠到達(dá)目的地。UDP適用于更關(guān)注傳輸效率的應(yīng)用,如SNMP、Radius等,SNMP監(jiān)控網(wǎng)絡(luò)并斷續(xù)發(fā)送告警等消息,如果每次發(fā)送少量信息都需要建立TCP連接,無疑會(huì)降低傳輸效率,所以諸如SNMP、Radius等更注重傳輸效率的應(yīng)用程序都會(huì)選擇UDP作
20、為傳輸層協(xié)議。另外,UDP還適用于本身具備可靠性機(jī)制的應(yīng)用層協(xié)議。 應(yīng)用層功能· 為用戶提供接口、處理特定的應(yīng)用;· 數(shù)據(jù)加密、解密、壓縮、解壓縮;· 定義數(shù)據(jù)表示的標(biāo)準(zhǔn)。應(yīng)用層協(xié)議應(yīng)用層有許多協(xié)議,以下協(xié)議可以幫助您使用和管理 TCP/IP 網(wǎng)絡(luò):· FTP(File TransferProtocol) 文件傳輸協(xié)議。用于傳輸獨(dú)立的文件,通常用于交互式用戶會(huì)話。· HTTP(HypertextTransfer Protocol)超文本傳輸協(xié)議。 用于傳輸那些構(gòu)成萬維網(wǎng)上的頁(yè)面的文件。· TELNET :遠(yuǎn)程終端訪問。用于傳
21、送具有TELNET控制信息的數(shù)據(jù)。它提供了與終端設(shè)備或終端進(jìn)程交互的標(biāo)準(zhǔn)方法,支持終端到終端的連接及進(jìn)程到進(jìn)程分布式計(jì)算的通信。· SMTP(Simple MessageTransfer Protocol)簡(jiǎn)單郵件傳輸協(xié)議 和· POP3(Post OfficeProtocol)郵局協(xié)議用于發(fā)送和接收郵件。· DNS(Domain NameServer)是一個(gè)域名服務(wù)的協(xié)議,提供域名到IP地址的轉(zhuǎn)換,允許對(duì)域名資源進(jìn)行分散管理。· TFTP(Trivial FileTransfer Protocol)簡(jiǎn)單文件傳輸協(xié)議。設(shè)計(jì)用于一般目的的、高吞吐量的文件傳
22、輸。· RIP(RoutingInformation Protocol)路由器用來在 IP 網(wǎng)絡(luò)上交換路由信息的協(xié)議。· SNMP(Simple NetworkManagement Protocol)用于收集網(wǎng)絡(luò)管理信息,并在網(wǎng)絡(luò)管理控制臺(tái)和網(wǎng)絡(luò)設(shè)備(例如路由器、網(wǎng)橋和服務(wù)器)之間交換網(wǎng)絡(luò)管理信息。· Radius(RemoteAuthentication Dial In User Service)撥號(hào)接入遠(yuǎn)端認(rèn)證協(xié)議完成接入用戶的認(rèn)證、授權(quán)、計(jì)費(fèi)功能的協(xié)議。 TCP/IP協(xié)議棧的封裝過程以傳輸層采用TCP或者UPD、網(wǎng)絡(luò)層采用IP、鏈路層采用Ether
23、net為例,可以看到TCP/IP中報(bào)文的封裝過程如上圖所示。用戶數(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的可靠性:· 面向連接的傳輸· 最大報(bào)文段長(zhǎng)度· 傳輸確認(rèn)機(jī)制· 首部和數(shù)據(jù)的檢驗(yàn)和· 流量控制TCP首部格式TCP使用IP作為網(wǎng)絡(luò)層協(xié)議,TCP數(shù)據(jù)段被封裝在一個(gè)IP數(shù)據(jù)包內(nèi)。TCP
24、數(shù)據(jù)段由TCP Head(頭部)和TCP Data(數(shù)據(jù))組成。TCP最多有60個(gè)字節(jié)的首部,如果沒有任選字段,正常的長(zhǎng)度是20字節(jié)。TCP Head如上圖標(biāo)識(shí)的一些字段組成,這里列出幾個(gè)常用的字段。· 16位源端口號(hào):TCP會(huì)為源應(yīng)用程序分配一個(gè)源端口號(hào)。· 16位目的端口號(hào):目的應(yīng)用程序的端口號(hào)。每個(gè)TCP段都包含源和目的端的端口號(hào),用于尋找發(fā)端和收端應(yīng)用進(jìn)程。這兩個(gè)值加上IP首部中的源端IP地址和目的端IP地址可以唯一確定一個(gè)TCP連接。· 32位序列號(hào):用于標(biāo)識(shí)從TCP發(fā)端向TCP收端發(fā)送的數(shù)據(jù)字節(jié)流。· 32位確認(rèn)序列號(hào):確認(rèn)序列號(hào)包含發(fā)送確認(rèn)
25、的一端所期望收到的下一個(gè)序號(hào)。確認(rèn)序列號(hào)為上次成功收到的數(shù)據(jù)序列號(hào)加1。· 4位首部長(zhǎng)度:表示首部占32bit字的數(shù)目。因?yàn)門CP首部的最大長(zhǎng)度為60字節(jié)。· 16位窗口大?。罕硎窘邮斩似谕邮盏淖止?jié),由于該字段為16位,因而窗口大小最大值為65535字節(jié)。· 16位檢驗(yàn)和:檢驗(yàn)和覆蓋了整個(gè)TCP報(bào)文段,包括TCP首部和TCP數(shù)據(jù)。該值由發(fā)端計(jì)算和存儲(chǔ)并由接收端進(jìn)行驗(yàn)證。TCP的三次握手(建立連接)和四次揮手(斷開連接)TCP連接的建立是一個(gè)三次握手的過程。如圖所示:1、請(qǐng)求端(通常也稱為客戶端)發(fā)送一個(gè)SYN段表示客戶期望連接服務(wù)器端口,初始序列號(hào)為a。2、服務(wù)
26、器發(fā)回序列號(hào)為b的SYN段作為響應(yīng)。同時(shí)設(shè)置確認(rèn)序號(hào)為客戶端的序列號(hào)加1(a+1)作為對(duì)客戶端的SYN報(bào)文的確認(rèn)。3、客戶端設(shè)置序列號(hào)為服務(wù)器端的序列號(hào)加1(b+1)作為對(duì)服務(wù)器端SYN報(bào)文段的確認(rèn)。這三個(gè)報(bào)文段完成TCP連接的建立。TCP連接的建立是一個(gè)三次握手的過程,而TCP連接的終止則要經(jīng)過四次握手。如圖所示:1、請(qǐng)求端(通常也稱為客戶端)想終止連接則發(fā)送一個(gè)FIN段,序列號(hào)設(shè)置為a。2、服務(wù)器回應(yīng)一個(gè)確認(rèn)序號(hào)為客戶端的序列號(hào)加1(a+1)的ACK確認(rèn)段,作為對(duì)客戶端的FIN報(bào)文的確認(rèn)。3、服務(wù)器端向客戶端發(fā)送一個(gè)FIN終止段(設(shè)置序列號(hào)為b,確認(rèn)號(hào)為a+1)。4、客戶端返回一個(gè)確認(rèn)報(bào)文
27、(設(shè)置序列號(hào)為b+1)作為響應(yīng)。以上四次交互完成雙方向的連接的關(guān)閉。TCP滑動(dòng)窗口機(jī)制:TCP滑動(dòng)窗口技術(shù)通過動(dòng)態(tài)改變窗口大小來調(diào)節(jié)兩臺(tái)主機(jī)間的數(shù)據(jù)傳輸。每個(gè)TCP/IP主機(jī)支持全雙工數(shù)據(jù)傳輸,因此TCP有兩個(gè)滑動(dòng)窗口:一個(gè)用于接收數(shù)據(jù),另一個(gè)用于發(fā)送數(shù)據(jù)。TCP使用肯定確認(rèn)技術(shù),其確認(rèn)號(hào)指的是下一個(gè)所期待的字節(jié)。如圖中所示以數(shù)據(jù)單方向發(fā)送為例,介紹滑動(dòng)窗口如何實(shí)現(xiàn)流量控制。服務(wù)器端向客戶端發(fā)送4個(gè)大小為1024字節(jié)的數(shù)據(jù)段,其中發(fā)送端的窗口大小為4096,客戶端到以ACK4097響應(yīng),窗口大小調(diào)整為2048,表明客戶端(即接收端)緩沖區(qū)只能處理2048個(gè)字節(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ù)器可同時(shí)向多個(gè)客戶端傳輸相同的消息。· UDP適用于對(duì)傳輸效率要求高的運(yùn)用。UDP首部格式UDP和TCP一樣都使用IP作為網(wǎng)絡(luò)層協(xié)議,TCP數(shù)據(jù)報(bào)被封裝在一個(gè)IP數(shù)據(jù)包內(nèi)。由于UDP不象TCP一樣提供可靠的傳輸,因此UDP的報(bào)文格式相對(duì)而言較簡(jiǎn)單。整個(gè)UDP首部有如下標(biāo)識(shí):· 16位源端口號(hào):為源端應(yīng)用程序分配的一個(gè)源端口號(hào)。· 16位目的端口號(hào)
29、:目的應(yīng)用程序的端口號(hào)· 16位UDP長(zhǎng)度:是指UDP首部和UDP數(shù)據(jù)的字節(jié)長(zhǎng)度。該字段的最小值為8。· 16位UDP檢驗(yàn)和:該字段提供與TCP檢驗(yàn)和同樣的功能,只不過在UDP協(xié)議中該字段是可選的。TCP VS UDPIP packet網(wǎng)絡(luò)層收到傳輸層的TCP數(shù)據(jù)段后會(huì)再加上網(wǎng)絡(luò)層IP頭部信息。普通的IP頭部固定長(zhǎng)度為20個(gè)字節(jié)(不包含IP選項(xiàng)字段)。IP報(bào)文頭主要由以下字段組成:報(bào)文長(zhǎng)度是指頭部占32比特字的個(gè)數(shù),包括任何選項(xiàng)。由于它是一個(gè)4比特字段,24=16,除掉全0項(xiàng)共有15個(gè)有效值比特字段,其中最大值也為15,表示頭部占15個(gè)32比特。因此32*15/8=60字節(jié)
30、,頭部最長(zhǎng)為60字節(jié)。版本號(hào)(Version)字段標(biāo)明了IP協(xié)議的版本號(hào),目前的協(xié)議版本號(hào)為4。下一代IP協(xié)議的版本號(hào)為6。8比特的服務(wù)類型(TOS,Type of Service)字段包括一個(gè)3比特的優(yōu)先權(quán)字段(COS,Class of Service),4比特TOS字段和1比特未用位。4比特TOS分別代表最小時(shí)延、最大吞吐量、最高可靠性和最小費(fèi)用??傞L(zhǎng)度(Total length)是整個(gè)IP數(shù)據(jù)報(bào)長(zhǎng)度,包括數(shù)據(jù)部分。由于該字段長(zhǎng)16比特,所以IP數(shù)據(jù)報(bào)最長(zhǎng)可達(dá)65535字節(jié)。盡管可以傳送一個(gè)長(zhǎng)達(dá)65535字節(jié)的IP數(shù)據(jù)報(bào),但是大多數(shù)的鏈路層都會(huì)對(duì)它進(jìn)行分片。而且,主機(jī)也要求不能接收超過57
31、6字節(jié)的數(shù)據(jù)報(bào)。UDP限制用戶數(shù)據(jù)報(bào)長(zhǎng)度為512字節(jié),小于576字節(jié)。而事實(shí)上現(xiàn)在大多數(shù)的實(shí)現(xiàn)(特別是那些支持網(wǎng)絡(luò)文件系統(tǒng)NFS的實(shí)現(xiàn))允許超過8192字節(jié)的IP數(shù)據(jù)報(bào)。標(biāo)識(shí)符(Identification)字段唯一地標(biāo)識(shí)主機(jī)發(fā)送的每一份數(shù)據(jù)包。通常每發(fā)送一份報(bào)文它的值就會(huì)加1。生存時(shí)間(TTL,Time to Live)字段設(shè)置了數(shù)據(jù)包可以經(jīng)過的路由器數(shù)目。一旦經(jīng)過一個(gè)路由器,TTL值就會(huì)減1,當(dāng)該字段值為0時(shí),數(shù)據(jù)包將被丟棄。協(xié)議字段確定在數(shù)據(jù)包內(nèi)傳送的上層協(xié)議,和端口號(hào)類似,IP協(xié)議用協(xié)議號(hào)區(qū)分上層協(xié)議。TCP協(xié)議的協(xié)議號(hào)為6,UDP協(xié)議的協(xié)議號(hào)為17。報(bào)頭校驗(yàn)和(Head checks
32、um)字段計(jì)算IP頭部的校驗(yàn)和,檢查報(bào)文頭部的完整性。源IP地址和目的IP地址字段標(biāo)識(shí)數(shù)據(jù)包的源端設(shè)備和目的端設(shè)備IP地址信息。 Ethernet frame以太網(wǎng)頭部由三個(gè)字段組成:DMAC:表示目的終端MAC地址。SMAC:表示源端MAC地址。LENGTH/TYPE字段:根據(jù)值的不同有不同的含義:當(dāng)LENGHT/TYPE > 1500時(shí),代表該數(shù)據(jù)幀的類型(比如上層協(xié)議類型)常見的協(xié)議類型有:· 0X0800 IP數(shù)據(jù)包· 0X0806 ARP請(qǐng)求/應(yīng)答報(bào)文· 0X8035 RARP請(qǐng)求/應(yīng)答報(bào)文。當(dāng)LENGTH/TYPE < 1500時(shí)
33、,代表該數(shù)據(jù)幀的長(zhǎng)度。案例分析如上圖所示,通過例舉出的TELNET協(xié)議的抓包實(shí)例,進(jìn)一步加深對(duì)報(bào)文封裝的理解。上圖為AR1使用TELNET協(xié)議遠(yuǎn)程登錄AR2進(jìn)行的TCP三次握手過程。上圖為數(shù)據(jù)鏈路層封裝。如圖可知使用的是Ethernet II格式封裝。DMAC為:00e0:fc3b:6792SMAC為:00e0:fc80:64f3type:字段為0x0800表明數(shù)據(jù)字段封裝是IP報(bào)文。上圖為網(wǎng)絡(luò)層報(bào)文封裝。一個(gè)網(wǎng)絡(luò)層IP包是由IP頭部和IP數(shù)據(jù)組成。上圖表明是一個(gè)IPv4的報(bào)文報(bào)文頭為20字節(jié)協(xié)議字段為0x06,表明數(shù)據(jù)封裝的是一個(gè)TCP報(bào)文。數(shù)據(jù)的源IP地址為,目的IP地址為上圖為傳輸層數(shù)據(jù)封裝。如圖所示的傳輸層使用的是TCP協(xié)議源端口號(hào)為隨機(jī)端口號(hào)49895,目的端口號(hào)為公認(rèn)TELNET協(xié)議端口號(hào)23附:常用默認(rèn)端口號(hào) 網(wǎng)絡(luò)層數(shù)據(jù)包的包格式里面有個(gè)很重要的字段叫做協(xié)議號(hào)。比如在傳輸層如果是TCP連接那么在網(wǎng)絡(luò)層IP包里面的協(xié)議號(hào)就將會(huì)有個(gè)值是6如果是UDP的話那個(gè)值就是17傳輸層。傳輸層通過接口關(guān)聯(lián)(端口的字段叫做端口)應(yīng)用層。用netstat an 可以查看本機(jī)開放的端口號(hào)。代理服務(wù)器常用以下端口:· HTTP協(xié)議代理服務(wù)器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 南陽(yáng)市房屋安全維修標(biāo)準(zhǔn)
- 綠色森林公園綠化工程合同協(xié)議書
- 電子元件生產(chǎn)企業(yè)地磅管理辦法
- 美容師離職合同樣本
- 電力工程勞務(wù)派遣項(xiàng)目方案
- 八年級(jí)道德與法治開學(xué)摸底考試卷(山東濟(jì)南卷)(答案及評(píng)分標(biāo)準(zhǔn))
- 停車場(chǎng)寵物友好承諾書
- 地下物流中心引孔施工協(xié)議
- 7.1自由平等的真諦(教案)-2022-2023學(xué)年道德與法治八年級(jí)下冊(cè)
- 承包公寓合同范例
- 新版工貿(mào)企業(yè)重大事故隱患-題庫(kù)
- 2024年四川成都鐵路局招聘1015人歷年(高頻重點(diǎn)提升專題訓(xùn)練)共500題附帶答案詳解
- 打印耗材供貨協(xié)議
- 空調(diào)設(shè)備的安裝和修理行業(yè)發(fā)展全景調(diào)研與投資趨勢(shì)預(yù)測(cè)研究報(bào)告
- 工程認(rèn)知實(shí)踐體驗(yàn)智慧樹知到期末考試答案章節(jié)答案2024年中國(guó)海洋大學(xué)
- DLT 5028.3-2015 電力工程制圖標(biāo)準(zhǔn) 第3部分:電氣、儀表與控制部分
- 四川省城市(縣城)建成區(qū)排水管網(wǎng)排查技術(shù)導(dǎo)則
- 食品配送中心租賃合同
- 文化活動(dòng)實(shí)施方案 組委會(huì)職責(zé)
- 產(chǎn)出導(dǎo)向法在譯林版高中英語教材Integrated skills板塊的實(shí)踐探索
- 十八項(xiàng)醫(yī)療核心制度解讀
評(píng)論
0/150
提交評(píng)論