freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的tcpip技術(shù)研究及應(yīng)用-資料下載頁

2024-11-08 05:43本頁面

【導(dǎo)讀】今天,嵌入式Inter的應(yīng)用己經(jīng)深入到日常生活的各個方面。論文首先介紹了嵌入式系統(tǒng)的組成及對嵌入式Inter產(chǎn)生。用了一種基于單片自身特點的具體的解決方案:嵌入式TCP/IP協(xié)議。資源有限的微處理器中,實現(xiàn)以電子郵件方式進(jìn)行遠(yuǎn)程數(shù)據(jù)傳輸。

  

【正文】 入式系統(tǒng)對信息進(jìn)行 TCP/IP協(xié)議處理,使其變成在 Inter上可傳輸?shù)?IP數(shù)據(jù)包。由于 51系列單片機(jī)內(nèi)部資源有限, 不可能實現(xiàn)標(biāo)準(zhǔn)的 Inter的 TCP/IP協(xié)議簇,也不需要實現(xiàn)標(biāo)準(zhǔn)的 TCP/IP協(xié)議簇 ??筛鶕?jù)具體應(yīng)用需求對標(biāo)準(zhǔn)的 TCP/IP協(xié)議簇進(jìn)行適當(dāng)?shù)牟眉粜薷?, 形成一個真正適用的嵌入式 TCP /IP 協(xié)議子集 。 通過裁減對原協(xié)議進(jìn)行有選擇地實現(xiàn)。這樣在實現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸上,我們就可以從 TCP/IP協(xié)議子集上實現(xiàn)。 考慮到 51系列單片機(jī)資源有限,在對協(xié)議的選取上我們應(yīng)考慮到系統(tǒng)資源和保證協(xié)議在功能及機(jī)制上的完整性。 與 網(wǎng) 絡(luò) 接 口 電 路 網(wǎng)卡芯片 串行 EEPROM MCU (89C51) 鍵盤模塊 LED 顯示模塊 21 鏈路層協(xié)議選擇及分析 鏈路層主要作用是為其上層協(xié)議發(fā)送和接收數(shù)據(jù)包。根據(jù)物理層的不同 , 鏈路層有多種協(xié)議可以選擇。其中主要有以太網(wǎng)、令牌環(huán)網(wǎng)、 FDDI)及 RS 232串行線路 協(xié)議等。 以太網(wǎng)上數(shù)據(jù)的傳輸是采用網(wǎng)絡(luò)的 MAC地址來進(jìn)行識別的。這就是要求系統(tǒng)有實現(xiàn) IP地址到 MAC地址的轉(zhuǎn)換的功能 , 即 ARP(地址解析 )協(xié)議。 ARP協(xié)議可以細(xì)分為 ARP請求協(xié)議和 ARP響應(yīng)協(xié)議兩種 , 系統(tǒng)要同其它計算機(jī)通信 , 就必須實現(xiàn) ARP響應(yīng)協(xié)議 , ARP請求協(xié)議在本地建立了一個 IP地址到 MAC地址的映像 , 保證了對外通信的有的放矢。 RARP(逆地址解析 )協(xié)議主要用于解決如何從 MAC 地址得到 IP地址 , 主要用于無盤工作站中 , 可以無需實現(xiàn)。 網(wǎng)絡(luò)層協(xié)議選擇及分析 IP 是 TCP/IP 最 重要的組成部分,是整個協(xié)議的基礎(chǔ)。目前版本號是 4,也稱 IPv4。所有的 TCP、 UDP、 IGMP 及 ICMP 都是以 IP 數(shù)據(jù)報格式傳輸。 IP 提供不可靠的、無連接的、盡最大努力交付的分組傳輸機(jī)制。 “不可靠的 ”按是指它不能保證 IP 分組成功地傳送到目的站。 “無連接的 ”指的是 IP 數(shù)據(jù)包可以不按順序收發(fā)。 IP 提供的是 “盡最大努力交付的 ”傳輸服務(wù),就是說 IP 協(xié)議盡量的發(fā)送每一個 IP 數(shù)據(jù)包,不隨意放棄數(shù)據(jù)包,只有在資源用盡或底層網(wǎng)絡(luò)出現(xiàn)錯誤時才有可能出現(xiàn)不可靠性。 在 IP 進(jìn)行數(shù)據(jù)交付過程中,如果遇到不能正常交付的情況,則需要通 知源站采取措施來補(bǔ)救。由于 IP 自身沒有提供差錯報告和差錯糾正機(jī)制,這就需要其他協(xié)議來完成,這就是 ICMP 協(xié)議。 ICMP 配合 IP 使用,提高了數(shù)據(jù)包交付成功的機(jī)會。 傳輸層協(xié)議選擇及分析 TCP 協(xié)議是一種提供可靠的端到端、面向字節(jié)流連接的服務(wù)。 UDP 也是 IP之上的一個傳輸協(xié)議。 UDP 是一個簡單的快速的,但也是不可靠和無連接的。但是對于大多數(shù) Inter 應(yīng)用而言,需要的是可靠的、能按序遞交的傳輸層協(xié)議。所以這次設(shè)計選取了 TCP 而不是 UDP。 TCP 為 IP 服務(wù)增加了面向連接和可靠性的特點。 TCP 主要特點如下: 1. 面向連接:使用兩個 TCP 的應(yīng)用在發(fā)生數(shù)據(jù)傳輸之前,必須建立一個連接,而在數(shù)據(jù)傳送完后要終止連接。 22 2.全雙工:一旦建立連接,就支持?jǐn)?shù)據(jù)的雙向傳輸。 3.字節(jié)流傳輸: TCP 是面向字節(jié)流的。一個 TCP 連接就是一個字節(jié)流。 4.可靠:利用重發(fā)和流控機(jī)制來保證通信的可靠。 5.確認(rèn): TCP 發(fā)送的每個報文都要被方確認(rèn)。這樣就知道數(shù)據(jù)是否丟失,是否重傳丟失數(shù)據(jù)。 6.流控制:當(dāng)發(fā)送方以一定的速率發(fā)送數(shù)據(jù)時,而接收方來不及處理時。TCP 采用滑動窗口協(xié)議來進(jìn)行流量控制,以防止數(shù)據(jù)發(fā)送過快導(dǎo)致接收方 來不及處理。 7.校驗和計算:校驗和是對是對偽首部、 TCP 首部和、 TCP 靜荷或數(shù)據(jù)的計算結(jié)果。計算是為了提供額外的錯誤監(jiān)測。 應(yīng)用層協(xié)議選擇 電子郵件協(xié)議是最流行的網(wǎng)絡(luò)服務(wù)協(xié)議。 SMTP 協(xié)議是常用的電子郵件傳送協(xié)議。它是基于 TCP/IP 的應(yīng)用層的協(xié)議,作用是:當(dāng)發(fā)送方與支持 SMTP 協(xié)議的服務(wù)器連接時,將郵件由發(fā)送方準(zhǔn)確無誤地傳送到接收方。 SMTP 是一種簡單的基于文本的電子郵件傳輸協(xié)議。 SMTP 支持: ? 文本、聲音、圖像和視頻的報文。 ? 可以郵件發(fā)送個一個或多個收信人。 ? 可以把報文發(fā)送給 Inter 以外的網(wǎng)上用戶。 SMTP 的通信模型是基于 TCP 運輸協(xié)議的。模型如圖 42 所示 圖 42 SMTP 通信模型示意圖 SMTP 協(xié)議是一種請求響應(yīng)協(xié)議,發(fā)送方發(fā)送命令,接收方給予響應(yīng),兩者通過這種方式進(jìn)行交付,以完成郵件傳輸?shù)娜齻€階段:建立連接、傳輸數(shù)據(jù)和終止連接。 1. 連接建立 用戶 文件系統(tǒng) 發(fā)送 SMTP 接收 SMTP SMTP 命令 郵件內(nèi)容 SMTP 響應(yīng) 用戶文件 23 客戶端主動與服務(wù)器建立一條 TCP 連接。服務(wù)器會返回一個響應(yīng)。若客戶端準(zhǔn)備就緒, 客戶端個向服務(wù)器發(fā)送 HELO 報文,以標(biāo)識發(fā)送方的身份。服務(wù)器給予響應(yīng)。 2. 建立連接 在客戶端與服務(wù)器建立連接后,就可以進(jìn)行報文傳輸了。 首先,客戶端發(fā)送MAIL 報文標(biāo)識報文的發(fā)送發(fā),服務(wù)器返回響應(yīng)。若服務(wù)器準(zhǔn)備接收,客戶端發(fā)送 RCPT 報文標(biāo)識報文接收方,服務(wù)器返回響應(yīng)。若服務(wù)器能夠識別接收人,客戶端發(fā)送 DATA 報文,指示將要發(fā)送的郵件數(shù)據(jù),服務(wù)器返回響應(yīng)??蛻舳诉B續(xù)的將郵件按行發(fā)送,服務(wù)器檢測到郵件結(jié)束指示后,給予響應(yīng)。 3. 連接終止 報文傳送成功后,客戶就終止連接。客戶發(fā)送 QUIT 命令終止連接。 24 第五章 TCP/IP 協(xié)議棧的實現(xiàn) ARP 協(xié)議的實現(xiàn) 在網(wǎng)絡(luò)底層的物理傳輸過程中,是通 過 MAC 地址 (硬件地址 )來識別主機(jī)的,它一般也是全球唯一的。以太網(wǎng)卡的物理地址是 48bit 地址。所以就需要將 IP 地址轉(zhuǎn)換為 MAC 地址。這個協(xié)議就是地址解析協(xié)議。 ARP 分組格式及數(shù)據(jù)結(jié)構(gòu) 在以太網(wǎng)上解析 IP, ARP 請求和應(yīng)答分組格式如圖 51。 圖 51 用于以太網(wǎng)的 ARP 請求應(yīng)答格式 圖 51 中,以太網(wǎng)報頭中的前兩個字段是以太網(wǎng)的源地址和目的地址,目的地址為全 1 的特殊地址是廣播地址,電纜上的所有以太網(wǎng)接口都要接收廣播的數(shù)據(jù)幀;幀類型字段是用來表示后面數(shù)據(jù)的類型, ARP 請求或應(yīng)達(dá),該字段的值是 0x0806,硬件類型用來表示硬件地址的類型,它的值為 1 時表示的是以太網(wǎng)地址。協(xié)議類型字段表示要映射的協(xié)議地址類型,它的值為 0x0800 時表示的是IP 地址。硬件地址長度和協(xié)議地址長度分別指出硬件地址和協(xié)議地址的長度。對于以太網(wǎng)上 IP 地址的 ARP 請求或應(yīng)答,它們的值分別是 6 和 4。操作字段( OP)指出了 4 種操作類型,分別是 ARP 請求(值 1)、 ARP 應(yīng)答(值 2)、 RARP 請求(值 3)和 RARP 應(yīng)答(值 4),這個字段是不可缺的,因為 ARP 請求和應(yīng)答的幀類型字段值是一樣的。最后面的 4 個字段分別指出源端和目的端的硬件 地址(以太網(wǎng)地址)及協(xié)議地址( IP 地址)。 ARP 協(xié)議軟件實現(xiàn) ARP 協(xié)議用來完成 IP 地址與以太網(wǎng)地址之間的轉(zhuǎn)換,此此次系統(tǒng)設(shè)計中僅響應(yīng) ARP 請求和發(fā)送 ARP 應(yīng)答。 ARP 軟件可劃分為 3 個部分:處理進(jìn)入的 ARP請求模塊、處理進(jìn)入的應(yīng)答模塊和一個 ARP 表緩存管理程序。在發(fā)送數(shù)據(jù)報時,上層協(xié)議調(diào)用請求模塊中的一個過程,將 IP 地址與相應(yīng)的物理地址綁定。輸出 25 過程返回一個綁定,上層協(xié)議利用它封裝和發(fā)送分組。響應(yīng)模塊處理來自網(wǎng)絡(luò)的ARP 分組,并通過增加新的綁定來修改 ARP 表中的內(nèi)容。管理程序?qū)崿F(xiàn)了高速緩存替換策略:檢查 ARP 表中的所有表項,并刪除不符合規(guī)定的表項。 在這個模塊里 ARP 協(xié)議將 IP 地址轉(zhuǎn)換為相應(yīng)的物理地址,具體過程如圖 52所示。 根據(jù)輸入的 IP 地址 ,首先檢查 ARP 表是否有有效的地址對記錄與要解析的 IP 地址相對應(yīng)。如果有 ,就可以直接取出硬件地址 ,然后返回硬件地址,并發(fā)送該報文。若沒有就要進(jìn)行 ARP 操作, ARP 發(fā)送一份稱作 ARP 請求的以太網(wǎng)數(shù)據(jù)幀給以太網(wǎng)上的每個主機(jī)。這個過程稱作廣播, ARP 請求數(shù)據(jù)幀中包含目的主機(jī)IP 地址,意思就是 “如果你是這個 IP 地址的擁有者, 請回答你的硬件地址 ”。 圖 52 處理進(jìn)入的 ARP 請求模塊流程圖 2. 應(yīng)答模塊 26 當(dāng)網(wǎng)上主機(jī)的 ARP 層收到這份廣播報文后,會對這份廣播報文進(jìn)行處理。處理過程如圖 53。就會開始識別發(fā)送端詢問的是不是自己的 IP 地址,如果就給予響應(yīng),否則不給于響應(yīng)。若收到的是 ARP 應(yīng)答幀則會更新緩存表。 圖 53 處理進(jìn)入的 ARP 應(yīng)答模塊流程圖 3. ARP 表管理程序 為提高 ARP 的解析速度,為了記錄 ARP 協(xié)議解析到的 IP 地址與相應(yīng)的硬件地址對應(yīng)關(guān)系 ,設(shè)計使用 ARP 表。使用 ARP 與 IP 對應(yīng)的 ARP 表 ,記錄 下解析的 MAC 地址 ,以減少在一定時間內(nèi)對同一 IP 地址的多次重復(fù)解析 ,從而加快TCP/IP 協(xié)議棧的運行。當(dāng)緩存標(biāo)中增加一個新表項時,函數(shù) aprinit()初始化該表項 ,主要是把 IP 字段清 0,函數(shù) apr 一 timer()設(shè)置最長的等待時間,隨時間的推移,高速緩存管理程序遞減等待時間,并當(dāng)其值達(dá)到零時,丟棄該表項。若緩存表已滿, ARP 表管理程序循環(huán)的方式,刪除一個舊的表項,函數(shù) aprupdate()函數(shù)更新 IP 地址與 MAC 地址的對應(yīng)關(guān)系 ,再將記錄刪除標(biāo)志指針下移一個表項,以此類推進(jìn)行替換。 IP 協(xié)議 及其實現(xiàn) 開始 收到 ARP 數(shù)據(jù)幀 是否請求幀? 自己是請求目標(biāo)? 給予響應(yīng) 結(jié)束 讀取收到的 ARP 數(shù)據(jù)幀 更新緩存表 Y Y N N 27 IP 數(shù)據(jù)報格式 IP 數(shù)據(jù)報是典型的詩句分組的一般格式:報頭和數(shù)據(jù)兩個部分。如圖 54 所示。 圖 54 IP 數(shù)據(jù)報格式 版本號指的是當(dāng)前使用協(xié)議的版本,當(dāng)前使用的是 IPv4,下一個協(xié)議版本是 IPv6,這正是當(dāng)今互聯(lián)網(wǎng)研究熱點。版本號規(guī)定了數(shù)據(jù)報的格式。 IP 數(shù)據(jù)報報頭含有頭標(biāo)長和總長兩個長度域,頭標(biāo)長是一個 4 比特域,它給出了 32 比特字長為單位的報頭長度。除了 IP 選項和填充域之外,首部所有字段的長度都是一定的。沒有任何選項的 IP 數(shù)據(jù)報的首部長度是 5;總長域指的是整個 IP 數(shù)據(jù)報的長度,利 用首部長度字段和總長度字段,就可以知道 IP 數(shù)據(jù)報中數(shù)據(jù)內(nèi)容的起始位置和長度。標(biāo)志字段是用于標(biāo)識主機(jī)發(fā)送每一份數(shù)據(jù)報。最長生存時間確定了數(shù)據(jù)報最多可以經(jīng)過的路由器數(shù)。任何一個 IP 數(shù)據(jù)報都包含源 IP 地址和目的 IP 地址。 IP 軟件實現(xiàn) 為了實現(xiàn)數(shù)據(jù)報的傳輸, IP 協(xié)議采用以下幾個關(guān)鍵技術(shù) : 1. 生存時間: TTL 確立了數(shù)據(jù)報最多可以經(jīng)過的路由器數(shù)。它指定了數(shù)據(jù)報的存留時間。 TTL 的初始值是有源主機(jī)設(shè)定的(通常為 32 或是 64),每經(jīng)過一個使用它的路由器,它的值就減少 1,當(dāng)值為 0 時,數(shù)據(jù)報就被丟棄 ,同時發(fā)送 ICMP 報文通知源主機(jī)。 2.任選項: 這些選項包括:安全和處理限制、記錄路由、時間戳等等。 3. 報頭校驗和: IP 報文頭中的檢驗和用于預(yù)防路由中轉(zhuǎn)過程中出錯。在TCP、 IP、 ICMP 協(xié)議中,檢驗和的算法是相同的。在協(xié)議封裝時,需要產(chǎn)生檢 28 驗和 。在收到信包后,需要檢驗。檢驗和算法使用頻率比較高,所以需要使用比較高效的檢驗和算法。校驗和是 IP 報頭部分計算出來的校驗和碼,若傳輸沒出現(xiàn)問題這個值應(yīng)全是 1,由于路由器經(jīng)常僅將 TTL 減少 1,因此當(dāng)路由器將 TTL減少 1 的同時給它加 1,而不需要對整個 IP 首部進(jìn)行全 新的計算。 這個部分主要有兩個過程實現(xiàn),即對 IP 數(shù)據(jù)發(fā)送和對 IP 數(shù)據(jù)的處理。對 IP數(shù)據(jù)發(fā)送過程如圖 55 所示。 IP 進(jìn)程是從數(shù)據(jù)鏈路調(diào)用進(jìn)程 ip_proces 的執(zhí) 圖 55 IP 對數(shù)據(jù)的發(fā)送過程 行開始,是個無限循環(huán)的過程。遍歷網(wǎng)絡(luò)接口所有的輸入隊列,當(dāng)輸入隊列為空時, IP 進(jìn)程被阻塞,一旦有其它進(jìn)程把數(shù)據(jù)報放進(jìn)輸入隊列中, IP 進(jìn)程就恢復(fù)執(zhí)行并立即檢查數(shù)據(jù)報已到達(dá)的接口;當(dāng)輸入隊列不空, IP 進(jìn)程提取等待處理開始 遍歷網(wǎng)絡(luò)接口輸入隊列 IP 進(jìn)程阻塞 選取數(shù)據(jù)報,初始化 TTL 是否為空? 其它進(jìn)程 添加的數(shù)據(jù)報 校驗和正確? 存在路由? TTL=TTL— 1 TTL=0? 丟棄數(shù)據(jù)報報 ICMP 目的站不可達(dá)報文 ICMP 超時報文 直接可達(dá)目的機(jī)? 將數(shù)據(jù)報放入輸出隊列 Y Y Y Y N N N N N Y 29 的數(shù)據(jù)報,
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1