本發(fā)明涉及光纖通信,尤其涉及光纖fc領(lǐng)域的消息處理技術(shù),應(yīng)用于fc子卡的網(wǎng)絡(luò)管理消息處理,具體而言涉及一種基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理方法與系統(tǒng)。
背景技術(shù):
1、在光纖網(wǎng)絡(luò)系統(tǒng)中,消息傳輸主要依靠fc協(xié)議實現(xiàn)。fc協(xié)議消息可進(jìn)一步分為asm協(xié)議消息和els協(xié)議消息。其中asm消息主要用于傳輸各類業(yè)務(wù)數(shù)據(jù),els消息主要用于對整個網(wǎng)絡(luò)系統(tǒng)中的節(jié)點進(jìn)行網(wǎng)絡(luò)管理。
2、如圖1所示,光纖fc網(wǎng)絡(luò)系統(tǒng)中的節(jié)點通常包含宿主機和節(jié)點子卡,其中節(jié)點子卡包含fpga芯片,負(fù)責(zé)將接收到的fc消息進(jìn)行解析,通過pcie接口發(fā)送到宿主機,同時通過pcie接收宿主機需要發(fā)送的消息,轉(zhuǎn)化為fc協(xié)議后發(fā)送給其他節(jié)點。數(shù)據(jù)路徑如圖1所示,當(dāng)宿主機接收到fc消息后,進(jìn)行應(yīng)用層操作,包括業(yè)務(wù)分發(fā)以及網(wǎng)絡(luò)管理響應(yīng)等。在傳統(tǒng)設(shè)計當(dāng)中,宿主機需要完成asm數(shù)據(jù)消息的處理,同時,els網(wǎng)絡(luò)管理消息的處理工作也是由宿主機完成的。此種設(shè)計在asm消息數(shù)據(jù)量較小的情況下,宿主機處理器負(fù)荷較低,網(wǎng)管消息及數(shù)據(jù)消息均能夠有效正常的進(jìn)行處理,但此結(jié)構(gòu)無法適應(yīng)高帶寬大流量的應(yīng)用場景。
3、一旦光纖網(wǎng)絡(luò)中高帶寬大流量的進(jìn)行數(shù)據(jù)收發(fā),宿主機需要完成大負(fù)荷量的工作。在此情況下,若數(shù)據(jù)消息的處理優(yōu)先級較高,宿主機將優(yōu)先進(jìn)行處理,此時els網(wǎng)絡(luò)管理消息將無法得到及時處理,甚至無法處理。在此情況下,網(wǎng)絡(luò)拓?fù)鋵蟾娈?dāng)前節(jié)點在網(wǎng)異常。如果當(dāng)前節(jié)點為主控節(jié)點,則整個拓?fù)渚W(wǎng)絡(luò)將工作異常。
技術(shù)實現(xiàn)思路
1、針對現(xiàn)有技術(shù)中光纖fc網(wǎng)絡(luò)數(shù)據(jù)通信處理大流量高帶寬的通信場景的瓶頸問題,本發(fā)明目的在于提供一種基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理方法與系統(tǒng),提升整個通信拓?fù)浣Y(jié)構(gòu)的效率和穩(wěn)定性提升整個通信拓?fù)浣Y(jié)構(gòu)的效率和穩(wěn)定性,適應(yīng)大數(shù)據(jù)量通信場景fc網(wǎng)絡(luò)管理消息處理。
2、根據(jù)本發(fā)明目的的第一方面,提出一種基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),包括配置于節(jié)點子卡的fpga以及與節(jié)點子卡的fpga通過pcie接口通信的宿主機;
3、所述節(jié)點子卡的fpga設(shè)置有軟核模塊、仲裁模塊、寄存器控制模塊、els發(fā)送模塊與els接收模塊;
4、所述軟核模塊,用于處理光纖fc網(wǎng)絡(luò)的網(wǎng)絡(luò)管理業(yè)務(wù);
5、仲裁模塊,用于通過axi總線與軟核模塊進(jìn)行els幀與寄存器的交互,仲裁els發(fā)送模塊、els接收模塊以及寄存器控制模塊的讀寫需求,所述els發(fā)送模塊、els接收模塊以及寄存器控制模塊的讀寫需求經(jīng)由仲裁后生效,完成els接收、els發(fā)送以及寄存器控制與軟核的交互;
6、els發(fā)送模塊,用于接收宿主機內(nèi)核驅(qū)動通過pcie接口下發(fā)到fpga的事件型els幀以及接收軟核模塊下發(fā)的周期性els幀,分別將周期性els幀與事件型els幀通過fc發(fā)送模塊發(fā)送到后級fc_mac層進(jìn)行fc處理,完成fc組幀和發(fā)送;
7、els接收模塊,接收來自fc_mac層解析后的els幀并發(fā)送至fpga的仲裁模塊,由仲裁模塊仲裁后將els幀的控制信息和有效數(shù)據(jù)寫入緩存,并由軟核模塊讀取進(jìn)行后續(xù)處理;
8、寄存器控制模塊,用于控制宿主機內(nèi)核驅(qū)動、軟核模塊、els發(fā)送模塊、els接收模塊以及仲裁模塊的各寄存器的數(shù)據(jù)讀寫交互。
9、根據(jù)本發(fā)明目的的第二方面,還提出一種根據(jù)基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng)實現(xiàn)的光纖fc網(wǎng)絡(luò)管理消息處理方法,所述光纖fc網(wǎng)絡(luò)管理消息處理方法包括fc幀的發(fā)送處理與接收處理:
10、所述fc幀的接收處理流程包括以下過程:
11、步驟1.1:節(jié)點子卡的fpga接收fc光纖發(fā)送過來的高速差分信號,將高速差分信號解析成為完整的fc幀;
12、步驟1.2:fpga的fc_mac層將接收到的fc幀分為els幀和asm幀,并分別發(fā)送至els接收和asm接收模塊;
13、步驟1.3:els接收模塊將els幀發(fā)送至節(jié)點子卡的fpga的仲裁模塊,不再發(fā)送給宿主機;asm接收模塊通過pcie接口將asm幀發(fā)送至宿主機進(jìn)行后續(xù)處理;
14、步驟1.4:仲裁模塊經(jīng)過授權(quán)確認(rèn)后,將els幀的控制信息和有效數(shù)據(jù)寫入緩存,并由軟核讀取進(jìn)行后續(xù)處理;
15、所述fc幀的發(fā)送處理流程包括以下過程:
16、步驟2.1:節(jié)點子卡中fpga配置的軟核模塊將需要發(fā)送的周期性els幀寫入緩存并通知仲裁模塊讀??;
17、步驟2.2:仲裁模塊經(jīng)過授權(quán)確認(rèn)后,將周期性els幀寫入els發(fā)送模塊;
18、步驟2.3:宿主機內(nèi)核驅(qū)動將需要發(fā)送的事件型els幀寫入els發(fā)送模塊;
19、步驟2.4:els發(fā)送模塊對軟核模塊和內(nèi)核驅(qū)動發(fā)送的周期性els幀、事件型els幀經(jīng)由仲裁模塊進(jìn)行仲裁后,將周期性els幀、事件型els幀發(fā)送到后級fc_mac層;
20、步驟2.5:宿主機內(nèi)核驅(qū)動將需要發(fā)送的asm幀通過asm發(fā)送模塊發(fā)送到后級fc_mac層;
21、步驟2.6:fc?mac層將需要發(fā)送的els幀和asm幀轉(zhuǎn)化成高速差分信號發(fā)送到光纖fc網(wǎng)絡(luò)。
22、與現(xiàn)有技術(shù)相比,本發(fā)明的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng)的顯著優(yōu)點在于:
23、將光纖fc網(wǎng)絡(luò)系統(tǒng)中的網(wǎng)絡(luò)管理業(yè)務(wù)下放至節(jié)點子卡,而數(shù)據(jù)消息處理仍然保留由宿主機進(jìn)行處理,由此,既保留了與現(xiàn)有設(shè)計中接口的兼容性,又能夠有效的提升整個網(wǎng)絡(luò)的通信效率。
24、在本發(fā)明的設(shè)計中,網(wǎng)絡(luò)管理消息由節(jié)點子卡端進(jìn)行處理,有效的保證處理的及時性,確保整個網(wǎng)絡(luò)拓?fù)涞慕】蹬c穩(wěn)定,并且同時減輕了宿主機的處理負(fù)荷,使得宿主機能夠更有效的處理消息數(shù)據(jù)。相較于傳統(tǒng)的設(shè)計方案,本發(fā)明的設(shè)計可顯著提升整個通信拓?fù)浣Y(jié)構(gòu)的效率和穩(wěn)定性。
25、應(yīng)當(dāng)理解,前述構(gòu)思以及在下面更加詳細(xì)地描述的額外構(gòu)思的所有組合只要在這樣的構(gòu)思不相互矛盾的情況下都可以被視為本公開的發(fā)明主題的一部分。另外,所要求保護(hù)的主題的所有組合都被視為本公開的發(fā)明主題的一部分。
26、結(jié)合附圖從下面的描述中可以更加全面地理解本發(fā)明教導(dǎo)的前述和其他方面、實施例和特征。本發(fā)明的其他附加方面例如示例性實施方式的特征和/或有益效果將在下面的描述中顯見,或通過根據(jù)本發(fā)明教導(dǎo)的具體實施方式的實踐中得知。
1.一種基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,包括配置于節(jié)點子卡的fpga以及與節(jié)點子卡的fpga通過pcie接口通信的宿主機;
2.?根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述寄存器控制模塊通過pcie接口連接軟核模塊與宿主機,完成宿主機內(nèi)核驅(qū)動與fpga的軟核模塊的直接交互,包括:
3.根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述軟核模塊通過axi總線與els發(fā)送模塊、els接收模塊以及寄存器控制模塊交互消息,通過向axi總線不同偏移地址讀寫數(shù)據(jù),完成讀寫驅(qū)動寄存器、讀寫邏輯寄存器、發(fā)送els幀、接收els幀的操作。
4.根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述軟核模塊通過對應(yīng)的寄存器分別下發(fā)指令給仲裁模塊、els發(fā)送模塊與els接收模塊,實現(xiàn)寄存器交互,并接收仲裁模塊、els發(fā)送模塊與els接收模塊的狀態(tài)與統(tǒng)計信息。
5.根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述仲裁模塊包括bram控制器、雙端口bram以及bram邏輯仲裁控制模塊;
6.根據(jù)權(quán)利要求1-5中任意一項所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述節(jié)點子卡的fpga還配置有asm發(fā)送模塊以及asm接收模塊;
7.根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,在節(jié)點子卡的fpga中,通過fc_mac層將fc消息分為els幀和asm幀,并分別發(fā)送至els和asm接收模塊;
8.根據(jù)權(quán)利要求1所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng),其特征在于,所述軟核模塊還配置有axi-gpio模塊,用于供軟核模塊通過該axi-gpio模塊向寄存器控制模塊、els發(fā)送模塊與els接收模塊發(fā)送單bit開關(guān)指令或者狀態(tài)指示信號。
9.根據(jù)權(quán)利要求1-8中任意一項所述的基于fpga的光纖fc網(wǎng)絡(luò)管理消息處理系統(tǒng)實現(xiàn)的光纖fc網(wǎng)絡(luò)管理消息處理方法,其特征在于,所述光纖fc網(wǎng)絡(luò)管理消息處理方法包括fc幀的發(fā)送處理與接收處理:
10.根據(jù)權(quán)利要求9所述的光纖fc網(wǎng)絡(luò)管理消息處理方法,其特征在于,所述步驟2.3以及步驟2.5中,宿主機內(nèi)核驅(qū)動通過pcie接口直接發(fā)送事件型els幀、asm幀到對應(yīng)的els發(fā)送模塊與asm發(fā)送模塊。