99爱免费观看_日韩在线免费_97成人在线视频_中文字幕三区_美女福利视频网站_色伊人

非透明橋在國產化平臺上的應用

來源:期刊VIP網所屬分類:免費文獻發(fā)布時間:2021-03-22瀏覽:

  摘要:為了解決雙控系統(tǒng)間通信模塊效率低、成本高的問題,提出使用非透明橋技術進行系統(tǒng)間數據傳輸。本文設計并實現(xiàn)了一套通信框架和中間件,在通信框架中實現(xiàn)對緩沖區(qū)的組織管理,在中間件中實現(xiàn)了流量控制以及socket通信接口。文中介紹了非透明橋技術,詳細描述了通信框架和中間件的設計思路,并對框架進行了測試。測試表明,該通信框架傳輸比較穩(wěn)定,在國產化平臺中傳輸的最大帶寬可以達到1400MB/s,相較于萬兆以太網卡提高了16.67%,并且成本降低了15.91%。

  關鍵詞:國產化;雙控存儲;非透明橋;socket

  Abstract: In order to solve the problems of low efficiency and high cost of communication modules between dual-control systems, it is proposed to use nontransparent bridge technology for data transmission between systems. A set of communication framework and middleware is designed and implemented. In the communication framework, organization and management of the buffers are realized. Flow control and socket communication interfaces are implemented in the middleware. The paper introduces the nontransparent bridge technology, details the design ideas of the communication framework and middleware and tests the framework. Tests show that the transmission of the communication framework is relatively stable, and the maximum bandwidth transmitted in the localized platform can reach 1400MB/s, which is an increase of 16.67% compared to 10 Gigabit Ethernet cards, and the cost is reduced by 15.91%.

  Key words: localization; dual -control storage; Non-transparent Bridge; socke

  0 引言

  隨著我國信息化建設的不斷進步,數據量快速增長,對存儲系統(tǒng)的性能和可靠性提出很高的要求,發(fā)展國產化雙控存儲系統(tǒng)勢在必行"-2。傳統(tǒng)的雙控系統(tǒng)使用以太網進行系統(tǒng)間傳輸,以太網結構簡單、易管理,但是帶寬利用率低、延遲較高,在國產服務器上,受限于CPU頻率的影響,以太網卡具有極大的性能損失。為了提高通信帶寬、降低使用成本,本文提出使用PCle技術進行數據傳輸。PCle提供非透明橋技術(Non-transparent Bridge)用以連接兩個不同的主機域B-7,解決了多主機域之間地址沖突的問題,使用NTB可以有效提高系統(tǒng)間數據傳輸的效率。然而,NTB技術仍存在以下問題:ONTB只提供了系統(tǒng)間內存映射的功能,缺少完善的數據傳輸機制;

  ②現(xiàn)有的應用絕大部分都不支持NTB接口,應用的范圍很小。

  綜上所述,本文提出使用NTB作為雙控系統(tǒng)間的傳輸通路,并進行如下工作:

  ①設計并實現(xiàn)一種高效的通信框架,提高數據傳輸的效率;

  ②在上層應用與通信框架之間抽象出中間件對通信框架進行封裝,并在中間件中實現(xiàn)socket接口。

  1非透明橋技術

  非透明橋常用于連接兩個獨立的主機域,解決了多處理器系統(tǒng)中的地址域沖突問題。多處理器之間互相隔離,非透明橋一側的主機將看不到橋另一側完整的內存空間或1/0空間,而是將其看作一個端點,并把它映射到自己的地址空間-

  1.1 通信方式

  非透明橋提供了兩種主機域之間通信的方式。

  通過非透明橋中的特殊寄存器進行處理器間的狀態(tài)信息的傳遞,通過地址映射進行10數據通信[

  非透明橋的兩側通常含有門鈴(Doorbell)寄存器和便箋(Scratchpad)寄存器。門鈴寄存器用于將中斷從非透明橋的一側發(fā)送到另一側。便箋寄存器可以從非透明橋的兩側進行訪問,常被用來在兩個主機域之間傳遞一些狀態(tài)信息和控制信息,也可以作為通用的讀寫寄存器用來傳遞一些簡短的消息。

  非透明橋還提供地址映射的方式進行通信。每個NTB設備都會抽象出兩個端點,分別是虛擬端端點(virtual side)和鏈路端端點(link side)。虛擬端與本地主機域相連,鏈路端與遠程主機域相連。為了跨非透明網橋通信,鏈路端會將一塊BAR地址空間映射到遠程主機域。本地主機域通過對BAR地址空間進行讀寫操作將通過地址翻譯功能傳輸到遠程系統(tǒng)的內存上。

  1.2 地址翻譯

  在非透明橋環(huán)境中,數據從一個內存地址空間穿越到另一個地址空間時要進行地址翻譯。非透明橋鏈路端基地址寄存器中包含一個setup寄存器,用來定義地址翻譯窗口的大小并分配地址翻譯寄存器。在地址翻譯寄存器中定義了一個掩碼,該掩碼將地址分為高位基本字段和低位偏移字段。然后,將地址基址寄存器位替換為相應的地址轉換寄存器位,即可得到正確的內存地址。如圖1所示。非透明橋技術的使用要借助PCle交換機

  (swith),PCle Switch具有上行端口和下行端口,可以擴展系統(tǒng)中的PCle通道數。上行端口連接主設備,下行端口連接端節(jié)點設備或者通過NTB連接其他主機域11,如圖2所示。經過大量調研發(fā)現(xiàn),Pk公司的Px8749型號switch產品支持NTB技術,每個NTB端口擁有4條PCle鏈路。因此本文基于Pk8749型號的Switch進行開發(fā)。

  本文設計的通信框架還使用了直接內存訪問

  (DMA)技術,DMA有效地解決了在進行數據交換時CPU為適應外部設備的工作頻率而花費大量的周期等待數據與中斷導致CPU在獲取數據過程中的低效率的問題。使用DMA技術可以有效減輕CPU的壓力,間接提升CPU的工作處理能力[12通信模塊架構

  非透明橋技術提供了兩塊可以在雙系統(tǒng)間共享的地址空間,實現(xiàn)了基本的通信功能。本文提出的通信模塊就是基于非透明橋的內存映射,在其之上作出如下工作:

  ①實現(xiàn)非透明橋的初始化工作,設置合理的地址空間大小;

  ②設計一個通信框架對映射出的內存進行組織管理,提供針對內存空間的快速訪問機制,提高內存空間的利用率進而提高通信的效率;

  ③在應用層與通信框架之間封裝一層中間件,用來對通信框架進行完善,實現(xiàn)流量控制,保證模塊使用的安全性,并對上層應用提供socket通信接口,具體如圖3所示。

  2.1 非透明橋的初始化

  非透明橋的初始化工作包括寄存器的配置、通路的建立以及內存的映射三個部分。要使用PCle Switch中的NTB功能,必須配置swich基地址寄存器中的0x360-0x364位,使能NT端口,并分配下行端口號(本型號產品中對外端口號為8和9),NT設備中的每個端點都有一套基地址寄存器。使用時要配置鏈路端的OxE8 ~OxEC位,使能BAR2地址空間并設置BAR2類型和大小。初始化時,在本地申請一塊物理內存并將內存的起始地址和大小通過便箋寄存器發(fā)送給遠程系統(tǒng),遠程系統(tǒng)將獲取到的內存信息寫入鏈路端的地址翻譯寄存器中,反之亦然。最后還要向NT端口分配DMA通路以實現(xiàn)DMA的傳輸功能。

  2.2通信框架

  非透明橋初始化完成后即實現(xiàn)了雙控系統(tǒng)中內存映射的功能,本地系統(tǒng)向本地申請的物理內存中寫入數據即可通過地址翻譯功能傳輸到遠程系統(tǒng)。但是這只是基本的傳輸通道的實現(xiàn),想要得到一條高效快速的數據通路,還需要一個高效的通信框架保證數據傳輸效率。

  本文設計一套通信框架,將BAR地址空間作為數據的發(fā)送緩沖區(qū),本地申請的物理內存作為數據接收緩沖區(qū),這種設計可以保證當設備出現(xiàn)突發(fā)故障時數據不會丟失。為了提高數據傳輸的效率,防止緩沖區(qū)溢出,將兩塊內存區(qū)域以數組的形式組織成環(huán)形隊列。在地址空間的最前方劃分兩塊 4 字節(jié)大小的內存區(qū)域用來維護兩個偏移量: 入口偏移和出口偏移。入口偏移是指下一次入隊列時的位置,出口偏移是指下一次出隊列時的位置。環(huán)形隊列中單個元素以結構體nt-data的形式進行劃分,每一個nt_data就是一個傳輸時的數據包,如圖4所示。使用這種設計可以有效提高內存空間的利用率、隊列讀寫和查詢的效率,防止內存溢出等錯誤發(fā)生,具體使用規(guī)則如下:

  ①當入口偏移和出口偏移的值相同時,表示隊列為空,此時數據讀取操作阻塞,直到有新的數據進入隊列:

  ②當出口偏移比入口偏移小并相差1時,表示隊列已滿,此時數據寫入操作阻塞,直到有數據被取出:

  ③寫入數據時,直接將元素添加到入口偏移指向的位置,然后將入口偏移加1,如果超出隊列長度則從0開始:

  ④讀取數據時,直接讀取出口偏移指向的位置存放的數據,然后將出口偏移加1,如果超出隊列長度則從0開始。

  考慮到要實現(xiàn)socket通信接口,從底層向上層傳輸時,為了提高傳輸效率,防止IP層對數據進行分片,單個nt_data包大小應該不超過IP層的MTU大小1500字節(jié)。從上層向底層傳輸時,為了減少數據分片,同時盡量避免內存浪費,單個nt_data的大小應該在MTU的1/3-1/2之間。綜合考慮,將單個ntdata包大小設為750字節(jié)。這樣可以保證數據分片至多進行一次,同時內存浪費現(xiàn)象不會過于嚴重。

  ntdata數據包中,包含一個2字節(jié)的包頭以及748字節(jié)的數據存放區(qū),如圖5所示。包頭前兩位是標志位,首位為1表示數據進行過分片,為0表示沒有經過分片。第二位為0表示此包為最后分片,為1表示為首分片。其余30位記錄最后分片在隊列中的位置。在讀取的時候只會讀取首分片,根據首分片中記錄的最后分片的位置主動發(fā)起一次讀取請求,獲得完整的數據。

  2.3中間件

  盡管設計了一個通信框架對數據傳輸進行約束,提高了通信的效率,但是該框架仍有很大的局限性。首先框架中缺少流量控制的功能,當讀寫速率有差異時很容易造成緩沖區(qū)溢出導致數據丟失。其次框架不具有通用性,現(xiàn)階段所有的應用都不支持對此框架接口的調用。因此本文設計一層中間件對通信框架的接口進行封裝,實現(xiàn)流量控制。考慮到大部分應用都支持網絡通信,于是在中間件中實現(xiàn)socket通信接口。

  為了防止緩沖區(qū)溢出,發(fā)送數據時,首先檢查發(fā)送緩沖隊列,如果隊列剩余元素個數小于要發(fā)送的包的個數,那么發(fā)送函數會被阻塞,關閉上層的發(fā)送隊列,通知上層網絡協(xié)議棧停止發(fā)送數據,直到緩沖區(qū)中的數據被讀取,釋放出足夠的空間才喚醒發(fā)送隊列和發(fā)送函數繼續(xù)寫入數據。

  網絡系統(tǒng)基于socket機制,由內核中的網絡子系統(tǒng)驅動,負責接收和發(fā)送網絡數據。因此實現(xiàn)socket機制的一種方法就是實現(xiàn)國產化平臺下的網絡驅動。網絡驅動使用net-device結構體描述一個具體的網絡設備的信息,實現(xiàn)不同硬件的統(tǒng)[13-3],系統(tǒng)和驅動程序之間定義有專門的數據結構(sk-buff)進行數據的傳遞。因此只需要在系統(tǒng)中初始化并注冊net_device,實現(xiàn)其收發(fā)函數即可。發(fā)送數據時,通過發(fā)送函數ndo-start-mit接收上層以sk-uff形式傳來的數據包,對其進行解析,根據數據長度進行分片處理,然后使用DMA的方式將處理后的nt-data包搬運到緩沖隊列中。

  讀取數據時,使用輪詢的方式讀取緩沖隊列,根據nt_data包中分片情況將數據恢復成sk_buff的形式,然后調用netifx函數將數據包發(fā)送給上層應用。

  3實驗測試

  本文設計并實現(xiàn)的通信框架以及中間件最終以系統(tǒng)中網絡設備的形式呈現(xiàn),系統(tǒng)可以對此設備設置IP地址以及激活等操作,上層應用可以通過此網絡設備實現(xiàn)非透明橋傳輸的調用。為了驗證通信框架和中間件的正確性和穩(wěn)定性,將實驗測試分為功能性測試、可靠性測試和性能測試。實驗環(huán)境為兩臺國產飛騰服務器+麒麟操作系統(tǒng)+Plx8749型號PCle Switch,并使用兩塊intel x520型號的萬兆以太網卡作性能測試的對比。

  3.1功能性測試

  系統(tǒng)部署成功后,測試本文實現(xiàn)的網絡設備是否與正常網絡設備具有同樣的功能。通過ifconfig命令查看系統(tǒng)中的網絡設備,可以看到一塊特殊的網卡。然后使用ifconfig命令對其設置IP地址并激活。經測試,此網絡設備實現(xiàn)了與正常網絡設備相同的功能,支持設置IP以及激活等操作。

  3.2可靠性測試

  將兩塊網卡的IP地址分別為192.168.137.17和192.168.137.18,使用ping命令以及iperf網絡測試工具進行長時間的穩(wěn)定性測試。測試結果表明,在超過1小時的長時間ping包以及ipert測試中,網絡連接十分穩(wěn)定,沒有出現(xiàn)連接斷開或者丟包的現(xiàn)象。

  3.3性能測試

  使用ipef網絡測試工具對本文實現(xiàn)的網卡以及intel x520型號的萬兆以太網卡進行性能測試。

  測試時,調整iperf參數緩沖區(qū)大小以及NT緩沖區(qū)大小為8kB.16kB-2MB,觀察帶寬隨緩沖區(qū)大小變化的規(guī)律,對比兩者的帶寬性能,測試結果如圖6所示。

  圖6中可以看到當緩沖區(qū)大小達到32kB時,萬兆以太網卡的帶寬達到峰值1200MB/s左右。而NT網卡在緩沖區(qū)大小為1MB時達到峰值1400MB/s左右,相較于萬兆網卡,最大帶寬提高了16.67%。

  4結束語

  在國產化雙控存儲系統(tǒng)中,網絡通信模塊的效率低下、成本高昂一直是非常嚴重的問題。本文提出使用PCle互聯(lián)網路中的非透明橋技術實現(xiàn)雙控系統(tǒng)中的數據傳輸功能,設計并實現(xiàn)了一套通信框架,提高系統(tǒng)間通信的效率,一個中間件,提供通用的socket接口,提高了框架應用的廣泛性。最后文章對模塊的穩(wěn)定性和性能進行了測試。測試結果表明,使用本文設計的通信模塊在國產化雙控存儲系統(tǒng)中數據傳輸的帶寬超過了萬兆以太網卡16.67%,同時根據網絡上的報價顯示成本降低了15.91%。

  參考文獻:

  [1]李瑞東,雙控存儲系統(tǒng)的設計與實現(xiàn)[D].濟南:山東大學,2017.

  [2]姚遠,雙控制器磁盤陣列中PCL-e同步通道的優(yōu)化技術研究[D].武漢:華中科技大學,2012.

  [3]祝樹生,解春雷,仇公望,等.以太網、PCle和Rapid 10高速總線比較分析[].電子測試,2016(11):100-102.

  [4]王聰,王彬,薛潔,等,基于PCle總線協(xié)議的設備驅動開發(fā)UJ].信息技術,2013(3):32-35.

  [5]陳曉磊,董延軍.CPCI總線在某數據處理機中的應用D].計算機光盤軟件與應用,2014(10):69-72.

  [6]代琛,傅華明,基于PCI Express技術實現(xiàn)智能適配器D].網絡安全技術與應用,2007(1):64-65.

  [7]Shim C,Cha K H,Choi M.Design and implementation of initial OpenSHMEM on PCle NTB hased cloud computing[J].Cluster Computing,2019,22(1):1815-1826.

  [8]王樂,馬春江,馮曉東,等.PCItoPCI非透明橋的設計和應用D].微電子學與計算機,2007(7):160-162.

  [9]李才華.PCIExpress非透明橋在智能系統(tǒng)中的應用設計D].電子元器件應用,2009(8):64-66.

  [10]徐健,張建泉,張健,基于PCIE非透明橋的嵌入式異構平臺設計t[].微電子學與計算機,2018(1):26-30.

  [11]鄭橋,韓力,邢同鶴,等·基于PCle Switch的存儲陣列D].電子設計工程,2019(14):126-129.

  [12]柴磊·基于PCle總線的高速數據傳輸技術研究[D].西安:西安電子科技大學,2018.

  [13]韓夢江基于PCIE總線的加密網卡驅動及應用程序設計[D].哈爾濱:黑龍江大學,2017.

  [14]項濤,基于EP9315處理器的網卡驅動設計D].信息與電腦:理論版,2018(11):89-90.

  [15]張霖,周維芹,張偉功.UM-BUS總線網卡的驅動程序設計與實現(xiàn)[].電子技術應用,2020,46(5):83-87.

期刊VIP網,您身邊的高端學術顧問

文章名稱: 非透明橋在國產化平臺上的應用

文章地址: http://www.ovfxiqc.cn/mianfeiwx/56596.html

國際期刊論文 SCI/SSCI選題匹配!

選擇豐富服務快速通過率高一鍵快速領取私人專屬發(fā)表方案!

* 填寫需求信息,或選擇平臺現(xiàn)有SCI/SSCI選題(如下)。

上一篇:沒有了
主站蜘蛛池模板: 黄色免费在线观看 | 日韩久久久精品 | 黄色毛片在线看 | 视频在线一区 | 黑人巨大精品欧美黑白配亚洲 | 国产精品欧美日韩在线观看 | 欧美炮房 | 久久国产香蕉视频 | 一本一本久久a久久精品牛牛影视 | 午夜视频在线观看网站 | 欧美成人免费 | 亚洲综合在线播放 | 一级篇 | 天天天综合网 | 国产精品久久久久久久午夜片 | 午夜精品福利一区二区三区蜜桃 | 一区在线不卡 | 久久久久综合 | 麻豆视频在线 | 黄频免费在线观看 | 亚洲精品免费看 | 久久99精品久久久久久按摩秒播 | aaa级片 | 青草青草久热精品视频在线观看 | 国产1页| 成人在线视频一区二区 | 精品国产乱码久久久久久久 | 在线视频一区二区 | 搜索黄色毛片 | 国产精品无码永久免费888 | 怡红院免费在线视频 | 亚洲综合视频 | 超碰伊人网 | 亚洲美女视频一区二区三区 | 99热少妇 | 一区二区三区免费 | 国内外成人在线视频 | 在线观看欧美一区 | 国产日韩中文字幕 | 久久另类ts人妖一区二区 | 国产福利91精品一区二区三区 |