国产99网站-国产99小视频-国产99页-国产99在线-国产99在线 | 亚洲

010-51626348
解決方案

光潤通網(wǎng)絡(luò)傳輸解決方案

技術(shù)解決方案 行業(yè)解決方案 定制化解決方案

客戶成功案例

查看光潤通網(wǎng)絡(luò)解決方案在各行業(yè)的成功應(yīng)用,了解客戶對(duì)光潤通的評(píng)價(jià)。

了解更多信息>
服務(wù)與支持

服務(wù)宗旨

你的滿意是光潤通畢生的追求,

您的煩惱也是困擾光潤通的煩惱,

請(qǐng)將你的聲音傳達(dá)給我們,

讓我們?yōu)槟憬咝谋M力!

光纖網(wǎng)卡
關(guān)于光潤通

我們的使命

加強(qiáng)產(chǎn)業(yè)核心技術(shù)和前沿技術(shù)研發(fā)并轉(zhuǎn)換成生產(chǎn)力,讓中國自己的民族企業(yè)支撐和指引整個(gè)高端光產(chǎn)業(yè)的健康發(fā)展。

光纖網(wǎng)卡
官方商城
選擇語言
  • 中文簡體 English
  • 首頁 > 新聞資訊 > 技術(shù)解析
  • 服務(wù)器網(wǎng)卡丟包的原因

  • 發(fā)表時(shí)間:2020年04月17日
  • 有時(shí)會(huì)發(fā)生網(wǎng)絡(luò)丟包現(xiàn)象,此處的丟包有兩種,真正意義上的丟包和邏輯丟包(此處以tcp協(xié)議棧丟包為例)。之前falcon-agent也上報(bào)了相應(yīng)的指標(biāo),在此處對(duì)一些疑問給出盡量詳細(xì)的解釋。


    linux系統(tǒng)pakcet接收的過程過程簡單概括為


    1. 網(wǎng)卡收到包以后通過DMA傳至ring buffer 

    2. 網(wǎng)卡觸發(fā)硬件中斷,中斷處理函數(shù)調(diào)用包接受軟中斷(softirq) 

    3. Softirq檢測(cè)各cpu的網(wǎng)卡poll list,并輪詢相應(yīng)網(wǎng)卡的ring buffer 

    4. 包從相應(yīng)packet desciptor 中移到更上一層處理,并把該packet descriptor重置

    5. 真實(shí)的丟包就是說這三個(gè)階段的任一階段收到了包,但因?yàn)槟承┰虬阉鼇G棄了。


    發(fā)生真實(shí)丟包的原因

    當(dāng)ring buffer滿了并且kernel softirq并不能及時(shí)處理后續(xù)的進(jìn)來的包,那就會(huì)導(dǎo)致丟包。可以通過ethtool -G eth1 rx number增大receive buffer的值可以緩解丟包,同理也可以設(shè)置transfer buffer。

    當(dāng)socket backlog滿了導(dǎo)致丟包,可以設(shè)置/proc/sys/net/ipv4/tcp_max_syn_backlog來增加tcp syn隊(duì)列的長度。


    真實(shí)丟包判斷

    可以通過ethtool、ifconfig、netstat命令查看丟包統(tǒng)計(jì),也可以直接查看/proc/net/dev、/sys/class/net/dev_name查看,如ifconfig eth0


    第三行,第四行表示收包和發(fā)包的情況,errors,dropped,overruns,frame不為0即表示發(fā)生了真正的丟包。


    RX errors: 表示總的收包的錯(cuò)誤數(shù)量,這包括 too-long-frames 錯(cuò)誤,Ring Buffer 溢出錯(cuò)誤,crc 校驗(yàn)錯(cuò)誤,幀同步錯(cuò)誤,fifo overruns 以及 missed pkg 等等。


    RX dropped: 表示數(shù)據(jù)包已經(jīng)進(jìn)入了 Ring Buffer,但是由于內(nèi)存不夠等系統(tǒng)原因,導(dǎo)致在拷貝到內(nèi)存的過程中被丟棄。


    RX overruns: 表示了 fifo 的 overruns,這是由于 Ring Buffer(aka Driver Queue) 傳輸?shù)?IO 大于 kernel 能夠處理的 IO 導(dǎo)致的,而 Ring Buffer 則是指在發(fā)起 IRQ 請(qǐng)求之前的那塊 buffer。很明顯,overruns 的增大意味著數(shù)據(jù)包沒到 Ring Buffer 就被網(wǎng)卡物理層給丟棄了,而 CPU 無法即使的處理中斷是造成 Ring Buffer 滿的原因之一,上面那臺(tái)有問題的機(jī)器就是因?yàn)?interruprs 分布的不均勻(都?jí)涸?core0),沒有做 affinity 而造成的丟包


    RX frame: 表示 misaligned 的 frames。


    對(duì)于 TX 的來說,出現(xiàn)上述 counter 增大的原因主要包括 aborted transmission, errors due to carrirer, fifo error, heartbeat erros 以及 windown error,而 collisions 則表示由于 CSMA/CD 造成的傳輸中斷。


    邏輯意義上的丟包

    相信大家多少都了解tcp協(xié)議棧,tcp協(xié)議棧中有超時(shí)重傳算法,此處的邏輯丟包指的是接收方?jīng)]有在發(fā)出ack后收到正確序號(hào)范圍的packet


    邏輯意義上的丟包原因及判斷方法

    原因很可能是發(fā)生了網(wǎng)絡(luò)問題,具體包括如網(wǎng)絡(luò)擁塞、網(wǎng)線松動(dòng)、網(wǎng)絡(luò)不穩(wěn)定及其他線路故障,也有可能是網(wǎng)絡(luò)流量突增,但是我們做監(jiān)控的不能去實(shí)時(shí)的拿著線路檢測(cè)儀去檢查線路,當(dāng)前擬定使用如下指標(biāo),來源/proc/net/netstat:


    TcpExt.TCPLoss,tcp協(xié)議棧丟失數(shù)據(jù)包而進(jìn)行恢復(fù)的次數(shù),此時(shí)falcon-agent所在主機(jī)為接收方

    TcpExt.TCPTimeouts tcp數(shù)據(jù)在指定時(shí)間內(nèi)沒有受到應(yīng)答ack而超時(shí)的次數(shù),此時(shí)falcon-agent所在主機(jī)為發(fā)送方

    TcpExt.TCPLossFailures,tcp協(xié)議棧丟失數(shù)據(jù)包進(jìn)行恢復(fù)失敗的次數(shù)

    TcpExt.TcpFastRetrans,tcp快速重傳的次數(shù)


    分享:
    主站蜘蛛池模板: 亚洲视频在线免费播放| 91亚洲视频在线观看| 不卡的在线视频免费观看| 95视频在线观看免费| 色婷婷综合久久久中文字幕| 黄色在线视频播放| 久久午夜青青草原影院| 一级黄色毛片视频| 乱爱性全过程免费视频| 香港黄色网| 国产综合视频在线| 亚洲综合激情五月色播| 亚洲 欧美 激情 另类 自拍 | 国产一级毛片视频| 国产成人午夜精品5599| 亚洲爱爱爱| 女人被免费网站视频在线| 欧美影视一区二区三区| 精品成人一区二区三区免费视频| 日韩一区二区精品久久高清| 二级特黄绝大片免费视频大片| 成人黄色免费观看| 国产在线观看成人| 91蜜桃传媒一二三区| 欧美日韩视频一区二区| 一级片免费网址| 亚洲大片在线观看| 欧美成人禁片在线观看网址 | 国产成人精品男人免费| 99riav国产| 欧洲免费无线码二区5| 91在线精品亚洲一区二区| 久久91精品国产99久久yfo| 亚洲精品综合网在线8050影院| 国产一区二区在线视频播放| 黄色a免费| 国产精品亚洲第一区广西莫菁| 日韩亚洲欧美综合| 婷婷成人基地| 1024人成网色www| 不卡一区二区在线观看|