999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種高速可靠UDP網絡傳輸的優化實現

2021-01-12 09:56:38
數字通信世界 2021年7期
關鍵詞:系統

宋 克

(中國船舶集團公司第七一五研究所,浙江 杭州 310000)

1 概述

在數據采集與傳輸系統中,數據發送端將傳感器通過高采樣率采集而來的數據包經10Gb/s的網絡鏈路分發到各處理系統,各處理系統基于通用CPU完成包括原始數據接收、校驗、聚類、編隊在內的初步處理流程。UDP被稱為用戶數據報傳輸協議,是一種無需建立連接便可發送數據包的方式,在阻塞、連接和尋址方面相對于傳輸控制協議(TCP)來講,更適合于本系統。雖然UDP報文存在傳輸過程中數據包可能丟失的問題,但在簡單網絡拓撲結構中,我們可以通過優化實現基于UDP的可靠高速網絡數據通信。在系統構建過程中,我們使用標準Linux系統,將傳感器高采樣率采集而來的數據包通過發送端經傳輸鏈路發送到各接收端,針對傳輸鏈路中出現丟包現象的問題,本文提出了優化發送端和接收端之間數據傳輸的方法,從而實現了高速可靠的UDP網絡傳輸鏈路。

2 UDP和TCP

TCP和UDP均旨在提供網絡連接設備之間的端到端通信,根據系統構建需求,我們針對以下幾個方面對TCP和UDP進行了比較:在擁塞方面,任何網絡傳輸鏈路,都有可能存在擁塞的可能,并且在無法處理時可能會丟棄數據包。TCP檢測到擁塞時,將降低其傳輸速率,但是在本系統中,發送端通常會以一個比較高的速率進行數據發送,如果使用TCP協議,接收端的擁塞將會導致發送端降低數據的發送速率,這首先會導致數據在發動端應用程序的發送緩沖區進行累計直到緩沖區滿并且導致最后數據包的丟失。在連接方面,TCP是面向連接的,而UDP是無連接的,這就意味著TCP要求必須先建立連接,然后才能傳輸數據。相反,使用UDP進行數據傳輸不需要考慮連接狀態,接收程序只要準備好就將在指定的UDP端口上進行監聽,并在接收數據到達時進行接收。在尋址方面,UDP數據可以通過IP廣播或IP多播進行傳輸,這就意味著一個發送程序可以將數據傳輸給多個接收程序而無需其他的編程工作,而TCP要實現同樣的功能這將需要處理多個連接,將增加復雜性。所以我們首選使用UDP進行數據傳輸,前提是我們能夠實現高速傳輸的可靠性。

3 優化

3.1 較大包長度

到達接收端的數據包必須遵循幾乎恒定的處理流程,這是由中斷處理、數據校驗、聚類、編隊等操作造成。接收端處理數據包的數量不斷上升時,數據包處理將消耗掉絕大多數的CPU資源,CPU瓶頸問題將導致數據包的丟失。在當前可利用資源下,為了獲得最佳的性能,數據包應盡可能使用巨型幀,使用較大的以太網幀將明顯降低CPU額外開銷。

系統中的數據對于接收端并非都是有意義的,以太網、IP、UDP報文頭始終存在并占用網絡帶寬資源,當通過UDP傳輸18字節用戶數據時,將占用網絡帶寬上的84字節(20字節幀間距、64字節以太幀),額外開銷占用比超過78%,當發送8972字節用戶數據時,將占用網絡上的9038字節(20字節幀間距、9018字節以太幀),額外開銷占用比僅為0.73%。在系統中使用更大的網絡數據包將明顯降低網絡帶寬資源的額外開銷。

3.2 網絡緩沖區和隊列長隊

一個UDP數據包可能在數據傳輸鏈路中的任一過程中被丟棄掉:發送方,接收方,或者中間系統。但是對于簡單的網絡拓撲結構來說,數據包丟失主要是由以太網接口卡(NIC)傳輸隊列和套接字接收緩沖區引起的,通常這兩個參數都是可以通過人工設置進行優化的。Linux系統控制套接字緩沖區的主要參數是rmem_max和wmem_max,前者是UDP套接字接收緩沖區的大小,而后者是UDP套接字發送緩沖區的大小,修改系統核心參數外,我們也要在應用程序中設置發送和接收緩沖區,我們使用 int setsockopt(int sockfd, int level,int optname,const void *optval, socklen_t optlen) 函 數來進行控制。此外,對系統層級netdev_max_backlog和txqueuelen參數進行了修改。以太網適配器的MTU為9000,允許發送有效包長度在8972字節的報文。

3.3 核心鎖定

現代CPU嚴重依賴高速緩存來實現性能,這些緩存中有些是指令和數據之間共享,有些是專用的。為了確保發送和接收應用程序始終使用相同的緩存,我們將“鎖定”應用程序到特定的核心。為此,我們使用Linux命令taskset()。這樣可以防止應用程序進程遷移至其他內核,從而導致中斷在數據處理中,但這不能夠阻止其他進程交換到這一核心上。

4 過程與結論

試驗中,發送端和接收端使用短單模光纖通過10Gb/s的以太交換機進行連接,發送端保持硬件資源允許范圍內的最大數據包發送速率進行400GB數據的UDP傳輸試驗。在試驗測試中,數據發送端和接接收端均修改以太網卡的最大傳輸單元(MTU),允許傳輸UDP巨型幀;發送端和接收端應用程序都使用setsocketopt()來調整發送和接收緩沖區大小;數據發送端應用程序將數據包序列號包含到UDP數據報文中,從而允許接收端檢測數據包丟失計算丟包率;發送端和接收端均使用taskset()函數將應用程序鎖定到特定的CPU核心上。

經過試驗測試,最終的結果涵蓋了用戶數據速率、數據包錯誤率和CPU負載等測量結果,我們得到以下結論:數據速率方面:當使用較小數據包時,因發送端CPU負荷瓶頸問題,數據包率有限,實際數據帶寬小于10Gb/s的理論帶寬,隨著使用較大的數據包,數據帶寬逐漸接近于理論帶寬并達到帶寬上限。數據包錯誤率及CPU負載方面:當使用系統默認發送和接收緩沖區時,數據包的錯誤率較高,當調整發送和接收緩沖區大小后,數據包的錯誤率得到明顯降低;使用較小數據包時,接收端處理數據包的數量不斷上升,足夠多的數據包處理將消耗掉絕大多數的CPU資源,CPU瓶頸問題將導致數據包的丟失,隨著使用較大的數據包時,接收端CPU負載降低,數據包錯誤率下降。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 911亚洲精品| 国产一级在线播放| 99成人在线观看| 国产96在线 | 四虎影视8848永久精品| 秋霞午夜国产精品成人片| 制服丝袜在线视频香蕉| 青青草国产一区二区三区| 婷婷综合亚洲| 亚洲成人黄色网址| 国产色婷婷| 免费黄色国产视频| 99视频在线免费| 全午夜免费一级毛片| 亚洲精品无码AⅤ片青青在线观看| 一级高清毛片免费a级高清毛片| 亚洲国产在一区二区三区| www.99在线观看| 亚洲第一在线播放| 亚洲精品国产首次亮相| 天天综合网在线| 亚洲AⅤ无码日韩AV无码网站| AⅤ色综合久久天堂AV色综合| 久久综合亚洲鲁鲁九月天| 狠狠色丁香婷婷| 国产欧美精品午夜在线播放| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产精品极品美女自在线| 国产精品久久久久婷婷五月| 在线观看无码a∨| 白丝美女办公室高潮喷水视频| 拍国产真实乱人偷精品| 尤物视频一区| 中文字幕第4页| 亚洲国产精品成人久久综合影院| 一级毛片免费观看不卡视频| 亚洲第一香蕉视频| 国产综合欧美| 亚洲五月激情网| 中文毛片无遮挡播放免费| 国产福利微拍精品一区二区| 精品午夜国产福利观看| 免费在线观看av| 免费看美女自慰的网站| 国产成人精品男人的天堂下载| 欧美午夜性视频| 高清视频一区| 97青草最新免费精品视频| 亚洲美女AV免费一区| 91色在线视频| 国产一区二区三区在线观看免费| 国产91在线|中文| 欧美国产综合色视频| 国产精品深爱在线| 国产日韩丝袜一二三区| 亚洲天堂日韩av电影| 国产成熟女人性满足视频| 亚卅精品无码久久毛片乌克兰| 国产丝袜丝视频在线观看| 成人午夜亚洲影视在线观看| 国产欧美在线观看精品一区污| 国产人人射| 福利国产微拍广场一区视频在线| 小蝌蚪亚洲精品国产| 香蕉久人久人青草青草| 婷婷综合在线观看丁香| 欧美一级夜夜爽| a亚洲视频| 亚洲中文在线视频| 韩国自拍偷自拍亚洲精品| 日韩一级毛一欧美一国产| 久久精品视频一| 中国一级毛片免费观看| 日本成人一区| 久久精品这里只有精99品| 97se亚洲综合不卡| 特级精品毛片免费观看| 色135综合网| 在线观看91精品国产剧情免费| 热re99久久精品国99热| 国产精品久久久久久久久kt| 毛片三级在线观看|