• 
    <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无码网站大全| 国产精品无码AV不卡| 无码中文人妻视频2019| AV无码久久久久不卡网站下载 | 亚洲AV无码一区二区乱子仑| 久久亚洲中文字幕无码| 成人无码AV一区二区| 亚洲国产成人无码AV在线影院| 精品无人区无码乱码毛片国产| 91精品久久久久久无码 | 亚洲精品无码久久久久sm| 伊人天堂av无码av日韩av| 国产亚洲精品无码专区 | 亚洲av无码av在线播放| 亚洲精品无码不卡在线播HE | 无码人妻一区二区三区av| 亚洲AV无码成人精品区天堂 | 国产成人精品一区二区三区无码 | 亚洲精品无码久久久久秋霞| 亚洲国产精品成人精品无码区在线| 成人无码嫩草影院| 亚洲日韩av无码中文| 无码精品久久久久久人妻中字| 国产精品午夜福利在线无码| 精品久久久久久无码中文字幕漫画| 91精品无码久久久久久五月天| 国产50部艳色禁片无码| 国产免费黄色无码视频| 中文字幕无码视频专区| 亚洲成?Ⅴ人在线观看无码| 久久国产精品成人无码网站| av潮喷大喷水系列无码| 亚洲av无码专区青青草原| 亚洲熟妇无码一区二区三区| 亚洲综合无码无在线观看| 精品无码国产一区二区三区51安| 少妇无码AV无码专区线| 人妻精品久久无码区| 无码AV一区二区三区无码 | 亚洲AV人无码激艳猛片| 无码人妻精品一区二区三区99仓本|