亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種報文轉(zhuǎn)發(fā)方法及設備的制造方法

文檔序號:9380169閱讀:336來源:國知局
一種報文轉(zhuǎn)發(fā)方法及設備的制造方法
【技術領域】
[0001] 本發(fā)明涉及網(wǎng)絡通信技術,特別是一種報文轉(zhuǎn)發(fā)方法及設備。
【背景技術】
[0002] Openflow是一種新型的網(wǎng)絡交換模型,主要解決現(xiàn)有網(wǎng)絡中部署業(yè)務時面臨的 種種瓶頸,其核心思想就是軟件設計網(wǎng)絡(Software Defined Network, SDN)。SDN是指一 個新的網(wǎng)絡生態(tài)系統(tǒng),Openflow則是實現(xiàn)SDN的一種開放協(xié)議標準,其實現(xiàn)方式就是將現(xiàn) 有的完全由交換機、路由器控制的數(shù)據(jù)包轉(zhuǎn)發(fā)過程,轉(zhuǎn)化為由Openflow交換機和控制器 (Controller)分別完成的獨立過程。OpenFlow交換機在本地維護一個與傳統(tǒng)交換機上的 轉(zhuǎn)發(fā)表不同的流表(Flow Table),如果要轉(zhuǎn)發(fā)的數(shù)據(jù)包在流表中有對應項,則直接進行快 速轉(zhuǎn)發(fā),如果流表中沒有此項,數(shù)據(jù)包就會被發(fā)送到控制器進行傳輸路徑的確認,再根據(jù)控 制器下發(fā)結果進行轉(zhuǎn)發(fā)。
[0003] 其中,F(xiàn)low Table并非是指IP五元組,事實上OpenFlowL 0定義了包括端口號, 虛擬局域網(wǎng)(Virtual Local Area Network,VLAN), L2/L3/L4 信息的 10 個關鍵字,如圖 1 所示,每個字段都可以通配,比如運營商只需要根據(jù)目的IP進行路由,那么流表中就可以 只有目的IP字段是有效的,其他全為通配。
[0004] 目前流量根據(jù)流表轉(zhuǎn)發(fā)的技術有2種:
[0005] (I) Openf low交換機中的流表采用固定長度的Flow Table來記錄,對于 OpenFlowL 0而言,F(xiàn)low Table的匹配長度長達252bit,而一般的Ipv4路由信息庫(RIB, Route Information Base)三態(tài)內(nèi)容尋址存儲器(TCAM,Ternary Content Addressable Memory)匹配字段長度只有60-80個比特,開銷增加了 3倍以上,而對于路由器的線卡而言, TCAM成本占了約20%-30%,功耗也占了很大一部分。
[0006] (2)0penFlowl. 1設計了多級流表來減少Flow Table的開銷,將圖1中的10個關 鍵字進行分別提取,分解成多個小表項,然后查詢的時候進行關聯(lián),如圖2所示,Openflow 交換機上存在兩級流表,第一級流表匹配的關鍵字是MAC+VLAN (圖1中SA為源MAC,DA為 目的MAC),第二級流表匹配的關鍵字是IP。
[0007] 從現(xiàn)有技術可以看出來上述2種流表查詢技術都存在缺點:
[0008] 第一種流表查詢的缺點是TCAM存儲成本過高。
[0009] 第二種流表查詢的缺點是流水式架構使得匹配的時延增加,存儲成本仍舊過高。

【發(fā)明內(nèi)容】

[0010] 有鑒于此,本發(fā)明提出了一種報文轉(zhuǎn)發(fā)方法及設備,有效解決了現(xiàn)有技術中進行 流表查詢時TCAM存儲成本過高、流水式架構使得匹配的時延增加的缺陷。本發(fā)明提出的技 術方案是:
[0011] 一種報文轉(zhuǎn)發(fā)方法,應用于Openflow網(wǎng)絡,所述Openflow網(wǎng)絡包括控制器 Controller與至少兩個節(jié)點,各節(jié)點為Openflow交換機,該方法包括:
[0012] 首節(jié)點接收直連設備發(fā)送的原始數(shù)據(jù)報文;
[0013] 所述首節(jié)點根據(jù)關鍵字遍歷其上的流表,查詢與所述原始數(shù)據(jù)報文匹配的第一轉(zhuǎn) 發(fā)標識流表項,所述第一轉(zhuǎn)發(fā)標識流表項記錄有關鍵字與轉(zhuǎn)發(fā)標識的映射關系;
[0014] 將所述匹配的第一轉(zhuǎn)發(fā)標識流表項中的轉(zhuǎn)發(fā)標識嵌套在所述原始數(shù)據(jù)報文中,生 成嵌套數(shù)據(jù)報文,并將所述嵌套數(shù)據(jù)報文發(fā)送給所述Openflow網(wǎng)絡中的下一跳節(jié)點,使所 述下一跳節(jié)點在其上的流表中,根據(jù)轉(zhuǎn)發(fā)標識查詢與所述嵌套數(shù)據(jù)報文匹配的第二轉(zhuǎn)發(fā)標 識流表項,對所述嵌套數(shù)據(jù)報文進行處理,所述第二轉(zhuǎn)發(fā)標識流表項記錄有轉(zhuǎn)發(fā)標識。
[0015] 上述方案中,該方法進一步包括:
[0016] 若所述首節(jié)點根據(jù)關鍵字遍歷其上的流表,未查詢到與所述原始數(shù)據(jù)報文匹配的 第一轉(zhuǎn)發(fā)標識流表項,僅查詢到與所述原始數(shù)據(jù)報文匹配的普通關鍵字流表,則根據(jù)所述 匹配的普通關鍵字流表項轉(zhuǎn)發(fā)所述原始數(shù)據(jù)報文給所述Openflow網(wǎng)絡中的下一跳節(jié)點, 并發(fā)送所述原始數(shù)據(jù)報文至控制器;
[0017] 所述首節(jié)點接收所述控制器返回的第一轉(zhuǎn)發(fā)標識流表項并保存,其中,所述第一 轉(zhuǎn)發(fā)標識流表項為所述控制器接收到所述原始數(shù)據(jù)報文后,為所述原始數(shù)據(jù)報文的關鍵字 設定一個轉(zhuǎn)發(fā)標識,并將所述轉(zhuǎn)發(fā)標識與原始數(shù)據(jù)報文的關鍵字關聯(lián),生成第一轉(zhuǎn)發(fā)標識 流表項下發(fā)給所述首節(jié)點。
[0018] 上述方案中,該方法進一步包括:
[0019] 若所述首節(jié)點根據(jù)關鍵字遍歷其上的流表,未查詢到與所述原始數(shù)據(jù)報文匹配的 第一轉(zhuǎn)發(fā)標識流表項,且未查詢到與所述原始數(shù)據(jù)報文匹配的普通關鍵字流表項,則將所 述原始數(shù)據(jù)發(fā)送至控制器;
[0020] 所述首節(jié)點接收所述控制器返回的第一轉(zhuǎn)發(fā)標識流表項并保存,其中,所述第一 轉(zhuǎn)發(fā)標識流表項為所述控制器接收到所述原始數(shù)據(jù)報文后,為所述原始數(shù)據(jù)報文的關鍵字 設定一個轉(zhuǎn)發(fā)標識,并將所述轉(zhuǎn)發(fā)標識與原始數(shù)據(jù)報文的關鍵字關聯(lián),生成第一轉(zhuǎn)發(fā)標識 流表項下發(fā)給所述首節(jié)點。
[0021] 上述方案中,所述控制器接收到所述原始數(shù)據(jù)報文后,為所述原始數(shù)據(jù)報文的關 鍵字設定一個轉(zhuǎn)發(fā)標識,具體為:所述控制器接收到所述原始數(shù)據(jù)報文后,在轉(zhuǎn)發(fā)標識列表 中為所述數(shù)據(jù)報文的關鍵字分配一個空閑的轉(zhuǎn)發(fā)標識;
[0022] 所述方法進一步包括:
[0023] 若所述控制器沒有空閑轉(zhuǎn)發(fā)標識分配給所述原始數(shù)據(jù)報文的關鍵字,則所述首節(jié) 點接收所述控制器發(fā)送的與所述原始數(shù)據(jù)報文關鍵字匹配的普通關鍵字流表項并保存,所 述普通關鍵字流表項記錄有關鍵字。
[0024] 一種報文轉(zhuǎn)發(fā)方法,應用于Openflow網(wǎng)絡,所述Openflow網(wǎng)絡包括控制器 Controller與至少兩個節(jié)點,各節(jié)點為Openflow交換機,該方法包括:
[0025] 所述控制器接收首節(jié)點發(fā)送的原始數(shù)據(jù)報文;
[0026] 所述控制器計算所述原始數(shù)據(jù)報文的轉(zhuǎn)發(fā)路徑,并為所述原始數(shù)據(jù)報文的關鍵字 設定一個轉(zhuǎn)發(fā)標識;
[0027] 根據(jù)所述轉(zhuǎn)發(fā)路徑確定轉(zhuǎn)發(fā)所述數(shù)據(jù)報文經(jīng)過的各節(jié)點,為各節(jié)點生成對應的流 表項并下發(fā)到對應的各節(jié)點,以指導報文的轉(zhuǎn)發(fā),其中,所述首節(jié)點的流表項為第一轉(zhuǎn)發(fā)標 識流表項,所述第一轉(zhuǎn)發(fā)標識流表項記錄有關鍵字與轉(zhuǎn)發(fā)標識的映射關系,其它節(jié)點的流 表項為第二轉(zhuǎn)發(fā)標識流表項,所述第二轉(zhuǎn)發(fā)標識流表項記錄有轉(zhuǎn)發(fā)標識。
[0028] 上述方案中,所述控制器為所述原始數(shù)據(jù)報文的關鍵字設定一個轉(zhuǎn)發(fā)標識,具體 為:所述控制器在轉(zhuǎn)發(fā)標識列表中為所述數(shù)據(jù)報文的關鍵字分配一個空閑的轉(zhuǎn)發(fā)標識;
[0029] 該方法進一步包括:
[0030] 若所述控制器沒有空閑轉(zhuǎn)發(fā)標識分配給所述原始數(shù)據(jù)報文的關鍵字,則所述控制 器根據(jù)轉(zhuǎn)發(fā)路徑確定轉(zhuǎn)發(fā)所述數(shù)據(jù)報文經(jīng)過的各節(jié)點,為各節(jié)點生成對應的普通關鍵字流 表項并下發(fā)到對應的各節(jié)點,以指導報文的轉(zhuǎn)發(fā),所述普通關鍵字流表項記錄有關鍵字。
[0031] 一種Openflow交換機設備,應用于Openflow網(wǎng)絡,所述Openflow網(wǎng)絡包括控制 器Controller與至少兩個節(jié)點,各節(jié)點為Openflow交換機,該設備包括:
[0032] 報文收發(fā)模塊,用于接收直連設備發(fā)送的原始數(shù)據(jù)報文;
[0033] 查詢模塊,用于根據(jù)關鍵字遍歷流表,查詢與所述原始數(shù)據(jù)報文匹配的第一轉(zhuǎn)發(fā) 標識流表項,所述第一轉(zhuǎn)發(fā)標識流表項記錄有關鍵字與轉(zhuǎn)發(fā)標識的映射關系;
[0034] 轉(zhuǎn)發(fā)標識嵌套模塊,用于將所述匹配的第一轉(zhuǎn)發(fā)標識流表項中的轉(zhuǎn)發(fā)標識嵌套在 所述原始數(shù)據(jù)報文中,生成嵌套數(shù)據(jù)報文;
[0035] 所述報文收發(fā)模塊,還用于將嵌套數(shù)據(jù)報文發(fā)送給所述Openflow網(wǎng)絡中的下一 跳交換機,使所述下一跳節(jié)點在其上的流表中,根據(jù)轉(zhuǎn)發(fā)標識查詢與所述嵌套數(shù)據(jù)報文匹 配的第二轉(zhuǎn)發(fā)標識流表項,對所述嵌套數(shù)據(jù)報文進行處理,所述第二轉(zhuǎn)發(fā)標識流表項記錄 有轉(zhuǎn)發(fā)標識。
[0036] 上述方案中,
[0037] 若所述查詢模塊根據(jù)關鍵字遍歷流表,未查詢到與所述原始數(shù)據(jù)報文匹配的第一 轉(zhuǎn)發(fā)標識流表項,僅查詢到與所述原始數(shù)據(jù)報文匹配的普通關鍵字流表,則報文收發(fā)模塊 還用于,根據(jù)所述匹配的普通關鍵字流表項轉(zhuǎn)發(fā)所述原始數(shù)據(jù)報文給所述Openflow網(wǎng)絡 中的下一跳節(jié)點,并發(fā)送所述原始數(shù)據(jù)報文至控制器;
[0038] 接收所述控制器返回的第一轉(zhuǎn)發(fā)標識流表項,其中,所述第一轉(zhuǎn)發(fā)標識流表項為 所述控制器接收到所述原始數(shù)據(jù)報文后,為所述原始數(shù)據(jù)報文的關鍵字設定一個轉(zhuǎn)發(fā)標 識,并將所述轉(zhuǎn)發(fā)標
當前第1頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1