2023年-試談http訪問網(wǎng)站過程_第1頁
2023年-試談http訪問網(wǎng)站過程_第2頁
2023年-試談http訪問網(wǎng)站過程_第3頁
2023年-試談http訪問網(wǎng)站過程_第4頁
2023年-試談http訪問網(wǎng)站過程_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

在XX校園網(wǎng)下,在IE中輸入直到顯示結(jié)果,請(qǐng)描述這個(gè)過程是怎么進(jìn)行的,并描述過程中用到的協(xié)議和算法1.若DNS緩存中沒有相關(guān)數(shù)據(jù),則IE瀏覽器先向DNS服務(wù)器發(fā)出DNS請(qǐng)求:這一過程的目的是獲取這個(gè)域名所對(duì)應(yīng)的IP地址。IE瀏覽器向本機(jī)DNS模塊發(fā)出DNS請(qǐng)求,DNS模塊生成相關(guān)的DNS報(bào)文;DNS模塊將生成的DNS報(bào)文傳遞給傳輸層的UDP協(xié)議單元;UDP協(xié)議單元將該數(shù)據(jù)封裝成UDP數(shù)據(jù)報(bào),傳遞給網(wǎng)絡(luò)層的IP協(xié)議單元;IP協(xié)議單元將該數(shù)據(jù)封裝成IP數(shù)據(jù)包,其中目的IP地址為DNS服務(wù)器的IP地址;封裝好的IP數(shù)據(jù)包將傳遞給數(shù)據(jù)鏈路層的協(xié)議單元進(jìn)行發(fā)送;發(fā)送時(shí)如果ARP緩存中沒有相關(guān)數(shù)據(jù),則發(fā)送ARP廣播請(qǐng)求,等待ARP回應(yīng);得到ARP回應(yīng)后,將IP地址與路由下一跳MAC地址對(duì)應(yīng)的信息寫入ARP緩存表;寫入緩存后,以路由下一跳地址填充目的MAC地址,并以數(shù)據(jù)幀形式轉(zhuǎn)發(fā);這個(gè)轉(zhuǎn)發(fā)過程可能會(huì)進(jìn)行多次,這取決于DNS服務(wù)器在校園網(wǎng)中的位置;DNS請(qǐng)求被發(fā)送到DNS服務(wù)器的數(shù)據(jù)鏈路層協(xié)議單元;DNS服務(wù)器的數(shù)據(jù)鏈路層協(xié)議單元解析收到的數(shù)據(jù)幀,將其內(nèi)部所含有的IP數(shù)據(jù)包傳遞給網(wǎng)絡(luò)層IP協(xié)議單元;DNS服務(wù)器的IP協(xié)議單元解析收到的IP數(shù)據(jù)包,將其內(nèi)部所含有的UDP數(shù)據(jù)報(bào)傳遞給傳輸層的UDP協(xié)議單元;DNS服務(wù)器的UDP協(xié)議單元解析收到的UDP數(shù)據(jù)包,將其內(nèi)部所含有的DNS報(bào)文傳遞給該服務(wù)器上的DNS服務(wù)單元;DNS服務(wù)單元收到DNS請(qǐng)求,將域名解析為對(duì)應(yīng)的IP地址,產(chǎn)生DNS回應(yīng)報(bào)文;(所有應(yīng)用層報(bào)文必須通過傳輸層、網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層,因此在下面的敘述中,我將簡(jiǎn)化這一過程的敘述,簡(jiǎn)化形式如下面的樣子,其中單箭頭為本機(jī)內(nèi)部傳遞,雙箭頭為網(wǎng)絡(luò)上的發(fā)送)DNS回應(yīng)報(bào)文一UDP-IP-MAC一一請(qǐng)求域名解析的主機(jī);請(qǐng)求域名解析的主機(jī)收到數(shù)據(jù)幀,該數(shù)據(jù)幀一IP-UDP-DNS-IE瀏覽器;將域名解析的結(jié)果以域名和IP地址對(duì)應(yīng)的形式寫入DNS緩存表。第二次握手16位源端口號(hào)16位目標(biāo)端口號(hào)805136832位序列號(hào)032位確認(rèn)號(hào)1四位首部長(zhǎng)度6位保留URGACKPSHRSTSYMFIN16位窗口大小240010010819216位校驗(yàn)和16位緊急指針0x0d73選項(xiàng)(若有)Maximumsegmentsize:1460(最大分片大小;1460bytes)數(shù)據(jù)第三次握手?.第四步:最后再開始傳輸HTTP報(bào)文EiHypertextTransferProtocolBGET/HTTP/1.l\r\n□[ExpertInfo(Chat/Sequence):GET/HTTP/1.l\r\n][Message:GET/HTTP/1.l\r\n][Severitylevel:Chat][Group:Sequence]RequestMethod:GETRequestURI:/RequestVersion:HTTP/1.1Accept:*/*\r\nAccept-Language:zh-cn\r\n[truneated]User-Agent:Mozilla/4.0(compatible;MSIE7.0;WindowsNT6.1;Trident/4.0;FoxAccept-Encoding:gzip,deflate\r\nHost:ww.baidu.com\r\nConnection:Keep-Alive\r\n[truncated]Cookie:BAIDUID=14D9C96B75D268B45CD45DB893DDAB87:FG=1;BDUSS=p2IGF-eWxZVU90djVU\r\n里面就是加載baidu首頁的一些cookies啊/一些文本什么的…大概了解一下就行了.這樣就完成了整個(gè)訪問HTTP網(wǎng)頁的過程,我這里只是寫幾個(gè)重要的步驟,實(shí)際上,里面還有一些東西,也是比較多的步驟,我需要再進(jìn)一步了解.…2.IE瀏覽器與建立TCP連接:IE瀏覽器向發(fā)出TCP連接請(qǐng)求報(bào)文;該請(qǐng)求TCP報(bào)文中的SYN標(biāo)志位被設(shè)置為1,表示連接請(qǐng)求;該TCP請(qǐng)求報(bào)文一IP(DNS)一MAC(ARP)一一校園網(wǎng)關(guān)一一主機(jī);該TCP請(qǐng)求報(bào)文經(jīng)過IP層時(shí),填入的目的IP地址就是上面DNS過程獲得的IP地址;經(jīng)過數(shù)據(jù)鏈路層時(shí),若MAC地址不明,還要進(jìn)行上面所敘述的ARP過程;收到的數(shù)據(jù)幀一IP-TCP,TCP協(xié)議單元會(huì)回應(yīng)請(qǐng)求應(yīng)答報(bào)文;該請(qǐng)求應(yīng)答TCP報(bào)文中的SYN和ACK標(biāo)志位均被設(shè)置為1,表示連接請(qǐng)求應(yīng)答;該TCP請(qǐng)求應(yīng)答報(bào)文—IP—MAC(ARP)—一校園網(wǎng)關(guān)一—請(qǐng)求主機(jī);請(qǐng)求主機(jī)收到數(shù)據(jù)幀一IP-TCP,TCP協(xié)議單元會(huì)回應(yīng)請(qǐng)求確認(rèn)報(bào)文;該請(qǐng)求應(yīng)答TCP報(bào)文中的ACK標(biāo)志位被設(shè)置為1,表示連接請(qǐng)求確認(rèn);該TCP請(qǐng)求確認(rèn)報(bào)文—IP—MAC(ARP)一一校園網(wǎng)關(guān)一一主機(jī);收到的數(shù)據(jù)幀一IP一TCP,連接建立完成;在這個(gè)過程中,任何一個(gè)報(bào)文出錯(cuò)或超時(shí),都要進(jìn)行重傳;這個(gè)過程被稱為TCP建立連接的三次握手。3.IE瀏覽器開始HTTP訪問過程IE瀏覽器向發(fā)出HTTP-GET方法報(bào)文;該HTTP-GET方法報(bào)文一TCP-IP-MAC—一校園網(wǎng)關(guān)一一主機(jī);收到的數(shù)據(jù)幀一IP一TCP一HTTP,HTTP協(xié)議單元會(huì)回應(yīng)HTTP協(xié)議格式封裝好的HTML超文本形式數(shù)據(jù);HTTP-HTML數(shù)據(jù)一TCP一IP-MAC(ARP)一一校園網(wǎng)關(guān)一一請(qǐng)求主機(jī);請(qǐng)求主機(jī)收到的數(shù)據(jù)幀TP-TCP-HTTP-IE瀏覽器,瀏覽器會(huì)以網(wǎng)頁形式顯示HTML超文本,就是我們所看到的網(wǎng)頁。4.斷開TCP連接IE瀏覽器向發(fā)出TCP連接結(jié)束請(qǐng)求報(bào)文;該請(qǐng)求TCP報(bào)文中的FIN標(biāo)志位被設(shè)置為1,表示結(jié)束請(qǐng)求;該TCP結(jié)束請(qǐng)求報(bào)文一IP-MAC(ARP)一一校園網(wǎng)關(guān)—一主機(jī);收到的數(shù)據(jù)幀一IP-TCP,TCP協(xié)議單元會(huì)回應(yīng)結(jié)束應(yīng)答報(bào)文;該結(jié)束應(yīng)答TCP報(bào)文中的FIN和ACK標(biāo)志位均被設(shè)置為1,表示結(jié)束應(yīng)答;該TCP結(jié)束應(yīng)答報(bào)文一IP一MAC(ARP)一一校園網(wǎng)關(guān)一一請(qǐng)求主機(jī);這個(gè)過程需要雙向進(jìn)行,因此主機(jī)也會(huì)按上述流程再做一次;整個(gè)過程被稱為TCP斷開連接的四次握手。■SHttp訪問過程原理2010-06-2715:55:44標(biāo)簽:訪問Http原理原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接形式標(biāo)明文章原始出處法律責(zé)任。很簡(jiǎn)單的一個(gè)東西,咱們慢慢來分析一下,首先,看一下拓?fù)鋱D:路由^71957168.0.1JljL 拔號(hào)IP:116?25?23.4 <C<人好津J mU00-2R-^6-00-F9-B4±#1:192.168.0.188MAC:00-E0-4OB0-3D-76、作者信息和本聲明。否則將追究網(wǎng)站:www.baidu.comDXS:202.96^34.133假如主機(jī)A要訪問網(wǎng)站:時(shí),主機(jī)A會(huì)立即封裝一個(gè)HTTP的報(bào)文,按照TCP/IP的模型,應(yīng)該是:二層報(bào)文+IP報(bào)文+TCP報(bào)文+HTTP報(bào)文,也就是:數(shù)據(jù)鏈接路+網(wǎng)絡(luò)層+傳輸層+應(yīng)用層…但是主機(jī)A在封裝的過程中,發(fā)現(xiàn)是個(gè)域名,主機(jī)A不知道的IP地址,于是他需要先生成一個(gè)DNS的解析報(bào)文,也就是:二層報(bào)文+IP報(bào)文+TCP報(bào)文+DNS報(bào)文????可是主機(jī)A在封裝的過程中,發(fā)現(xiàn)如果要解釋DNS,必須得與DNS聯(lián)系,而DNS的IP是:33,他與DNS聯(lián)系時(shí)又不知道它的MAC地址,而且很明顯與自己不在同一網(wǎng)段,于是得請(qǐng)求網(wǎng)關(guān)轉(zhuǎn)發(fā)DNS,周時(shí)主機(jī)A也不知道網(wǎng)關(guān)的MAC地址時(shí),就需要向外廣播一條ARP消息、,并得到了路由器的MAC地址….然后請(qǐng)求網(wǎng)關(guān)轉(zhuǎn)發(fā)DNS報(bào)文給33.…所以正個(gè)過程也就是這樣:先ARP得到網(wǎng)關(guān)MAC,再請(qǐng)求網(wǎng)關(guān)轉(zhuǎn)發(fā)DNS報(bào)文,得到ip是:再與建立TCP/IP連接最后再開始傳輸HTTP報(bào)文用wiershark抓包是,大致過程就是這樣(因?yàn)殚_了360,所以里面有兩個(gè)360的廣告新聞DNS,忽略它):No.,TimeSourceDestinationProtocolInfo10.000000RealtekS_bO:3d:76BroadcastARPWhohas192.168.0.1?Tell192.168.0,18820,000471EfmNetwo00:f9:b4RealtekS_bO:3d:76ARPisat00:26:66:00:f9:b430,747554192.168.0.188202.96.134,133DNSStandardqueryAww.baidu.com40,791678 202.96,134.133 192.168.0,18850,82845760,868357192.168.0,18810,868465192.168.0,18880,868782192.168.0,18890,887352192.168.0,188202.96,134,133100.921904192.168.0,188110.931486202.96.134,133121.007198192.168.0,188131.018315192.168.0,188141.018419192.168.0,188151.067202192.168.0,188161.267158192.168.0,188171.329922192.168.0,188181.384170192.168.0,188191.391788192.168.0,188201.610350192.168.0,188PDrDIPAT1cccITTTHNScpNScpcpcpITTcpmcpmcpdtdttthththtTP51368>http[SYN]Seq=0Vin=8192Len=0MSS=1460http>51368[SYN,ACK]Seq=0Ack=lVin=8192Len=0HSS=144051368)http[ACK]Seq=lAck=lWin=64800Len=0GET/HTTP/1.1StandardqueryAu.qurl.f.#http>51368[ACK]Seq=lAck=660Iin=6590Len=0StandardqueryresponseCNAMEqurLqhT[TCPsegmentofareassembledPDU][TCPsegmentofareassembledPDU]51368>http[ACK]Seq=660Ack1668ftn=64800Len=0HTTP/1.1200OK(text/htJil)51368>http[ACK]Seq=660Ack=2479Vin=63989Len=0GET/js/bdsug,js?v=HTTP/1.1http>51368[ACK]Seq=2479Ack=1454Win=8734Len=0HTTP/1.1304NotModified51368>http[ACK]Seq=1454Ack=2608Vin=63860Len=0CP51368>http[RSLACK]Seq=1454Ack=2608WinRLenR既然咱們能抓到包,那么我們就一個(gè)一個(gè)來分析報(bào)文的過程:第一步:得到arp網(wǎng)關(guān)的MAC報(bào)文是這樣的:ARP的報(bào)文格式:以太網(wǎng)目的地址 以太網(wǎng)源地址幀類型奧協(xié)議i硬件s協(xié)議:翳鬻髏嚴(yán)1發(fā)送端IP以i太網(wǎng)地址:發(fā)送端*地i址;目的以太網(wǎng)地;址1 1目的端IP地址1總長(zhǎng)度1(16位)[ 1按報(bào)文內(nèi)容填充就是這樣的:一個(gè)請(qǐng)求,一個(gè)響應(yīng):請(qǐng)求:以太網(wǎng)目的地址以太網(wǎng)源地址幅類型硬件類型協(xié)議類型硬件地址一長(zhǎng)度一協(xié)議長(zhǎng)度0P發(fā)送送以太網(wǎng)地址發(fā)送瑞工P地址目的以太網(wǎng)地址目的湍IP地址總長(zhǎng)度(16倉(cāng))FF-FF-FF-FF-FF-FF00-E0-4C-B0-3D-76OXOOO10X/0800640X000100-E0-4C-B0-3D-76192.168.0.18800-00-00-00-00-00 響應(yīng):以太河目的地址以太網(wǎng)源地址歸類型硬件類型協(xié)議類型硬件地址一長(zhǎng)度」協(xié)議長(zhǎng)度0P發(fā)送端以太網(wǎng)地址發(fā)送瑞IP地址目的以太網(wǎng)地址目的湍IP地址總長(zhǎng)度(16位)00-E0-4C-B0-3D-7600-26-66-00-F9-B40X00010X/0800640X000200-26-66-00-F9-B4192.168.0.100-E0-4C-B0-3D-76192.168.0.188第二步:再請(qǐng)求網(wǎng)關(guān)轉(zhuǎn)發(fā)DNS報(bào)文,得到ip是:0,(在這里,實(shí)際上用了UPD的連接,因不是本文重點(diǎn),且UPD報(bào)文格式簡(jiǎn)單,在這里就不詳細(xì)說了。)一個(gè)請(qǐng)求,一個(gè)響應(yīng):請(qǐng)求:標(biāo)識(shí)標(biāo)志0xelf40x0100問題數(shù)資源記錄數(shù)10授權(quán)資源記錄數(shù)額外資源記錄數(shù)0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論