本發(fā)明涉及通信
技術(shù)領(lǐng)域:
,特別是涉及一種報文發(fā)送方法和裝置。
背景技術(shù):
:隨著以太網(wǎng)技術(shù)迅速發(fā)展,各設(shè)備廠商推出了40G、100G的以太網(wǎng)接口,而標準的彈性分組環(huán)(ResilientPacketRing,RPR)只能支持10G的端口,限制了流量在以太網(wǎng)中傳輸?shù)膸?;因此,可以將RPR邏輯口在以太網(wǎng)層面進行聚合,以利用多個RPR邏輯口分擔流量,從而解決上述問題。上層完成選環(huán)后,將流量發(fā)送至對應的RPR單環(huán)站點的媒體訪問控制(MediaAccessControl,MAC)實體,RPR單環(huán)站點查詢選環(huán)表確定轉(zhuǎn)發(fā)該流量的端口,再將RPR報文通過對應的端口轉(zhuǎn)發(fā),并發(fā)送到選中的RPR單環(huán)中的其他RPR單環(huán)站點中;當選中的RPR單環(huán)上的目的站點出現(xiàn)故障時,上層無法感知RPR單環(huán)的拓撲變化而不會重新選環(huán),使得流量無法成功的發(fā)送至目的站點。為了解決上述問題,現(xiàn)有技術(shù)提出了,一種在雙RPR的RPR網(wǎng)絡,每個站點的各個成員設(shè)備優(yōu)先通過本設(shè)備所在RPR單環(huán)轉(zhuǎn)發(fā)廣播報文或轉(zhuǎn)發(fā)發(fā)往其他站點的單播報文。技術(shù)實現(xiàn)要素:本發(fā)明目的在于提供一種報文發(fā)送方法,在RPR網(wǎng)絡內(nèi)實現(xiàn)報文轉(zhuǎn)發(fā)的負載分擔。為實現(xiàn)上述目的,本發(fā)明提供了一種報文發(fā)送方法,該方法可應用于彈性分組環(huán)RPR網(wǎng)絡中任一站點的任一成員設(shè)備,其中,該方法包括:接收以太網(wǎng)單播報文;查找以太網(wǎng)單播報文的目的地址對應的RPRMAC地址;根據(jù)查找到的RPRMAC地址查找對應的單播RPR聚合環(huán);計算第一選環(huán)哈希值;當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中的一個RPR邏輯口匹配,向第一選環(huán)哈希值匹配的RPR邏輯口所對應的RPR單環(huán)上,屬于本地站點的成員設(shè)備發(fā)送以太網(wǎng)單播報文;當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中本地RPR單環(huán)出接口匹配,根據(jù)查找到的RPR單播MAC地址將以太網(wǎng)單播報文封裝為RPR單播報文,通過第二單播哈希值匹配的本地RPR單環(huán)出接口發(fā)送。為實現(xiàn)上述目的,本發(fā)明提供了一種報文發(fā)送裝置,該裝置可應用于彈性分組環(huán)RPR網(wǎng)絡中任一站點的任一成員設(shè)備,其中該裝置包括:接收單元,接收以太網(wǎng)單播報文;查找單元,查找以太網(wǎng)單播報文的目的地址對應的RPRMAC地址;根據(jù)查找到的RPRMAC地址查找對應的單播RPR聚合環(huán);計算單元,計算第一選環(huán)哈希值;發(fā)送單元,當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中的一個RPR邏輯口匹配,向第一選環(huán)哈希值匹配的RPR邏輯口所對應的RPR單環(huán)上,屬于本地站點的成員設(shè)備發(fā)送以太網(wǎng)單播報文;當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中本地RPR單環(huán)出接口匹配,根據(jù)查找到的RPR單播MAC地址將以太網(wǎng)單播報文封裝為RPR單播報文,通過第二單播哈希值匹配的本地RPR單環(huán)出接口發(fā)送。本發(fā)明的有益效果在于,采用從RPR聚合環(huán)選擇轉(zhuǎn)發(fā)的RPR單環(huán),使RPR網(wǎng)絡的報文轉(zhuǎn)發(fā)的負載分擔更加均勻。附圖說明圖1是本發(fā)明實施例提供的報文轉(zhuǎn)發(fā)的流程示意圖;圖2是本發(fā)明實施例提供的RPR網(wǎng)絡示意圖;圖3是本發(fā)明實施例提供的RPR網(wǎng)絡故障的示意圖;圖4是本發(fā)明的實施例提供的RPR網(wǎng)絡的另一故障的示意圖;圖5是本發(fā)明實施例提供的RPR網(wǎng)絡的又一故障的示意圖;圖6是本發(fā)明提供的報文轉(zhuǎn)發(fā)裝置的結(jié)構(gòu)示意圖。具體實施方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。圖1是本發(fā)明提供的報文發(fā)送方法流程示意圖,該報文發(fā)送方法可應用于彈性分組環(huán)RPR網(wǎng)絡中任一站點的任一成員設(shè)備。如圖1所示,該報文轉(zhuǎn)發(fā)方法包括:步驟101,接收以太網(wǎng)單播報文。步驟102,查找以太網(wǎng)單播報文的目的地址對應的RPRMAC地址。步驟103,根據(jù)查找到的RPRMAC地址查找對應的單播RPR聚合環(huán)。步驟104,計算第一選環(huán)哈希值。步驟105,第一選環(huán)哈希值是否與查找到的單播RPR聚合環(huán)中的一個RPR邏輯口匹配,是執(zhí)行步驟106;否則執(zhí)行步驟107。步驟106,向第一選環(huán)哈希值匹配的RPR邏輯口所對應的RPR單環(huán)上,屬于本地站點的成員設(shè)備發(fā)送以太網(wǎng)單播報文。步驟107,第一選環(huán)哈希值與查找到的單播RPR聚合環(huán)中本地RPR單環(huán)出接口匹配,根據(jù)查找到的RPR單播MAC地址將以太網(wǎng)單播報文封裝為RPR單播報文。步驟108,通過第二單播哈希值匹配的本地RPR單環(huán)出接口發(fā)送。圖1所示報文轉(zhuǎn)發(fā)方法的有益效果在于,采用從RPR聚合環(huán)選擇轉(zhuǎn)發(fā)的RPR單環(huán),使RPR網(wǎng)絡的報文轉(zhuǎn)發(fā)的負載分擔更加均勻。圖2所示為本發(fā)明實施例提供了的RPR網(wǎng)絡示意圖。其中RPR網(wǎng)絡中包括站點S1-站點S4。站點S1的成員設(shè)備包括成員設(shè)備A1-A3,站點S1的RPRMAC為MACS1。成員設(shè)備B1-B3構(gòu)成站點S3,站點S2的RPRMAC為MACS2。站點S3的成員設(shè)備包括成員設(shè)備C1-C3,站點S3的RPRMAC為MACS3。成員設(shè)備D1-D3構(gòu)成站點S4,站點S4的RPRMAC為MACS4。所有成員設(shè)備運行RPR協(xié)議,其中,成員設(shè)備A1、B1、C1以及D1構(gòu)成一個RPR單環(huán)RPR1,成員設(shè)備A2、B2、C2以及D2構(gòu)成一個RPR單環(huán)RPR2,成員設(shè)備A3、B3、C3以及D3構(gòu)成一個RPR單環(huán)RPR2。按已有RPR協(xié)議,各站點的成員設(shè)備如A1-A3按各個RPR單環(huán)上收到RPR單播報文時,根據(jù)外層源RPRMAC地址以及內(nèi)層以太網(wǎng)單播報文的源MAC地址進行MAC學習,記錄了各MAC地址對應的RPRMAC地址,即將各以太網(wǎng)報文接入RPR網(wǎng)絡的站點的MAC地址。同一站點的成員設(shè)備之間同步學習到的MAC地址對應的RPRMAC地址。本發(fā)明中,本站點中各站點的成員設(shè)備還記錄的各站點的RPRMAC地址對應的RPR單播聚合環(huán)、記錄RPR廣播地址對應的廣播聚合環(huán)。在各個成員設(shè)備的單播RPR聚合環(huán)和廣播RPR聚合環(huán)中,記錄同站點的其他成員設(shè)備所在RPR單環(huán)對應的RPR邏輯口以及各自所在RPR單環(huán)上到達其他站點的出接口以及廣播路徑的出接口。以下以站點S1的成員設(shè)備為例,對本發(fā)明進行說明。站點S1成員設(shè)備A1-A3記錄的RPRMAC地址對應的RPR聚合環(huán)如表1所示:RPRMAC地址RPR聚合環(huán)廣播RPRMACGroup0MacS2Group2MacS3Group3MacS4Group4表1表1中,廣播RPR聚合環(huán)Group0對應了廣播RPRMAC地址,單播RPR聚合環(huán)Group2-Group4分別對應了站點S2、站點S3以及站點S4的RPRMAC地址。在站點S2-S4的成員設(shè)備上會記錄單播RPR聚合環(huán)Group1對應站點S1的MACS4。在每個RPR單環(huán)上,東向端口是RPR協(xié)議規(guī)定各RPR單環(huán)順時針轉(zhuǎn)發(fā)方向上的出端口,西向端口是RPR協(xié)議規(guī)定各RPR單環(huán)逆時針轉(zhuǎn)發(fā)方向上的出端口。表2中示出了,站點S1的成員設(shè)備A1-A3在單播RPR聚合環(huán)和廣播RPR聚合環(huán)中,記錄同站點的其他成員設(shè)備所在RPR單環(huán)對應的RPR邏輯口以及各自所在RPR單環(huán)上到達其他站點的出接口以及廣播路徑的出接口。表2成員設(shè)備A1收到以太網(wǎng)單播報文,進行哈希(hash)計算,成員設(shè)備A1確定計算的哈希值對應本設(shè)備,在MAC地址轉(zhuǎn)發(fā)表中查找到以太網(wǎng)單播報文的目的MAC地址對應的MACS3,根據(jù)MACS3在表1中查找到單播RPR聚合環(huán)group3。成員設(shè)備A1計算選環(huán)哈希值,在表2中查找到選環(huán)哈希值對應于表2中g(shù)roup3的接口RPR2。成員設(shè)備A1將以太網(wǎng)單播報文發(fā)往接口RPR2對應的RPR單環(huán)上屬于站點S1的成員設(shè)備A2。成員設(shè)備A1轉(zhuǎn)發(fā)RPR報文的FPGA芯片可以將以太網(wǎng)報文通過一個特定的以太網(wǎng)端口發(fā)往轉(zhuǎn)發(fā)以太網(wǎng)報文的PP芯片。成員設(shè)備A1的PP芯片根據(jù)設(shè)定的接入控制列表ACL,將特定的以太網(wǎng)端口收到的以太網(wǎng)報文發(fā)往成員設(shè)備A2的PP芯片。或者,成員設(shè)備A1轉(zhuǎn)發(fā)RPR報文的FPGA芯片可以將以太網(wǎng)報文通過一個特定的以太網(wǎng)端口發(fā)往轉(zhuǎn)發(fā)以太網(wǎng)報文PP芯片。成員設(shè)備A1的PP芯片為特定的以太網(wǎng)端口添加一個保留VLAN標識,將帶有保留VLAN標識的以太網(wǎng)報文發(fā)往成員設(shè)備A2的PP芯片。成員設(shè)備A2收到以太網(wǎng)單播報文,在MAC地址轉(zhuǎn)發(fā)表中查找到以太網(wǎng)單播報文的目的MAC地址對應的MACS3,根據(jù)MACS3在表1中查找到單播RPR聚合環(huán)group3。成員設(shè)備A2計算選環(huán)哈希值,在表2中查找到選環(huán)哈希值對應于表2中g(shù)roup3的接口東向端口。成員設(shè)備A2根據(jù)查找的MACS3將以太網(wǎng)單播報文封裝RPR單播報文,通過本設(shè)備在RPR單環(huán)RPR2上的東向端口發(fā)送RPR單播報文。圖2所示的網(wǎng)絡中,站點S1按現(xiàn)有方式將收到的以太網(wǎng)報文分擔在成員設(shè)備A1上執(zhí)行轉(zhuǎn)發(fā)。成員設(shè)備A1從RPR聚合環(huán)選擇轉(zhuǎn)發(fā)的RPR單環(huán),使RPR網(wǎng)絡的報文轉(zhuǎn)發(fā)的負載分擔更加均勻。故障處理站點S1-S4的各個站點的所有成員設(shè)備各自收集本成員設(shè)備所在的本地RPR單環(huán)的拓撲。圖3所示的RPR網(wǎng)絡中,在RPR單環(huán)RPR1上,成員設(shè)備A1與成員設(shè)備D1間的鏈路故障。成員設(shè)備A1收集本地RPR單環(huán)RPR1的拓撲,確定本地RPR單環(huán)RPR1上,站點S4和站點S3是路徑變化遠端站點;其中,站點S1到站點S4轉(zhuǎn)發(fā)路徑從站點S1->站點S4變化為站點S1->站點S2->站點S3->站點S4;站點S1到站點S3轉(zhuǎn)發(fā)路徑從站點S1->站點S4->站點S3變化為站點S1->站點S2->站點S3。成員設(shè)備A1分別將group4和group3中到達站點S4和S3出接口從東向端口替換為西向端口。成員設(shè)備A1判斷述本地RPR單環(huán)RPR1上廣播路徑由S1->站點S4->站點S3->站點S2變化為站點S1->站點S2->站點S3->站點S4,將group0中出接口從東向端口替換為西向端口。表2中成員設(shè)備A1記錄的出接口被更新為表3中所示的出接口。表3圖4中,站點S4的成員設(shè)備D1故障,S1員設(shè)備A1和站點S4成員設(shè)備D1間的鏈路斷開,站點S4的成員設(shè)備D1和站點S3的成員設(shè)備C1間的鏈路斷開,成員設(shè)備A1根據(jù)收集的本地RPR單環(huán)的拓撲,確定本地RPR單環(huán)RPR1存在不可達遠端站點S4。成員設(shè)備從站點S4的MACS4對應的group4中,刪除本成員設(shè)備在本地RPR單環(huán)上到達站點S4的出接口。成員設(shè)備A1從group0中,刪除本地RPR單環(huán)上的出接口。成員設(shè)備A1將收集的本地RPR單環(huán)的拓撲同步給成員設(shè)備A2和A3。。成員設(shè)備A1確定本地RPR單環(huán)RPR1上,站點S3是路徑變化遠端站點;其中,站點S1到站點S3轉(zhuǎn)發(fā)路徑從站點S1->站點S4->站點S3變化為站點S1->站點S2->站點S3。成員設(shè)備A1分別將group3中出接口從東向端口替換為西向端口。成員設(shè)備A2和A3接收成員設(shè)備A1同步的RPR單環(huán)RPR1的拓撲;確定成員設(shè)備A1所在的RPR單環(huán)RPR1上站點S4不可達。成員設(shè)備A2和A3各自從MACS4地址對應的group4中,刪除成員設(shè)備A1所在RPR單環(huán)對應的邏輯口,接口RPR1。站點S1的成員設(shè)備A1、A2以及A3將表2中所示的出接口更新為表4中所示的出接口。表4圖4中,站點S3的成員設(shè)備C1執(zhí)行與成員設(shè)備A1相同方式的處理,站點S3的成員設(shè)備C2和C3執(zhí)行與成員設(shè)備A2和A3相同方式的處理。站點S4的成員設(shè)備D1和D2檢測到D3故障的時候,從站點S1-S3的RPRMAC地址對應的單播RPR聚合環(huán)中,刪除成員設(shè)備D1所在的RPR單環(huán)RPR1對應的RPR邏輯口,從廣播RPR聚合環(huán)中,刪除成員設(shè)備D1所在的RPR單環(huán)RPR1對應的RPR邏輯口。圖5中,站點S1的成員設(shè)備A3故障,站點S1的成員設(shè)備A1和A2檢測到A3故障的時候,從站點S1-S3的RPRMAC地址對應的單播RPR聚合環(huán)中,刪除成員設(shè)備A3所在的RPR單環(huán)RPR3對應的RPR邏輯口,從廣播RPR聚合環(huán)中,刪除成員設(shè)備A3所在的RPR單環(huán)RPR3對應的RPR邏輯口。站點S1的成員設(shè)備A1以及A2將表2中出接口更新為表5中所示的出接口。表5站點S2-S4上成員設(shè)備的處理參見圖4中站點S1上成員設(shè)備A1-A3的處理,具體內(nèi)容本實施例不再贅述。圖6是本發(fā)明實施例提供的一種報文發(fā)送裝置600的示意圖。該裝置600應用于彈性分組環(huán)RPR網(wǎng)絡中任一站點的任一成員設(shè)備。該裝置600包括:接收單元601、查找單元602、計算單元603、發(fā)送單元604、拓撲單元605、表項單元606以及607。接收單元601,接收以太網(wǎng)單播報文。查找單元602,查找以太網(wǎng)單播報文的目的地址對應的RPRMAC地址;根據(jù)查找到的RPRMAC地址查找對應的單播RPR聚合環(huán)。計算單元603,計算第一選環(huán)哈希值。發(fā)送單元604,當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中的一個RPR邏輯口匹配,向第一選環(huán)哈希值匹配的RPR邏輯口所對應的RPR單環(huán)上,屬于本地站點的成員設(shè)備發(fā)送以太網(wǎng)單播報文;當?shù)谝贿x環(huán)哈希值與查找到的單播RPR聚合環(huán)中本地RPR單環(huán)出接口匹配,根據(jù)查找到的RPR單播MAC地址將以太網(wǎng)單播報文封裝為RPR單播報文,通過第二單播哈希值匹配的本地RPR單環(huán)出接口發(fā)送。接收單元601,接收以太網(wǎng)廣播報文。查找單元602,查找RPR廣播MAC地址對應的廣播RPR聚合環(huán)。計算單元603,計算第二選環(huán)哈希值。發(fā)送單元604,當?shù)诙x環(huán)哈希值與廣播RPR聚合環(huán)中的一個RPR邏輯口匹配,向第二選環(huán)哈希值匹配的RPR邏輯口所在的RPR單環(huán)上,屬于本地站點的成員設(shè)備發(fā)送以太網(wǎng)廣播報文;當?shù)诙x環(huán)哈希值與廣播RPR聚合環(huán)中的本地RPR單環(huán)出接口匹配,根據(jù)RPR廣播MAC地址將以太網(wǎng)廣播報文封裝為RPR廣播報文,通過第二選環(huán)哈希值匹配的本地RPR單環(huán)出接口發(fā)送。拓撲單元605,收集本成員設(shè)備所在的本地RPR單環(huán)的拓撲。表項單元606,根據(jù)收集的本地RPR單環(huán)的拓撲,確定本地RPR單環(huán)存在路徑變化遠端站點;從路徑變化遠端站點的RPRMAC地址對應的單播RPR聚合環(huán)中,將本成員設(shè)備在本地RPR單環(huán)上到達路徑變化遠端站點的變化前路徑的出接口,替換為本成員設(shè)備在本地RPR單環(huán)上到達路徑變化遠端站點的新路徑的出接口;判斷本地RPR單環(huán)上廣播路徑是否變化,若是,將廣播RPR聚合環(huán)中本地RPR單環(huán)出接口,替換為變化后廣播路徑在本地RPR單環(huán)上的出接口。表項單元606,根據(jù)收集的本地RPR單環(huán)的拓撲,確定本地RPR單環(huán)存在不可達遠端站點;從不可達遠端站點的RPRMAC地址對應的單播RPR聚合環(huán)中,刪除本成員設(shè)備在本地RPR單環(huán)上到達不可達遠端站點的出接口;從廣播RPR聚合環(huán)中,刪除本地RPR單環(huán)出接口。拓撲單元605,向本地站點的其他成員設(shè)備同步的本地RPR單環(huán)的拓撲;接收本地站點的其他成員設(shè)備同步的其他RPR單環(huán)的拓撲。表項單元606,根據(jù)同步的其他RPR單環(huán)的拓撲,確定本地站點的另一成員設(shè)備所在的RPR單環(huán)上存在不可達站點;從另一成員設(shè)備所在RPR單環(huán)上不可達站點的RPRMAC地址對應的單播RPR聚合環(huán)中,刪除另一成員設(shè)備所在RPR單環(huán)對應的邏輯口。檢測單元607,檢測到本地站點的其他成員設(shè)備中一個故障。表項單元606,從每個遠端站點的RPRMAC地址對應的單播RPR聚合環(huán)中,刪除故障成員設(shè)備所在的RPR單環(huán)對應的RPR邏輯口;從廣播RPR聚合環(huán)中,刪除故障成員設(shè)備所在的RPR單環(huán)對應的RPR邏輯口。以上對本發(fā)明的實施方式進行了說明,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。當前第1頁1 2 3