專利名稱:一種基于周期觸發(fā)代理的sdn廣播處理方法
技術(shù)領(lǐng)域:
以太網(wǎng)技術(shù)的低成本、高效傳輸以及“即插即用”的特性使其在局域網(wǎng)中占據(jù)統(tǒng)治地位。然而以太網(wǎng)最初的基于廣播的服務(wù)發(fā)現(xiàn)機制(如Dynamic Host ConfigurationProtocol,DHCP 和 Address Resolution Protocol,ARP 等)嚴重的限制了其在大規(guī)模數(shù)據(jù)中心網(wǎng)絡(luò)以及城域網(wǎng)中的應(yīng)用。原因如下:1)大量的廣播包占用網(wǎng)絡(luò)中有效的帶寬資源;2)在網(wǎng)絡(luò)出現(xiàn)環(huán)路時易引起廣播風暴,目前的解決辦法是使用STP協(xié)議,以建立根橋的方式將網(wǎng)絡(luò)劃分成樹型結(jié)構(gòu)避免loop,但存在如下缺陷:a)根橋附近流量壓力過大;b)網(wǎng)絡(luò)中本來存在的冗余鏈路資源浪費(使原本可能的multipath傳輸變成unipath傳輸),在速率傳輸上帶來了一定的瓶頸;c)當網(wǎng)絡(luò)鏈路或bridge出現(xiàn)故障時,生成樹拓撲需要重算,在收斂時間內(nèi)(30-50S)會影響正常通信,可靠性差;3)為ARP欺騙帶來可乘之機,由于廣播包的泛濫,網(wǎng)絡(luò)中任一主機可以輕松的獲取其他主機的IP和MAC信息,因而可以輕松的偽造請求IP對應(yīng)的MAC信息,并將其發(fā)給請求主機,引起網(wǎng)絡(luò)混亂;4)增大網(wǎng)絡(luò)中主機CPU的負擔,因為網(wǎng)絡(luò)的廣播都是被所有主機端接收的,各主機需要判斷是否是請求自己,是則應(yīng)答相應(yīng)信息,否則丟棄。
背景技術(shù):
EtherProxy是由雅虎提出的用于減少以太網(wǎng)中廣播包的數(shù)量來擴展以太網(wǎng)的一
種技術(shù)。他們建議使用新型設(shè)備-EtherProxy來截獲以太網(wǎng)中傳送的ARP Request和
DHCP廣播包,通過EtherProxy中緩存的相關(guān)信息對廣播請求進行服務(wù),從而降低以太網(wǎng)中的廣播流量。EtherProxy的一種配置案例如圖1,其中H代表主機,B代表傳統(tǒng)以太網(wǎng)交換機,P 代表 EtherProxy:ARP模塊:此模塊在EtherProxy中緩存IP-MAC表(記錄主機IP和對應(yīng)MAC信息)和Pending Requests表(暫存ARP請求)。當主機A請求的IP對應(yīng)的MAC地址已經(jīng)存在IP-MAC表中,且在有效期內(nèi),則EtherProxy直接向主機A回復(fù)ARP Reply消息;若對應(yīng)MAC地址存在,但不在有效期內(nèi),EtherProxy使用單播ARP探測此主機是否可達,如果對應(yīng)主機有回應(yīng),刷新IP-MAC條目有效時間并回復(fù)ARP Reply包給請求主機,沒有回應(yīng)直接刪除此條目。如果請求的IP對應(yīng)的MAC地址不存在IP-MAC表中,則以廣播的方式發(fā)出該ARP Request請求,并在收到ARP Reply時更新IP-MAC表。備注:在EtherProxy發(fā)出探測包或者廣播包期間,若還有其它主機請求發(fā)出相同IP的ARP Request時,則把這些ARP Request暫存在Pending Requests表中,待收到對應(yīng)主機的ARP Reply消息后,把記錄添加到IP-MAC表中再一一回復(fù),以減少網(wǎng)絡(luò)流量,具體流程如圖2。EtherProxy雖然在一定程度上減少廣播包的數(shù)目,但此方案主要存在兩個缺點。第一,圖1表明以太網(wǎng)中EtherProxy設(shè)備數(shù)量會隨著網(wǎng)絡(luò)規(guī)模增大而增加,并且需要在每個EtherProxy中維護ARP緩存表來減少廣播,成本很高;第二,從ARP模塊流程圖可以看出,該模塊并沒有完全避免ARP廣播(ARP緩存表未命中時采用廣播),且隨著網(wǎng)絡(luò)規(guī)模的擴大,該方案的可口展性較差。
發(fā)明內(nèi)容
本方案基于軟件定義網(wǎng)絡(luò)(Software Defined Network, SDN)架構(gòu)在兼容現(xiàn)有的廣播服務(wù)發(fā)現(xiàn)協(xié)議前提下,解決終端接入感知并在控制器上記錄主機信息以及主機信息表更新問題,完全消除以太網(wǎng)中的ARP廣播。SDN是近年來最受學術(shù)界和產(chǎn)業(yè)界關(guān)注的未來網(wǎng)絡(luò)技術(shù)之一,其核心思想是控制平面與數(shù)據(jù)轉(zhuǎn)發(fā)平面的分離,控制平面負責處理每個流的第一個包,并通過OpenFlow協(xié)議將處理結(jié)果寫入交換機的流表中去S使得后續(xù)的包按照流表中的處理結(jié)果線速轉(zhuǎn)發(fā)。下面對該模塊的工作原理做詳細說明。
圖1EtherProxy 配置案例圖2EtherProxy ARP 模塊流程圖3ARP模塊流程實施方式為解決以太網(wǎng)中ARP廣播問題,通過在主機接入網(wǎng)絡(luò)初始階段建立全網(wǎng)主機信息IP-to-MAC表,使得網(wǎng)絡(luò)中任一主機的ARP請求均可以由控制端統(tǒng)一響應(yīng),從而避免整網(wǎng)的泛洪。該模塊分為三大部分:1、主機信息注冊階段主機接入網(wǎng)絡(luò)采用動態(tài)主機配置協(xié)議(DHCP)或者靜態(tài)IP地址配置兩種模式。若主機采用DHCP,在啟 動時將向外發(fā)出DHCPDISCOVERY消息,控制器處理DHCP消息,并在最終接收到DHCPACK時記錄主機的IP地址與MAC地址映射關(guān)系以及主機位置信息;若主機采用靜態(tài)配置,大多數(shù)主機操作系統(tǒng)會產(chǎn)生gratuitous ARP請求,交換機接收到該數(shù)據(jù)封裝成packet-1n消息發(fā)給控制器,控制器接收到該消息,以hash算法建立一個主機基本信息表,以(key,value)的方式存儲主機IP地址,MAC地址以及位置信息,如(IP地址,[MAC地址,主機位置])。2、ARP處理流程(I)主機發(fā)送ARP請求,由相鄰交換機根據(jù)OpenFlow協(xié)議以packet-1n消息的
方式提交給控制器;-------------1也支持以packet-out命令方式將處理結(jié)果交由交換
機,向特定端口轉(zhuǎn)發(fā)(不寫入流表)。(2)控制器解析該packet-1n事件,分析數(shù)據(jù)包類型同時交由ARP模塊處理;(3)更新ARP請求的源主機IP地址條目;(4)在IP-to-MAC表中查看是否存儲ARP請求的終端IP地址條目,若有轉(zhuǎn)至e),若無轉(zhuǎn)至I);(5)查看條目是否過期,若未過期轉(zhuǎn)至f),若過期轉(zhuǎn)至h);(6)根據(jù)條目提供的MAC地址信息封裝成ARP應(yīng)答信息,并通過packet-out命令方式將該消息返回給發(fā)起請求的交換機;(7)該交換機解封裝packet-out消息,將ARP應(yīng)答消息從相應(yīng)端口轉(zhuǎn)發(fā)給源主機,結(jié)束;
(8)根據(jù)過期條目提供的終端主機位置信息(交換機id以及端口號),向該終端主機發(fā)出一個探測包(如源主機發(fā)出的ARP請求),同時標記該條目;(9)若在規(guī)定時間內(nèi)收到終端主機應(yīng)答則轉(zhuǎn)至j),若無則轉(zhuǎn)至k);(10)根據(jù)應(yīng)答信息更新IP-to-MAC表,轉(zhuǎn)至f);(11)在規(guī)定時間到期后自動刪除標記的條目;(12)終止該事件處理,結(jié)束。3、IP-to-MAC 表更新機制本發(fā)明提出的ARP廣播抑制在IP-to-MAC表的更新上與傳統(tǒng)方案存在如下幾個創(chuàng)新:(I)當主機接入網(wǎng)絡(luò)時,通過DHCP或者ARP初始化IP_to_MAC表;(2)b)當表中條目過期時,采用想終端主機發(fā)送單播探測包的方式進行條目更新;(3)對于條目過期,控制器保持沉默,直到有用戶請求該條目才去更新,這樣可在一定程度上降低控制器的負載。
權(quán)利要求
1.本發(fā)明提出主機接入網(wǎng)絡(luò)時建立全網(wǎng)主機狀態(tài)信息hash表(ΙΡ-to-MAC和MAC_MAP)。
2.本發(fā)明提出ARP請求的應(yīng)答直接從控制端獲取,從而避免整網(wǎng)廣播。
3.本發(fā)明提出了IP-to-MAC表和MAC_MAP表的更新策略。
全文摘要
本發(fā)明提供了一種基于周期觸發(fā)代理的SDN廣播處理方法。該方法解決以太網(wǎng)中ARP廣播問題,通過在主機接入網(wǎng)絡(luò)初始階段建立全網(wǎng)主機信息hash表(IP-to-MAC和MAC_MAP),并提出IP-to-MAC表和MAC_MAP表的更新策略,使得網(wǎng)絡(luò)中任一主機的ARP請求均可以由控制端統(tǒng)一響應(yīng),從而避免整網(wǎng)的泛洪。該方法適用于任意集中式網(wǎng)絡(luò)架構(gòu)的場景,具有消除了以太網(wǎng)中的ARP廣播、降低網(wǎng)絡(luò)流量和主機負載壓力、有效預(yù)防DHCP欺騙、杜絕ARP欺騙、支持主機端的移動等特點。
文檔編號H04L12/801GK103209225SQ201310115938
公開日2013年7月17日 申請日期2013年4月3日 優(yōu)先權(quán)日2013年4月3日
發(fā)明者劉江, 王健, 黃韜, 趙偉辰, 楊守仁, 陳建亞, 劉韻潔 申請人:北京郵電大學