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在多段調速系統中的應用
主站蜘蛛池模板: 亚洲国产综合自在线另类| 国产精选小视频在线观看| 伊人久久久久久久| 久久一本精品久久久ー99| 手机在线免费不卡一区二| 野花国产精品入口| 99热这里只有精品免费| 久久人人妻人人爽人人卡片av| 精品少妇人妻一区二区| 亚洲高清在线天堂精品| 久久国产精品嫖妓| 青青草国产一区二区三区| 综合亚洲色图| 国产精品自拍露脸视频| 一级一级特黄女人精品毛片| 欧美精品亚洲日韩a| 人妻丰满熟妇AV无码区| 日韩欧美国产另类| 亚洲国产成人精品无码区性色| 久久毛片免费基地| 国产欧美日韩综合一区在线播放| 伊人91在线| 午夜高清国产拍精品| 天天干伊人| 香蕉视频在线精品| 扒开粉嫩的小缝隙喷白浆视频| 亚洲首页国产精品丝袜| 日本人妻一区二区三区不卡影院| 激情亚洲天堂| 国产69精品久久久久妇女| 亚洲经典在线中文字幕| 国产综合精品一区二区| 青青网在线国产| 亚洲日韩精品综合在线一区二区| 免费看a毛片| 好紧太爽了视频免费无码| 亚洲精品无码人妻无码| 久草网视频在线| аⅴ资源中文在线天堂| 国内黄色精品| 毛片视频网址| 奇米影视狠狠精品7777| 久久精品aⅴ无码中文字幕| 日韩av在线直播| 无码AV日韩一二三区| 成人av手机在线观看| 色噜噜中文网| 国产人人干| a色毛片免费视频| 波多野结衣视频一区二区 | 国产人免费人成免费视频| 小13箩利洗澡无码视频免费网站| 日本高清视频在线www色| 亚洲视频影院| 国产麻豆精品在线观看| 久久9966精品国产免费| 欧美亚洲国产视频| 日韩区欧美区| 亚洲码一区二区三区| 天堂亚洲网| 中文字幕乱妇无码AV在线| 久久黄色免费电影| h网址在线观看| 亚洲乱亚洲乱妇24p| 国产又爽又黄无遮挡免费观看| 最新国产午夜精品视频成人| 天天综合天天综合| 国产欧美在线| 在线看免费无码av天堂的| 亚洲成年人网| 一区二区影院| 欧美日韩另类在线| 一区二区影院| 日韩精品毛片| 国产精品区视频中文字幕| 国产九九精品视频| 永久免费无码成人网站| 久久夜色撩人精品国产| 亚洲精品波多野结衣| 国产精品福利一区二区久久| 在线日本国产成人免费的| 一级片免费网站|