擁塞控制方法、設備及系統的制作方法
【專利摘要】本發明實施例提供一種擁塞控制方法、設備及系統。該擁塞控制方法包括:源端設備通過第一端口接收宿端設備發送的本地防擁塞應答消息,其中,所述本地防擁塞應答消息是所述宿端設備在確定所述宿端設備中與所述第一端口對應的第二端口的端口發送隊列中緩存數據的長度超過閾值后發送的;所述源端設備對需通過所述第一端口發往所述第二端口的數據包進行暫緩發送。本發明實施例實現了對CCN網絡中節點的數據包進行及時準確地逐跳擁塞控制。
【專利說明】擁塞控制方法、設備及系統
【技術領域】
[0001] 本發明實施例涉及無線通信技術,尤其涉及一種擁塞控制方法、設備及系統。
【背景技術】
[0002] 內容為中心網絡(Content Centric Networking,簡稱CCN)認為未來網絡應該以 直接基于內容的命名和路由為基礎。作為CCN的一個公共的準則,內容是由其名字進行唯 一辨識、路由以及獲取的,而與內容的位置無關。
[0003] 目前對CCN網絡的傳輸控制機制研究較少。CCN網絡采用依靠用戶請求驅動模式 的流控協議,這種流控協議基于連續的包請求,觸發連續的數據包獲取。由于CCN網絡中節 點具備緩存功能,所以請求者接收到的數據可能來自數據源處,也可能來自請求路徑上某 些節點的緩存。這樣相同內容的數據包便以多種多樣的方式被接收,例如,從多個不同的節 點,以不同的往返時間(Round Trip Time,簡稱RTT)被接收。這樣CCN網絡節點就會容易 出現大量的突發流量,CCN網絡節點上的緩存區被突發數據包填滿了,再出現的數據包只能 被丟棄,造成嚴重的網絡擁塞。
【發明內容】
[0004] 本發明實施例提供一種擁塞控制方法、設備及系統,以解決CCN網絡節點出現大 量的突發流量時,對CCN網絡節點進行及時準確的擁塞控制。
[0005] 第一方面,本發明實施例提供一種擁塞控制方法,包括:源端設備通過第一端口接 收宿端設備發送的本地防擁塞應答消息,其中,所述本地防擁塞應答消息是所述宿端設備 在確定所述宿端設備中與所述第一端口對應的第二端口的端口發送隊列中緩存數據的長 度超過閾值后發送的;
[0006] 所述源端設備對需通過所述第一端口發往所述第二端口的數據包進行暫緩發送。
[0007] 結合第一方面,在第一方面的第一種可能的實現方式中,所述源端設備對需通過 所述第一端口發往所述第二端口的數據包進行暫緩發送,包括:
[0008] 所述源端設備將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態;
[0009] 當所述第一端口的端口發送隊列的狀態為防擁塞狀態時,所述源端設備獲取待 定數據包表PCT中需通過所述第一端口發往所述第二端口的所述數據包對應的生存時間 TTL,在到達所述TTL時,通過所述第一端口向所述第二端口發送所述數據包,其中,所述生 存時間,是指從所述宿端設備接收的所述數據包的請求包的生存時間。
[0010] 結合第一方面、第一方面的第一種可能的實現方式,在第一方面的第二種可能的 實現方式中,所述方法還包括:
[0011] 所述源端設備通過所述第一端口接收所述宿端設備通過所述第二端口發送的本 地正常應答消息,其中,所述本地正常應答消息是所述宿端設備在確定所述第二端口的端 口發送隊列中緩存數據的長度沒有超過閾值且向所述第一端口發送過所述本地防擁塞應 答消息而發送的;
[0012] 所述源端設備將所述第一端口的端口發送隊列的狀態恢復為正常發送狀態。
[0013] 結合第一方面的第一、第二種可能的實現方式,在第一方面的第三種可能的實現 方式中,所述方法還包括:
[0014] 所述源端設備通過所述第一端口接收所述宿端設備通過所述第二端口發送的請 求包,若本地存儲有與所述請求包對應的數據包,則檢測所述第一端口的端口發送隊列中 緩存數據的長度是否超過閾值,若超過,則將所述數據包的信息、所述數據包對應的生存時 間TTL,以及所述第一端口的端口信息存儲到所述待定數據包表PCT中;若沒有超過,則檢 測所述第一端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則將所述數據包的 信息、所述數據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述PCT中; 若不是,則直接將所述數據包存儲到所述第一端口的端口發送隊列中。
[0015] 第二方面,本發明實施例提供一種源端設備,包括:
[0016] 消息接收模塊,用于通過第一端口接收宿端設備發送的本地防擁塞應答消息,其 中,所述本地防擁塞應答消息是所述宿端設備在確定所述宿端設備中與所述第一端口對應 的第二端口的端口發送隊列中緩存數據的長度超過閾值后發送的;
[0017] 發送隊列緩存管理模塊,用于將需通過所述第一端口發往所述第二端口的數據包 進行暫緩發送。
[0018] 結合第二方面,在第二方面的第一種可能的實現方式中,所述發送隊列緩存管理 模塊具體用于:
[0019] 將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態;
[0020] 當所述第一端口的端口發送隊列的狀態為防擁塞狀態時,獲取待定數據包表PCT 中需通過所述第一端口發往所述第二端口的所述數據包對應的生存時間TTL,在到達所述 TTL時,通過所述第一端口向所述第二端口發送所述數據包,其中,所述生存時間,是指從所 述宿端設備接收的所述數據包的請求包的生存時間。
[0021] 結合第二方面、第二方面的第一種可能的實現方式,在第二方面的第二種可能的 實現方式中,所述消息接收模塊,還用于通過所述第一端口接收所述宿端設備通過所述第 二端口發送的本地正常應答消息,其中,所述本地正常應答消息是所述宿端設備在確定所 述第二端口的端口發送隊列中緩存數據的長度沒有超過閾值且向所述第一端口發送過所 述本地防擁塞應答消息而發送的;
[0022] 所述發送隊列緩存管理模塊,還用于將所述第一端口的端口發送隊列的狀態恢復 為正常發送狀態。
[0023] 結合第二方面的第一、二種可能的實現方式,在第二方面的第三種可能的實現方 式中,所述消息接收模塊,還用于通過所述第一端口接收所述宿端設備通過所述第二端口 發送的請求包;相應地,所述源端設備還包括:
[0024] 處理模塊,用于若本地存儲有與所述請求包對應的數據包,則檢測所述第一端口 的端口發送隊列中緩存數據的長度是否超過閾值,若超過,則將所述數據包的信息、所述數 據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述待定數據包表PCT中; 若沒有超過,則檢測所述第一端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則 將所述數據包的信息、所述數據包對應的生存時間TTL,以及所述第一端口的端口信息存儲 到所述PCT中;若不是,則直接將所述數據包存儲到所述第一端口的端口發送隊列中。
[0025] 第三方面,本發明實施例提供一種網絡系統,包括至少一個源端設備,以及至少一 個宿端設備;
[0026] 所述宿端設備,用于在確定所述宿端設備中與所述第一端口對應的第二端口的端 口發送隊列中緩存數據的長度超過閾值后發送地防擁塞應答消息;
[0027] 所述源端設備,用于通過第一端口接收所述宿端設備發送的本地防擁塞應答消 息,將需通過所述第一端口發往所述第二端口的數據包進行暫緩發送。
[0028] 結合第三方面,在第三方面的第一種可能的實現方式中,所述源端設備,用于將需 通過所述第一端口發往所述第二端口的數據包進行暫緩發送,具體為:
[0029] 所述源端設備,用于將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態, 當所述第一端口的端口發送隊列的狀態為防擁塞狀態時,獲取待定數據包表PCT中需通過 所述第一端口發往所述第二端口的所述數據包對應的生存時間TTL,在到達所述TTL時,通 過所述第一端口向所述第二端口發送所述數據包,其中,所述生存時間,是指從所述宿端設 備接收的所述數據包的請求包的生存時間。
[0030] 結合第三方面、第三方面的第一種可能的實現方式,在第三方面的第二種可能的 實現方式中,所述宿端設備,還用于在確定所述第二端口的端口發送隊列中緩存數據的長 度沒有超過閾值且向所述第一端口發送過所述本地防擁塞應答消息,發送本地正常應答消 息;
[0031 ] 所述源端設備,還用于通過所述第一端口接收所述宿端設備通過所述第二端口發 送的所述本地正常應答消息,將所述第一端口的端口發送隊列的狀態恢復為正常發送狀 態。
[0032] 結合第三方面的第一、二種可能的實現方式,在第三方面的第三種可能的實現方 式中,所述宿端設備,還用于通過所述第二端口發送請求包;
[0033] 所述源端設備,還用于通過所述第一端口接收所述宿端設備發送的所述請求包, 若本地存儲有與所述請求包對應的數據包,則檢測所述第一端口的端口發送隊列中緩存數 據的長度是否超過閾值,若超過,則將所述數據包的信息、所述數據包對應的生存時間TTL, 以及所述第一端口的端口信息存儲到所述待定數據包表PCT中;若沒有超過,則檢測所述 第一端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則將所述數據包的信息、所 述數據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述PCT中;若不是, 則直接將所述數據包存儲到所述第一端口的端口發送隊列中。
[0034] 本發明實施例擁塞控制方法、設備及系統,宿端設備若在確定第二端口的端口發 送隊列中緩存數據的長度超過閾值后,則向源端設備中與第二端口對應的第一端口發送本 地防擁塞應答消息,通知源端設備此時宿端設備處于擁塞狀態,停止接收源端設備向第二 端口發送的數據包,則源端設備接收宿端設備發送的本地防擁塞應答消息,源端設備將與 第二端口對應的第一端口的端口發送隊列的狀態設置為防擁塞狀態,源端設備在防擁塞狀 態下對需通過第一端口發往第二端口的數據包進行暫緩發送,實現了在CCN網絡節點設備 出現大量數據包流量時,及時地進行逐跳地擁塞控制,解決了 CCN網絡節點中出現大量突 發數據包流量時,會造成嚴重的網絡擁塞的問題。
【專利附圖】
【附圖說明】
[0035] 為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發 明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以 根據這些附圖獲得其他的附圖。
[0036] 圖1為本發明擁塞控制方法實施例一的流程圖;
[0037] 圖2為本發明擁塞控制方法實施例二的流程圖;
[0038] 圖3為本發明擁塞控制方法實施例三的流程圖;
[0039] 圖4為本發明擁塞控制方法實施例四的流程圖;
[0040] 圖5為圖4所示實施例的的源端設備的功能示意圖;
[0041] 圖6為本發明擁塞控制方法實施例五的流程圖;
[0042] 圖7為圖6所示實施例的的宿端設備的功能示意圖;
[0043] 圖8為本發明擁塞控制源端設備實施例一的結構示意圖;
[0044] 圖9為本發明擁塞控制源端設備實施例四的結構示意圖;
[0045] 圖10為本發明CCN網絡系統實施例一的結構示意圖;
[0046] 圖11為本發明CCN網絡節點設備實施例的結構示意圖。
【具體實施方式】
[0047] 為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例 中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員 在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0048] 圖1為本發明擁塞控制方法實施例一的流程圖。本實施例的執行主體為CCN網絡 節點中的源端設備,該設備可以通過軟件和/或硬件實現。本實施例的方案應用在CCN網 絡節點中,能夠在CCN網絡節點出現大量突發流量時,對CCN網絡節點進行及時準確的擁塞 控制。如圖1所示,本實施例的方法可以包括 :
[0049] 步驟101、源端設備通過第一端口接收宿端設備發送的本地防擁塞應答消息。
[0050] CCN網絡本質是點到多點的網絡,CCN網絡依靠用戶請求驅動模式的流控協議,這 種流控協議基于連續的包請求,觸發連續的數據包獲取,CCN網絡節點同時既可作為源端設 備也可作為宿端設備。由于CCN網絡節點具備緩存功能,所以宿端設備接收到的數據包可 能來至數據源處,也可能來至請求路徑上某些網絡節點的緩存,也即宿端設備接收到的數 據包可能來至多個不同的源端設備。
[0051] 具體地,所述本地防擁塞應答消息是所述宿端設備在確定所述宿端設備中與所述 第一端口對應的第二端口的端口發送隊列中緩存數據的長度超過閾值后發送的,說明此時 第二端口的端口發送隊列緩存已經被數據包填滿了,處于擁塞狀態,則向源端設備中與第 二端口對應的第一端口發送本地防擁塞應答消息消息,此時源端設備的第一端口暫緩向對 應的宿端設備的第二端口發送數據包。
[0052] 步驟102、源端設備對需通過第一端口發往第二端口的數據包進行暫緩發送。
[0053] 具體地,源端設備中與第二端口對應的第一端口接收到宿端設備發送的本地防擁 塞應答消息消息后,說明此時宿端設備已經處于擁塞狀態,則源端設備將與第二端口對應 的第一端口的端口發送隊列的狀態設置為防擁塞狀態,此時對需通過第一端口發往第二端 口的數據包進行暫緩發送,這樣就會減少宿端設備的數據包流量。
[0054] 需要說明的是,本實施例中的宿端設備同時也可作為源端設備,源端設備同時也 可作為宿端設備。
[0055] 本實施例,宿端設備若在確定第二端口的端口發送隊列中緩存數據的長度超過閾 值后,則向源端設備中與第二端口對應的第一端口發送本地防擁塞應答消息消息,通知源 端設備此時宿端設備處于擁塞狀態,停止接收源端設備向第二端口發送的數據包,則源端 設備將與第二端口對應的第一端口的端口發送隊列的狀態設置為防擁塞狀態,源端設備在 防擁塞狀態下對需通過第一端口發往第二端口的數據包進行暫緩發送,實現了在CCN網絡 節點設備出現大量數據包流量時,進行擁塞控制,解決了 CCN網絡節點中出現大量突發數 據包流量時,會造成嚴重的網絡擁塞的問題。
[0056] 圖2為本發明擁塞控制方法實施例二的流程圖,如圖2所示,在圖1所示的方法實 施例一中源端設備在防擁塞狀態下對需通過第一端口發往第二端口的數據包進行暫緩發 送,具體可以通過以下方式實現:
[0057] 步驟201、源端設備將第一端口的端口發送隊列的狀態設置為防擁塞狀態。
[0058] 步驟202、當第一端口的端口發送隊列的狀態為防擁塞狀態時,源端設備獲取待定 數據包表(Pending Content Table,簡稱PCT)中需通過第一端口發往第二端口的數據包對 應的生存時間(Time To Live,簡稱TTL)。
[0059] 具體地,PCT中存儲有數據包對應的TTL,其中,生存時間TTL,是指從所述宿端 設備接收的所述數據包的請求包的生存時間。請求包的TTL例如是存儲在待定請求包表 (Pending Interest Table,簡稱PIT)中,而PIT為了限制PIT緩存信息數量,其中的請求 包都攜帶TTL,超時的請求包信息會從PIT表中清除,這樣后續再到來的相應的數據包就會 被丟棄。
[0060] 步驟203、在到達TTL時,源端設備通過第一端口向第二端口發送數據包。
[0061] 具體地,在到達TTL時,源端設備必須通過第一端口向第二端口發送數據包,無論 此時宿端設備的第二端口的端口發送隊列中緩存數據的長度是否超過閾值,也即無論宿端 設備的第二端口是否處于擁塞狀態,否則超過TTL時,PCT中的記錄會被刪除。
[0062] 本實施例,通過源端設備將第一端口的端口發送隊列的狀態設置為防擁塞狀態, 當第一端口的端口發送隊列的狀態為防擁塞狀態時,源端設備獲取PCT中欲通過第一端口 發往第二端口的數據包對應的TTL,在到達TTL時,源端設備通過第一端口向第二端口發送 數據包,保證數據包在其生存時間內發往第二端口,以免在源端設備中丟包。
[0063] 圖3為本發明擁塞控制方法實施例三的流程圖,在圖1、2所示的方法實施例基礎 上,進一步地,本實施例的方法還包括:
[0064] 步驟301、源端設備通過第一端口接收宿端設備通過第二端口發送的本地正常應 答消息。
[0065] 具體地,本地正常應答消息是宿端設備在確定第二端口的端口發送隊列中緩存數 據的長度沒有超過閾值且向第一端口發送過本地防擁塞應答消息而發送的。
[0066] 步驟302、源端設備將第一端口的端口發送隊列的狀態恢復為正常發送狀態。
[0067] 本實施例,宿端設備在確定第二端口的端口發送隊列中緩存數據的長度沒有超過 閾值后,并且曾向源端設備中與第二端口對應的第一端口發送過本地防擁塞應答消息消 息,則宿端設備向源端設備中與第二端口對應的第一端口發送本地正常應答消息消息,通 知源端設備此時宿端設備處于非擁塞狀態可以接收數據包,源端設備將第一端口的端口發 送隊列的狀態恢復為正常發送狀態,能夠及時的防止源端設備擁塞的發生。
[0068] 圖4為本發明擁塞控制方法實施例四的流程圖。圖5為圖4所示實施例的源端設 備的功能示意圖。本實施例的執行主體為CCN網絡節點中的源端設備,該設備可以通過軟 件和/或硬件實現。本實施例的方案應用在CCN網絡節點中。如圖4、5所示,在圖1、2所 示的方法實施例基礎上,進一步地,本實施例的方法可以包括:
[0069] 步驟401、源端設備通過第一端口接收宿端設備發送的請求包。
[0070] 步驟402、檢測本地存儲中是否有與請求包對應的數據包,若是,則轉步驟403 ;若 否,則后續請求包的處理流程與現有的CCN網絡節點處理流程一樣。
[0071] 具體地,如圖5所示,例如可以檢測CS中是否有與請求包對應的數據包,后續請求 包的處理流程如圖4虛線框內的流程與現有的CCN網絡節點處理流程一樣,所涉及到的功 能模塊如圖5中所示,此處不再贅述。
[0072] 步驟403、檢測第一端口的端口發送隊列中緩存數據的長度是否超過閾值,若是, 則轉步驟405 ;若否,則轉步驟404。
[0073] 具體地,從哪個端口接收到請求包,相應的數據包就從哪個端口發送出去,這時就 要檢測第一端口的端口發送隊列中緩存數據的長度是否超過閾值,判斷是否處于擁塞狀 態,如果處于擁塞狀態則轉步驟405。
[0074] 步驟404、檢測第一端口的端口發送隊列的狀態是否為防擁塞狀態,若是,則轉步 驟405 ;若否,則轉步驟406。
[0075] 具體地,檢測到第一端口的端口發送隊列中緩存數據的長度沒有超過閾值,則檢 測第一端口的端口發送隊列的狀態是否為防擁塞狀態,如果不是防擁塞狀態,則直接將數 據包存儲到第一端口的端口發送隊列中并發送出去,否則轉步驟405。
[0076] 步驟405、將數據包的信息、數據包對應的生存時間TTL,以及第一端口的端口信 息存儲到PCT中。
[0077] 具體地,如果第一端口的端口發送隊列中緩存數據的長度超過閾值處于擁塞狀 態,就要把相應的數據包的信息存儲在PCT中,此時對數據包不做處理,返回步驟401中,后 續如果檢測獲知此端口的端口發送隊列中緩存數據的長度沒有超過閾值,再把數據包存儲 到此端口的端口發送隊列中,并執行步驟404,否則超過數據包對應的生存時間TTL,則刪 除PCT中的記錄。如果處于防擁塞狀態,則將數據包的信息、數據包對應的生存時間TTL,以 及第一端口的端口信息存儲到PCT中,并把數據包存儲到第一端口的端口發送隊列中,對 數據包做暫緩發送處理,如圖2所示實施例中所述。
[0078] PCT的結構例如可以是如下的表結構:
[0079] 表 PCT
[0080]
【權利要求】
1. 一種擁塞控制方法,其特征在于,包括: 源端設備通過第一端口接收宿端設備發送的本地防擁塞應答消息,其中,所述本地防 擁塞應答消息是所述宿端設備在確定所述宿端設備中與所述第一端口對應的第二端口的 端口發送隊列中緩存數據的長度超過閾值后發送的; 所述源端設備對需通過所述第一端口發往所述第二端口的數據包進行暫緩發送。
2. 根據權利要求1所述的方法,其特征在于,所述源端設備對需通過所述第一端口發 往所述第二端口的數據包進行暫緩發送,包括: 所述源端設備將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態; 當所述第一端口的端口發送隊列的狀態為防擁塞狀態時,所述源端設備獲取待定數 據包表PCT中需通過所述第一端口發往所述第二端口的所述數據包對應的生存時間TTL, 在到達所述TTL時,通過所述第一端口向所述第二端口發送所述數據包,其中,所述生存時 間,是指從所述宿端設備接收的所述數據包的請求包的生存時間。
3. 根據權利要求1或2所述的方法,其特征在于,所述方法還包括: 所述源端設備通過所述第一端口接收所述宿端設備通過所述第二端口發送的本地正 常應答消息,其中,所述本地正常應答消息是所述宿端設備在確定所述第二端口的端口發 送隊列中緩存數據的長度沒有超過閾值且向所述第一端口發送過所述本地防擁塞應答消 息而發送的; 所述源端設備將所述第一端口的端口發送隊列的狀態恢復為正常發送狀態。
4. 根據權利要求2或3所述的方法,其特征在于,所述方法還包括: 所述源端設備通過所述第一端口接收所述宿端設備通過所述第二端口發送的請求包, 若本地存儲有與所述請求包對應的數據包,則檢測所述第一端口的端口發送隊列中緩存數 據的長度是否超過閾值,若超過,則將所述數據包的信息、所述數據包對應的生存時間TTL, 以及所述第一端口的端口信息存儲到所述待定數據包表PCT中;若沒有超過,則檢測所述 第一端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則將所述數據包的信息、所 述數據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述PCT中;若不是, 則直接將所述數據包存儲到所述第一端口的端口發送隊列中。
5. -種源端設備,其特征在于,包括: 消息接收模塊,用于通過第一端口接收宿端設備發送的本地防擁塞應答消息,其中,所 述本地防擁塞應答消息是所述宿端設備在確定所述宿端設備中與所述第一端口對應的第 二端口的端口發送隊列中緩存數據的長度超過閾值后發送的; 發送隊列緩存管理模塊,用于將需通過所述第一端口發往所述第二端口的數據包進行 暫緩發送。
6. 根據權利要求5所述的源端設備,其特征在于,所述發送隊列緩存管理模塊具體用 于: 將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態; 當所述第一端口的端口發送隊列的狀態為防擁塞狀態時,獲取待定數據包表PCT中需 通過所述第一端口發往所述第二端口的所述數據包對應的生存時間TTL,在到達所述TTL 時,通過所述第一端口向所述第二端口發送所述數據包,其中,所述生存時間,是指從所述 宿端設備接收的所述數據包的請求包的生存時間。
7. 根據權利要求5或6所述的源端設備,其特征在于, 所述消息接收模塊,還用于通過所述第一端口接收所述宿端設備通過所述第二端口發 送的本地正常應答消息,其中,所述本地正常應答消息是所述宿端設備在確定所述第二端 口的端口發送隊列中緩存數據的長度沒有超過閾值且向所述第一端口發送過所述本地防 擁塞應答消息而發送的; 所述發送隊列緩存管理模塊,還用于將所述第一端口的端口發送隊列的狀態恢復為正 常發送狀態。
8. 根據權利要求6或7所述的源端設備,其特征在于,所述消息接收模塊,還用于通過 所述第一端口接收所述宿端設備通過所述第二端口發送的請求包;相應地,所述源端設備 還包括: 處理模塊,用于若本地存儲有與所述請求包對應的數據包,則檢測所述第一端口的端 口發送隊列中緩存數據的長度是否超過閾值,若超過,則將所述數據包的信息、所述數據包 對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述待定數據包表PCT中;若沒 有超過,則檢測所述第一端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則將所 述數據包的信息、所述數據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所 述PCT中;若不是,則直接將所述數據包存儲到所述第一端口的端口發送隊列中。
9. 一種網絡系統,其特征在于,包括至少一個源端設備,以及至少一個宿端設備: 所述宿端設備,用于在確定所述宿端設備中與所述第一端口對應的第二端口的端口發 送隊列中緩存數據的長度超過閾值后發送地防擁塞應答消息; 所述源端設備,用于通過第一端口接收所述宿端設備發送的本地防擁塞應答消息,將 需通過所述第一端口發往所述第二端口的數據包進行暫緩發送。
10. 根據權利要求9所述的網絡系統,其特征在于,所述源端設備,用于將需通過所述 第一端口發往所述第二端口的數據包進行暫緩發送,具體為: 所述源端設備,用于將所述第一端口的端口發送隊列的狀態設置為防擁塞狀態,當所 述第一端口的端口發送隊列的狀態為防擁塞狀態時,獲取待定數據包表PCT中需通過所述 第一端口發往所述第二端口的所述數據包對應的生存時間TTL,在到達所述TTL時,通過所 述第一端口向所述第二端口發送所述數據包,其中,所述生存時間,是指從所述宿端設備接 收的所述數據包的請求包的生存時間。
11. 根據權利要求9或10所述的網絡系統,其特征在于, 所述宿端設備,還用于在確定所述第二端口的端口發送隊列中緩存數據的長度沒有超 過閾值且向所述第一端口發送過所述本地防擁塞應答消息,發送本地正常應答消息; 所述源端設備,還用于通過所述第一端口接收所述宿端設備通過所述第二端口發送的 所述本地正常應答消息,將所述第一端口的端口發送隊列的狀態恢復為正常發送狀態。
12. 根據權利要求10或11所述的網絡系統,其特征在于, 所述宿端設備,還用于通過所述第二端口發送請求包; 所述源端設備,還用于通過所述第一端口接收所述宿端設備發送的所述請求包,若本 地存儲有與所述請求包對應的數據包,則檢測所述第一端口的端口發送隊列中緩存數據的 長度是否超過閾值,若超過,則將所述數據包的信息、所述數據包對應的生存時間TTL,以及 所述第一端口的端口信息存儲到所述待定數據包表PCT中;若沒有超過,則檢測所述第一 端口的端口發送隊列的狀態是否為所述防擁塞狀態,若是,則將所述數據包的信息、所述數 據包對應的生存時間TTL,以及所述第一端口的端口信息存儲到所述PCT中;若不是,則直 接將所述數據包存儲到所述第一端口的端口發送隊列中。
【文檔編號】H04L12/861GK104283808SQ201310277336
【公開日】2015年1月14日 申請日期:2013年7月3日 優先權日:2013年7月3日
【發明者】戈文敏, 嚴哲峰, 王戎 申請人:華為技術有限公司