精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

深入分析Linux網(wǎng)絡(luò)丟包問題!

jf_TEuU2tls ? 來源:twt企業(yè)IT社區(qū) ? 2023-04-21 09:09 ? 次閱讀

今天浩道跟大家分享日常運(yùn)維工作中,常常遇到的Linux網(wǎng)絡(luò)丟包,該如何排查。

所謂丟包,是指在網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)過程中,由于種種原因,數(shù)據(jù)包還沒傳輸?shù)綉?yīng)用程序中,就被丟棄了。這些被丟棄包的數(shù)量,除以總的傳輸包數(shù),也就是我們常說的丟包率。丟包率是網(wǎng)絡(luò)性能中最核心的指標(biāo)之一。丟包通常會(huì)帶來嚴(yán)重的性能下降,特別是對 TCP 來說,丟包通常意味著網(wǎng)絡(luò)擁塞和重傳,進(jìn)而還會(huì)導(dǎo)致網(wǎng)絡(luò)延遲增大、吞吐降低。

一、 哪里可能丟包

接下來,我就以最常用的反向代理服務(wù)器 Nginx 為例,帶你一起看看如何分析網(wǎng)絡(luò)丟包的問題。執(zhí)行下面的 hping3 命令,進(jìn)一步驗(yàn)證 Nginx 是不是可以正常訪問。這里我沒有使用 ping,是因?yàn)?ping 基于 ICMP 協(xié)議,而 Nginx 使用的是 TCP 協(xié)議。

#-c表示發(fā)送10個(gè)請求,-S表示使用TCPSYN,-p指定端口為80
hping3-c10-S-p80192.168.0.30

HPING192.168.0.30(eth0192.168.0.30):Sset,40headers+0databytes
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=3win=5120rtt=7.5ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=4win=5120rtt=7.4ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=5win=5120rtt=3.3ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=7win=5120rtt=3.0ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=6win=5120rtt=3027.2ms

---192.168.0.30hpingstatistic---
10packetstransmitted,5packetsreceived,50%packetloss
round-tripmin/avg/max=3.0/609.7/3027.2ms

從 hping3 的輸出中,我們可以發(fā)現(xiàn),發(fā)送了 10 個(gè)請求包,卻只收到了 5 個(gè)回復(fù),50%的包都丟了。再觀察每個(gè)請求的 RTT 可以發(fā)現(xiàn),RTT 也有非常大的波動(dòng)變化,小的時(shí)候只有 3ms,而大的時(shí)候則有 3s。根據(jù)這些輸出,我們基本能判斷,已經(jīng)發(fā)生了丟包現(xiàn)象。可以猜測,3s 的 RTT ,很可能是因?yàn)閬G包后重傳導(dǎo)致的。

那到底是哪里發(fā)生了丟包呢?排查之前,我們可以回憶一下 Linux 的網(wǎng)絡(luò)收發(fā)流程,先從理論上分析,哪里有可能會(huì)發(fā)生丟包。你不妨拿出手邊的筆和紙,邊回憶邊在紙上梳理,思考清楚再繼續(xù)下面的內(nèi)容。在這里,為了幫你理解網(wǎng)絡(luò)丟包的原理,我畫了一張圖,你可以保存并打印出來使用

從圖中你可以看出,可能發(fā)生丟包的位置,實(shí)際上貫穿了整個(gè)網(wǎng)絡(luò)協(xié)議棧。換句話說,全程都有丟包的可能。

  • 在兩臺(tái) VM 連接之間,可能會(huì)發(fā)生傳輸失敗的錯(cuò)誤,比如網(wǎng)絡(luò)擁塞、線路錯(cuò)誤等;
  • 在網(wǎng)卡收包后,環(huán)形緩沖區(qū)可能會(huì)因?yàn)橐绯龆鴣G包;
  • 在鏈路層,可能會(huì)因?yàn)榫W(wǎng)絡(luò)幀校驗(yàn)失敗、QoS 等而丟包;
  • 在 IP 層,可能會(huì)因?yàn)槁酚墒?、組包大小超過 MTU 等而丟包;
  • 在傳輸層,可能會(huì)因?yàn)槎丝谖幢O(jiān)聽、資源占用超過內(nèi)核限制等而丟包;
  • 在套接字層,可能會(huì)因?yàn)樘捉幼志彌_區(qū)溢出而丟包;
  • 在應(yīng)用層,可能會(huì)因?yàn)閼?yīng)用程序異常而丟包;
  • 此外,如果配置了 iptables 規(guī)則,這些網(wǎng)絡(luò)包也可能因?yàn)?iptables 過濾規(guī)則而丟包

當(dāng)然,上面這些問題,還有可能同時(shí)發(fā)生在通信的兩臺(tái)機(jī)器中。不過,由于我們沒對 VM2做任何修改,并且 VM2 也只運(yùn)行了一個(gè)最簡單的 hping3 命令,這兒不妨假設(shè)它是沒有問題的。為了簡化整個(gè)排查過程,我們還可以進(jìn)一步假設(shè), VM1 的網(wǎng)絡(luò)和內(nèi)核配置也沒問題。接下來,就可以從協(xié)議棧中,逐層排查丟包問題。

二、 鏈路層

當(dāng)鏈路層由于緩沖區(qū)溢出等原因?qū)е戮W(wǎng)卡丟包時(shí),Linux 會(huì)在網(wǎng)卡收發(fā)數(shù)據(jù)的統(tǒng)計(jì)信息中記錄下收發(fā)錯(cuò)誤的次數(shù)。可以通過 ethtool 或者 netstat ,來查看網(wǎng)卡的丟包記錄。

netstat-i

KernelInterfacetable
IfaceMTURX-OKRX-ERRRX-DRPRX-OVRTX-OKTX-ERRTX-DRPTX-OVRFlg
eth0100310008000BMRU
lo6553600000000LRU

RX-OK、RX-ERR、RX-DRP、RX-OVR ,分別表示接收時(shí)的總包數(shù)、總錯(cuò)誤數(shù)、進(jìn)入 Ring Buffer 后因其他原因(如內(nèi)存不足)導(dǎo)致的丟包數(shù)以及 Ring Buffer 溢出導(dǎo)致的丟包數(shù)。

TX-OK、TX-ERR、TX-DRP、TX-OVR 也代表類似的含義,只不過是指發(fā)送時(shí)對應(yīng)的各個(gè)指標(biāo)。

這里我們沒有發(fā)現(xiàn)任何錯(cuò)誤,說明虛擬網(wǎng)卡沒有丟包。不過要注意,如果用 tc 等工具配置了 QoS,那么 tc 規(guī)則導(dǎo)致的丟包,就不會(huì)包含在網(wǎng)卡的統(tǒng)計(jì)信息中。所以接下來,我們還要檢查一下 eth0 上是否配置了 tc 規(guī)則,并查看有沒有丟包。添加 -s 選項(xiàng),以輸出統(tǒng)計(jì)信息:

tc-sqdiscshowdeveth0

qdiscnetem800d:rootrefcnt2limit1000loss30%
Sent432bytes8pkt(dropped4,overlimits0requeues0)
backlog0b0prequeues0

可以看到, eth0 上配置了一個(gè)網(wǎng)絡(luò)模擬排隊(duì)規(guī)則(qdisc netem),并且配置了丟包率為 30%(loss 30%)。再看后面的統(tǒng)計(jì)信息,發(fā)送了 8 個(gè)包,但是丟了 4個(gè)。看來應(yīng)該就是這里導(dǎo)致 Nginx 回復(fù)的響應(yīng)包被 netem 模塊給丟了。

既然發(fā)現(xiàn)了問題,解決方法也很簡單,直接刪掉 netem 模塊就可以了。執(zhí)行下面的命令,刪除 tc 中的 netem 模塊:

tcqdiscdeldeveth0rootnetemloss30%

刪除后,重新執(zhí)行之前的 hping3 命令,看看現(xiàn)在還有沒有問題:

hping3-c10-S-p80192.168.0.30

HPING192.168.0.30(eth0192.168.0.30):Sset,40headers+0databytes
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=0win=5120rtt=7.9ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=2win=5120rtt=1003.8ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=5win=5120rtt=7.6ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=6win=5120rtt=7.4ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=9win=5120rtt=3.0ms

---192.168.0.30hpingstatistic---
10packetstransmitted,5packetsreceived,50%packetloss
round-tripmin/avg/max=3.0/205.9/1003.8ms

不幸的是,從 hping3 的輸出中可以看到還是 50% 的丟包,RTT 的波動(dòng)也仍舊很大,從 3ms 到 1s。顯然,問題還是沒解決,丟包還在繼續(xù)發(fā)生。不過,既然鏈路層已經(jīng)排查完了,我們就繼續(xù)向上層分析,看看網(wǎng)絡(luò)層和傳輸層有沒有問題。

三、 網(wǎng)絡(luò)層和傳輸層

在網(wǎng)絡(luò)層和傳輸層中,引發(fā)丟包的因素非常多。不過,其實(shí)想確認(rèn)是否丟包,是非常簡單的事,因?yàn)?Linux 已經(jīng)為我們提供了各個(gè)協(xié)議的收發(fā)匯總情況。執(zhí)行 netstat -s 命令,可以看到協(xié)議的收發(fā)匯總,以及錯(cuò)誤信息:

netstat-s
#輸出
Ip:
Forwarding:1//開啟轉(zhuǎn)發(fā)
31totalpacketsreceived//總收包數(shù)
0forwarded//轉(zhuǎn)發(fā)包數(shù)
0incomingpacketsdiscarded//接收丟包數(shù)
25incomingpacketsdelivered//接收的數(shù)據(jù)包數(shù)
15requestssentout//發(fā)出的數(shù)據(jù)包數(shù)
Icmp:
0ICMPmessagesreceived//收到的ICMP包數(shù)
0inputICMPmessagefailed//收到ICMP失敗數(shù)
ICMPinputhistogram:
0ICMPmessagessent//ICMP發(fā)送數(shù)
0ICMPmessagesfailed//ICMP失敗數(shù)
ICMPoutputhistogram:
Tcp:
0activeconnectionopenings//主動(dòng)連接數(shù)
0passiveconnectionopenings//被動(dòng)連接數(shù)
11failedconnectionattempts//失敗連接嘗試數(shù)
0connectionresetsreceived//接收的連接重置數(shù)
0connectionsestablished//建立連接數(shù)
25segmentsreceived//已接收報(bào)文數(shù)
21segmentssentout//已發(fā)送報(bào)文數(shù)
4segmentsretransmitted//重傳報(bào)文數(shù)
0badsegmentsreceived//錯(cuò)誤報(bào)文數(shù)
0resetssent//發(fā)出的連接重置數(shù)
Udp:
0packetsreceived
...
TcpExt:
11resetsreceivedforembryonicSYN_RECVsockets//半連接重置數(shù)
0packetheaderspredicted
TCPTimeouts:7//超時(shí)數(shù)
TCPSynRetrans:4//SYN重傳數(shù)
...

etstat 匯總了 IP、ICMP、TCP、UDP 等各種協(xié)議的收發(fā)統(tǒng)計(jì)信息。不過,我們的目的是排查丟包問題,所以這里主要觀察的是錯(cuò)誤數(shù)、丟包數(shù)以及重傳數(shù)??梢钥吹?,只有 TCP 協(xié)議發(fā)生了丟包和重傳,分別是:

  • 11 次連接失敗重試(11 failed connection attempts)
  • 4 次重傳(4 segments retransmitted)
  • 11 次半連接重置(11 resets received for embryonic SYN_RECV sockets)
  • 4 次 SYN 重傳(TCPSynRetrans)
  • 7 次超時(shí)(TCPTimeouts)

這個(gè)結(jié)果告訴我們,TCP 協(xié)議有多次超時(shí)和失敗重試,并且主要錯(cuò)誤是半連接重置。換句話說,主要的失敗,都是三次握手失敗。不過,雖然在這兒看到了這么多失敗,但具體失敗的根源還是無法確定。所以,我們還需要繼續(xù)順著協(xié)議棧來分析。接下來的幾層又該如何分析呢?

四、 iptables

首先,除了網(wǎng)絡(luò)層和傳輸層的各種協(xié)議,iptables 和內(nèi)核的連接跟蹤機(jī)制也可能會(huì)導(dǎo)致丟包。所以,這也是發(fā)生丟包問題時(shí)我們必須要排查的一個(gè)因素。

先來看看連接跟蹤,要確認(rèn)是不是連接跟蹤導(dǎo)致的問題,只需要對比當(dāng)前的連接跟蹤數(shù)和最大連接跟蹤數(shù)即可。

#主機(jī)終端中查詢內(nèi)核配置
$sysctlnet.netfilter.nf_conntrack_max
net.netfilter.nf_conntrack_max=262144
$sysctlnet.netfilter.nf_conntrack_count
net.netfilter.nf_conntrack_count=182

可以看到,連接跟蹤數(shù)只有 182,而最大連接跟蹤數(shù)則是 262144。顯然,這里的丟包,不可能是連接跟蹤導(dǎo)致的。

接著,再來看 iptables。回顧一下 iptables 的原理,它基于 Netfilter 框架,通過一系列的規(guī)則,對網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行過濾(如防火墻)和修改(如 NAT)。這些 iptables 規(guī)則,統(tǒng)一管理在一系列的表中,包括 filter、nat、mangle(用于修改分組數(shù)據(jù)) 和 raw(用于原始數(shù)據(jù)包)等。而每張表又可以包括一系列的鏈,用于對 iptables 規(guī)則進(jìn)行分組管理。

對于丟包問題來說,最大的可能就是被 filter 表中的規(guī)則給丟棄了。要弄清楚這一點(diǎn),就需要我們確認(rèn),那些目標(biāo)為 DROP 和 REJECT 等會(huì)棄包的規(guī)則,有沒有被執(zhí)行到。可以直接查詢 DROP 和 REJECT 等規(guī)則的統(tǒng)計(jì)信息,看看是否為0。如果不是 0 ,再把相關(guān)的規(guī)則拎出來進(jìn)行分析。

iptables-tfilter-nvL
#輸出
ChainINPUT(policyACCEPT25packets,1000bytes)
pktsbytestargetprotoptinoutsourcedestination
6240DROPall--**0.0.0.0/00.0.0.0/0statisticmoderandomprobability0.29999999981

ChainFORWARD(policyACCEPT0packets,0bytes)
pktsbytestargetprotoptinoutsourcedestination

ChainOUTPUT(policyACCEPT15packets,660bytes)
pktsbytestargetprotoptinoutsourcedestination
6264DROPall--**0.0.0.0/00.0.0.0/0statisticmoderandomprobability0.29999999981

從 iptables 的輸出中,你可以看到,兩條 DROP 規(guī)則的統(tǒng)計(jì)數(shù)值不是 0,它們分別在INPUT 和 OUTPUT 鏈中。這兩條規(guī)則實(shí)際上是一樣的,指的是使用 statistic 模塊,進(jìn)行隨機(jī) 30% 的丟包。0.0.0.0/0 表示匹配所有的源 IP 和目的 IP,也就是會(huì)對所有包都進(jìn)行隨機(jī) 30% 的丟包??雌饋?,這應(yīng)該就是導(dǎo)致部分丟包的“罪魁禍?zhǔn)住绷恕?/span>

執(zhí)行下面的兩條 iptables 命令,刪除這兩條 DROP 規(guī)則。

root@nginx:/#iptables-tfilter-DINPUT-mstatistic--moderandom--probability0.30-jDROP
root@nginx:/#iptables-tfilter-DOUTPUT-mstatistic--moderandom--probability0.30-jDROP

再次執(zhí)行剛才的 hping3 命令,看看現(xiàn)在是否正常

hping3-c10-S-p80192.168.0.30
#輸出
HPING192.168.0.30(eth0192.168.0.30):Sset,40headers+0databytes
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=0win=5120rtt=11.9ms
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=1win=5120rtt=7.8ms
...
len=44ip=192.168.0.30ttl=63DFid=0sport=80flags=SAseq=9win=5120rtt=15.0ms

---192.168.0.30hpingstatistic---
10packetstransmitted,10packetsreceived,0%packetloss
round-tripmin/avg/max=3.3/7.9/15.0ms

這次輸出你可以看到,現(xiàn)在已經(jīng)沒有丟包了,并且延遲的波動(dòng)變化也很小。看來,丟包問題應(yīng)該已經(jīng)解決了。

不過,到目前為止,我們一直使用的 hping3 工具,只能驗(yàn)證案例 Nginx 的 80 端口處于正常監(jiān)聽狀態(tài),卻還沒有訪問 Nginx 的 HTTP 服務(wù)。所以,不要匆忙下結(jié)論結(jié)束這次優(yōu)化,我們還需要進(jìn)一步確認(rèn),Nginx 能不能正常響應(yīng) HTTP 請求。我們繼續(xù)在終端二中,執(zhí)行如下的 curl 命令,檢查 Nginx 對 HTTP 請求的響應(yīng):

$curl--max-time3http://192.168.0.30
curl:(28)Operationtimedoutafter3000millisecondswith0bytesreceived

奇怪,hping3 的結(jié)果顯示Nginx 的 80 端口是正常狀態(tài),為什么還是不能正常響應(yīng) HTTP 請求呢?別忘了,我們還有個(gè)大殺器——抓包操作。看來有必要抓包看看了。

五、 tcpdump

執(zhí)行下面的 tcpdump 命令,抓取 80 端口的包

tcpdump-ieth0-nnport80
#輸出
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningoneth0,link-typeEN10MB(Ethernet),capturesize262144bytes

然后,切換到終端二中,再次執(zhí)行前面的 curl 命令:

curl--max-time3http://192.168.0.30
curl:(28)Operationtimedoutafter3000millisecondswith0bytesreceived

等到 curl 命令結(jié)束后,再次切換回終端一,查看 tcpdump 的輸出:

1400.589235IP10.255.255.5.39058>172.17.0.2.80:Flags[S],seq332257715,win29200,options[mss1418,sackOK,TSval486800541ecr0,nop,wscale7],length0
1400.589277IP172.17.0.2.80>10.255.255.5.39058:Flags[S.],seq1630206251,ack332257716,win4880,options[mss256,sackOK,TSval2509376001ecr486800541,nop,wscale7],length0
1400.589894IP10.255.255.5.39058>172.17.0.2.80:Flags[.],ack1,win229,options[nop,nop,TSval486800541ecr2509376001],length0
1403.589352IP10.255.255.5.39058>172.17.0.2.80:Flags[F.],seq76,ack1,win229,options[nop,nop,TSval486803541ecr2509376001],length0
1403.589417IP172.17.0.2.80>10.255.255.5.39058:Flags[.],ack1,win40,options[nop,nop,TSval2509379001ecr486800541,nop,nop,sack1{76:77}],length0

從 tcpdump 的輸出中,我們就可以看到:

  • 前三個(gè)包是正常的 TCP 三次握手,這沒問題;
  • 但第四個(gè)包卻是在 3 秒以后了,并且還是客戶端(VM2)發(fā)送過來的 FIN 包,說明客戶端的連接關(guān)閉了

根據(jù) curl 設(shè)置的 3 秒超時(shí)選項(xiàng),你應(yīng)該能猜到,這是因?yàn)?curl 命令超時(shí)后退出了。用 Wireshark 的 Flow Graph 來表示,

你可以更清楚地看到上面這個(gè)問題:

c9fd0fe2-dfd6-11ed-bfe3-dac502259ad0.jpg

這里比較奇怪的是,我們并沒有抓取到 curl 發(fā)來的 HTTP GET 請求。那究竟是網(wǎng)卡丟包了,還是客戶端就沒發(fā)過來呢?

可以重新執(zhí)行 netstat -i 命令,確認(rèn)一下網(wǎng)卡有沒有丟包問題:

netstat-i

KernelInterfacetable
IfaceMTURX-OKRX-ERRRX-DRPRX-OVRTX-OKTX-ERRTX-DRPTX-OVRFlg
eth01001570344094000BMRU
lo6553600000000LRU

從 netstat 的輸出中,你可以看到,接收丟包數(shù)(RX-DRP)是 344,果然是在網(wǎng)卡接收時(shí)丟包了。不過問題也來了,為什么剛才用 hping3 時(shí)不丟包,現(xiàn)在換成 GET 就收不到了呢?還是那句話,遇到搞不懂的現(xiàn)象,不妨先去查查工具和方法的原理。我們可以對比一下這兩個(gè)工具:

  • hping3 實(shí)際上只發(fā)送了 SYN 包;
  • curl 在發(fā)送 SYN 包后,還會(huì)發(fā)送 HTTP GET 請求。HTTP GET本質(zhì)上也是一個(gè) TCP 包,但跟 SYN 包相比,它還攜帶了 HTTP GET 的數(shù)據(jù)。

通過這個(gè)對比,你應(yīng)該想到了,這可能是 MTU 配置錯(cuò)誤導(dǎo)致的。為什么呢?

其實(shí),仔細(xì)觀察上面 netstat 的輸出界面,第二列正是每個(gè)網(wǎng)卡的 MTU 值。eth0 的 MTU只有 100,而以太網(wǎng)的 MTU 默認(rèn)值是 1500,這個(gè) 100 就顯得太小了。當(dāng)然,MTU 問題是很好解決的,把它改成 1500 就可以了。

ifconfigeth0mtu1500

修改完成后,再切換到終端二中,再次執(zhí)行 curl 命令,確認(rèn)問題是否真的解決了:

curl--max-time3http://192.168.0.30/
#輸出


...

Thankyouforusingnginx.

非常不容易呀,這次終于看到了熟悉的 Nginx 響應(yīng),說明丟包的問題終于徹底解決了。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11225

    瀏覽量

    208918
  • 網(wǎng)絡(luò)協(xié)議

    關(guān)注

    3

    文章

    265

    瀏覽量

    21515
  • 網(wǎng)絡(luò)層
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    10290

原文標(biāo)題:【肝貨實(shí)踐】深入分析 Linux 網(wǎng)絡(luò)丟包問題!

文章出處:【微信號:浩道linux,微信公眾號:浩道linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    深入分析運(yùn)放的作用

    深入分析了4-20mA的運(yùn)放選型、A/D基準(zhǔn)電壓對測量精度影響等問題。
    的頭像 發(fā)表于 01-15 13:47 ?3526次閱讀
    <b class='flag-5'>深入分析</b>運(yùn)放的作用

    uCOS任務(wù)堆棧的深入分析(轉(zhuǎn))

    uCOS任務(wù)堆棧的深入分析(轉(zhuǎn))
    發(fā)表于 08-24 23:30

    網(wǎng)絡(luò)常見故障分析及處理方式

    又全部丟失,率超過50%,曲線成規(guī)則狀,網(wǎng)絡(luò)服務(wù)基本不可用?! 」收?b class='flag-5'>分析:  在局域網(wǎng)中
    發(fā)表于 12-01 16:04

    深入分析Windows和Linux動(dòng)態(tài)庫應(yīng)用異同

    深入分析Windows和Linux動(dòng)態(tài)庫應(yīng)用異同 摘要:動(dòng)態(tài)鏈接庫技術(shù)實(shí)現(xiàn)和設(shè)計(jì)程序常用的技術(shù),在Windows和Linux系統(tǒng)中都有動(dòng)態(tài)庫的概念,采用動(dòng)
    發(fā)表于 10-22 11:36 ?1290次閱讀

    網(wǎng)絡(luò)數(shù)據(jù)的原因及攝像機(jī)的原因

    不少人在使用網(wǎng)絡(luò)和監(jiān)控?cái)z像系統(tǒng)的時(shí)候都有遇到過數(shù)據(jù)的情況,數(shù)據(jù)的原因是多種多樣的,以下就為大家介紹一下
    的頭像 發(fā)表于 01-11 09:27 ?1.3w次閱讀

    Linux應(yīng)用的延時(shí)和模擬

    合適之類,很多地方可以用到?! ∥覀冏龅膽?yīng)用軟件,還有測試 TCP/UDP? 對比,測試 BDP 對 TCP/IP 的影響時(shí),我們都需要一些網(wǎng)絡(luò)中的延時(shí)和模擬,很多商業(yè)的軟件可以做這個(gè)事,其實(shí)完美
    發(fā)表于 04-02 14:38 ?469次閱讀

    網(wǎng)絡(luò)怎么辦,常見故障分析及處理方式

    關(guān)于監(jiān)控出現(xiàn)網(wǎng)絡(luò)比較卡、監(jiān)控有幾路畫面不顯示、網(wǎng)絡(luò)時(shí)正常,時(shí)不正常等問題的解決方法,其中這些故障在很多情況下是跟網(wǎng)絡(luò)有關(guān),今天我們來看下
    的頭像 發(fā)表于 03-21 11:28 ?1.9w次閱讀

    (轉(zhuǎn))深入分析STM32單片機(jī)的RAM和FLASH

    (轉(zhuǎn))深入分析STM32單片機(jī)的RAM和FLASH
    發(fā)表于 12-02 11:51 ?11次下載
    (轉(zhuǎn))<b class='flag-5'>深入分析</b>STM32單片機(jī)的RAM和FLASH

    網(wǎng)絡(luò)時(shí)常用的排錯(cuò)思路

    今天浩道跟大家分享硬核網(wǎng)絡(luò)故障排錯(cuò)干貨,主要針對網(wǎng)絡(luò)時(shí)常用的排錯(cuò)思路。讓你遇到網(wǎng)絡(luò)
    的頭像 發(fā)表于 10-24 09:20 ?1616次閱讀

    Linux優(yōu)化實(shí)戰(zhàn):如何分析網(wǎng)絡(luò)的問題

    所謂,是指在網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)過程中,由于種種原因,數(shù)據(jù)還沒傳輸?shù)綉?yīng)用程序中,就被丟棄了。
    發(fā)表于 01-13 13:57 ?935次閱讀

    深入分析Linux網(wǎng)絡(luò)問題

    所謂,是指在網(wǎng)絡(luò)數(shù)據(jù)的收發(fā)過程中,由于種種原因,數(shù)據(jù)還沒傳輸?shù)綉?yīng)用程序中,就被丟棄了。這些被丟棄的數(shù)量,除以總的傳輸
    的頭像 發(fā)表于 05-04 15:08 ?1366次閱讀
    <b class='flag-5'>深入分析</b><b class='flag-5'>Linux</b><b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>丟</b><b class='flag-5'>包</b>問題

    Linux下模擬網(wǎng)絡(luò)時(shí)延和神器介紹

    今天浩道跟大家分享推薦一款Linux用于模擬網(wǎng)絡(luò)時(shí)延和神器!有這些業(yè)務(wù)運(yùn)維或測試場景的小伙伴,可以用起來了!
    發(fā)表于 07-02 14:07 ?1644次閱讀
    <b class='flag-5'>Linux</b>下模擬<b class='flag-5'>網(wǎng)絡(luò)</b>時(shí)延和<b class='flag-5'>丟</b><b class='flag-5'>包</b>神器介紹

    網(wǎng)絡(luò)故障如何定位

    引言 本期分享一個(gè)比較常見的網(wǎng)絡(luò)問題--。例如我們?nèi)ing一個(gè)網(wǎng)站,如果能ping通,且網(wǎng)站返回信息全面,則說明與網(wǎng)站服務(wù)器的通信是暢通的,如果ping不通,或者網(wǎng)站返回的信息不全等,則很可能
    的頭像 發(fā)表于 11-10 11:27 ?1223次閱讀
    <b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>丟</b><b class='flag-5'>包</b>故障如何定位

    網(wǎng)絡(luò)問題分析

    通常會(huì)帶來嚴(yán)重的性能下降,特別是對 TCP 來說,通常意味著網(wǎng)絡(luò)擁塞和重傳,進(jìn)而還會(huì)導(dǎo)致網(wǎng)絡(luò)延遲增大、吞吐降低。 一、 哪里可能
    的頭像 發(fā)表于 11-13 11:24 ?950次閱讀
    <b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>丟</b><b class='flag-5'>包</b>問題<b class='flag-5'>分析</b>

    網(wǎng)絡(luò)率正常范圍及其影響因素

    網(wǎng)絡(luò)率正常范圍及其影響因素 網(wǎng)絡(luò)率是評估網(wǎng)絡(luò)
    的頭像 發(fā)表于 12-29 14:45 ?5671次閱讀