現代計算機網絡技術_第1頁
現代計算機網絡技術_第2頁
現代計算機網絡技術_第3頁
現代計算機網絡技術_第4頁
現代計算機網絡技術_第5頁
已閱讀5頁,還剩110頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

學習目標掌握網絡層基本概念和術語理解主要路由算法原理理解網絡層擁塞控制算法與技術了解網絡互聯的主要技術掌握IP協議主要內容主要內容路由算法擁塞控制服務質量網際互連Internet上的網絡層第5章網絡層網絡層的設計問題網絡層關注的是如何將數據包從源端送到接收方,是處理端到端數據傳輸的最底層。網絡層主要解決的問題路由選擇網絡互連擁塞控制為上層提供服務2023/6/72路由算法2023/6/73路由算法:決定分組被發送到哪一條輸出線路數據報網絡:針對每個到達的數據包重新選擇路徑。虛電路網絡:僅建立一條新的虛電路時進行路由決策。路由:負責填充和更新路由表,并確定使用哪條路徑。轉發:當一個分組到達時,查找該分組對應的輸出鏈路。路由算法中的性能指標:延遲時間、吞吐量、hop數。路由算法分類非自適應算法(靜態路由)自適應算法(動態路由)。優化原則2023/6/74最優化原則(optimalityprinciple)如果路由器J在路由器I到K的最優路由上,則從J到K的最優路由會落在同一路由上。匯集樹(sinktree)從所有的源結點到一個給定的目的結點的最優路由集合構成了一個以目的結點為根的樹,稱為匯集樹。路由算法的目標:為所有的路由器找到并根據匯集樹轉發數據包。最短路徑算法(Dijkstra)

基本思想構建一張拓撲圖:圖中的每個結點代表一個路由器,每條邊代表一條通信線路。為了選擇兩個路由器間的路由,路由算法只需在圖中找出節點之間的最短路徑。測量路徑長度的方法結點數量(跳數)物理距離傳輸延遲距離、信道帶寬等參數的加權函數2023/6/75最短路由選擇(續)

最短路徑算法:用邊的權值作為距離度量來計算(1)每個結點用從源結點沿已知最佳路徑到本結點的距離來標注,標注分為臨時性標注和永久性標注。(2)初始時,所有結點都為臨時性標注,標注為無窮大;(3)將源結點標注為0,且為永久性標注,令其為工作結點;(4)檢查與工作結點相鄰的臨時性結點,若該結點到工作結點的距離與工作結點的標注之和小于該結點的標注,則用新計算得到的和重新標注該結點。(5)在整個圖中查找具有最小值的臨時性標注結點,將其變為永久性結點,并成為下一輪檢查的工作結點;(6)重復第四、五步,直到目的結點成為工作結點。2023/6/76最短路由選擇(續)2023/6/77計算從A到D的最短距離2023/6/78泛洪算法(flooding)

1567432911532863基本思想:不計算路徑,有路就走:將每一個輸入數據包發送到除了該數據包到達的那條線路以外的所有輸出線路。存在的問題:泛洪法會產生大量的重復數據包,即數據包重復到達某一節點,如3,6。泛洪算法(flooding)(續)

兩種解決方法方法一:數據包的頭中設一跳計數器,每經過一跳自動減1,計數值為0時,丟棄該數據包。方法二:讓路由器避免重復發送已經泛洪過的數據包,即在每個節點上建立登記表,數據包再次經過時丟棄。2023/6/79距離矢量算法(1)D-V算法基本思想屬于動態路由算法。每個路由器維護一張路由表,表中給出到每個目標的已知最佳距離以及所使用線路,并與相鄰路由器交換距離信息來更新表。路由表以網絡中每個路由器為索引,表項包括兩部分:到達目的路由器的最佳輸出線路、所需時間或距離。2023/6/710距離矢量算法工作過程:每隔一段時間,路由器向所有鄰居結點發送它到每個目的結點的距離表,同時它也接收每個鄰居結點發來的距離表;鄰居結點X發來的表中,X到路由器i的距離為Xi,本路由器到X的距離為m,則路由器經過X到i的距離為Xi+m。根據不同鄰居發來的信息,計算Xi+m,并取最小值,更新本路由器的路由表。注意:在計算過程中不使用老的路由表。2023/6/711To通過A通過I通過H通過KA0242021B12363128C25181936D4027824E1473022F23201940G1831631H1720019I2101422J911710K2422220L293399J到A延時為8J到I延時為10J到H延時為12J到K延時為6線路8A20A28I20H17I30I18H12H10I0-6K15K節點J的新路由表J重新估計的延時路由器當前節點為JJ的鄰節點:AIHKAEIHGFDCBLKJ2023/6/712距離矢量算法ABCDE1234初始時3234第1次交換后3434第2次交換后5454第3次交換后5656第4次交換后7676第5次交換后7878第6次交換后…………∞∞∞∞距離矢量算法(續)2023/6/713ABCDE∞∞∞∞初始時1∞∞∞第1次交換后12∞∞第2次交換后123∞第3次交換后1234第4次交換后好消息擴散的速度是每交換一次往遠處走一跳。A下網了(2)無窮計算問題收斂:整個網絡最佳路徑的尋找過程。好消息傳播得快,壞消息傳播得慢距離矢量算法(續)克服收斂速度慢的方法水平分裂同距離矢量法,只是到X的距離并不向真正通向X的鄰居節點報告:對下方節點,通知真正的距離;對上方節點(鄰居節點),給出無窮大。如上圖中的C點,它向D通知到A的是真正距離,而向B通知到A的距離是無窮大。壞消息以每交換一次跳一個節點的速度傳播。雖然廣泛使用,但有時候會失敗。2023/6/714ABCDE鏈路狀態算法鏈路狀態算法的基本思想:(1)發現它的鄰節點,并得到其網絡地址。(2)設置它到每個鄰節點的距離或開銷。(3)構造一個包含所有剛剛獲知的鏈路信息包。(4)將這個包發送給所有其他路由器,并接收來自所有其他路由器的信息包。(5)計算出到每個其他路由器的最短路徑。2023/6/715鏈路狀態算法(續)(1)發現鄰居

路由器啟動后向每個點到點線路發送HELLO分組(攜帶網絡地址),另一端的路由器返回一個應答,通報其網絡地址,且全局唯一。兩個或多個路由器連在一個LAN時,引入人工偽結點N,指定路由器替代N運行路由協議。2023/6/716鏈路狀態算法(續)(2)設置鏈路成本

鏈路成本可自動設置或由網絡運營商配置。常用選擇是成本與鏈路帶寬成反比:使高容量的路徑成為路由更好的選擇。鏈路延遲作為成本的組成部分:更好的選擇較短鏈路上的路徑。2023/6/717鏈路狀態算法(續)(3)構造鏈路狀態數據包數據包以發送方的標識符開頭,后面是序號、年齡和一個鄰居結點列表;列表中的每個鄰居結點,都要給出到這個鄰居節點的延遲或開銷。鏈路狀態數據包可以周期性的創建或發生重大事件時創建。2023/6/718鏈路狀態算法(續)舉例:網絡及其節點到其鄰節點(路由器)的線路開銷測量值(即延時,假設以ms計)。2023/6/719ABCDEF序號序號序號序號序號序號年齡年齡年齡年齡年齡年齡B4A4B2C3A5B6E5C2D3

F7

C1

D7F6E1F8E8AE324FDCB56187網絡的鏈路、狀態及分組情況

節點A僅與節點B和E相鄰AB的時延為4msAE的時延為5ms

鏈路狀態算法(續)(4)分發鏈路狀態包

基本思想:使用泛洪法將鏈路狀態數據包分發給所有路由器。為控制泛洪規模,每個數據包都包含一個序號,每次發送新數據包時加1。路由器記錄所看到的所有信息對(源路由器,序號),并檢查新進來的分組。當一個鏈路狀態包到達時,若是新的,則轉發;若是重復的,則丟棄;若序號比路由器記錄中的最大序號小,則認為過時而丟。2023/6/720鏈路狀態算法(續)存在的問題(1)序號可能繞回循環使用,產生混淆。(2)路由器可能崩潰重啟,丟失所有序號記錄表。(3)序號可能會發生錯誤。解決辦法使用32位的序號。每個數據包的序號之后包含一個年齡(age)字段,每秒鐘減1.2023/6/721鏈路狀態算法(續)舉例:用泛洪法(向鄰節點)發布鏈路狀態分組(以B為例,B的鄰接點有A、C、F)。2023/6/722源序號年齡ACFACF數據A2160011100

F2160110001

E2159010101

C2060101010

D2159100011

發送標志ACK標志Fig.路由器B的鏈路狀態分組的轉發和確認上表中,每一行上的兩組ACF位進行或運算的結果是111,這是巧合嗎?鏈路狀態算法(續)(5)計算新路由在路由器本地運行Dijkstra算法,計算到每個節點的路由,

構建出從本地出發到所有可能目標的最短路徑。運行結果告訴路由器到達每個目的地可以走哪條鏈路。2023/6/723鏈路狀態算法(續)LSR的優點路由信息的一致性好:壞消息也一樣傳播得快。狀態分組的長度較短,僅包含到鄰接點的距離、序號和年齡等,傳輸所耗用的網絡帶寬不大。狀態分組的擴散,由于年齡參數的設定,不會無限制擴散,所以可適用于大型網絡。LSR的缺點每個路由器需要有較大的存儲空間,用以存儲所收到的每一個節點的鏈路狀態分組。計算工作量大,每次都必須計算最短路徑。2023/6/724層次路由基本思想:分而治之路由器被劃分成區域(regions):每個路由器知道如何將數據包路由到自己所在區域的目標地址,不知道其他區域的內部結構。大型網絡,可將區域組織成簇(clusters)、簇組織成區(zones),區組織成組(groups)等等。2023/6/7252023/6/726層次路由不分層時1A的路由表目的地下一跳跳數1A----1B1B11C1C12A1B22B1B32C1B32D1B43A1C33B1C24A1C34B1C44C1C45A1C45B1C55C1B55D1C65E1C5分層時1A的路由表目的地下一跳跳數1A----1B1B11C1C121B231C241C351C45D5A5B5C5E4A4B4C3A3B1A1B1C2A2B2C2D區域1區域5區域3區域2區域4實例分析層次路由使得路由器1A的路由表從17項降低為7項缺點:分層后路由表中的路由不一定是最優路由。層次路由“應該分多少層?”對于一個包含N個路由器的網絡,最優的層數是lnN,每個路由器所需要的路由器表項是elnN個。由分層路由導致的平均路徑長度的實際增長非常小,可以接受。2023/6/727廣播路由2023/6/728廣播:同時給所有的目標發送一個數據包。(1)源機器給每個目標單獨發送數據包發送量大,浪費帶寬。需知道網上所有節點的地址。(2)泛洪法流量大,消耗大量帶寬。某些節點還可能收到重復的報文。廣播路由(續)(3)多目標路由每個數據包包含一組目標地址,指定所期望到達的目標。數據包到達路由器,路由器檢查數據包攜帶的所有目標,確定輸出線路集合;路由器為每一條輸出線路復制一個新的數據包副本,每個副本中僅包含那些使用該線路的目標地址。原來的目標集合被分散到這些輸出線路,經過多跳之后,最終每個數據包將只包含一個目標地址。2023/6/729廣播路由(續)(4)逆向路徑轉發基本原理:當某一廣播數據包到達路由器時,路由器檢查它到來的那條線路是否正是通常用來給廣播源端發送數據包用的那條線路。YES:該廣播數據包是沿著最佳路徑被轉發過來的,是到達當前路由器的第一份副本,則將該分組轉發到除進線以外的其它線路。NO:則當做重復數據包而丟棄。2023/6/7302023/6/731廣播路由(續)逆向路徑轉發舉例在(a)的網絡中,每個節點都已生成了一張路由表,假設當前每個節點的路由表中到節點I去的路徑中的下一跳分別為:當前節點ABCDEFGHJKLMNO到I去的下一節點FCDFAIJIIMKNIJ(a)一個網絡示例ABCDEHFGIJKLMNOABCDEHFGIJKLMNO(b)一棵匯集樹廣播路由(續)根據逆向路徑轉發的原則,構造如下一棵樹2023/6/732MHKJIHGFEDCBAONOKEGLLDNBH字母外面加一個圓圈表示是沿著匯集樹的首選路徑來的。ABCDEHFGIJKLMNO擁塞控制算法擁塞(congestion)網絡中存在太多的數據包導致數據包被延遲和丟失,降低傳輸性能,這種情況叫擁塞。網絡層和傳輸層共同承擔處理擁塞的責任。2023/6/733擁塞控制算法擁塞控制和流量控制的區別擁塞控制:確保網絡能夠承載所有到達的流量;是一個全局性問題,涉及所有的主機和路由器。流量控制:確保快速的發送方不會持續的以超過接收方接收能力的速率傳輸數據;只與特定的發送方和接收方之間的點到點流量有關。2023/6/734光纖網絡:100GbpsPC超級計算機電纜網絡:1Mbps500臺大型計算機500臺大型計算機100kbps擁塞控制的途徑2023/6/7351、增加資源網絡供給:動態的增加網絡資源。流量感知路由:根據流量模式定制路由。2、降低負載準入控制:拒絕導致擁塞的新連接,降低負載。流量限制:給造成問題的數據包源端發送反饋信息,要求源端抑制或減緩流量。負載脫落:網絡丟棄無法傳遞的數據包。Internet的網絡層2023/6/736Internet相互連接的網絡或者自治系統的集合。ISP:Internet服務提供商,提供Internet接入服務。IP協議(InternetProtocol)IP提供一種盡力而為的把數據包從源端傳輸到接收方的方法,即不提供任何保證。2023/6/737IPv4協議0481631版本頭部長區分服務總長度標識DFMF分段偏移量生存期協議頭部校驗和源IP地址目的IP地址可選項(可以省略)數據開始……IP數據報包含兩部分:一個頭部和一個正文(有效凈荷)。IP頭:包括20個字節的固定部分和變長的可選部分。IPv4協議(續)IP可選項變長,長度為4字節的倍數,不夠則填充,最長為40字節。用于控制和測試:增加在原始設想中沒有考慮到的工作。2023/6/738可選項描述安全性規定數據包的加密方式嚴格源路由分組必須嚴格按此路徑轉發松散源路由分組必須經過給出的路由器記錄路由每臺途經的路由器都必須附上它的IP地址時間戳每臺途經的路由器必須附上它的IP地址和時間戳IP地址2023/6/739(1)IPv4的地址位數為32位。(2)32位地址組成:高位的可變長網絡地址和低位的主機地址兩部分。(3)IP地址表示方法:點分十進制法,例51.(4)IP地址并不真正指向一臺主機,而是指向一個網絡接口。(5)路由器有多個接口,從而有多個IP地址。IP地址(續)前綴定義網絡部分的地址稱為前綴(網絡值對應一塊連續的IP地址空間),定義主機部分的地址稱為后綴。網絡地址書寫格式:前綴IP地址后跟一個斜線,斜線后的n表示地址最左邊網絡部分的長度,最右邊的32-n位表示連接到網絡的特定主機。例如/24。前綴指明了塊的大小和最低IP地址:塊大小由網絡部分的位數決定,即塊大小是2的冪。2023/6/740IP地址(續)子網掩碼前綴可簡單表示為“/n”,前綴長度相當于網絡地址部分中1的二進制掩碼,以該方式書寫時稱為子網掩碼。子網掩碼與IP地址進行AND運算,可提取該IP地址的網絡地址。下圖子網掩碼為2023/6/741IP地址(續)子網子網劃分:將一個網絡塊分割成若干個較小的幾部分,但對外仍然是單個網絡。一個網絡被劃分成為一系列較小的子網絡稱為子網。2023/6/742IP地址(續)路由器根據數據包的目標地址可確定它屬于哪個子網,具體做法:將數據包的目標地址與每個子網的掩碼進行AND運算,看結果是否對應某個前綴。2023/6/743例:考慮一個發往IP地址為51的數據包。EE的子網掩碼為,AND運算之后為CS的子網掩碼為,AND運算之后為ART的子網掩碼為,AND運算之后為IP地址(續)CIDR-無類域間路由路由聚合:將多個小前綴的地址塊合并成一個大前綴的地址塊。由路由聚合產生的較大前綴地址塊有時稱為超網,以有別于地址塊的分割。路由聚合與子網劃分協同工作,統稱為無類域間路由(CIDR)。2023/6/744IP地址(續)地址塊w.x.y.z/n的信息提取:地址數:N=232-n,n是前綴長度。首地址(任意地址)AND(網絡掩碼);或者保留該地址的左邊n位不變,把其余的32-n位都置0。末地址地址塊中的地址數+首地址末地址;或者(任意地址)OR[NOT(網絡掩碼)];或者保留該地址的左邊n位不變,把其余的 32-n位都置1。2023/6/745IP地址(續)2023/6/746例:如果地址塊中的一個地址是2/27,求這個地址塊的地址數、首地址和末地址。(1)n=27,網絡掩碼由27個1和5個0組成,即40

地址數為N=232-n=32(2)首地址=(2)AND(40)=4

或者把2的右邊5位置0(3)網絡掩碼的反碼為1

末地址=(2)OR(1)=5

或者把2的右邊5位置12023/6/747IP地址(續)CIDR地址塊的分配遵守三個原則:(1)必須是地址空間中連續的未分配地址才能被分配給申請的地址塊。(2)申請的地址數N必須是2的整次冪,根據地址數能夠求出其前綴長度的值。N=232-nn=32-log2N,因此N必須是2的乘方。(3)起始地址必須能夠被地址塊的地址數整除。IP地址(續)CIDR舉例:從開始,劍橋大學、牛津大學和愛丁堡大學分別申請2048個、4096個和1024個IP地址,分配如下:2023/6/748學校地址數地址范圍前綴劍橋2048~55/21愛丁堡1024~55/22保留1024~55/22牛津4096~55/202023/6/749IP地址(續)子網劃分無分類編址屬于兩級編址(前綴和后綴),但是通過子網劃分可以建立一個三級結構。授權使用某地址塊的組織或ISP可以將該地址塊進一步劃分為若干個子網,并為每個子網指派一個子地址段。子網劃分遵循以下原則:(1)每個子網的地址數是2的乘方。(2)每個子網的前綴長度用公式nsub

=n+log2(N/Nsub)求得。(3)每個子網的起始地址應能被它的地址數整除。假設某ISP授權使用的地址數為N,前綴長度為n,分配的每個子網的地址數為Nsub,子網前綴長度為nsub

,子網數為s。2023/6/750IP地址(續)例:某ISP被授權使用一個起始地址為/24的地址塊。該組織需要用到三個子網,三個子地址塊分別有120個地址、60個地址、10個地址。求出子網的前綴、首地址和末地址。該地址塊共有232-24=256個地址,首地址為/24,末地址為55/24.第1個子網:需分配128個地址(2的乘方),前綴長度為n1

=24+log2(256/128)=25。首地址是,末地址是27。第2個子網:需分配64個地址,前綴長度為n2

=24+log2(256/64)=26。首地址是28,末地址是91。第3個子網:需分配16個地址,前綴長度為n3

=24+log2(256/16)=28。首地址是92,末地址是07IP地址(續)分類尋址1993年以前,IP地址被分為5個類別(A、B、C、D、E類。2023/6/751IP地址(續)分類地址存在的問題:地址空間浪費對于大多數組織,具有1600萬個地址的A類網絡太大;具有256個地址的C類網絡太小;具有65536個地址的B類網絡看似恰當好處,但是研究表明,超過半數的B類網絡少于50臺主機。引入CIDR技術來減小全局路由表的大小。2023/6/752今天,表明一個地址是否屬于A、B或C類網絡的標志位已不再使用。過時的分類尋址被無類尋址所取代!2023/6/753IP地址(續)網絡主機地址類型用途全0全0本機啟動時使用全0主機ID主機當前本網絡中的主機網絡ID全1直接廣播在指定網上廣播全1全1有限廣播在本地網上廣播127任意回送測試()特殊的IP地址IP地址(續)2023/6/754網絡地址轉換-NATIP地址非常匱乏!!保守解決方案:為連在網上并使用網絡的計算機動態分配一個IP地址,主機不活躍時收回該IP地址,再分配給其他活躍的計算機。長期解決方案:從IPv4遷移到IPv6。目前普遍使用的快速方案:網絡地址轉換。IP地址(續)NAT的基本思想:ISP為每個家庭或每個公司分配一個IP地址(或者分配少量的IP地址),用這個IP地址來傳輸Internet流量。客戶網絡內部,每臺計算機有唯一的IP地址,該地址用來傳輸路由內部流量。2023/6/755當一個數據包離開客戶網絡去其他ISP,須執行一個地址轉換,把唯一的內部IP地址轉換成那個共享的公共IP地址。2023/6/756IP地址(續)NAT中的公共IP地址使用了IP地址保留給私有網絡的IP地址段。地址類別地址主機數A類-55/816777216B類-55/121048576C類-55/1665536任何網絡可以在內部隨意的使用這些地址,但是不允許包含這些地址的數據包出現在Internet上。2023/6/757IP地址(續)NAT的操作過程:通過NAT盒子(NATbox)將內部源IP地址轉換成該客戶所擁有的真實IP地址。2023/6/758IP地址(續)需要解決的一個問題:當應答數據包返回時,NAT盒子如何知道用哪個地址來替代它?輸出數據包進入NAT盒子時:①源地址10.x.y.z被客戶的真實IP地址取代;②同時TCP/UDP的源端口字段被一個索引值取代,指向NAT盒子的地址轉換表中的一個表項(該表項包含了原來的IP地址和原來的源端口)。數據包從ISP到達NAT盒子時:①從TCP/UDP頭中提取出源端口,作為索引值查找NAT盒子的映射表。②從對應表項中提取內部IP地址和原來的源端口,插入數據包。③將數據包傳遞給客戶內部使用10.x.y.z進行路由。IPv6協議IPv6的主要改進更大的地址空間:16字節,128位首部的簡化:只有7個固定域更好地支持選項增強了安全性更加關注服務質量2023/6/759IPv6協議(續)2023/6/7600481624

31版本區分服務流標簽凈荷長度下一頭部跳數限制源地址(16字節)目的地址(16字節)IPv6頭部IPv6協議(續)a)冒分十六進制表示法16個字節分成8組,每組4個16進制數,組之間用冒號隔開。例:8000:0000:0000:0000:0123:4567:89AB:CDEFb)零壓縮法前導0可省略;16個0可構成的一個或多個組可用1對冒號來代替。上面的地址可寫成:8000::123:4567:89AB:CDEFc)IPv4地址在IPv6中的表示IPv4地址00可寫成::00 2023/6/761IPv6地址表示法Internet控制協議控制協議IP協議只負責傳送IP數據包,無法監視和控制網絡中出現的一些問題,這些工作由Internet的控制協議來完成。(1)ICMP(Internet控制報文協議)(2)ARP(地址解析協議)(3)DHCP(動態主機配置協議)2023/6/7622023/6/763Internet控制協議(續)(1)ICMP-Internet控制消息協議路由器通過ICMP協議監視和測試Internet。類型ICMP報文類型描述差錯報文目的站點不可達數據包無法傳遞數據報超時TTL字段減為0數據報參數錯無效的頭字段控制報文源抑制抑制發送太多數據包的主機重定向告知路由器有關地理信息請求/應答報文應答和應答返回判斷目標機器是否可達以及是否活著:ping應用時間戳請求/應答同應答類似,不過包含了時間戳:用于測量網絡性能。路由器通告/懇求發現附近的路由器Internet控制協議(續)2023/6/764B可到達嗎?可以,我在這里。PingBICMP回應請求ICMP回應應答B可到達嗎?我不知道B在哪里。PingBICMP回應請求目的端無法到達主機A主機A主機B主機BICMP使用舉例:測試報文的可達性:ping命令2023/6/765Internet控制協議(續)(2)ARP-地址解析協議將IP地址映射到數據鏈路層的地址Internet控制協議(續)DHCP動態主機配置協議采用DHCP時,每個網絡必須有一個DHCP服務器負責地址配置:實現IP地址的自動分配。計算機通過廣播一個請求報文(DHCPDISCOVER包)來請求IP地址,該報文必須到達DHCP服務器。DHCP服務器收到請求,為該主機分配一個空閑的IP地址,并通過DHCPOFFER包返回給主機。由于開始時主機沒有IP地址,服務器用主機的以太網地址來標識該主機(主機的以太網地址由DHCPDISVOVER包攜帶)。2023/6/766問題:從地址池中分配給主機的IP地址能用多久?OSPF-內部網關路由協議2023/6/767自治系統AS內部使用的路由算法稱為域內路由算法,域內路由協議也成為內部網關協議。AS之間的路由稱為域間路由,使用的協議為域間路由協議和外部網關協議。Internet采用的域間路由協議是邊界網關協議-BGP。早期的域內路由協議:基于距離矢量的設計思想,典型協議是路由信息協議-RIP。目前的域內路由協議:開放最短路徑優先OSPF,借鑒了中間系統到中間系統IS-IS協議。OSPF廣泛用于公司網絡,IS-IS廣泛用于ISP網絡。Internet組播IP使用D類IP地址來支持組播。每個D類IP地址標識一組主機,總共有28位可用于標識組播組,即228個多播組。給D類地址發送數據包,網絡會盡力將數據包傳遞給指定組中的所有成員。IP地址/24范圍的地址保留用作本地網絡組播。組播路由器通過IGMP(組管理協議)來查詢主機屬于哪個組播組。2023/6/7682023/6/769第6章傳輸層學習目標掌握傳輸層提供的服務接口掌握傳輸層協議基本要素掌握UDP、TCP協議了解計算機網性能問題主要內容傳輸服務傳輸協議的要素UDP協議TCP協議2023/6/770第6章傳輸層傳輸層架構在網絡層提供的服務之上,將數據傳遞服務從兩臺主機之間擴展到了主機上的進程之間,即傳輸層負責整個報文的進程到進程的傳遞。尋址傳輸服務訪問點TSAP傳輸服務訪問點TSAP:傳輸層地址,TCP協議中指TCP的端口號。網絡層地址稱為網絡服務訪問點NSAP,在IP協議中即IP地址。2023/6/771三次握手連接建立2023/6/772tDATA(seq=x,ACK=y)ACK(seq=y,ACK=x)CR(seq=x)主機1主機2(a)正常操作主機1發出連接請求,序號為x(seq=x);主機2應答,接受主機1的連接請求,并聲明自己的序列號為y(seq=y,ACK=x);主機1收到確認后發送第一個數據,并確認主機2的序列號(seq=x,ACK=y)。對稱釋放連接對稱釋放:A提出中止請求,B同意即中止2023/6/773由于兩軍問題的存在,可以證明不存在安全的通過N次握手實現對稱式連接釋放的方法。實際的通信中,三次握手+定時器的方法釋放連接在絕大多數情況下是成功的。2023/6/774擁塞控制擁塞控制是網絡層和傳輸層的共同責任。(1)擁塞發生在路由器上,因此在網絡層檢測擁塞。(2)擁塞是由傳輸層遞交給網絡層的流量引起的,應控制傳輸層往網絡中發送數據包的速度。(3)Internet的擁塞控制嚴重依賴于傳輸層,一些算法被嵌入到TCP和其他協議中。2023/6/775理想的帶寬分配逐步加大分配的帶寬,可獲得最佳性能,直到延遲迅速攀升。擁塞控制算法的目標不僅是簡單的避免擁塞,它是為傳輸實體找到好的帶寬分配方法,能夠利用全部帶寬并還能避免擁塞。(1)效率和功率2023/6/776理想的帶寬分配(2)最大-最小公平性如果分配給一個流的帶寬在不減少分配給另一個流帶寬的前提下無法得到進一步增長,那么就不給這個流更多帶寬,即增加一個流的帶寬不以另一個流為代價。2023/6/777理想的帶寬分配(3)收斂一個理想的擁塞控制算法,應迅速收斂到公平有效的帶寬分配的理想操作點上,并跟蹤該隨時變化的操作點。2023/6/778調整發送速率發送速率受到兩個方面因素的限制流量控制:接收端沒有足夠的緩沖區的情況下;擁塞控制:網絡容量不足的情況下。2023/6/779調整發送速率(續)發送速率調整法則:加法遞增乘法遞減法則(AIMD),即加法遞增帶寬,收到擁塞信號時乘法遞減帶寬,可兼顧公平與效率AIMD是TCP采用的擁塞控制法則,實際策略是調整滑動窗口大小,不是直接調整發送速率。2023/6/780Internet傳輸協議-UDP用戶數據報協議(UDP,UserDatagramProtocol)的段由8字節的頭和有效載荷字段組成。UDP頭部UDP數據區IP頭部IP數據區Internet傳輸協議:TCP2023/6/781TCP協議需要解決的主要問題可靠傳輸流量控制和擁塞控制連接管理TCP服務模型套接字socket應用程序訪問TCP服務:通過在收發雙方創建套接字來實現。套接字的地址用(主機IP地址,16位主機端口號)表示。一個套接字有可能被用于多個連接,每條連接用(套接字1,套接字2)表示。2023/6/782TCP服務模型2023/6/783端口port端口號:·0~65535之間的16位整數。熟知端口(well-knownport):端口號小于1024注冊端口:1024~49151,可在IANA注冊以防重復。動態端口:49152~65535,可由任何進程使用,臨時端口。IANA定義的端口號范圍TCP服務模型常用well-knownTCP端口表2023/6/784端口號關鍵字服務說明20,21FTP文件傳輸協議22SSH遠程登錄,Telnet的替代品23TELNET終端連接25SMTP簡單郵件傳輸協議53DNS域名解析協議80HTTP超文本傳輸協議110POP-3遠程E-mail訪問TCP協議按字節分配序號每個字節有一個32位的序號。TCP實體之間使用數據段的形式交換數據TCP數據段包含一個20字節的頭(選項部分另加)和0個或多個數據字節。段的大小首先滿足65515字節的IP包數據凈荷長度限制,其次滿足數據鏈路層最大傳輸單元(MTU)的限制,比如以太網的MTU為1500字節;TCP實體使用的基本協議:滑動窗口協議確認號等于接收方希望接收的下一個序號。2023/6/7852023/6/786TCP數據段頭TCP段的頭:20字節的固定部分+選項TCP的數據:最長為65535-20-20=65495字節TCP滑動窗口TCP的窗口管理2023/6/787TCP滑動窗口零窗口公告發送方收到一個零窗口公告時,必須停止發送,直到接收方重新發送一個非零的窗口公告,但有兩種情況可以除外:(1)發送緊急數據:如允許用戶終止當前正在遠端機上運行的進程。(2)窗口探測:發送方可以發送1個字節的數據段通知對方,要求接收方重新宣告下一個期望的字節和窗口大小,以防止可能的窗口公告丟失而導致死鎖。2023/6/788TCP滑動窗口低能窗口綜合癥發送應用程序產生數據的速度很慢,或者接收應用程序消耗數據的速度很慢,或者兩者都有,會降低TCP的運行效率,稱為低能窗口綜合癥。解決方案一:Nagle算法解決發送端發送多個小數據包造成的低效率問題。基本思想:任何時候只有第一個發送的數據包是小數據包。后續到達的字節被緩沖起來,直到發送出去的那個小數據包被確認,然后將所有緩沖的字節放在一個TCP段中發送出去。2023/6/7892023/6/790TCP滑動窗口解決方案二:Clark解決方案解決接收端應用每次僅讀取1個字節數據的問題。Clark解決方案:禁止接收端發送只有1個字節的窗口更新段。TCP滑動窗口解決方案三:延遲確認發送端收到應用程序傳遞來的數據并不立即將數據發送出去;接收端并不立即發送確認段,而是一直等待到輸入緩存有足夠的空間為止。延遲確認:將確認和窗口更新延遲,且不超過500ms,希望能夠獲得一些數據免費搭載過去。2023/6/791TCP擁塞控制擁塞窗口和流量控制窗口擁塞窗口:任何時候發送端可以向網絡發送的字節數,其速率是窗口大小除以連接的往返時間。TCP根據AIMD(加法遞增乘法遞減)法則調整擁塞窗口的大小。流量控制窗口:接收端可以緩沖的字節數。有效窗口:發送端的擁塞窗口和接收端的流量控制窗口二者中的較小者。2023/6/7922023/6/793TCP擁塞控制慢啟動(slowstart)算法每接收到一個報文段的確認,窗口大小加1。窗口大小在每個RTT周期(輪次)內指數增長。慢啟動閾值:以慢啟動方式增加擁塞窗口,直到發生超時,或者擁塞窗口超過閾值。TCP擁塞控制擁塞避免:線性遞增(加法增長)若擁塞窗口超過閾值,慢速啟動階段停止,切換到線性增長。每個往返時間擁塞窗口只增加1段:每次整個窗口所有段都被確認時,窗口大小才加1,即一個RTT周期增加一個最大段長,直至發生丟包超時事件。擁塞檢測:乘性減小每當檢測到丟包,閾值被設置為當前擁塞窗口的一半。如果是超時造成的丟包,擁塞窗口被復位到初始值,重新開始慢啟動。2023/6/7942023/6/795TCP擁塞控制初始擁塞窗口為1個段的線性增長過程每個往返時間擁塞窗口只增加一段。TCP擁塞控制2023/6/796Internet擁塞算法的一個例子:TCPTahoe第7章應用層2023/6/797學習目標熟悉應用層基本概念掌握因特網的域名系統熟悉常見的應用層協議了解流式音視頻的工作原理了解通信安全的工作原理主要內容DNS–域名系統電子郵件萬維網流式音視頻內容分發通信安全域名系統-DNSDNS(DomainNameSystem,域名系統)功能:映射應用層的主機名與網絡層的IP地址之間的對應關系。DNS的本質是分級的、基于域的命名方案,并用一個分布式的數據庫系統實現。為了將名字映射成IP地址,應用程序調用一個庫程序-解析器(resolver),并將名字作為參數傳遞給該程序。2023/6/798域名系統-DNSDNS的分層結構Internet頂級域名分為通用的和國家或地區的兩種類型。

2023/6/799通用的國家的sunyaleacmieeeedubjoccvuengcsengjackjillcuconlinecsailindaiescoolorinflitsfluitrobotnetworkintcomedugovmilorgnetcnjpnl...TnbmFig.7-1部分Internet域名空間

域名不區分大小寫新建一個域必須征得所屬域的同意。命名遵循組織的邊界,而非物理網絡邊界。2023/6/7100域名系統-DNS通用的頂級域名域名資源記錄2023/6/7101類型意義值SOA授權有關該區域的一組參數A主機的IPV4地址32位整型數AAAA主機的IPV6地址128位整型數MX郵件交換優先級,接受郵件的域NS域名服務器該域的服務器名CNAME別名域名PTR指針某一IP地址的別名,用于反向解析SRV服務提供服務的主機TXT文本說明的ACSII文本Domain_name∣Time_to_live∣Class∣Type∣ValueDNS的基本功能是將域名映射到資源記錄,最常見的資源記錄是IP地址。一條資源記錄是一個五元組。域名服務器DNS名字空間被劃分為許多無重疊的區域(zone)。2023/6/7102通用域國家域intcomedugovmilorgnetcnjpnl...sunyaleacmieeeedubjoccvuengcsengjackjillcuconlinecsailinda

溫馨提示

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

評論

0/150

提交評論