




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、網(wǎng)絡(luò)技術(shù)基礎(chǔ)實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)環(huán)境VB 6.0實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)一:熟悉VB環(huán)境及UDP通信實(shí)驗(yàn)程序的設(shè)計(jì)實(shí) 驗(yàn) 目 的1通過(guò)實(shí)驗(yàn)熟悉VB語(yǔ)言開(kāi)發(fā)平臺(tái)。2通過(guò)實(shí)驗(yàn)進(jìn)一步理解UDP通信協(xié)議,掌握UDP通信協(xié)議的特點(diǎn)。實(shí) 驗(yàn) 原 理在TCP/IP模型中,UDP為網(wǎng)絡(luò)層以上和應(yīng)用層以下提供了一個(gè)簡(jiǎn)單的接口。UDP只提供數(shù)據(jù)的不可靠傳遞,它一旦把應(yīng)用程序發(fā)給網(wǎng)絡(luò)層的數(shù)據(jù)發(fā)送出去,就不保留數(shù)據(jù)備份(所以UDP有時(shí)候也被認(rèn)為是不可靠的數(shù)據(jù)報(bào)協(xié)議)。UDP在IP數(shù)據(jù)報(bào)的頭部?jī)H僅加入了復(fù)用和數(shù)據(jù)校驗(yàn)(字段)。用戶(hù)數(shù)據(jù)文報(bào)協(xié)議 (UDP) 是一個(gè)無(wú)連接協(xié)議。跟 TCP 的操作不同,計(jì)算機(jī)并不建立連接。另外,UDP應(yīng)用程序
2、可以是客戶(hù)機(jī),也可以是服務(wù)器。 應(yīng)用層UDPTCP IP 各種網(wǎng)絡(luò)接口傳輸層為了傳輸數(shù)據(jù),首先要設(shè)置本機(jī)的使用協(xié)議和本機(jī)端口號(hào)。然后,本機(jī)計(jì)算機(jī)只需將RemoteHost設(shè)置為需要聊天的計(jì)算機(jī)的Internet地址,并將RemotePort屬性設(shè)置為跟需要聊天的計(jì)算機(jī)的LocalPort屬性相同的端口,并調(diào)用SendData方法來(lái)發(fā)送信息。最后,本臺(tái)計(jì)算機(jī)使用 DataArrival事件內(nèi)的 GetData 方法來(lái)獲取對(duì)方計(jì)算機(jī)已發(fā)送的信息。實(shí) 驗(yàn) 內(nèi) 容實(shí)驗(yàn)步驟:1. 用自己的名字建立子目錄。2. 進(jìn)入VB6.0,雙擊StandardEXE。3. 出現(xiàn)標(biāo)準(zhǔn)窗體,調(diào)整窗體大小到適當(dāng)尺寸。4.
3、工程名改為UdpTest,窗體名改為FrmMain, 窗體的caprion屬性改為“聊天程序”。5. 添加TextBox控件,名字改為IPAdr,Text屬性為空,用以輸入聊天對(duì)象的IP地址。6. 添加兩個(gè)Lable控件,一個(gè)作為背景色,一個(gè)作為前景色,屬性改為對(duì)方“IP地址”,為了使文字在lable的正中央,調(diào)整兩個(gè)lable的疊放位置。7. 添加CommandButton控件,Caption屬性改為“確定”,用以確定IP地址。實(shí) 驗(yàn) 內(nèi) 容8. 添加TextBox控件,名字改為T(mén)extRecieve,Text屬性為空,MultiLine屬性為T(mén)rue,ScrollBars屬性為2,用以顯示
4、接受聊天內(nèi)容。9. 添加TextBox控件,名字改為T(mén)extSend,Text屬性為空,MultiLine屬性為T(mén)rue,Scrollballs屬性為2,用以顯示發(fā)送聊天內(nèi)容。10. 添加CommandButton控件,Caption屬性改為“發(fā)送”,用以發(fā)送聊天內(nèi)容。11. 添加Winsock控件,名字改為UdpSocket.12. 存盤(pán),存盤(pán)路徑為自己建立的子目錄。程序代碼:Private Sub Command1_Click()UdpSocket.Protocol = sckUDPProtocol 選擇UDP協(xié)議UdpSocket.RemoteHost = IPAdr 遠(yuǎn)方IP地址Udp
5、Socket.RemotePort = 2012 遠(yuǎn)方端口UdpSocket.Bind 2012 本地端口End SubPrivate Sub Command2_Click()UdpSocket.SendData TextSend.TextDim strData1 As StringDim strData2 As StringstrData1 = TextSend.TextstrData2 = 發(fā)送:TextRecieve.Text = TextRecieve & Chr(13) & Chr(10)TextRecieve.Text = TextRecieve & strData2 & strD
6、ata1 本機(jī)發(fā)送數(shù)據(jù)也顯示在TextSend對(duì)話(huà)框中TextSend.Text = 清空發(fā)送文本框End SubPrivate Sub UdpSocket_DataArrival(ByVal bytesTotal As Long)Dim strData As String 定義接收數(shù)據(jù)以字符串形式顯示Dim strData3 As StringUdpSocket.GetData strDatastrData3 = 接收:TextRecieve.Text = TextRecieve & Chr(13) & Chr(10) 在舊數(shù)據(jù)后加回車(chē)換行TextRecieve.Text = TextRec
7、ieve & strData3 & strData 將新數(shù)據(jù)加到舊數(shù)據(jù)之后 都在對(duì)話(huà)框中顯示End Sub實(shí) 驗(yàn) 結(jié) 果 及 分 析1. 運(yùn)行程序,分別和兩個(gè)人聊天2. 聊天雙方在IPAdr中輸入對(duì)方IP地址,點(diǎn)確定,開(kāi)始通信。3. 在TextSend中輸入發(fā)送信息,點(diǎn)發(fā)送,可以在TextReceive中看到對(duì)話(huà)內(nèi)容,自己發(fā)送的是“發(fā)送:”后顯示的內(nèi)容。4. 同理,對(duì)方收到信息后,顯示在對(duì)方TextRecieve中。對(duì)方進(jìn)行同種操作,將可以在本機(jī)的TextRecieve中顯示,顯示在“接收:”后,現(xiàn)在即實(shí)現(xiàn)了利用UDP進(jìn)行雙方聊天。分析: UDP協(xié)議是端到端的協(xié)議,不需要實(shí)現(xiàn)建立連接,只需知道
8、對(duì)方的IP地址就可發(fā)送數(shù)據(jù),每個(gè)報(bào)文都帶有完整的目的地址,協(xié)議比較簡(jiǎn)單,但是它不保證報(bào)文傳輸?shù)目煽啃浴?IP地址知道后,就可以利用SendData發(fā)送數(shù)據(jù),數(shù)據(jù)利用UDP協(xié)議傳輸數(shù)據(jù),接收方利用GataData接收數(shù)據(jù)。至此,雙方可以進(jìn)行正常的聊天??偨Y(jié): 通過(guò)對(duì)UDP通訊實(shí)驗(yàn)的學(xué)習(xí),我們可以利用以前所學(xué)的C語(yǔ)言知識(shí)來(lái)完成代碼的改寫(xiě),起初還有點(diǎn)擔(dān)心編程類(lèi)的實(shí)驗(yàn),怕自己不能夠編出可運(yùn)行的程序來(lái),但真正到了自己動(dòng)手開(kāi)始做的時(shí)候,和以往的實(shí)驗(yàn)一樣,通過(guò)多次的仿真,檢查錯(cuò)誤,直至運(yùn)行結(jié)果出來(lái)??粗约旱膶?shí)驗(yàn)結(jié)果,覺(jué)得自己的一番辛苦沒(méi)有白費(fèi),花再多的時(shí)間也是值得。實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)二:TCP通信程序的設(shè)計(jì)實(shí)
9、驗(yàn) 目 的1、本實(shí)驗(yàn)為驗(yàn)證性實(shí)驗(yàn)。2、掌握TCP協(xié)議的基本原理。3、掌握TCP協(xié)議的通信過(guò)程,加深對(duì)TCP通信協(xié)議的理解。實(shí)驗(yàn)原理TCP是一種面向連接的、可靠的、基于字節(jié)流的運(yùn)輸層(Transport layer)通信協(xié)議。TCP的服務(wù)流程:TCP協(xié)議提供的是可靠的、面向連接的傳輸控制協(xié)議,即在傳輸數(shù)據(jù)前要先建立邏輯連接,然后再傳輸數(shù)據(jù),最后釋放連接3個(gè)過(guò)程。TCP提供端到端、全雙工通信;采用字節(jié)流方式,如果字節(jié)流太長(zhǎng),將其分段;提供緊急數(shù)據(jù)傳送功能。 TCP提供的面向連接意味著兩個(gè)使用TCP的應(yīng)用(通常是一個(gè)客戶(hù)和一個(gè)服務(wù)器)在彼此交換數(shù)據(jù)之前必須先建立一個(gè)TCP連接。TCP連接的建立: T
10、CP協(xié)議通過(guò)三次握手完成連接的建立TCP連接的終止:由于TCP的半關(guān)閉,需要四次握手 實(shí)驗(yàn)步驟:1. 用自己的名字建立子目錄。2. 進(jìn)入VB6.0,雙擊StandardEXE。3. 出現(xiàn)標(biāo)準(zhǔn)窗體,調(diào)整窗體大小到適當(dāng)尺寸。4. 工程名改為T(mén)cpTest,窗體名改為FrmMain, 窗體的caprion屬性改為“數(shù)據(jù)流通信程序”。5. 添加TextBox控件,名字改為T(mén)exrSendYourName,Text屬性為空,用以輸入你的漢語(yǔ)名字。6. 添加TextBox控件,名字改為T(mén)extRecieve,Text屬性為空,MultiLine屬性為T(mén)rue,ScrollBars屬性為2,用以顯示接受數(shù)據(jù)
11、。7. 添加TextBox控件,名字改為T(mén)extSend,Text屬性為空,MultiLine屬性為T(mén)rue,Scrollballs屬性為3,用以顯示你設(shè)計(jì)的程序。8. 添加CommandButton控件,Caption屬性改為“連接”,用以連接服務(wù)器的IP地址。9. 添加CommandButton控件,Caption屬性改為“發(fā)送數(shù)據(jù)”,用以發(fā)送固定格式數(shù)據(jù)。實(shí)驗(yàn)內(nèi)容10. 添加CommandButton控件,Caption屬性改為“發(fā)送姓名”,用以發(fā)送你的漢語(yǔ)名字。11. 添加三個(gè)Lable控件,屬性分別為“發(fā)送”,“接受”,“程序”,用以顯示Text控件的意義。12. 添加Winsock
12、控件,名字改為T(mén)cpSocket.存盤(pán),存盤(pán)路徑為自己建立的子目錄。程序代碼:Private Sub Command1_Click()TcpSocket.CloseTcpSocket.Protocol = sckTCPProtocolTcpSocket.RemoteHost = 129.9.0.XTcpSocket.RemotePort = 2012TcpSocket.ConnectEnd SubPrivate Sub Command2_Click()TcpSocket.SendData 網(wǎng)絡(luò)通信實(shí)驗(yàn)與設(shè)計(jì)End SubPrivate Sub Command3_Click()TcpSocket
13、.SendData TextSendYourName.TextTextSendYourName.Text = End SubPrivate Sub Command4_Click()TcpSocket.SendData TextSend.TextEnd SubPrivate Sub TcpSocket_DataArrival(ByVal bytesTotal As Long)Dim strData As StringTcpSocket.GetData strDataTextReceive.Text = TextReceive & Chr(13) & Chr(10)TextReceive.Text
14、 = TextReceive & strDataEnd Sub運(yùn)行程序:1. 點(diǎn)擊連接。在狀態(tài)欄中可看到“已建立連接,請(qǐng)發(fā)送數(shù)據(jù)“字樣。2. 點(diǎn)發(fā)送數(shù)據(jù),發(fā)送“網(wǎng)絡(luò)通信實(shí)驗(yàn)與設(shè)計(jì)”到服務(wù)器,即在服務(wù)器可以顯示這些文字。狀態(tài)欄中出現(xiàn)“接收數(shù)據(jù)成功,請(qǐng)發(fā)送姓名”。3. 在TextSendYourName中輸入自己的名字,點(diǎn)發(fā)送,在服務(wù)器即可顯示你的名字,狀態(tài)欄顯示“發(fā)送姓名成功,請(qǐng)發(fā)送程序”。將自己的程序復(fù)制到TextRecieve中,點(diǎn)發(fā)送程序,服務(wù)器即可顯示你發(fā)的程序,此時(shí)你的狀態(tài)欄顯示“程序傳送成功,實(shí)驗(yàn)已經(jīng)完成”。實(shí)驗(yàn)結(jié)果及分析TCP界面截圖:TCP服務(wù)器顯示:分析: TCP協(xié)議是面向連接
15、的傳輸協(xié)議,它需要先建立連接,這樣保證了數(shù)據(jù)傳輸?shù)目煽啃浴T诤?jiǎn)化的計(jì)算機(jī)網(wǎng)絡(luò)OSI模型中,它完成第四層傳輸層所指定的功能。應(yīng)用層向TCP層發(fā)送用于網(wǎng)間傳輸?shù)?、?位字節(jié)表示的數(shù)據(jù)流,然后TCP把數(shù)據(jù)流分割成適當(dāng)長(zhǎng)度的報(bào)文段(通常受該計(jì)算機(jī)連接的網(wǎng)絡(luò)的數(shù)據(jù)鏈路層的最大傳送單元(MTU)的限制)。之后TCP把結(jié)果包傳給IP層,由它來(lái)通過(guò)網(wǎng)絡(luò)將包傳送給接收端實(shí)體的TCP層。TCP為了保證不發(fā)生丟包,就給每個(gè)字節(jié)一個(gè)序號(hào),同時(shí)序號(hào)也保證了傳送到接收端實(shí)體的包的按序接收。然后接收端實(shí)體對(duì)已成功收到的字節(jié)發(fā)回一個(gè)相應(yīng)的確認(rèn)(ACK);如果發(fā)送端實(shí)體在合理的往返時(shí)延(RTT)內(nèi)未收到確認(rèn),那么對(duì)應(yīng)的數(shù)據(jù)(假
16、設(shè)丟失了)將會(huì)被重傳??偨Y(jié): 在做實(shí)驗(yàn)之前,我以為并不難做,就像以前做過(guò)的實(shí)驗(yàn)一樣,做完實(shí)驗(yàn)以后兩下子就可以把實(shí)驗(yàn)報(bào)告寫(xiě)完。直到做完了實(shí)驗(yàn)以后,我才真正的認(rèn)識(shí)到其實(shí)這并不容易,是一件很挑戰(zhàn)的事情,然而學(xué)到的知識(shí)與難度卻成正比,讓我受益匪淺。實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)三:基于FTP的文件傳輸程序設(shè)計(jì)實(shí) 驗(yàn) 目 的1、本實(shí)驗(yàn)為設(shè)計(jì)性實(shí)驗(yàn)。2、掌握FTP協(xié)議的基本原理。3、通過(guò)自主設(shè)計(jì)FTP協(xié)議通信程序,進(jìn)一步學(xué)習(xí)理解FTP通信協(xié)議,掌握FTP通信協(xié)議的基本工作原理。 實(shí)驗(yàn)原理FTP 是 TCP/IP 協(xié)議組中的協(xié)議之一,是英文File Transfer Protocol的縮寫(xiě)。該協(xié)議是Internet文件傳送的
17、基礎(chǔ),它由一系列規(guī)格說(shuō)明文檔組成,目標(biāo)是提高文件的共享性,提供非直接使用遠(yuǎn)程計(jì)算機(jī),使存儲(chǔ)介質(zhì)對(duì)用戶(hù)透明和可靠高效地傳送數(shù)據(jù)。簡(jiǎn)單的說(shuō),F(xiàn)TP就是完成兩臺(tái)計(jì)算機(jī)之間的拷貝,從遠(yuǎn)程計(jì)算機(jī)拷貝文件至自己的計(jì)算機(jī)上,稱(chēng)之為“下載(download)”文件。若將文件從自己計(jì)算機(jī)中拷貝至遠(yuǎn)程計(jì)算機(jī)上,則稱(chēng)之為“上傳(upload)”文件。在TCP/IP協(xié)議中,F(xiàn)TP標(biāo)準(zhǔn)命令TCP端口號(hào)為21。FTP也是一個(gè)客戶(hù)/服務(wù)器系統(tǒng)。用戶(hù)通過(guò)一個(gè)客戶(hù)機(jī)程序連接至在遠(yuǎn)程計(jì)算機(jī)上運(yùn)行的服務(wù)器程序。依照 FTP 協(xié)議提供服務(wù),進(jìn)行文件傳送的計(jì)算機(jī)就是 FTP 服務(wù)器,而連接FTP服務(wù)器,遵循FTP協(xié)議與服務(wù)器傳送文件的
18、電腦就是FTP客戶(hù)端。用戶(hù)要連上 FTP 服務(wù)器,就要用到 FPT 的客戶(hù)端軟件。實(shí)驗(yàn)內(nèi)容1.用自己的名字建立子目錄。2.進(jìn)入VB6.0,雙擊StandardEXE。3出現(xiàn)標(biāo)準(zhǔn)窗體,調(diào)整窗體大小到適當(dāng)尺寸。4.工程名改為FtpTest,窗體名改為FrmMain, 窗體的caprion屬性改為“文件傳輸程序”。5.添加TextBox控件,名字改為T(mén)extIP,Text屬性為為服務(wù)器IP地址。6.添加TextBox控件,名字改為T(mén)extPort,Text屬性為21,用以顯示端口號(hào)。7.添加TextBox控件,名字改為T(mén)extUserName,Text屬性為雷玉芬,用以顯示服務(wù)器允許用戶(hù)名。8.添加
19、TextBox控件,名字改為T(mén)extPassWord,屬性為空,PassWord的屬性為“*”,用以顯示密碼。9.添加TextBox控件,名字改為T(mén)extUpFile,Text屬性為空,用以顯示上傳文件路徑和名稱(chēng)。實(shí) 驗(yàn) 內(nèi) 容10.添加TextBox控件,名字改為T(mén)extDownFile,Text屬性為空,用以顯示下載文件路徑和名稱(chēng)。11.添加TextBox控件,名字改為T(mén)extState,Text屬性為空,用以顯示文件輸出狀態(tài)。12.添加CommandButton控件,Caption屬性改為“連接”,用以連接服務(wù)器的IP地址。13.添加CommandButton控件,Caption屬性改為
20、“上傳文件”,用以向服務(wù)器發(fā)送文件。14.添加CommandButton控件,Caption屬性改為“下傳文件”,用以從服務(wù)器下載文件。15.添加7個(gè)Lable控件,屬性分別為“服務(wù)器地址”,“端口”,“用戶(hù)名”,“密碼”,“上傳文件”,“下傳文件”,“狀態(tài)”,用以顯示Text控件的意義。16.添加Internet Transfer控件,名字改為FtpInt.程序代碼:Private Sub Command1_Click() 初始化Internet Transfer 控件 FtpInet.Protocol = icFTP 定義協(xié)議類(lèi)型 FtpInet.RemoteHost = 129.9.0.
21、X 定義FTP服務(wù)器所在IP FtpInet.RemotePort = TextPort.Text 定義服務(wù)器所用端口號(hào) UserName = TextUserName 設(shè)置用戶(hù)名為T(mén)extUserName中輸入的名字 Password = TextPassWord 設(shè)置密碼為T(mén)extPassWord 中輸入的密碼 FtpInet.Execute FTP執(zhí)行End SubPrivate Sub Command2_Click() 發(fā)送文件到服務(wù)器FtpInet.Execute , SEND & TextUpFile.Text 用Execute方法傳送文件,路徑,源文件名和目標(biāo)文件名在TextUp
22、File中輸入End SubPrivate Sub Command3_Click() 下載文件FtpInet.Execute , GET & TextDownFile.Text 用Execute方法下載文件,目標(biāo)文件名,存儲(chǔ)路徑和存儲(chǔ)文件名在TextDownFile中輸入End SubPrivate Sub FtpInet_StateChanged(ByVal State As Integer) 設(shè)置狀態(tài)變化事件TextState.Text = FtpInet.ResponseInfo 在TextState中顯示狀態(tài)信息 End Sub實(shí) 驗(yàn) 結(jié) 果 及 分 析1. 運(yùn)行程序,由于是一人使用本
23、機(jī),為了方便,將用戶(hù)名和服務(wù)器都已在屬性中更改,填寫(xiě)密碼,在服務(wù)器開(kāi)啟的狀態(tài)下,并且都已輸入用戶(hù)信息后,點(diǎn)連接。2. 在TextUpFile中輸入路徑,源文件名和目標(biāo)文件名,點(diǎn)上傳文件,即可在服務(wù)器指定訪(fǎng)問(wèn)目錄中找到自己上傳的文件3. 在TextDownFile中輸入源文件名,存儲(chǔ)路徑和目標(biāo)文件名,點(diǎn)擊下載文件,即可從服務(wù)器指定訪(fǎng)問(wèn)目錄中下載源文件到自己指定的目的文件夾中,文件名為指定目標(biāo)文件名。FTP窗體界面: 分析:上傳文件的目的地址和下載文件的源地址,都是FTP服務(wù)器指定的目錄。FTP 客戶(hù)端首先和FTP服務(wù)器的TCP 21端口建立連接,通過(guò)這個(gè)通道發(fā)送命令,客戶(hù)端需要接收數(shù)據(jù)的時(shí)候在這
24、個(gè)通道上發(fā)送PORT命令。 PORT命令包含了客戶(hù)端用什么端口接收數(shù)據(jù)。在傳送數(shù)據(jù)的時(shí)候,服務(wù)器端通過(guò)自己的TCP 20端口連接至客戶(hù)端的指定端口發(fā)送數(shù)據(jù)。 FTP server必須和客戶(hù)端建立一個(gè)新的連接用來(lái)傳送數(shù)據(jù)??偨Y(jié):由于自己的理論知識(shí)基礎(chǔ)并沒(méi)有十分牢固,在實(shí)驗(yàn)過(guò)程中我遇到了許多難題,這也使我感到了理論知識(shí)的重要性。但是我并沒(méi)有氣餒,在實(shí)驗(yàn)中每當(dāng)發(fā)現(xiàn)了問(wèn)題,就自己看書(shū),或者是與小組同學(xué)討論,其他還不會(huì)的,在經(jīng)過(guò)老師的講解以后,最終解決了問(wèn)題,從而也就加深了我對(duì)課本理論知識(shí)的理解,達(dá)到了“雙贏”的結(jié)果。實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)四:網(wǎng)線(xiàn)制作實(shí)驗(yàn)設(shè)備壓線(xiàn)鉗一把、測(cè)線(xiàn)儀一個(gè)、雙絞線(xiàn)若干段、 RJ-45 水
25、晶頭若干實(shí) 驗(yàn) 目 的1 了解常用網(wǎng)線(xiàn)的種類(lèi)。2 掌握在各種應(yīng)用環(huán)境下非屏蔽雙絞線(xiàn)制作網(wǎng)線(xiàn)的方法及連接方法。3 掌握網(wǎng)線(xiàn)連通性測(cè)試方法。實(shí) 驗(yàn) 原 理雙絞線(xiàn)可按其是否外加金屬網(wǎng)絲套 的屏蔽層而區(qū)分為屏蔽雙絞線(xiàn)()和非屏蔽雙絞線(xiàn)()。從性?xún)r(jià)比和可維護(hù)性出發(fā),大多數(shù)局域網(wǎng)使用非屏蔽雙絞線(xiàn)() 作為布線(xiàn)的傳輸介質(zhì)來(lái)組網(wǎng)。 雙絞線(xiàn)由根不同顏色的線(xiàn)分成對(duì)絞合在一起, 成對(duì)扭絞是因?yàn)椋l(fā)送和接收的數(shù)據(jù)均以差分方式傳輸,即每一對(duì)線(xiàn)互相扭在一起傳輸一路差分信號(hào)(所謂的差分信號(hào)是指一根線(xiàn)以正電平方式傳輸信號(hào),另外一根線(xiàn)以負(fù)電平方式傳輸同一信號(hào)),當(dāng)線(xiàn)路中出現(xiàn)干擾信號(hào)時(shí),其對(duì)兩根線(xiàn)的影響是相同的,因而在接收端還原
26、差分信號(hào)時(shí)就可以屏蔽掉該干擾信號(hào),減少和抑制外界的干擾,從而減少和抑制外界的干擾。絞線(xiàn)由8很不同顏色的線(xiàn)分成4對(duì)絞合在一起,成對(duì)扭絞的作用是盡可能減少電磁輻射與外部電磁干擾的影響。在EIATIA568標(biāo)準(zhǔn)中,將雙絞線(xiàn)按電氣特性區(qū)分為:三類(lèi)、四類(lèi)、五類(lèi)線(xiàn)。網(wǎng)絡(luò)中最常用的是三類(lèi)線(xiàn)和五類(lèi)線(xiàn),目前已有六類(lèi)以上的。 做好的網(wǎng)線(xiàn)要將RJ45水晶頭接入網(wǎng)卡等網(wǎng)絡(luò)設(shè)備的RJ45插座內(nèi)。相應(yīng)地RJ45插頭座也區(qū)分為三類(lèi)或五類(lèi)電氣特性。RJ45水晶頭由金屬片和塑料構(gòu)成,制作網(wǎng)線(xiàn)所需要的RJ一45水晶接頭前端有8個(gè)凹僧,簡(jiǎn)稱(chēng)“SE”(Position,位置)。凹槽內(nèi)的金屬觸點(diǎn)共有8個(gè),簡(jiǎn)稱(chēng)“8C”( Contact
27、,觸點(diǎn))。特別需要注意的是RJ45水晶頭引腳序號(hào),當(dāng)金屬片面對(duì)我們的時(shí)候從左至右引腳序號(hào)是18,序號(hào)對(duì)于網(wǎng)絡(luò)連線(xiàn)非常重要。網(wǎng)線(xiàn)制作方法有兩種: ( 1 ) 直通線(xiàn):雙絞線(xiàn)兩邊都按照EIAT/TIA 568B 標(biāo)準(zhǔn)連接水晶頭。 ( 2 ) 交叉線(xiàn):雙絞線(xiàn)一邊是按照EIAT/TIA 568A 標(biāo)準(zhǔn)連接,另一邊按照 EIT/TIA 568B 標(biāo)準(zhǔn)連接水晶頭。 用戶(hù)可根據(jù)實(shí)際需要選用直通線(xiàn)或交叉線(xiàn),各種使用情況如下( PC :計(jì)算機(jī)、 HUB :集線(xiàn)器、SWITCH :交換機(jī)、ROUTER :路由器): PC PC : 交叉線(xiàn); PC HUB : 直通線(xiàn); HUB 普通口 HUB 普通口: 交叉線(xiàn);
28、HUB 級(jí)聯(lián)口 HUB 級(jí)聯(lián)口:交叉線(xiàn)本實(shí)驗(yàn)使用直通線(xiàn):雙絞線(xiàn)兩邊都按照EIAT/TIA 568B 標(biāo)準(zhǔn)連接水晶頭,線(xiàn)序:白橙橙白綠藍(lán)白藍(lán)綠白棕棕。在實(shí)際通信中,只用到雙絞線(xiàn)八根銅線(xiàn)中的第1 、2 、3 、6 四條銅線(xiàn)。實(shí) 驗(yàn) 內(nèi) 容 及 步 驟 1 、先用雙絞線(xiàn)剝線(xiàn)器將雙絞線(xiàn)的外皮除去3 厘米左右。 2 、將裸露的雙絞線(xiàn)中的橙色對(duì)線(xiàn)撥向自己的左方,棕色對(duì)線(xiàn)撥向右方向,綠色 對(duì)線(xiàn)撥向前方,藍(lán)色對(duì)線(xiàn)撥向后方,如下圖所示。左:橙前:綠后:藍(lán)右: 棕。小心的剝開(kāi)每一對(duì)線(xiàn),按EIA TIA 568B 的標(biāo)準(zhǔn)( 白橙橙白綠藍(lán) 白藍(lán)綠白棕棕) 排列好。3 、把線(xiàn)整齊,將裸露出的雙絞線(xiàn)用專(zhuān)用鉗剪下,只剩約1
29、4mm 的長(zhǎng)度,并剪齊 線(xiàn)頭。將雙絞線(xiàn)的每一根線(xiàn)依序放入RJ45 接頭的引腳內(nèi),第一只引腳內(nèi)應(yīng)該放 白橙色的線(xiàn),其余類(lèi)推。4 、確定雙絞線(xiàn)的每根線(xiàn)已經(jīng)放置正確,并查看每根線(xiàn)是否進(jìn)入到水晶頭的底部 位置。如到了底部就可以用RJ45 壓線(xiàn)鉗壓接RJ45 接頭。這樣RJ45 頭就制作 完成了。 5 、用RJ45 壓線(xiàn)鉗壓接RJ45 接頭,把水晶頭里的八塊小銅片壓下去后,使每 一塊銅片的尖角都觸到一根銅線(xiàn),這樣制作完成了一個(gè)RJ45 頭。同樣完成另一 端的RJ45 接頭。6 、最后用測(cè)試儀測(cè)試一下通斷性。 RJ-45水晶頭實(shí) 驗(yàn) 結(jié) 果 及 分 析1. 使用測(cè)線(xiàn)儀測(cè)試直通線(xiàn)的連接情況,選擇線(xiàn)路測(cè)試選項(xiàng)
30、,先將被測(cè)網(wǎng)線(xiàn)的一個(gè)接頭插入測(cè)試接口。2. 在選擇確認(rèn)以后,馬上將網(wǎng)線(xiàn)另一頭插入另一個(gè)測(cè)試端口。3. 觀測(cè)線(xiàn)路測(cè)試結(jié)果。測(cè)試儀顯示出現(xiàn)了交叉和X,表明制作的網(wǎng)線(xiàn)接頭的線(xiàn)序出現(xiàn)了問(wèn)題,此網(wǎng)線(xiàn)也就不能正常使用。究其原因主要是我們組有人將EIA TIA 568B 的標(biāo)準(zhǔn)記混了,出現(xiàn)了交叉,并且整理線(xiàn)的時(shí)候也沒(méi)有注意到中間有根線(xiàn)是沒(méi)有進(jìn)入到水晶頭的底部位置。重新制作以后,測(cè)線(xiàn)儀顯示S和M都是直接相連,并且沒(méi)有X出現(xiàn),這樣表明三條網(wǎng)線(xiàn)都能正常使用。分析: 做水晶頭時(shí),使水晶頭的彈片朝外,入線(xiàn)口朝下,從左到右,遵循上面的線(xiàn)序,充分插入線(xiàn)(以在水晶頭的頂部看到雙絞線(xiàn)的銅心為標(biāo)準(zhǔn)),然后用網(wǎng)線(xiàn)鉗夾一下,就可以
31、了。 1、同種類(lèi)型設(shè)備之間使用交叉線(xiàn)連接,不同類(lèi)型設(shè)備之間使用直通線(xiàn)連接; 2、路由器和PC屬于DTE類(lèi)型設(shè)備,交換機(jī)和HUB屬于DCE類(lèi)型設(shè)備; 3、RJ45網(wǎng)絡(luò)接頭做法一般有568A和568B兩種標(biāo)準(zhǔn)做法,按同一標(biāo)準(zhǔn)即直通線(xiàn),不同標(biāo)準(zhǔn)即交叉線(xiàn)。 不管如何接線(xiàn),最后完成后用RJ-45測(cè)線(xiàn)儀測(cè)試時(shí),8個(gè)指示燈都應(yīng)依次閃爍??偨Y(jié): 通過(guò)本次實(shí)驗(yàn)我學(xué)會(huì)了如何制作網(wǎng)線(xiàn),同時(shí)也能熟練使用剝線(xiàn)/壓線(xiàn)鉗和測(cè)線(xiàn)儀。在實(shí)驗(yàn)過(guò)程中也出現(xiàn)了一些問(wèn)題,我們已經(jīng)找到原因并且解決額問(wèn)題。這個(gè)實(shí)驗(yàn)很有意義,它讓我對(duì)網(wǎng)線(xiàn)、水晶頭構(gòu)造有了全面的了解,而且讓我增加了一門(mén)很實(shí)用的技能。實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)五:路由器配置及組網(wǎng)實(shí)驗(yàn)設(shè)備路由
32、器3臺(tái),PC機(jī)3臺(tái),直通線(xiàn)若干實(shí) 驗(yàn) 目 的1、 熟悉思科VPN路由器的基本組成和功能;2、 掌握路由器的基本配置及測(cè)試;3、 使用路由器實(shí)現(xiàn)跨網(wǎng)段連接,掌握RIP的配置過(guò)程。實(shí) 驗(yàn) 原 理路由器工作于OSI七層協(xié)議中的第三層,是用于網(wǎng)絡(luò)互連的計(jì)算機(jī)設(shè)備,其主要任務(wù)是接收來(lái)自一個(gè)網(wǎng)絡(luò)接口的數(shù)據(jù)包,根據(jù)其中所含的目的地址,決定轉(zhuǎn)發(fā)到下一個(gè)目的地址。因此,路由器首先得在轉(zhuǎn)發(fā)路由表中查找它的目的地址,若找到了目的地址,就在數(shù)據(jù)包的幀格前添加下一個(gè)MAC地址,同時(shí)IP數(shù)據(jù)包頭的TTL(Time To Live)域也開(kāi)始減數(shù),并重新計(jì)算校驗(yàn)和。當(dāng)數(shù)據(jù)包被送到輸出端口時(shí),它需要按順序等待,以便被傳送到輸出
33、鏈路上。因此路由器也就必須有多個(gè)三層接口連接不同的網(wǎng)絡(luò),協(xié)議也至少向上實(shí)現(xiàn)到網(wǎng)絡(luò)層,具有存儲(chǔ)、轉(zhuǎn)發(fā)、尋徑功能。路由器的主要工作就是為經(jīng)過(guò)路由器的每個(gè)數(shù)據(jù)幀尋找一條最佳傳輸路徑,并將該數(shù)據(jù)有效地傳送到目的站點(diǎn)。由此可見(jiàn),選擇最佳路徑的策略即路由算法是路由器的關(guān)鍵所在。為了完成這項(xiàng)工作,在路由器中保存著各種傳輸路徑的相關(guān)數(shù)據(jù)路徑表(Routing Table),供路由選擇;時(shí)使用。路徑表中保存著子網(wǎng)的標(biāo)志信息、網(wǎng)上路由器的個(gè)數(shù)和下一個(gè)路由器的名字等內(nèi)容。路徑表可以是由系統(tǒng)管理員固定設(shè)置好的,也可以由系統(tǒng)動(dòng)態(tài)修改,可以由路由器自動(dòng)調(diào)整,也可以由主機(jī)控制。路由器為了獲得路由表,通常使用RIP.RIP的
34、特點(diǎn):(1)僅和相鄰的路由器交換信息。(2)路由器交換的信息是當(dāng)前本路由器所知道的全部信息。 (3)按固定時(shí)間交換路由信息。實(shí) 驗(yàn) 內(nèi) 容實(shí)驗(yàn)步驟:(一)路由器的基本配置實(shí)驗(yàn)1.組建網(wǎng)絡(luò)Router1 PC機(jī)1Router2PC機(jī)1 Wan1 Wan2用已經(jīng)做好的直通網(wǎng)線(xiàn)按上圖進(jìn)行連接,兩個(gè)路由器都選擇Wan1口于各自的PC機(jī)相連。1.配置好本地連接的IP地址,Router1和Router2分別選擇3和0。默認(rèn)網(wǎng)關(guān)分別設(shè)為和,對(duì)兩臺(tái)路由器進(jìn)行復(fù)位操作。2.配置路由器11)在網(wǎng)2的PC機(jī)打開(kāi)瀏覽器,在地址欄中
35、鍵入,輸入用戶(hù)名“admin”,密碼“admin”進(jìn)行登錄。2)登錄后觀測(cè)“Port Statistics”端口狀態(tài)顯示是否正確,如不正確,再次進(jìn)行復(fù)位操作。3)進(jìn)入“setup”配置頁(yè)面中的“Network”子頁(yè)面開(kāi)始進(jìn)行配置。配置參數(shù)如下:Device IP Address: (設(shè)置Wan2路由器IP)Subnet mask:DualWAN/DMZ Setting選擇“Duanl Wan”Wan1設(shè)置 static IPSpecify Wan IP Address:Subnet Mas
36、k:Default Gateway Address:DNS Server:4)“setup“配置頁(yè)面的“advanced”子頁(yè)面配置如下:Working Mode 選擇“Router“模式RIP選擇“Enabled“5)進(jìn)入“firewall“頁(yè)面關(guān)閉防火墻,修改路由器密碼6)Router1的配置過(guò)程相同,僅需將路由器IP地址換為Router1的IP,Specify Wan IP Address 改為Router2的IP,默認(rèn)網(wǎng)關(guān)和DNS服務(wù)器地址改為router3的IP地址7)至此,兩臺(tái)PC機(jī)的配置已經(jīng)完成,可以使用“
37、ping“命令進(jìn)行測(cè)試實(shí) 驗(yàn) 內(nèi) 容(二)環(huán)網(wǎng)RIP實(shí)驗(yàn)PC3PC2Router3Router2Router1PC1Wan1 Wan2Wan1 Wan2Wan2 Wan11.按照上圖組建網(wǎng)絡(luò)2.對(duì)路由器和PC機(jī)逐一進(jìn)行配置,配置過(guò)程和上一環(huán)節(jié)路由器的基本配置實(shí)驗(yàn)相同。Router1的網(wǎng)絡(luò)配置:1)進(jìn)入Setup配置頁(yè)面的Network子頁(yè)面進(jìn)行設(shè)置:Device IP Address: (設(shè)置Wan1路由器IP)Subnet mask:Wan1:static IPSpecify Wan IP Address:Subnet
38、Mask:Default Gateway Address:DNS Server:Wan2:static IPSpecify Wan IP Address:Subnet Mask:Default Gateway Address:DNS Server:2)Router2和Router3的配置和Router1的類(lèi)似3)關(guān)閉3個(gè)路由器的防火墻4)將3個(gè)路由器的system management配置頁(yè)面中的DaulWAN設(shè)置為“Loa
39、d Balance“5)對(duì)PC機(jī)進(jìn)行網(wǎng)絡(luò)配置,配置按照所連接的路由器進(jìn)行配置,配置方式與上一環(huán)節(jié)相同。實(shí) 驗(yàn) 結(jié) 果 及 分 析路由器的基本配置圖:1.實(shí) 驗(yàn) 結(jié) 果 及 分 析路由器的基本配置圖:執(zhí)行PING操作:PC1 PING PC3實(shí) 驗(yàn) 結(jié) 果 及 分 析分析:動(dòng)態(tài)路由是指路由協(xié)議可以自動(dòng)根據(jù)實(shí)際情況生成的路由表的方法。動(dòng)態(tài)路由的主要優(yōu)點(diǎn)是,如果存在到目的站點(diǎn)的多條路徑,運(yùn)行了路由選擇協(xié)議,比如RIP之后,而正在進(jìn)行數(shù)據(jù)傳輸?shù)囊粭l路徑發(fā)生了中斷的情況下,路由器可以自動(dòng)的選擇另外一條路徑傳輸數(shù)據(jù)。RIP使用距離向量算法(DVA)計(jì)算路由選擇路徑。在DVA中,路由選擇的確是基于到一個(gè)目的
40、站中最少路由中繼(hop)數(shù)或到一個(gè)相鄰路由器路徑的費(fèi)用計(jì)算出來(lái)的一個(gè)總的費(fèi)用。RIP路由選擇表與其它路由器大約每30秒鐘交換一次,路由器就是基于新的消息來(lái)重新生成它們的路由選擇信息表。如果一個(gè)路由器連到低吞吐量的WAN鏈路,那么它在重新生成路由選擇表時(shí)就會(huì)落后。另外,交換路由選擇信息表要增加網(wǎng)絡(luò)額外開(kāi)銷(xiāo),它會(huì)引起許多擁塞,進(jìn)一步推遲路由選擇表的更新。如果一條路由失敗了,重新建立路由選擇表所需的延遲將會(huì)推遲一條新的路由盡快地建立。在直通線(xiàn)發(fā)生斷路的情況下,一段時(shí)間過(guò)后,都能有數(shù)據(jù)接收,即表明連接又重新建立起來(lái),這對(duì)于建立一個(gè)大型的網(wǎng)絡(luò)是一個(gè)優(yōu)點(diǎn)??偨Y(jié): 本次實(shí)該沒(méi)有難度,但是還是出現(xiàn)了不少問(wèn)題
41、,可能是在模擬器上做和真機(jī)上做有些差異吧。要做一個(gè)網(wǎng)絡(luò),首先要把子網(wǎng)劃分好要聯(lián)通整個(gè)網(wǎng)絡(luò),需要一步一步把單個(gè)網(wǎng)聯(lián)通,最后通過(guò)交換機(jī)或路由把不同的子網(wǎng)連起來(lái),這在模擬器上操作起來(lái)比較簡(jiǎn)單,但是真機(jī)上就不那么容易了,所以過(guò)程中遇到了一些問(wèn)題,通過(guò)查找資料和詢(xún)問(wèn)同學(xué)也都基本解決了,通過(guò)本次試驗(yàn)我相信我對(duì)計(jì)算機(jī)網(wǎng)絡(luò)有了更深一步的了解。實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)六:網(wǎng)絡(luò)通信綜合實(shí)驗(yàn)實(shí)驗(yàn)設(shè)備C8051F單片機(jī)、PC機(jī)實(shí) 驗(yàn) 目 的熟悉C8051硬件結(jié)構(gòu)及軟件編程方法,掌握TCP、IP、HTTP、UDP和ARP等協(xié)議的內(nèi)容及用單片機(jī)實(shí)現(xiàn)TCP/IP協(xié)議的基本方法實(shí) 驗(yàn) 原 理TCP/IP 工作原理在源主機(jī)上應(yīng)用層將一串字
42、節(jié)流傳給傳輸層; 傳輸層將字節(jié)流分成 TCP 段, 加TCP 包頭交給 IP 層; IP 層生成一個(gè)包, 將 TCP 段放入其數(shù)據(jù)域, 并加上源和目的主機(jī)的 IP 地址后, 交給網(wǎng)絡(luò)接口層, 再交數(shù)據(jù)鏈路 層, 數(shù)據(jù)鏈路層在其幀的數(shù)據(jù)部分裝上IP 包, 發(fā)往目的主機(jī)或 IP 路由器處理. 在目的主機(jī)處, 數(shù)據(jù)鏈路層將數(shù)據(jù)鏈路層幀頭去掉, 將 IP 包交給網(wǎng)絡(luò)接口層再交 IP 層, IP 層檢查IP 包頭, 如果包頭中的檢查和計(jì)算出來(lái)的不一致, 則丟棄該包; 如果檢查一致, IP 層去掉 IP 頭, 將 TCP 段交給 TCP 層, TCP 層檢查順序號(hào)來(lái)判斷是否為正確的TCP 段; TCP 層
43、檢查 TCP 包頭, 如果不正確就拋棄, 若正確就向 主機(jī)發(fā)送確認(rèn); 目的主機(jī)在傳輸層去掉 TCP 頭, 將字節(jié)流傳給應(yīng)用程序.單片機(jī)實(shí)現(xiàn)流程圖:實(shí) 驗(yàn) 原 理HTTP協(xié)議是基于請(qǐng)求/響應(yīng)范式的。一個(gè)客戶(hù)機(jī)與服務(wù)器建立連接后,發(fā)送一個(gè)請(qǐng)求給服務(wù)器,請(qǐng)求方式的格式為,統(tǒng)一資源標(biāo)識(shí)符、協(xié)議版本號(hào),后邊是MIME信息包括請(qǐng)求修飾符、客戶(hù)機(jī)信息和可能的內(nèi)容。服務(wù)器接到請(qǐng)求后,給予相應(yīng)的響應(yīng)信息,其格式為一個(gè)狀態(tài)行包括信息的協(xié)議版本號(hào)、一個(gè)成功或錯(cuò)誤的代碼,后邊是MIME信息包括服務(wù)器信息、實(shí)體信息和可能的內(nèi)容。相對(duì)于TCP協(xié)議,UDP協(xié)議的另外一個(gè)不同之處在于如何接收突發(fā)性的多個(gè)數(shù)據(jù)報(bào)。在局域網(wǎng)中,網(wǎng)
44、絡(luò)中實(shí)際傳輸?shù)氖恰皫?,幀里面是有目?biāo)主機(jī)的MAC地址的。在以太網(wǎng)中,一個(gè)主機(jī)要和另一個(gè)主機(jī)進(jìn)行直接通信,必須要知道目標(biāo)主機(jī)的MAC地址。它就是通過(guò)地址解析協(xié)議獲得MAC地址。所謂“地址解析”就是主機(jī)在發(fā)送幀前將目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址的過(guò)程。ARP協(xié)議的基本功能就是通過(guò)目標(biāo)設(shè)備的IP地址,查詢(xún)目標(biāo)設(shè)備的MAC地址,以保證通信的順利進(jìn)行。實(shí)驗(yàn)程序參考框圖:實(shí) 驗(yàn) 內(nèi) 容實(shí)驗(yàn)步驟:1.雙擊實(shí)驗(yàn)所給的中的文件Web51.Uv2,進(jìn)入到Keil uVision3的編輯界面。2.進(jìn)入到Keil uVision3編輯界面后,看到12個(gè)子函數(shù),選擇CKSUM,完成校驗(yàn)和函數(shù)的編譯。3.選擇IP子函
45、數(shù),根據(jù)提示編寫(xiě)相關(guān)的語(yǔ)句編程。4.選擇UDP子函數(shù),完成UDP的編譯工作。5.選擇WEBDOC1子函數(shù),按照要求編寫(xiě)網(wǎng)頁(yè)的HTML語(yǔ)句。將網(wǎng)頁(yè)的標(biāo)題改成“大學(xué)網(wǎng)絡(luò)技術(shù)基礎(chǔ)實(shí)驗(yàn)”,并在網(wǎng)頁(yè)里面把所有的組員名字與學(xué)號(hào)添加上去。6.實(shí)驗(yàn)成功時(shí),要求把網(wǎng)頁(yè)抓圖保存下來(lái)。7.進(jìn)行編譯,編譯成功之后,將板子和電腦相連,后點(diǎn)擊LOAD按鈕將編譯成功生成的Web51.hex文件下載到板子里面。8.手動(dòng)將電腦 IP 改為 192.168.208.Y,將子網(wǎng)掩碼改成,然后使用交叉網(wǎng)線(xiàn)將電腦和開(kāi)發(fā)板直接相連,在瀏覽器中輸入 192.168.208.X,(Y不等于X)即可訪(fǎng)問(wèn)單片機(jī)編程的服
46、務(wù)器,在瀏覽器中看到編譯好的網(wǎng)頁(yè)內(nèi)容。編程:MAIN函數(shù)部分ULONG code my_ipaddr=0xC0A8D025L; /IP地址:192.168.208.XIP部分ip-ver_len = 0x45 ; / 4代表:采用IPv4,5:首部長(zhǎng)度為5個(gè)32 bit,/包含20 byte 的IP頭部 ip-type_of_service = 0; / 不使用該字段 ip-total_length = len+20 ; / 包括 len 和 IP頭部長(zhǎng)度 兩個(gè)部分 ip-identifier = ip_ident+; / 標(biāo)識(shí) ip-fragment_info = 0; / not frag
47、mented ip-time_to_live = 32 ; / 要求最大跳數(shù)為32 ip-protocol_id = proto_id; / type of payload ip-header_cksum = 0 ; / 首部校驗(yàn)和初始化 ip-source_ipaddr =my_ipaddr ; / 源IP地址 ip-dest_ipaddr = ipaddr ; / 目的IP地址 / Compute and insert complement of checksum of ip header ip-header_cksum = cksum( outbuf+14 , 20 );實(shí) 驗(yàn) 結(jié) 果
48、及 分 析1.程序編寫(xiě)完成,瀏覽器訪(fǎng)問(wèn)單片機(jī):2.雙擊桌面上的圖標(biāo),打開(kāi)CommView軟件。接著點(diǎn)擊軟件中的“開(kāi)始捕獲”鍵,將實(shí)驗(yàn)板通過(guò)網(wǎng)線(xiàn)和電腦連接,打開(kāi)實(shí)驗(yàn)板的電源。在瀏覽器中輸入IP地址:192.168.208.X,訪(fǎng)問(wèn)單片機(jī)Web服務(wù)器,CommView中的“最近IP連接”窗口會(huì)產(chǎn)生相關(guān)信息。點(diǎn)擊旁邊的“封包“鍵,即可進(jìn)行數(shù)據(jù)包的協(xié)議頭分析:實(shí) 驗(yàn) 結(jié) 果 及 分 析抓包截圖實(shí) 驗(yàn) 結(jié) 果 及 分 析1.ARP當(dāng)一個(gè)基于TCP/IP的應(yīng)用程序需要從一臺(tái)主機(jī)發(fā)送數(shù)據(jù)給另一臺(tái)主機(jī)時(shí),它把信息分割并封裝成包,附上目的主機(jī)的IP地址。然后,尋找IP地址到實(shí)際MAC地址的映射,這需要發(fā)送ARP
49、廣播消息。當(dāng)ARP找到了目的主機(jī)MAC地址后,就可以形成待發(fā)送幀的完整以太網(wǎng)幀頭。最后,協(xié)議棧將IP包封裝到以太網(wǎng)幀中進(jìn)行傳送。單片機(jī) IP:192.168.208.XMAC主機(jī)IP:192.168.208.YMACARP應(yīng)答單播數(shù)據(jù)包ARP請(qǐng)求廣播數(shù)據(jù)包當(dāng)主機(jī)要和單片機(jī)通信時(shí),主機(jī)會(huì)先檢查其ARP緩存內(nèi)是否有單片機(jī)的MAC地址。如果沒(méi)有,主機(jī)會(huì)發(fā)送一個(gè)ARP請(qǐng)求廣播包,此包內(nèi)包含著其欲與之通信的主機(jī)的IP地址,也就是單片機(jī)的IP地址。當(dāng)單片機(jī)收到此廣播后,會(huì)將自己的MAC地址利用ARP協(xié)議響應(yīng)包傳給主機(jī),并更新自己的ARP緩存,也就是同時(shí)將主機(jī)的IP地址/MAC地址對(duì)保存起來(lái),以供后面使用。
50、主機(jī)在得到單片機(jī)的MAC地址后,就可以與單片機(jī)通信了。同時(shí),主機(jī)也將單片機(jī)的IP地址/MAC地址對(duì)保存在自己的ARP協(xié)議緩存內(nèi)。2.IPIP層接收TCP報(bào)文后,它把所有的TCP報(bào)文都當(dāng)成一段數(shù)據(jù)加載在自己的數(shù)據(jù)段,然后加上IP報(bào)頭,IP報(bào)頭內(nèi)容就是目的和源IP地址。所以在IP層又有一個(gè)可以實(shí)現(xiàn)跟對(duì)方IP點(diǎn)的通訊鏈路。然后IP報(bào)文傳到網(wǎng)際層,加上幀頭,也就是MAC地址變成幀然后再變成2進(jìn)制在物理鏈路上進(jìn)行真實(shí)傳輸.3.UDP使用UDP進(jìn)行程序設(shè)計(jì)可以分為客戶(hù)端和服務(wù)器端兩部分。服務(wù)器端主要包含建立套接字、將套接字與地址結(jié)構(gòu)進(jìn)行綁定、讀寫(xiě)數(shù)據(jù)、關(guān)閉套接字幾個(gè)過(guò)程??蛻?hù)端包括建立套接字、讀寫(xiě)數(shù)據(jù)、關(guān)
51、閉套接字幾個(gè)過(guò)程。4.TCP服務(wù)器(單片機(jī))程序流程:1程序初始化 ;2填寫(xiě)本機(jī)地址信息;3定并監(jiān)聽(tīng)一個(gè)固定的端口 ;4收到Client的連接后建立一個(gè)socket連接 ;5產(chǎn)生一個(gè)新的進(jìn)程與Client進(jìn)行通信和信息處理 ;6子通信結(jié)束后中斷與Client的連接 。客戶(hù)端程序流程:1程序初始化 ;2填寫(xiě)服務(wù)器地址信息 ;3連接服務(wù)器 ;4與服務(wù)器通信和信息處理 ;5通信結(jié)束后斷開(kāi)連接 實(shí) 驗(yàn) 結(jié) 果 及 分 析5.CKSUMIP數(shù)據(jù)報(bào)的首部校驗(yàn)和,在首部校驗(yàn)和字段只檢驗(yàn)數(shù)據(jù)報(bào)的首部,不包含數(shù)據(jù)部分。為了減小計(jì)算檢驗(yàn)和的工作量,在發(fā)端,先將IP數(shù)據(jù)報(bào)首部劃分為許多的16bit字的序列,并將檢驗(yàn)
52、和字段置零,用反碼計(jì)算方法將所有的16bit字相加后,將得到的和反碼寫(xiě)入檢驗(yàn)和字段。接收端收到數(shù)據(jù)報(bào)之后,將首部的所有16bit字在使用反碼計(jì)算方法相加一次。將得到的和取反碼,若首部正確,無(wú)誤碼,則此結(jié)果必定為零,于是保留,否則,丟棄。UDP的首部校驗(yàn)和的計(jì)算流程和IP的相類(lèi)似,但不同的是:UDP的校驗(yàn)和是將首部和數(shù)據(jù)部分一起都檢驗(yàn)。 在發(fā)送端,首先是將全零放入檢驗(yàn)和字段。再將偽首部以及UDP用戶(hù)數(shù)據(jù)報(bào)看成是由許多16bit的字串接起來(lái)。 若UDP用戶(hù)數(shù)據(jù)報(bào)的數(shù)據(jù)部分不是偶數(shù)個(gè)字節(jié),則要填入一個(gè)全零字節(jié)(但此字段不發(fā)送)。 然后按二進(jìn)制反碼計(jì)算出這些16bit字的和(兩個(gè)數(shù)進(jìn)行二進(jìn)制反碼求和的
53、運(yùn)算的規(guī)則是:從低位到高位逐列進(jìn)行計(jì)算,加到下一列,若最高位相加后產(chǎn)生進(jìn)位,則最后得到的結(jié)果要加1。 將此和的二進(jìn)制反碼寫(xiě)入校驗(yàn)和字段后,發(fā)送此UDP用戶(hù)數(shù)據(jù)報(bào)。在接收端,將收到的UDP用戶(hù)數(shù)據(jù)報(bào)連同偽首部(以及可能的填充全零字節(jié))一起,按二進(jìn)制反碼求這些16bit字的和,再取反碼。 當(dāng)無(wú)差錯(cuò)時(shí)其結(jié)果應(yīng)全為0。否則就表明有差錯(cuò)出現(xiàn), 接收端就應(yīng)將此UDP用戶(hù)數(shù)據(jù)報(bào)丟棄。TCP的和UDP的方法相同。6.HTTP基于HTTP協(xié)議的客戶(hù)/服務(wù)器模式的信息交換過(guò)程,它分四個(gè)過(guò)程:建立連接、發(fā)送請(qǐng)求信息、發(fā)送響應(yīng)信息、關(guān)閉連接。其實(shí)任何服務(wù)器除了包括HTML文件以外,還有一個(gè)HTTP駐留程序,用于響應(yīng)用戶(hù)請(qǐng)求。當(dāng)瀏覽器是HTTP客戶(hù),向服務(wù)器(單片機(jī))發(fā)送請(qǐng)求,當(dāng)瀏覽器中一個(gè)網(wǎng)址
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 港口綠化帶施工進(jìn)度計(jì)劃及工期保證措施
- 高一年級(jí)學(xué)生安全保障計(jì)劃
- 初中道德與法治師資隊(duì)伍建設(shè)計(jì)劃
- 以形塑神:舞臺(tái)表現(xiàn)力在流行音樂(lè)演唱中的核心價(jià)值與多維呈現(xiàn)
- 以尿素為代表的溶解有機(jī)物對(duì)海水鹽度準(zhǔn)確度的多維度解析與影響機(jī)制探究
- 以字為鑰:解鎖中學(xué)古詩(shī)文教學(xué)新境界
- 城市道路照明安裝勞動(dòng)力、機(jī)械設(shè)備和材料投入計(jì)劃
- 湘版三年級(jí)下冊(cè)美術(shù)師資培訓(xùn)計(jì)劃
- 小學(xué)四年級(jí)數(shù)學(xué)課堂復(fù)習(xí)計(jì)劃
- 小學(xué)四年級(jí)語(yǔ)文培優(yōu)輔差閱讀理解計(jì)劃
- 2025年鄭州市公安機(jī)關(guān)招聘警務(wù)輔助人員題庫(kù)帶答案分析
- CJ/T 340-2016綠化種植土壤
- 廬山市國(guó)有投資控股集團(tuán)有限公司招聘筆試題庫(kù)2025
- 2025年貴州省公務(wù)員錄用考試《行測(cè)》真題及答案解析
- 第一單元:三視圖的判斷、確認(rèn)與繪制專(zhuān)項(xiàng)練習(xí)-2023-2024學(xué)年五年級(jí)數(shù)學(xué)下冊(cè)典型例題系列(原卷版)人教版
- 楊梅承包合同協(xié)議書(shū)
- 物理光學(xué)知到智慧樹(shù)期末考試答案題庫(kù)2025年山東理工大學(xué)
- 2024年新滬科版七年級(jí)上冊(cè)數(shù)學(xué)教學(xué)課件 第1章 有理數(shù) 1.2 數(shù)軸、相反數(shù)和絕對(duì)值 第1課時(shí) 數(shù)軸
- 《高一物理力學(xué)進(jìn)階:動(dòng)力學(xué)與能量學(xué)教學(xué)教案》
- 總監(jiān)理工程師作業(yè)指導(dǎo)書(shū)
- GA/T 2160-2024法庭科學(xué)資金數(shù)據(jù)檢驗(yàn)規(guī)程
評(píng)論
0/150
提交評(píng)論