[發(fā)明專利]一種數(shù)據(jù)分段卸載發(fā)送方法有效
| 申請?zhí)枺?/td> | 201710396537.8 | 申請日: | 2017-05-31 |
| 公開(公告)號: | CN107257329B | 公開(公告)日: | 2019-10-01 |
| 發(fā)明(設(shè)計)人: | 楊惠;李韜;呂高鋒;孫志剛;趙國鴻;毛席龍;全巍;張彥龍;范鵬冉 | 申請(專利權(quán))人: | 中國人民解放軍國防科學技術(shù)大學 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 湖南省國防科技工業(yè)局專利中心 43102 | 代理人: | 馮青 |
| 地址: | 410073 *** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 分段 卸載 發(fā)送 方法 | ||
本發(fā)明涉及一種數(shù)據(jù)分段卸載發(fā)送方法。本方法是一種軟硬件協(xié)同的、分組I/O開銷低、硬件實現(xiàn)復雜度低的大塊數(shù)據(jù)分段卸載發(fā)送方法。將一部分硬件的功能卸載到軟件實現(xiàn),即采用驅(qū)動切分大報文及更新報文頭字段,省去了硬件分段計算處理開銷,大大降低硬件設(shè)計復雜度;另外,本發(fā)明支持低開銷分組I/O,大大降低軟硬件協(xié)同代價,同時相較于支持輕量級分組I/O的網(wǎng)卡,省去了分段報文到專用軟件緩沖區(qū)的一次拷貝,僅將切分后內(nèi)容更新的報文頭部分拷貝到軟件緩沖區(qū),大大提高性能,實現(xiàn)了數(shù)據(jù)分段卸載的高效發(fā)送。
技術(shù)領(lǐng)域
本發(fā)明主要涉及到多核網(wǎng)絡(luò)分組處理中,支持大塊數(shù)據(jù)高效發(fā)送的軟硬件方法設(shè)計領(lǐng)域,特指在多核網(wǎng)絡(luò)分組處理中的一種軟硬件協(xié)同的、分組I/O開銷低、硬件實現(xiàn)復雜度低的大塊數(shù)據(jù)分段卸載發(fā)送方法。
背景技術(shù)
隨著新型網(wǎng)絡(luò)業(yè)務(wù)、協(xié)議的發(fā)展,越來越多的網(wǎng)絡(luò)設(shè)備聚合存儲資源,為全系統(tǒng)提供安全快速的存儲服務(wù)能力。主機系統(tǒng)和存儲設(shè)備之間數(shù)據(jù)的封裝和快速可靠傳輸,為存儲資源的按需調(diào)度和共享共用提供有力支撐。具備高可編程性的通用多核處理器是網(wǎng)絡(luò)設(shè)備中廣泛采用的數(shù)據(jù)平面處理核心器件。然而,傳統(tǒng)網(wǎng)卡最大只能支持最大分段長度MSS(Max Segment Size,一般為MTU-IP頭-TCP頭)大小的數(shù)據(jù)傳輸,當請求大量數(shù)據(jù)時,TCP發(fā)送方必須將大塊數(shù)據(jù)拆分成MSS大小的數(shù)據(jù)塊,然后進一步封裝為數(shù)據(jù)包形式,以便最終可以在網(wǎng)絡(luò)中進行傳輸。由于多核處理器需要對每個分段進行處理,降低了其處理效率。
已有研究TSO技術(shù),支持大報文的直接發(fā)送,TCP發(fā)送方CPU直接將大塊數(shù)據(jù)(最大支持64KB大小)交給網(wǎng)絡(luò)設(shè)備處理,通過網(wǎng)絡(luò)設(shè)備進行TCP段的分割,將大部分CPU的處理工作轉(zhuǎn)移到網(wǎng)卡來處理,即報文的切分與校驗全部交給硬件實現(xiàn),從而減少CPU必須處理的數(shù)據(jù)包數(shù)量,達到提高網(wǎng)絡(luò)處理性能的技術(shù)。支持TSO技術(shù)的網(wǎng)卡,需要支持TSO和分散-聚集SG(Scatter-Gather)技術(shù),以及TCP校驗和計算功能,由網(wǎng)卡驅(qū)動或網(wǎng)卡硬件完成報文分段和TCP校驗和計算功能,因而TSO技術(shù)需要網(wǎng)絡(luò)設(shè)備驅(qū)動或者網(wǎng)絡(luò)設(shè)備提供報文分段功能,對于網(wǎng)絡(luò)設(shè)備的要求較高,軟硬復雜度高。另外,基于TSO技術(shù)的網(wǎng)絡(luò)分組深度處理需要軟硬件的協(xié)同工作,在軟硬件協(xié)同分組處理流中,軟硬件的通信開銷過大會嚴重影響系統(tǒng)進行分組深度處理的性能。另外一種更為通用的分段技術(shù)GSO(General Segment Offload),該技術(shù)將分段的時機推遲到將數(shù)據(jù)報文提交給網(wǎng)絡(luò)設(shè)備驅(qū)動之前完成,并且支持TCPv4之外的其它協(xié)議類型,如TCPv6、UDP和DCCP等。同樣的,該技術(shù)需要網(wǎng)絡(luò)設(shè)備支持GSO和SG功能。且該技術(shù)在性能上的提升效果較TSO技術(shù)低。SG是一種與非連續(xù)物理地址傳輸?shù)膲KDMA方式相對應(yīng)的DMA方式。它通過一個鏈表描述物理不連續(xù)的內(nèi)存地址,然后把鏈表首地址告訴DMA控制器。DMA 控制器傳輸完一塊物理連續(xù)的數(shù)據(jù)后,不發(fā)中斷,根據(jù)鏈表記錄內(nèi)容傳輸下一塊物理不連續(xù)的數(shù)據(jù),最后再發(fā)起一次中斷。
另外,為了降低分組I/O帶來的軟硬件通信開銷等,已有研究提出了輕量級的分組I/O技術(shù),這種低開銷的分組處理通信機制,通過緩沖區(qū)管理卸載技術(shù)、標化DMA訪存等軟硬件協(xié)同技術(shù),實現(xiàn)分組的零拷貝、無中斷的下發(fā),從而降低分組在軟硬間的通信開銷。然而輕量級的分組I/O技術(shù),所有的報文在發(fā)送給網(wǎng)絡(luò)設(shè)備之前,都要拷貝到硬件管理的固定緩沖區(qū)中,帶來額外的內(nèi)存拷貝代價,影響大報文的發(fā)送性能。
綜上所述,需針對網(wǎng)絡(luò)應(yīng)用中高效的數(shù)據(jù)發(fā)送需求,提供一種支持大塊數(shù)據(jù)高效發(fā)送、分組I/O開銷低、網(wǎng)絡(luò)設(shè)備硬件實現(xiàn)復雜度低的軟硬件協(xié)同的大塊數(shù)據(jù)分段卸載發(fā)送方法,從而配合多核處理器以滿足應(yīng)用需求。
發(fā)明內(nèi)容
為了解決上述技術(shù)問題,本發(fā)明的目的是提供一種軟硬件協(xié)同的、分組I/O開銷低、硬件實現(xiàn)復雜度低的大塊數(shù)據(jù)分段卸載發(fā)送方法。
本發(fā)明所采用的技術(shù)方案是:
一種數(shù)據(jù)分段卸載發(fā)送方法,包括以下步驟:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國人民解放軍國防科學技術(shù)大學,未經(jīng)中國人民解放軍國防科學技術(shù)大學許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710396537.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 發(fā)送方法、發(fā)送系統(tǒng)和發(fā)送器
- 發(fā)送系統(tǒng)、發(fā)送設(shè)備
- 發(fā)送設(shè)備、發(fā)送/接收設(shè)備、發(fā)送方法和發(fā)送/接收方法
- 發(fā)送裝置、發(fā)送方法
- 發(fā)送裝置、發(fā)送方法
- 發(fā)送系統(tǒng)、發(fā)送裝置以及數(shù)據(jù)發(fā)送方法
- 發(fā)送方法、發(fā)送裝置
- 發(fā)送裝置、發(fā)送方法以及記錄介質(zhì)
- 發(fā)送方法、發(fā)送裝置
- 發(fā)送系統(tǒng)、發(fā)送方法及發(fā)送/接收系統(tǒng)





