国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

一文掌握 Linux 性能分析之網(wǎng)絡(luò)篇(續(xù))

zero / 1640人閱讀

摘要:這是性能分析系列的第五篇,前四篇在這里一文掌握性能分析之篇一文掌握性能分析之內(nèi)存篇一文掌握性能分析之篇一文掌握性能分析之網(wǎng)絡(luò)篇在上篇網(wǎng)絡(luò)篇中,我們已經(jīng)介紹了幾個(gè)網(wǎng)絡(luò)方向的性能分析工具,本文再補(bǔ)充幾個(gè)。

本文首發(fā)于我的公眾號(hào) CloudDeveloper(ID: cloud_dev),專注于干貨分享,號(hào)內(nèi)有大量書(shū)籍和視頻資源,后臺(tái)回復(fù)「1024」即可領(lǐng)取,歡迎大家關(guān)注,二維碼文末可以掃。

這是 Linux 性能分析系列的第五篇,前四篇在這里:

一文掌握 Linux 性能分析之 CPU 篇

一文掌握 Linux 性能分析之內(nèi)存篇

一文掌握 Linux 性能分析之 IO 篇

一文掌握 Linux 性能分析之網(wǎng)絡(luò)篇

在上篇網(wǎng)絡(luò)篇中,我們已經(jīng)介紹了幾個(gè) Linux 網(wǎng)絡(luò)方向的性能分析工具,本文再補(bǔ)充幾個(gè)。總結(jié)下來(lái),余下的工具包括但不限于以下幾個(gè):

sar:統(tǒng)計(jì)信息歷史

traceroute:測(cè)試網(wǎng)絡(luò)路由

dtrace:TCP/IP 棧跟蹤

iperf / netperf / netserver:網(wǎng)絡(luò)性能測(cè)試工具

perf 性能分析神器

由于篇幅有限,本文會(huì)先介紹前面兩個(gè),其他工具留作后面介紹,大家可以持續(xù)關(guān)注。

sar

sar 是一個(gè)系統(tǒng)歷史數(shù)據(jù)統(tǒng)計(jì)工具。統(tǒng)計(jì)的信息非常全,包括 CPU、內(nèi)存、磁盤(pán) I/O、網(wǎng)絡(luò)、進(jìn)程、系統(tǒng)調(diào)用等等信息,是一個(gè)集大成的工具,非常強(qiáng)大。在 Linux 系統(tǒng)上 sar --help 一下,可以看到它的完整用法。

-A:所有報(bào)告的總和

-u:輸出 CPU 使用情況的統(tǒng)計(jì)信息

-v:輸出 inode、文件和其他內(nèi)核表的統(tǒng)計(jì)信息

-d:輸出每一個(gè)塊設(shè)備的活動(dòng)信息

-r:輸出內(nèi)存和交換空間的統(tǒng)計(jì)信息

-b:顯示 I/O和傳送速率的統(tǒng)計(jì)信息

-a:文件讀寫(xiě)情況

-c:輸出進(jìn)程統(tǒng)計(jì)信息,每秒創(chuàng)建的進(jìn)程數(shù)

-R:輸出內(nèi)存頁(yè)面的統(tǒng)計(jì)信息

-y:終端設(shè)備活動(dòng)情況

-w:輸出系統(tǒng)交換活動(dòng)信息

-n:輸出網(wǎng)絡(luò)設(shè)備統(tǒng)計(jì)信息

在平時(shí)使用中,我們常常用來(lái)分析網(wǎng)絡(luò)狀況,其他幾項(xiàng)的通常有更好的工具來(lái)分析。所以,本文會(huì)重點(diǎn)介紹 sar 在網(wǎng)絡(luò)方面的分析手法。

Linux 系統(tǒng)用以下幾個(gè)選項(xiàng)提供網(wǎng)絡(luò)統(tǒng)計(jì)信息:

-n DEV:網(wǎng)絡(luò)接口統(tǒng)計(jì)信息。

-n EDEV:網(wǎng)絡(luò)接口錯(cuò)誤。

-n IP:IP 數(shù)據(jù)報(bào)統(tǒng)計(jì)信息。

-n EIP:IP 錯(cuò)誤統(tǒng)計(jì)信息。

-n TCP:TCP 統(tǒng)計(jì)信息。

-n ETCP:TCP 錯(cuò)誤統(tǒng)計(jì)信息。

-n SOCK:套接字使用。

我們來(lái)看幾個(gè)示例:

(1)每秒打印 TCP 的統(tǒng)計(jì)信息。
sar -n TCP 1

幾個(gè)參數(shù)了解一下:

active/s:新的 TCP 主動(dòng)連接(也就是 socket 中的 connect() 事件),單位是:連接數(shù)/s。

passive/s:新的 TCP 被動(dòng)連接(也就是 socket 中的 listen() 事件)。

iseg/s:接收的段(傳輸層以段為傳輸單位),單位是:段/s

oseg/s:發(fā)送的段。

通過(guò)這幾個(gè)參數(shù),我們基本可以知道當(dāng)前系統(tǒng) TCP 連接的負(fù)載情況。

(2)每秒打印感興趣的網(wǎng)卡的統(tǒng)計(jì)信息
sar -n DEV 1 | awk "NR == 3 || $3 == "eth0""

幾個(gè)參數(shù)了解一下:

rxpck/s / txpck/s:網(wǎng)卡接收/發(fā)送的數(shù)據(jù)包,單位是:數(shù)據(jù)包/s。

rxkB/s / txkB/s:網(wǎng)卡接收/發(fā)送的千字節(jié),單位是:千字節(jié)/s。

rxcmp/s / txcmp/s:網(wǎng)卡每秒接受/發(fā)送的壓縮數(shù)據(jù)包,單位是:數(shù)據(jù)包/s。

rxmcst/s:每秒接收的多播數(shù)據(jù)包,單位是:數(shù)據(jù)包/s。

%ifutil:網(wǎng)絡(luò)接口的利用率。

這幾個(gè)參數(shù)對(duì)于分析網(wǎng)卡接收和發(fā)送的網(wǎng)絡(luò)吞吐量很有幫助。

(3)錯(cuò)誤包和丟包情況分析
sar -n EDEV 1

幾個(gè)參數(shù)了解一下:

rxerr/s / txerr/s:每秒鐘接收/發(fā)送的壞數(shù)據(jù)包

coll/s:每秒沖突數(shù)

rxdrop/s:因?yàn)榫彌_充滿,每秒鐘丟棄的已接收數(shù)據(jù)包數(shù)

txdrop/s:因?yàn)榫彌_充滿,每秒鐘丟棄的已發(fā)送數(shù)據(jù)包數(shù)

txcarr/s:發(fā)送數(shù)據(jù)包時(shí),每秒載波錯(cuò)誤數(shù)

rxfram/s:每秒接收數(shù)據(jù)包的幀對(duì)齊錯(cuò)誤數(shù)

rxfifo/s / txfifo/s:接收/發(fā)送的數(shù)據(jù)包每秒 FIFO 過(guò)速的錯(cuò)誤數(shù)

當(dāng)發(fā)現(xiàn)接口傳輸數(shù)據(jù)包有問(wèn)題時(shí),查看以上參數(shù)能夠讓我們快速判斷具體是出的什么問(wèn)題。

OK,這個(gè)工具就介紹到這里,以上只是拋磚引玉,更多技巧還需要大家動(dòng)手去探索,只有動(dòng)手,才能融會(huì)貫通。

traceroute

traceroute 也是一個(gè)排查網(wǎng)絡(luò)問(wèn)題的好工具,它能顯示數(shù)據(jù)包到達(dá)目標(biāo)主機(jī)所經(jīng)過(guò)的路徑(路由器或網(wǎng)關(guān)的 IP 地址)。如果發(fā)現(xiàn)網(wǎng)絡(luò)不通,我們可以通過(guò)這個(gè)命令來(lái)進(jìn)一步判斷是主機(jī)的問(wèn)題還是網(wǎng)關(guān)的問(wèn)題。

它通過(guò)向源主機(jī)和目標(biāo)主機(jī)之間的設(shè)備發(fā)送一系列的探測(cè)數(shù)據(jù)包(UDP 或者 ICMP)來(lái)發(fā)現(xiàn)設(shè)備的存在,實(shí)現(xiàn)上利用了遞增每一個(gè)包的 TTL 時(shí)間,來(lái)探測(cè)最終的目標(biāo)主機(jī)。比如開(kāi)始 TTL = 1,當(dāng)?shù)竭_(dá)第一個(gè)網(wǎng)關(guān)設(shè)備的時(shí)候,TTL - 1,TTL = 0 導(dǎo)致網(wǎng)關(guān)響應(yīng)一個(gè) ICMP 超時(shí)報(bào)文,這樣,如果沒(méi)有防火墻攔截的話,源主機(jī)就知道網(wǎng)關(guān)設(shè)備的地址。以此類(lèi)推,逐步增加 TTL 時(shí)間,就可以探測(cè)到目標(biāo)主機(jī)之間所經(jīng)過(guò)的路徑。

為了防止發(fā)送和響應(yīng)過(guò)程出現(xiàn)問(wèn)題導(dǎo)致丟包,traceroute 默認(rèn)會(huì)發(fā)送 3 個(gè)探測(cè)包,我們可以用 -q x 來(lái)改變探測(cè)的數(shù)量。如果中間設(shè)備設(shè)置了防火墻限制,會(huì)導(dǎo)致源主機(jī)收不到響應(yīng)包,就會(huì)顯示 * 號(hào)。如下是 traceroute baidu 的結(jié)果:

每一行默認(rèn)會(huì)顯示設(shè)備名稱(IP 地址)和對(duì)應(yīng)的響應(yīng)時(shí)間。發(fā)送多少個(gè)探測(cè)包,就顯示多少個(gè)。如果只想顯示 IP 地址可以用 -n 參數(shù),這個(gè)參數(shù)可以避免 DNS 域名解析,加快響應(yīng)時(shí)間。

和這個(gè)工具類(lèi)似的還有一個(gè)工具叫 pathchar,但平時(shí)用的不多,我就不介紹了。

以上就是兩個(gè)工具的簡(jiǎn)單介紹,工具雖然簡(jiǎn)單,但只要能解決問(wèn)題,就是好工具。當(dāng)然,性能分析不僅僅依靠工具就能解決的,更多需要我們多思考、多動(dòng)手、多總結(jié),逐步培養(yǎng)自己的系統(tǒng)能力,才能融會(huì)貫通

參考:

iperf3
netperf netserver
https://www.jianshu.com/p/42e...


我的公眾號(hào) cloud_dev,號(hào)內(nèi)有大量書(shū)籍和視頻資源,后臺(tái)回復(fù)「1024」即可領(lǐng)取,分享的內(nèi)容包括但不限于云計(jì)算虛擬化、容器、OpenStack、K8S、霧計(jì)算、網(wǎng)絡(luò)、工具、SDN、OVS、DPDK、Linux、Go、Python、C/C++編程技術(shù)等內(nèi)容,歡迎大家關(guān)注。


文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/25485.html

相關(guān)文章

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<