• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種在OpenFlow交換機上實現網絡編碼的方法技術

    技術編號:8536445 閱讀:325 留言:0更新日期:2013-04-04 21:09
    本發明專利技術涉及網絡編碼技術領域,公開了一種在OpenFlow交換機上實現網絡編碼的方法包括:先在OpenFlow交換機的流表項中添加編碼行為和/或解碼行為;當OpenFlow交換機接收到待處理數據包時,為待處理數據包添加數據包的包頭域,數據包的包頭域包括編解碼所需的信息;再判斷待處理數據包的行為集合中是否有編碼行為和/或解碼行為;若待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列;將在編碼隊列和/或解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包。本發明專利技術實現了在OpenFlow交換機上的編碼和/或解碼。

    【技術實現步驟摘要】

    本專利技術涉及網絡編碼
    ,主要適用于在OpenFlow交換機上實現網絡編碼的方法。
    技術介紹
    OpenFlow網絡,是一種新型的網絡創新架構,主要由控制器10和OpenFlow交換機11組成,如圖1中所示。OpenFlow交換機11功能專注而簡化,只負責數據的轉發;控制器10則對整個網絡進行集中控制,實現控制層功能??刂破?0通過標準的OpenFlow協議12與OpenFlow交換機11進行信息交互,從而進行統一、靈活高效的網絡維護和管理。由此可知,OpenFlow網絡不僅實現了將原有的完全由交換機/路由器控制的報文轉發形式轉化為基于流(相同源、目的地址的一系列連續的數據包)的轉發形式,而且將傳統的控制層面從 轉發設備中剝離出來,所有轉發行為的決策都遷移到了集中控制器上,從而實現了數據轉發和路由控制的分離。由于OpenFlow網絡具有集中控制、數據轉發層與控制層分離等特點,這讓我們看到了在其上應用網絡編碼的可能性。OpenFlow網絡為網絡編碼的應用提供了便利,同時網絡編碼也將為OpenFlow網絡帶來更好的網絡性能。2012年8月Felicidin Nemeth等人已經率先嘗試將網絡編碼應用于由OpenFlow交換機組成的蝶形網絡,這驗證了在OpenFlow網絡中使用網絡編碼的可行性。但他們只是在蝶形這種特殊網絡結構中實現了兩條流異或的編碼方式,無法推廣到一般網絡或多條流等復雜情況,不具有通用性。目前在OpenFlow網絡中應用網絡編碼技術還處于起步階段,并沒有較成熟的研究成果,還存在很多待解決的問題,國內此方向還處于空白階段,沒有相關研究。專利
    技術實現思路
    本專利技術所要解決的技術問題是提供,它實現了在OpenFlow交換機上的編碼操作和/或解碼操作。為解決上述技術問題,本專利技術提供了包括先在OpenFlow交換機的流表項中添加編碼行為和/或解碼行為;當所述OpenFlow交換機接收到待處理數據包時,為所述接收到的待處理數據包添加數據包的包頭域,所述數據包的包頭域包括編解碼所需的信息;再判斷接收到的待處理數據包的行為集合中是否有編碼行為和/或解碼行為;若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列;將在所述編碼隊列和/或所述解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包。進一步地,所述當OpenFlow交換機接收到待處理數據包時,為接收到的待處理數據包添加數據包的包頭域包括當所述OpenFlow交換機接收到所述待處理數據包時,判斷待處理數據包是否來自數據源;如果待處理數據包來自數據源,則說明待處理數據包為原始數據包,并為首次進入OpenFlow網絡的原始數據包添加包頭域;如果待處理數據包不是來自數據源,而是來自其他OpenFlow交換機,則說明待處理數據包為編解碼后的數據包,則直接進行后續操作。進一步地,所述判斷接收到的待處理數據包的行為集合中是否有編碼行為和/或解碼行為;若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列,包括首先通過對所述接收到的待處理數據包進行匹配流表來判斷是否能得到待處理數據包的行為集合;若能夠得到待處理數據包的行為集合,則判斷所述行為集合的行為類型中是否有 轉發行為;若所述行為類型中有轉發行為,則對待處理數據包進行轉發;否則判斷行為類型中是否有編碼行為和/或解碼行為,若行為類型中有編碼行為和/或解碼行為,則將待處理數據包放入所述編碼隊列和/或所述解碼隊列;若不能得到待處理數據包的行為集合,則將待處理數據包的包頭通過安全通道發送給OpenFlow控制器,所述Open Flow控制器將為OpenFlow交換機設置待處理數據包所在流對應的流表項,并將所述流表項發回所述OpenFlow交換機,由OpenFlow交換機響應。進一步地,所述若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列,包括若所述接收到的待處理數據包的行為集合中有所述編碼行為和/或所述解碼行為,則先將待處理數據包轉化為待編解碼處理的數據包,再根據數據包的行為集合中的行為類型,將待編解碼處理的數據包放入所述編碼隊列和/或所述解碼隊列;其中,待編解碼處理的數據包,包括數據包、數據包的行為類型、數據包的存活時間、數據包所在流的ID、數據包在流中的序列號、數據包已編碼過流的個數、與數據包進行編解碼的流的個數、將與數據包進行編解碼的流的ID、數據包將幫助解碼的流的ID及編解碼后的流的ID。進一步地,所述將在編碼隊列和/或解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包,包括先遍歷所述編碼隊列和/或所述解碼隊列中已存的數據包是否有超時的;若編碼隊列中有超時的已存的數據包,則對所述超時的已存的數據包重新進行流表匹配;然后判斷新加入的數據包的編碼條件是否被滿足;若所述新加入的數據包的編碼條件被滿足,則進行編碼操作,并將參與編碼的數據包全部釋放,再對編碼后得到的數據包重新進行流表匹配;并根據匹配結果進行相關的操作;若新加入的數據包的編碼條件不被滿足,則將新加入的數據包加入編碼隊列中相應流的隊列并等待編碼;若編碼隊列中沒有超時的已存的數據包,則直接判斷新加入的數據包的編碼條件是否被滿足。進一步地,所述將在編碼隊列和/或解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包,包括先遍歷所述編碼隊列和/或所述解碼隊列中已存的數據包是否有超時的;若解碼隊列中有超時的已存的數據包,則對所述超時的已存的數據包重新進行流表匹配;然后判斷新加入的數據包是否幫助其他流的數據包解碼或需要自身解碼;若解碼隊列中沒有超時的已存的數據包,則直接判斷所述新加入的數據包是否幫助其他流的數據包解碼或需要自身解碼;若新加入的數據包的數據包將幫助解碼的流的I D項不為空,則說明新加入的數據包幫助其他流的數據包解碼,再判斷解碼隊列中被解碼的數據包的解碼條件是否被滿足;若所述被解碼的數據包的解碼條件被滿足,則進行解碼操作,解碼后將被解碼的數據包釋放,并對解碼得到的數據包重新進行流表匹配,并根據匹配結果進行相關的操作;若被解碼的數據包的解碼條件不被滿足,則將新加入的數據包放入解碼隊列中相應流的隊列并等待處理; 若新加入的數據包的將與數據包進行編解碼的流的ID項不為空,則說明新加入的數據包需要自身解碼,再判斷新加入的數據包的解碼條件是否被滿足;若新加入的數據包的解碼條件被滿足,則進行解碼操作,再對解碼得到的數據包重新進行流表匹配,并根據匹配結果進行相關的操作;若新加入的數據包的解碼條件不被滿足,則將新加入的數據包加入解碼隊列中相應流的隊列并等待處理。進一步地,在所述進行解碼操作后,判斷所述新加入的數據包是否需要緩存;若與新加入的數據包有關的解碼操作全部執行完畢,則說明新加入的數據包不需要緩存,可以將新加入的數據包釋放;若與新加入的數據包有關的解碼操作沒有全部執行完畢,則說明新加入的數據包需要緩存,則將新加入的數據包放入所述解碼隊列中相應流的隊列中等待處理。進一步地,所述判斷新加入的數據包的編碼條件是否被滿足包本文檔來自技高網
    ...

    【技術保護點】
    一種在OpenFlow交換機上實現網絡編碼的方法,其特征在于,包括:先在OpenFlow交換機的流表項中添加編碼行為和/或解碼行為;當所述OpenFlow交換機接收到待處理數據包時,為所述接收到的待處理數據包添加數據包的包頭域,所述數據包的包頭域包括編解碼所需的信息;再判斷接收到的待處理數據包的行為集合中是否有編碼行為和/或解碼行為;若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列;將在所述編碼隊列和/或所述解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包。

    【技術特征摘要】
    1.一種在OpenFlow交換機上實現網絡編碼的方法,其特征在于,包括 先在OpenFlow交換機的流表項中添加編碼行為和/或解碼行為; 當所述OpenFlow交換機接收到待處理數據包時,為所述接收到的待處理數據包添加數據包的包頭域,所述數據包的包頭域包括編解碼所需的信息; 再判斷接收到的待處理數據包的行為集合中是否有編碼行為和/或解碼行為; 若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列; 將在所述編碼隊列和/或所述解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包。2.如權利要求1所述的在OpenFlow交換機上實現網絡編碼的方法,其特征在于,所述當OpenFlow交換機接收到待處理數據包時,為接收到的待處理數據包添加數據包的包頭域包括當所述OpenFlow交換機接收到所述待處理數據包時,判斷待處理數據包是否來自數據源; 如果待處理數據包來自數據源,則說明待處理數據包為原始數據包,并為首次進入OpenFlow網絡的原始數據包添加包頭域; 如果待處理數據包不是來自數據源,而是來自其他OpenFlow交換機,則說明待處理數據包為編解碼后的數據包,則直接進行后續操作。3.如權利要求1所述的在OpenFlow交換機上實現網絡編碼的方法,其特征在于,所述判斷接收到的待處理數據包的行為集合中是否有編碼行為和/或解碼行為;若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列,包括首先通過對所述接收到的待處理數據包進行匹配流表來判斷是否能得到待處理數據包的行為集合; 若能夠得到待處理數據包的行為集合,則判斷所述行為集合的行為類型中是否有轉發行為;若所述行為類型中有轉發行為,則對待處理數據包進行轉發;否則判斷行為類型中是否有編碼行為和/或解碼行為,若行為類型中有編碼行為和/或解碼行為,則將待處理數據包放入所述編碼隊列和/或所述解碼隊列; 若不能得到待處理數據包的行為集合,則將待處理數據包的包頭通過安全通道發送給OpenFlow控制器,所述OpenFlow控制器將為OpenFlow交換機設置待處理數據包所在流對應的流表項,并將所述流表項發回所述OpenFlow交換機,由OpenFlow交換機響應。4.如權利要求1所述的在OpenFlow交換機上實現網絡編碼的方法,其特征在于,所述若接收到的待處理數據包的行為集合中有編碼行為和/或解碼行為,則將待處理數據包放入編碼隊列和/或解碼隊列,包括若所述接收到的待處理數據包的行為集合中有所述編碼行為和/或所述解碼行為,則先將待處理數據包轉化為待編解碼處理的數據包,再根據數據包的行為集合中的行為類型,將待編解碼處理的數據包放入所述編碼隊列和/或所述解碼隊列;其中,待編解碼處理的數據包,包括數據包、數據包的行為類型、數據包的存活時間、數據包所在流的ID、數據包在流中的序列號、數據包已編碼過流的個數、與數據包進行編解碼的流的個數、將與數據包進行編解碼的流的ID、數據包將幫助解碼的流的ID及編解碼后的流的ID。5.如權利要求1-4中任意一項所述的在OpenFlow交換機上實現網絡編碼的方法,其特征在于,所述將在編碼隊列和/或解碼隊列中的數據包進行編碼操作和/或解碼操作,得到編碼后的數據包和/或解碼后的數據包,包括先遍歷所述編碼隊列和/或所述解碼隊列中已存的數據包是否有超時的;若編碼隊列中有超時的已存的數據包,則對所述超時的已存的數據包重新進行流表匹配;...

    【專利技術屬性】
    技術研發人員:戴彬,趙文文,徐冠,呂璐,黃本雄,
    申請(專利權)人:華中科技大學
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 日韩精品专区AV无码| 亚洲男人在线无码视频| 无码人妻精品一区二| 曰韩无码无遮挡A级毛片| 无码AV一区二区三区无码| 国产精品无码素人福利| 国产成人精品无码片区在线观看 | 精品人妻无码专区中文字幕 | 亚洲 另类 无码 在线| 国产网红主播无码精品| 日韩乱码人妻无码中文字幕久久| 午夜麻豆国产精品无码| 亚洲爆乳精品无码一区二区三区| 无码人妻丰满熟妇区五十路| 国产aⅴ激情无码久久| 岛国av无码免费无禁网站| 无码午夜人妻一区二区三区不卡视频 | 亚洲av无码一区二区三区天堂| 无码h黄肉3d动漫在线观看| 亚洲级αV无码毛片久久精品| 无码精品不卡一区二区三区 | 无码国内精品人妻少妇| 国产精品无码亚洲精品2021| 日日摸日日踫夜夜爽无码| 无码精品人妻一区二区三区免费 | 蜜桃成人无码区免费视频网站| 亚洲日韩国产二区无码| 西西午夜无码大胆啪啪国模| 国产综合无码一区二区三区| 久久亚洲精品成人无码| 91精品无码久久久久久五月天| 中文字幕丰满乱子无码视频| 精品乱码一区内射人妻无码| 亚洲AV永久无码精品放毛片| 日韩精品无码AV成人观看| 国产AV无码专区亚洲AV男同| 久久午夜无码鲁丝片午夜精品| 亚洲一级特黄无码片| 最新亚洲人成无码网站| 无码人妻丰满熟妇区毛片18| 精品国产AV无码一区二区三区|