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

正文內(nèi)容

單片機技術研究及應用-資料下載頁

2025-06-23 17:39本頁面
  

【正文】 重傳丟失數(shù)據(jù)。6.流控制:當發(fā)送方以一定的速率發(fā)送數(shù)據(jù)時,而接收方來不及處理時。TCP 采用滑動窗口協(xié)議來進行流量控制,以防止數(shù)據(jù)發(fā)送過快導致接收方來不及處理。7.校驗和計算:校驗和是對是對偽首部、TCP 首部和、TCP 靜荷或數(shù)據(jù)的計算結果。計算是為了提供額外的錯誤監(jiān)測。 應用層協(xié)議選擇 電子郵件協(xié)議是最流行的網(wǎng)絡服務協(xié)議。SMTP 協(xié)議是常用的電子郵件傳送協(xié)議。它是基于 TCP/IP 的應用層的協(xié)議,作用是:當發(fā)送方與支持 SMTP 協(xié)議的服務器連接時,將郵件由發(fā)送方準確無誤地傳送到接收方。SMTP 是 一 種 簡 單 的 基 于 文 本 的 電 子 郵 件 傳 輸 協(xié) 議 。 SMTP 支 持 :? 文本、聲音、圖像和視頻的報文。? 可以郵件發(fā)送個一個或多個收信人。? 可以把報文發(fā)送給 Inter 以外的網(wǎng)上用戶。SMTP 的通信模型是基于 TCP 運輸協(xié)議的。模型如圖 42 所示用戶文件系統(tǒng)發(fā)送 SMTP 接收 SMTPSMTP 命令郵件內(nèi)容SMTP 響應 用戶文件圖 42 SMTP 通信模型示意圖SMTP 協(xié)議是一種請求響應協(xié)議,發(fā)送方發(fā)送命令,接收方給予響應,兩者通過這種方式進行交付,以完成郵件傳輸?shù)娜齻€階段:建立連接、傳輸數(shù)據(jù)和終止連接。1. 連接建立客戶端主動與服務器建立一條 TCP 連接。服務器會返回一個響應。若客戶端準備就緒, 客戶端個向服務器發(fā)送 HELO 報文,以標識發(fā)送方的身份。服務器給予響應。2. 建立連接在客戶端與服務器建立連接后,就可以進行報文傳輸了。首先,客戶端發(fā)送 MAIL 報文標識報文的發(fā)送發(fā),服務器返回響應。若服務器準備接收,客戶端發(fā)送 RCPT 報文標識報文接收方,服務器返回響應。若服務器能夠識別接收人,客戶端發(fā)送 DATA 報文,指示將要發(fā)送的郵件數(shù)據(jù),服務器返回響應??蛻舳诉B續(xù)的將郵件按行發(fā)送,服務器檢測到郵件結束指示后,給予響應。3. 連接終止報文傳送成功后,客戶就終止連接??蛻舭l(fā)送 QUIT 命令終止連接。第五章 TCP/IP 協(xié)議棧的實現(xiàn) ARP 協(xié)議的實現(xiàn) 在 網(wǎng) 絡 底 層 的 物 理 傳 輸 過 程 中 , 是 通 過 MAC 地 址 (硬 件 地 址 )來 識 別主 機 的 , 它 一 般 也 是 全 球 唯 一 的 。 以 太 網(wǎng) 卡 的 物 理 地 址 是 48bit 地 址 。 所 以就 需 要 將 IP 地址轉換為 MAC 地址。這個協(xié)議就是地址解析協(xié)議。 ARP 分組格式及數(shù)據(jù)結構在以太網(wǎng)上解析 IP, ARP 請求和應答分組格式如圖 51。圖 51 用于以太網(wǎng)的 ARP 請求應答格式圖 51 中,以太網(wǎng)報頭中的前兩個字段是以太網(wǎng)的源地址和目的地址,目的地址為全 1 的特殊地址是廣播地址,電纜上的所有以太網(wǎng)接口都要接收廣播的數(shù)據(jù)幀;幀類型字段是用來表示后面數(shù)據(jù)的類型,ARP 請求或應達,該字段的值是 0x0806,硬件類型用來表示硬件地址的類型,它的值為 1 時表示的是以太網(wǎng)地址。協(xié)議類型字段表示要映射的協(xié)議地址類型,它的值為 0x0800 時表示的是 IP 地址。硬件地址長度和協(xié)議地址長度分別指出硬件地址和協(xié)議地址的長度。對于以太網(wǎng)上 IP 地址的 ARP 請求或應答,它們的值分別是 6 和 4。操作字段(OP)指出了 4 種操作類型,分別是 ARP 請求(值 1) 、ARP 應答(值 2) 、RARP 請求(值 3)和 RARP 應答(值 4) ,這個字段是不可缺的,因為 ARP 請求和應答的幀類型字段值是一樣的。最后面的 4 個字段分別指出源端和目的端的硬件地址(以太網(wǎng)地址)及協(xié)議地址(IP 地址) 。 ARP 協(xié)議軟件實現(xiàn) ARP 協(xié)議用來完成 IP 地址與以太網(wǎng)地址之間的轉換,此此次系統(tǒng)設計中僅響應 ARP 請求和發(fā)送 ARP 應答。ARP 軟件可劃分為 3 個部分:處理進入的ARP 請求模塊、處理進入的應答模塊和一個 ARP 表緩存管理程序。在發(fā)送數(shù)據(jù)報時,上層協(xié)議調用請求模塊中的一個過程,將 IP 地址與相應的物理地址綁定。輸出過程返回一個綁定,上層協(xié)議利用它封裝和發(fā)送分組。響應模塊處理來自網(wǎng)絡的 ARP 分組,并通過增加新的綁定來修改 ARP 表中的內(nèi)容。管理程序實現(xiàn)了高速緩存替換策略:檢查 ARP 表中的所有表項,并刪除不符合規(guī)定的表項。 在這個模塊里 ARP 協(xié)議將 IP 地址轉換為相應的物理地址,具體過程如圖52 所示。根據(jù)輸入的 IP 地址,首先檢查 ARP 表是否有有效的地址對記錄與要解析的IP 地址相對應。如果有 ,就可以直接取出硬件地址,然后返回硬件地址,并發(fā)送該報文。若沒有就要進行 ARP 操作,ARP 發(fā)送一份稱作 ARP 請求的以太網(wǎng)數(shù)據(jù)幀給以太網(wǎng)上的每個主機。這個過程稱作廣播,ARP 請求數(shù)據(jù)幀中包含目的主機 IP 地址,意思就是“如果你是這個 IP 地址的擁有者,請回答你的硬件地址 ”。圖 52 處理進入的 ARP 請求模塊流程圖2. 應答模塊 當網(wǎng)上主機的 ARP 層收到這份廣播報文后,會對這份廣播報文進行處理。處理過程如圖 53。就會開始識別發(fā)送端詢問的是不是自己的 IP 地址,如果就給予響應,否則不給于響應。若收到的是 ARP 應答幀則會更新緩存表。圖 53 處理進入的 ARP 應答模塊流程圖3. ARP 表管理程序 為提高 ARP 的解析速度,為了記錄 ARP 協(xié)議解析到的 IP 地址與相應的硬件地址對應關系,設計使用 ARP 表。使用 ARP 與 IP 對應的 ARP 表,記錄下解析的 MAC 地址,以減少在一定時間內(nèi)對同一 IP 地址的多次重復解析,從而加快TCP/IP 協(xié)議棧的運行。當緩存標中增加一個新表項時,函數(shù) aprinit()初始化該表項,主要是把 IP 字段清 0,函數(shù) apr 一 timer()設置最長的等待時間,隨時間的推移,高速緩存管理程序遞減等待時間,并當其值達到零時,丟棄該表項。若緩存表已滿,ARP 表管理程序循環(huán)的方式,刪除一個舊的表項,函數(shù) aprupdate()函數(shù)更新 IP 地址與 MAC 地址的對應關系,再將記錄刪除標志指針下移開始收到 ARP 數(shù)據(jù)幀是否請求幀?自己是請求目標? 給予響應結束讀取收到的ARP 數(shù)據(jù)幀更新緩存表YYNN一個表項,以此類推進行替換。 IP 協(xié)議及其實現(xiàn) IP 數(shù)據(jù)報格式 IP 數(shù)據(jù)報是典型的詩句分組的一般格式:報頭和數(shù)據(jù)兩個部分。如圖 54 所示。圖 54 IP 數(shù)據(jù)報格式版本號指的是當前使用協(xié)議的版本,當前使用的是 IPv4,下一個協(xié)議版本是 IPv6,這正是當今互聯(lián)網(wǎng)研究熱點。版本號規(guī)定了數(shù)據(jù)報的格式。 IP 數(shù)據(jù)報報頭含有頭標長和總長兩個長度域,頭標長是一個 4 比特域,它給出了 32 比特字長為單位的報頭長度。除了 IP 選項和填充域之外,首部所有字段的長度都是一定的。沒有任何選項的 IP 數(shù)據(jù)報的首部長度是 5;總長域指的是整個 IP 數(shù)據(jù)報的長度,利用首部長度字段和總長度字段,就可以知道 IP 數(shù)據(jù)報中數(shù)據(jù)內(nèi)容的起始位置和長度。標志字段是用于標識主機發(fā)送每一份數(shù)據(jù)報。最長生存時間確定了數(shù)據(jù)報最多可以經(jīng)過的路由器數(shù)。任何一個 IP 數(shù)據(jù)報都包含源 IP 地址和目的 IP 地址。 IP 軟件實現(xiàn)為了實現(xiàn)數(shù)據(jù)報的傳輸,IP 協(xié)議采用以下幾個關鍵技術 : 1. 生存時間: TTL 確立了數(shù)據(jù)報最多可以經(jīng)過的路由器數(shù)。它指定了數(shù)據(jù)報的存留時間。TTL 的初始值是有源主機設定的(通常為 32 或是 64) ,每經(jīng)過一個使用它的路由器,它的值就減少 1,當值為 0 時,數(shù)據(jù)報就被丟棄,同時發(fā)送 ICMP 報文通知源主機。2.任選項: 這些選項包括:安全和處理限制、記錄路由、時間戳等等。3. 報頭校驗和:IP 報文頭中的檢驗和用于預防路由中轉過程中出錯。在TCP、IP 、ICMP 協(xié)議中,檢驗和的算法是相同的。在協(xié)議封裝時,需要產(chǎn)生檢驗和。 在收到信包后,需要檢驗。檢驗和算法使用頻率比較高,所以需要使用比較高效的檢驗和算法。校驗和是 IP 報頭部分計算出來的校驗和碼,若傳輸沒出現(xiàn)問題這個值應全是 1,由于路由器經(jīng)常僅將 TTL 減少 1,因此當路由器將TTL 減少 1 的同時給它加 1,而不需要對整個 IP 首部進行全新的計算。這個部分主要有兩個過程實現(xiàn),即對 IP 數(shù)據(jù)發(fā)送和對 IP 數(shù)據(jù)的處理。對IP 數(shù)據(jù)發(fā)送過程如圖 55 所示。IP 進程是從數(shù)據(jù)鏈路調用進程 ip_proces 的執(zhí) 圖 55 IP 對數(shù)據(jù)的發(fā)送過程開始遍歷網(wǎng)絡接口輸入隊列IP 進程阻塞選取數(shù)據(jù)報,初始化TTL是否為空?其它進程添加的數(shù)據(jù)報校驗和正確?存在路由?TTL=TTL—1TTL=0?丟棄數(shù)據(jù)報報ICMP 目的站不可達報文ICMP 超時報文直接可達目的機?將數(shù)據(jù)報放入輸出隊列YYYYNNNNNY行開始,是個無限循環(huán)的過程。遍歷網(wǎng)絡接口所有的輸入隊列,當輸入隊列為空時,IP 進程被阻塞,一旦有其它進程把數(shù)據(jù)報放進輸入隊列中, IP 進程就恢復執(zhí)行并立即檢查數(shù)據(jù)報已到達的接口;當輸入隊列不空,IP 進程提取等待處理的數(shù)據(jù)報,同時初始化 TTL 值,驗證數(shù)據(jù)報的首部校驗和,當校驗和錯誤,整個數(shù)據(jù)報將被拋棄;不然則為該數(shù)據(jù)報選擇路由,若路由不存在,IP 進程調用進程 ICMP,生成并發(fā)送一個 ICMP“目的不可達”的報文。一旦路由選擇成功,ip_process 遞減計數(shù)器 TTL 值,如果 TTL 的值達到 0,ip_process 生成一個ICMP 超時報文。每次選路后,ip_process 查看目的主機與本機是否在同一子網(wǎng)絡中,若在同一子網(wǎng)中則直接將數(shù)據(jù)報插入到輸出隊列中,否則把數(shù)據(jù)報發(fā)送給默認網(wǎng)關,以便送到其它網(wǎng)絡。IP 數(shù)據(jù)處理的過程由 ip_send 開始,ip_send 填寫 IP 首部中的每個字段,協(xié)議類型、服務類型、優(yōu)先級、指定的目的地址。同時為了保證每個外發(fā)數(shù)據(jù)報中的標志字段都有唯一的值,ip_send 將全局變量 ip_ackid 的值賦予標識字段,然后遞增變量 ip_ackid 的值。Ip_send 完成填寫首部的任務后,將數(shù)據(jù)報置入網(wǎng)絡接口隊列中。要將數(shù)據(jù)從一個節(jié)點轉發(fā)到另一個節(jié)點,需要不斷地為每個數(shù)據(jù)確定并使用正確的路由。通常的 IP 層會建立一個路由表,當數(shù)據(jù)報來自某一個網(wǎng)絡接口時,IP 會檢查 IP 地址是否為本機的或是 IP 廣播地址,如果是該數(shù)據(jù)報就被送到由 IP 首部字段所指定的協(xié)議模塊進行處理,如果不是 IP 層將會設置為路由器的功能,對數(shù)據(jù)進行轉發(fā)。 下面是用來轉發(fā)數(shù)據(jù)報的 IP 路由邏輯算法:從數(shù)據(jù)報中提取目的 IP 地址 D,并提取 IP 地址中的網(wǎng)絡部分 N if(N 與任何直接相連的網(wǎng)絡的地址匹配)then 通過該網(wǎng)絡把數(shù)據(jù)報交付到目的地 Delse if(表中包含特定于具體主機的一個到 D 的路由)then 把數(shù)據(jù)報發(fā)送到表中指定的下一跳else if(表中包含一個到網(wǎng)絡 N 的一個路由)then 把數(shù)據(jù)報發(fā)送到表中指定的下一跳else if(表中包含一個默認路由) ;then 報數(shù)據(jù)報發(fā)送到表中指定的默認路由器else 通知選路出錯 ICMP 報文協(xié)議的實現(xiàn)ICMP 通常被認為 IP 層的一個部分,它傳遞差錯報文及一些需要注意的信息。IP 層中會使用 ICMP 報文,ICMP 報文在 IP 數(shù)據(jù)報內(nèi)部被傳輸?shù)?,如圖 56。圖 56 ICMP 封裝在 IP 數(shù)據(jù)報的內(nèi)部ICMP 報文格式如圖 57。圖 57 ICMP 報文格式當 IP 模塊發(fā)現(xiàn)傳輸出錯時,首先丟棄該出錯數(shù)據(jù)報,然后調用 ICMP 模塊向源端主機發(fā)送出錯報文。ICMP 報文格式包括三部分:8 位類型字段定義了ICMP 報文出錯類型;8bit 代碼字段給出了這個報文類型的原因;16bit 的校驗和字段;此外報文還包括 IP 數(shù)據(jù)報報頭和出錯數(shù)據(jù)報的前 64bit 數(shù)據(jù)。源端主機收到 ICMP 差錯報文后,針對 ICMP 報文中指出的出錯類型交給上層協(xié)議處理出錯信息。 TCP 協(xié)議的實現(xiàn) TCP 的報文段 圖 58 TCP 報文段的格式TCP 報文段是 TCP 協(xié)議封裝數(shù)據(jù)的格式。 TCP 報文段有首部和數(shù)據(jù)去組成,結構如入 58 所示。 每個 TCP 段都包含源端和目的端得的端口號,用來尋找發(fā)端和收段得應用進程。這兩個值加上 IP 首部的源端 IP 地址和目的端 IP 地址唯一確定一個 TCP連接。序列號用來標識發(fā)端到收段發(fā)送的數(shù)據(jù)字節(jié)流,即發(fā)送序列號。確認序號包含了發(fā)送確認的一端所期望收到的下一個序號。首部長度給出首部中 32bit字的數(shù)目。與任選字段有關。標識段用來控制 TCP 的流量控制、連接的建立和終止及數(shù)據(jù)的傳送方式,其包括緊急標記、確認標記、同步標記、結束標記、重連標記、請求推送標記。窗口大小的值標識這接收段期望收到的字節(jié)數(shù)。TCP 校驗和是一個強制性的字段。TCP 提供了緊急傳送的方式。 TCP 協(xié)議的實現(xiàn) TCP 是一種面向連接的協(xié)議、全雙工的、可靠的數(shù)據(jù)流傳輸協(xié)議。它具有保證數(shù)據(jù)可靠性傳輸和數(shù)據(jù)流控制等一些功能。這里包含建立連接、數(shù)據(jù)傳送、釋放連接三個階段。TCP 在實現(xiàn)方案中采用了三個模塊,其中一個進程處理
點擊復制文檔內(nèi)容
數(shù)學相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1