對于服務鏈的帶寬感知服務布置的方法和系統的制作方法
【技術領域】
[0001] 本發明的實施例涉及聯網領域。更具體地,本發明的實施例涉及對于網絡中的服 務鏈的帶寬感知服務布置的方法和系統。
【背景技術】
[0002] 運營商使用不同的中間盒服務或應用,被稱為內聯服務,諸如深度包檢測(DPI)、 日志記錄/計量/計費/預付費、防火墻(FW)、病毒掃描(VS)、入侵偵測與防御(IDP)、網絡 地址轉換(NAT)等,以管理訂戶業務。這些服務對吞吐量和包檢測能力具有高要求。它們 對終端用戶可以是透明的或非透明的。內聯服務可以被托管在專用的物理硬件中,或在虛 擬機中。
[0003] 如果業務需要通過超過一個內聯服務,則需要服務鏈。此外,如果超過一個服務鏈 是可能的,則運營商需要配置聯網基礎架構以引導正確的業務通過正確的內聯服務路徑。 在這個說明書中,業務定向指的是,導引業務通過正確的內聯服務路徑。
[0004] 已經有一些努力來確定如何定向業務以提供內聯服務鏈。通過那些努力所開發的 機制一般被設計為將內聯服務顯式地插入在端點之間的路徑上,或根據策略顯示地路由業 務通過不同的中間盒。在將服務連接到網絡的網絡中,這些機制僅提供次優的性能。
【發明內容】
[0005] 公開了用于在網絡設備處布置服務的在網絡中實現的方法。網絡包含多個網絡設 備以及向訂戶提供服務集合。網絡的每個訂戶消耗帶寬并且使用服務集合的子集。服務集 合的子集被包含在對于每個訂戶的服務鏈中,其中定義了在服務鏈內的條目的順序。該方 法把將被布置的服務布置在網絡的網絡設備處。該方法從確定對于服務集合內的每個服務 的服務的帶寬消耗實體的列表開始,其中每個帶寬消耗實體基于一個或多個服務鏈。然后, 基于服務的帶寬消耗實體的列表來計算每個服務的權重,以及選擇還沒有被布置的一個或 多個實體的組內的具有最高權重的服務。然后,至少部分地基于計算由該服務對網絡的帶 寬影響,使所選擇的服務附著于網絡設備。
[0006] 公開了用于在網絡設備處布置服務的網絡設備。網絡包含多個網絡設備以及向訂 戶提供服務集合。網絡的每個訂戶消耗帶寬并且使用服務集合的子集。服務集合的子集被 包含在對于每個訂戶的服務鏈中,其中定義了在服務鏈內的條目的順序。當組中的一個或 多個服務還沒有被布置時,網絡設備將服務布置在網絡的特定網絡設備處。網絡設備包含: 服務分配處理器,其用于向多個網絡設備分配服務。服務分配處理器包含:權重計算器。權 重計算器被配置為確定對于所述服務集合內的每個服務的服務的帶寬消耗實體的列表,其 中每個帶寬消耗實體基于一個或多個服務鏈,以及基于服務的帶寬消耗實體的列表來計算 每個服務的權重。服務分配處理器包含:服務選擇器,其被配置為選擇在還沒有被布置的一 個或多個服務的組內的具有最高權重的服務。服務分配處理器還包含:網絡帶寬影響確定 器,其被配置為至少部分地基于計算由該服務對網絡的帶寬影響,來選擇對于該服務的網 絡的特定網絡設備。
【附圖說明】
[0007] 在附圖的圖中,作為示例而不作為限制來說明本發明,在附圖中相同的標記指示 相似的元素。應當注意的是,對于在本說明書中的"一"或"一個"實施例的不同提及未必 對于相同的實施例,以及此類提及意味的是至少一個。此外,當結合實施例來描述特定特 征、結構、或特點時,主張的是它在本領域的技術人員的知識內以影響結合其它實施例的此 類特征、結構、或特點而不管是否被明確地描述。
[0008] 圖1說明了對于寬帶網客戶業務的內聯服務鏈的示例。
[0009] 圖2是說明根據本發明的一個實施例的能夠實現業務定向的網絡的框圖。
[0010] 圖3是說明根據本發明的一個實施例的帶寬感知服務布置的框圖。
[0011] 圖4A-D說明了根據本發明的一個實施例的用于向網絡布置服務的方法。
[0012] 圖5是說明SDN網絡的框圖。
[0013] 圖6是說明根據本發明的一個實施例的在SDN系統中的帶寬感知服務布置的框 圖。
[0014] 圖7是說明根據本發明的一個實施例的帶寬感知服務布置的流程圖。
[0015] 圖8是說明根據本發明的一個實施例的在布置服務中的網絡設備的選擇的流程 圖。
[0016] 圖9是說明根據本發明的一個實施例的帶寬感知服務布置的偽代碼。
[0017] 圖10是說明根據本發明的一個實施例的包含實現分配服務的方法的處理器的網 絡設備的框圖。
【具體實施方式】
[0018] 在以下描述中,闡述了許多特定細節。然而,理解的是,可以在沒有這些特定細節 的情況下來實踐本發明的實施例。在其它情況下,沒有詳細地示出眾所周知的電路、結構和 技術,以便不使本描述難于理解。然而,本領域的技術人員將了解的是,可以在沒有此類特 定細節的情況下來實踐本發明。本領域的普通技術人員,使用所包含的描述,將能夠在不進 行實驗的情況下來實現適當的功能。
[0019] 在說明書中對"一個實施例"、"實施例"、"示例實施例"等的提及指示的是,所描述 的實施例可以包含特定特征、結構或特點,但是每個實施例可以未必包含特定特征、結構或 特點。此外,此類短語未必指相同的實施例。此外,當結合實施例來描述特定特征、結構或 特點時,主張的是,它在本領域的技術人員的知識內以結合其它實施例以使此類特征、結構 或特點生效而不管是否被明確地描述。
[0020] 在以下描述和權利要求書中,可以使用詞語"耦合"和"連接",連同它們的變型。應 當理解的是,這些詞語不旨在作為彼此的同義詞,"耦合"用于指示兩個或多個元素,它們可 以是或可以不是彼此直接物理接觸或電接觸,彼此協作或彼此交互。"連接"用于指示彼此 耦合的兩個或更多元素之間的通信的建立。如本文中使用的"集合"指包含一個項目的任 何正整數的項目。
[0021] 電子設備(例如,端站、網絡設備)使用機器可讀介質,諸如非暫時性的機器可讀介 質(例如,諸如磁盤的機器可讀存儲介質;光盤;只讀存儲器;閃速存儲設備;相變存儲器) 和暫時性的機器可讀傳輸介質(例如,電、光、聲或其他形式的傳播信號-諸如載波、紅外線 信號),來(內部地和/或通過網絡與其他電子設備)存儲和傳送代碼(包括軟件指令)和數 據。
[0022] 另外,此類電子設備包含硬件,諸如耦合到一個或多個其他組件的一個或多個處 理器的集合-例如一個或多個非暫時性的機器可讀存儲介質(用于存儲代碼和/或數據)和 網絡連接(用于使用傳播信號來傳送代碼和/或數據),以及在一些情況下,用戶輸入/輸出 設備(例如,鍵盤、觸摸屏、和/或顯示器)。處理器的集合與其他組件的耦合典型地通過在 電子設備內的一個或多個互連件(例如,總線和可能的橋)。因此,給定電子設備的非暫時性 的機器可讀介質典型地存儲用于在該電子設備的一個或多個處理器上執行的指令。可以使 用軟件、固件、和/或硬件的不同組合來實現本發明的實施例的一個或多個部分。
[0023] 如本文中使用的,網絡設備(例如,路由器或交換機)是一片聯網設備,包含通信地 互連網絡上的其他設備(例如,其他網絡設備、端系統)的硬件和軟件。一些網絡設備是提供 對于多個聯網功能(例如,路由、橋接、VLAN (虛擬LAN)交換、2層聚合、會話邊界控制、服務 質量、和/或訂戶管理)的支持的、和/或提供對于多個應用服務(例如數據、語音和視頻)的 支持的,"多個服務網絡設備"。訂戶端系統(例如,服務器、工作站、膝上型計算機、上網本、 手持設備、移動電話、智能電話、多媒體電話、互聯網協議語音(V0IP)電話、用戶設備、終端、 便攜式媒體播放器、GPS單元、游戲系統、機頂盒)訪問通過互聯網提供的內容/服務和/或 訪問疊加在互聯網(例如,通過隧道)上的虛擬專用網(VPN)上提供的內容/服務。典型地, 內容和/或服務由屬于服務或內容提供商的一個或多個端系統(例如,服務器端系統)或參 與點對點服務的端系統來提供,以及可以包含:例如,公共網頁(例如,免費內容、商店前端、 搜索服務)、私有網頁(例如,提供電子郵件服務的用戶名/密碼訪問的網頁),和/或VPN上 的協作網絡。典型地,訂戶端系統(例如,通過耦合到接入網(有線或無線地)的客戶端設備) 耦合到邊緣網絡設備,邊緣網絡設備(例如,通過一個或多個核心網絡設備)耦合到其它邊 緣網絡設備,其它邊緣網絡設備耦合到其它端系統(例如,服務器端系統)。一般通過網絡設 備的媒體訪問(MAC)地址、互聯網協議(IP)地址/子網、網絡套接字/端口、和/或更上面 的0SI層標識符來標識網絡設備。
[0024] 網絡設備通常被分成控制平面和數據平面(有時被稱為轉發平面或媒體平面)。在 網絡設備是路由器(或實現路由功能)的情況下,控制平面典型地確定如何對數據(例如,分 組)進行路由(例如,對于該數據的下一跳和對于該數據的外出端口),以及數據平面負責轉 發該數據。例如,控制平面典型地包含一個或多個路由協議(例如,諸如邊界網關協議(BGP) (RFC 4271)的外部網關協議、內部網關協議(多個)(IGP)(例如,開放式最短路徑優先 (0SPF)(RFC 2328和5340)、中間系統至中間系統(IS-IS)(RFC 1142)、路由信息協議(RIP) (版本1 RFC 1058、版本2 RFC 2453、以及下一代的RFC 2080))、標簽分發協議(LDP) (RFC 5036)、資源預留協議(RSVP) (RFC 2205、2210、2211、2212),以及 RSVP-流量工程(TE):對 于LSP隧道的RSVP擴展RFC 3209、通用多協議標簽交換(GMPLS)信令RSVP-TE RFC 3473、 RFC 3936、4495和4558)),它與其它網絡設備通信以交換路由以及基于一個或多個路由度 量來選擇那些路由。另外,控制平面還典型地包含ISO 2層控制協議,諸如快速生成樹協議 (RSTP)、多生成樹協議(MSTP)和SPB (最短路徑橋接),它們已經被各種標準實體(例如,在 IEEE標準802. laq-2012中已經定義了 SPB)標準化。
[0025] 路由和鄰接關系被存儲在控制平面上的一個或多個路由結構(例如,路由信息庫 (RIB)、標簽信息庫(LIB)、一個或多個鄰接結構)中。控制平面使用基于路由結構(多個)的 信息(例如,鄰接關系和路由信息)對數據平面進行編程。例如,控制平面將鄰接關系和路由 信息編程到數據平面上的一個或多個轉發結構(例如,轉發信息庫(FIB)、標簽轉發信息庫 (LFIB)、以及一個或多個鄰接關系結構)中。當轉發業務時,數據平面使用這些轉發和鄰接 關系結構。
[0026] 典型地,網絡設