internet第04章傳輸層協(xié)議_第1頁
internet第04章傳輸層協(xié)議_第2頁
internet第04章傳輸層協(xié)議_第3頁
internet第04章傳輸層協(xié)議_第4頁
internet第04章傳輸層協(xié)議_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第4章 傳輸層協(xié)議 重點 端口 TCP連接的建立和拆除的握手機制 計時器 流量控制 擁塞控制 4.1.傳輸層 4.1.1. 傳輸層概述 一、傳輸層的作用 彌補網(wǎng)絡(luò)層所提供的服務(wù)質(zhì)量的不足,以 便為高層提供可靠的端到端通信。 l計算機網(wǎng)絡(luò)在邏輯上分為資源子網(wǎng)和通 信子網(wǎng) 資源子網(wǎng)中的設(shè)備才有傳輸層,通信子 網(wǎng)中的設(shè)備一般只具備OSI下面三層的功 能。 資源子網(wǎng)中的端用戶依靠在自己主機上所 增加的這個傳輸層來檢測分組的丟失或數(shù) 據(jù)的殘缺并采取相應(yīng)的補救措施。 二、傳輸層功能 在網(wǎng)絡(luò)層所提供的源到目標的分組傳輸服 務(wù)的基礎(chǔ)上,向上層提供可靠的源主機到 目標主機的數(shù)據(jù)傳輸。 當上層的協(xié)議數(shù)據(jù)包的長度超

2、過網(wǎng)絡(luò)互聯(lián) 層所能承載的最大數(shù)據(jù)傳輸單元時,提供 分段和合并分段的功能。 提供多路復(fù)用機制,由于同時存在多個高 層應(yīng)用,因此要求傳輸層能夠同時為多個 高層應(yīng)用服務(wù),將多個高層應(yīng)用復(fù)用到一 個網(wǎng)絡(luò)層連接上。傳輸層是通過端口來實 現(xiàn)這一功能的。 三、端到端的傳輸 傳輸層就是為上三層提供端到端的傳輸服 務(wù) 聲音信號 電信號 聲音信號 電信號 點到點 點到點 點到點 端到端 四、TCP/IP 的傳輸層 兩個主要的協(xié)議即傳輸控制協(xié)議(transport control protocol,簡稱TCP)和用戶數(shù)據(jù)報協(xié)議 (user datagram protocol,簡稱UDP) TCP協(xié)議是一個可靠的面向

3、連接的傳輸層協(xié)議。 UDP協(xié)議將可靠性問題交給應(yīng)用程序解決 指標指標 TCP UDP 是否 連 接 面向 連 接 無連 接 傳輸 可 靠 性 可靠 不可 靠 速度 較慢 較快 4.1.2.端口和套接字 一臺主機中同時會有多個應(yīng)用進程進行 通信,傳輸層必須將它們區(qū)分開來。因此網(wǎng) 絡(luò)通信的最終地址應(yīng)不僅包括主機地址,還 要包括可描述網(wǎng)絡(luò)進程的某種標識。 這種標識稱作傳輸層服務(wù)訪問點, 即端口端口。 TCP/IP 定義一個16Bit長度的整數(shù)作為 端口標識,也就是說可定義2e16個端口, 其端口號從0到 2e161。 從0 到255 被規(guī)定作為公共應(yīng)用服務(wù)的端口,如、 DNS 和電子郵件服務(wù)等,又被

4、稱為著名端口 (Well-known ports)。這些端口所對應(yīng)的服務(wù)是固 定、公開的,因此可以通過訪問這些端口來訪問 對應(yīng)的服務(wù)。 從256 到1023 的端口,被保留用作商業(yè)性的應(yīng)用 開發(fā),如一些網(wǎng)絡(luò)設(shè)備廠商專用協(xié)議的通信端口 等。 1023 以上端口未做限定,即作為自由端口,以本 地方式進行分配。 4.2. TCP協(xié)議 4.2.1.TCP協(xié)議概述 TCP,即傳輸控制協(xié)議,它提供面向連接 的、可靠的(沒有數(shù)據(jù)重復(fù)或丟失)、全雙工 的數(shù)據(jù)流傳輸服務(wù)。 TCP的協(xié)議數(shù)據(jù)單元被稱為段(Segment) 數(shù)據(jù)段分為兩部分,即段頭和數(shù)據(jù) 段頭一般長20字節(jié)(如有選項部分另加),是 TCP 為了實現(xiàn)

5、端到端可靠傳輸所加上的控制信 息。 而數(shù)據(jù)則是指由高層即應(yīng)用層來的數(shù)據(jù)。數(shù)據(jù) 段的大小必須首先滿足65535字節(jié)的IP包數(shù)據(jù) 長度限制。 源端口:主叫方的TCP 端口號。 目標端口:被叫方的TCP 端口號。 發(fā)送序號(SEQ): SYN=0表示數(shù)據(jù)段第一個數(shù)據(jù)字節(jié)的序號, 即該數(shù)據(jù)段在發(fā)送方的數(shù)據(jù)流中的位置; SYN=1表示建立本次連接的初始序號。 確認序號(ACK):下一個期望接收的 TCP 數(shù)據(jù)段號,順序號和確認號共同用于 TCP 服務(wù)中的確認、差錯控制。 頭長:TCP頭長,以32 位字長為單位。實 際上相當于給出數(shù)據(jù)在數(shù)據(jù)段中的開始位 置。 預(yù)留:未用的6 位,為將來的應(yīng)用而保留, 目前

6、置為“0”。 控制字段(CTL):共6個控制字段,每個 占一位bit。TCP 數(shù)據(jù)段有多種應(yīng)用,如建 立或關(guān)閉連接、傳輸數(shù)據(jù)、攜帶確認等, 這些控制字段用于給出與數(shù)據(jù)段的作用及 處理相關(guān)的控制信息。字段位值=1時有效。 窗口:窗口的大小表示本方可以接收的數(shù) 據(jù)量,以八位字長為計量單位。TCP使用 可變大小的滑動窗口來進行流量控制。 校驗和:用于對數(shù)據(jù)段頭和數(shù)據(jù)進行校驗, 以判斷接收的數(shù)據(jù)是否有錯。 緊急指針:給出從當前段序號到緊急數(shù)據(jù) 位置的偏移量。 任選項:提供一種增加額外設(shè)置的方法, 如最大TCP 分段的大小的約定。 填充:當任選項字段長度不足32 位字長時, 需要加以填充。 數(shù)據(jù):來自高

7、層即應(yīng)用層的協(xié)議數(shù)據(jù)。 4.2.2.TCP的連接管理 TCP實現(xiàn)的是面向連接的數(shù)據(jù)傳輸服務(wù), 即是一種虛電路的數(shù)據(jù)交換方式,在數(shù)據(jù) 傳輸以前需要在源主機和目標主機之間創(chuàng) 建相應(yīng)的虛電路連接。 一、連接的建立 TCP 使用 三次握手協(xié)議 來建立連接。 主機1 首先發(fā) 起TCP 連接 請求,并在所 發(fā)送的數(shù)據(jù)段 中將控制字段 中的SYN置為 “1”、ACK置 為“0”。 主機2 收到該分段, 若同意建立連接,則 發(fā)送一個連接接受的 應(yīng)答數(shù)據(jù)段,其中控 制字段的SYN 和ACK 均被置“1”,指示對 第一個SYN 報文段的 確認,以繼續(xù)握手操 作;否則,主機2 要 發(fā)送一個將RST置為 “1”的應(yīng)答

8、數(shù)據(jù)段, 表示拒絕建立連接。 主機1 收到主機 2 發(fā)來的同意建 立連接數(shù)據(jù)段后, 還有再次進行選 擇的機會,若其 確認要建立這個 連接,則向主機 2 發(fā)送確認數(shù)據(jù) 段,用來通知主 機2 雙方已完成 建立連接; 若其已不想建立這個連接,則可以發(fā)送一 個將RST置為“1”的應(yīng)答數(shù)據(jù)段來告之主 機2 拒絕建立連接。 二、連接的拆除 TCP連接的關(guān) 閉過程是一個四 次握手的過程。 圖5-9 四次握手拆除TCP 連接 當主機1 的數(shù)據(jù) 已發(fā)送完畢時, 其在等待確認 的同時可發(fā)送 一個將控制字 段FIN 置“1”的 數(shù)據(jù)段給主機2, 表示請求中斷 主機1到主機2 的連接。 圖5-9 四次握手拆除TCP

9、連接 若主機2 已正確接 收主機1 的所有分 段,則會發(fā)送一個 數(shù)據(jù)段正確接收的 確認段,同時通知 本地相應(yīng)的應(yīng)用程 序,對方要求關(guān)閉 連接,接著再發(fā)送 一個對主機1 所發(fā) 送的FIN段進行確 認的應(yīng)答段。由此 便拆除了一個方向 的TCP連接。 圖5-9 四次握手拆除TCP 連接 但是,此時在相反方向 上,主機2 仍然可以向 主機1 發(fā)送數(shù)據(jù),直到 主機2 數(shù)據(jù)發(fā)送完畢并 要求關(guān)閉連接。這個方 向上連接的拆除同樣要 經(jīng)過(1)、(2)兩步, 由主機2發(fā)起FIN段,主 機1應(yīng)答確認ACK,拆 除另一方向的TCP連接。 圖5-9 四次握手拆除TCP 連接 4.2.3.確認和超時重傳 4.2.4.T

10、CP定時器 TCP設(shè)置多個定時器幫助其完成所承擔的 服務(wù)。 一、重傳定時器(Connection Establishment Timer) 重發(fā)定時器是TCP發(fā)送數(shù)據(jù)時設(shè)置的, 如果在定時器超時前該數(shù)據(jù)段被確認,就 關(guān)閉該定時器,否則,一旦超時則重發(fā)該 數(shù)據(jù)段。 二、連接建立定時器(Connection Establishment Timer) 當請求建立連接的SYN數(shù)據(jù)段發(fā)出時, 連接建立定時器就開始計時,如果在75秒 內(nèi)未收到響應(yīng),則連接建立失敗。 三、ACK延時定時器(Delayed ACK Timer) 當TCP實體收到數(shù)據(jù)時它必須返回確認, 但并不需要立即回復(fù),它可以在200亳秒內(nèi)

11、發(fā)送ACK報文,如果在這段時間內(nèi)它恰好 有數(shù)據(jù)要發(fā)送,它就可以在數(shù)據(jù)內(nèi)包含確 認信息,因此需要ACK延時定時器。 四、持續(xù)定時器(Persistence Timer) 防止死鎖事情發(fā)生,發(fā)送方在收到接收 方發(fā)來一個窗口為0的數(shù)據(jù)時,就啟動持續(xù) 定時器,等到該定時器超時還沒有收到對 方修改窗口大小的數(shù)據(jù)段時,發(fā)送方就發(fā) 一個探測數(shù)據(jù),對接收方對該探測數(shù)據(jù)的 響應(yīng)應(yīng)包含了窗口大小,若仍為0,則定時 器清0,重復(fù)以上步驟,否則則可以發(fā)送數(shù) 據(jù)。 五、?;疃〞r器(The Keepalive Timer ) 當一個連接長時間閑置會造成保持存活 定時器會超時,這時就會發(fā)送一個空數(shù)據(jù) 段檢測另一方是否仍然存

12、在(即連接是否 依然激活),如果它未得到響應(yīng),便終止 該連接 。 六、閑置定時器(The Quiet Timer) 當TCP連接斷開后,為防止該連接上的 數(shù)據(jù)還在網(wǎng)絡(luò)上,并被后續(xù)打開的具有相 同五元組的連接接收,要設(shè)置閑置定時器 以防止剛剛斷開連接的端口號被立即重新 使用。 4.2.4.流量控制與滑動窗口機制 TCP實體在端設(shè)備中為每個連接開設(shè)兩個 緩沖區(qū), 一個是接收緩沖區(qū),用來接收對方發(fā)送來的數(shù) 據(jù)。 第二個是發(fā)送緩沖區(qū),TCP實體從應(yīng)用進程接 收數(shù)據(jù),存貯在發(fā)送緩沖區(qū)。 為了防止由于發(fā)送端與接收端之間的不 匹配而引起數(shù)據(jù)丟失,TCP采用滑動窗口 進行流量控制。 4.2.6.TCP的擁塞控

13、制 為了解決因網(wǎng)絡(luò)傳輸能力導(dǎo)致?lián)砣膯?題,TCP對流量控制方法進行了改進,增 加了一個擁塞窗口。這樣發(fā)送方TCP就有 兩個窗口:一是接收方通告窗口,反映的 是接收方的數(shù)據(jù)接收能力;一是擁塞窗口, 反映的是網(wǎng)絡(luò)的傳輸能力。而發(fā)送方可以 發(fā)送的字節(jié)數(shù),即發(fā)送窗口的大小取這兩 個窗口的最小值。 4.3. UDP協(xié)議 4.3.1. UDP協(xié)議 與TCP 相反,TCP/IP 傳輸層的另一大 協(xié)議UDP提供的是不可靠的面向無連接的 數(shù)據(jù)傳輸服務(wù)。 一、UDP數(shù)據(jù)報格式 圖5-13 UDP數(shù)據(jù)報格式 源端口字段: 該字段是16 位長度的發(fā)送端UDP協(xié)議端口號。在UDP 協(xié)議中也采用與TCP 中類似的端口概念來標識同一主 機上的不同網(wǎng)絡(luò)進程,并且兩者在分配方式上也是類 似的。應(yīng)用程序使用UDP協(xié)議而不直接采用原始IP協(xié) 議發(fā)送數(shù)據(jù),最主要的原因就UDP協(xié)議提供了標識進 程的端口號。 目的端口字段: 該字段是16 位長度的接收端UDP協(xié)議端口號。 長度字段: 該字段標記該數(shù)據(jù)報的長度,以8位長的字節(jié)為長度單 位,包括報頭和用戶數(shù)據(jù)。 校驗和字段: 該字段是可選擇的,如該字段值為0 則表明不 進行校驗。一般說來,使用校驗和字段是必要 的。檢查和的計算除了包括報頭和用戶數(shù)據(jù)外, 還要加上12字節(jié)的偽首部。 4. 偽首部: 該字段只用于計算校驗和,不會在UDP數(shù)據(jù)報 中發(fā)送。它由源IP地址、目的IP地

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論