精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

大神如何不擇手段,精準打擊Linux網絡問題?

系統 Linux
我們在工作中總是遇到一些需要快速解決的棘手問題,解決這類問題往往有一套可供遵循的常規思路,但是實際做起來往往非常耗時且依賴外部環境,更加棘手的是,為了按部就班地完成工作,你需要學習很多很多前置知識,比方說相關工具的使用。

[[402521]]

內容簡介

本文是大廠著名大神Dog250在調試一些網絡問題時候的實戰,希望讀者通過閱讀本文,領悟大神們是如何“不擇手段,利用手頭一切的便利,最快的速度精準打擊問題要害”,從而實現快速調試和解決問題的。

我們在工作中總是遇到一些需要快速解決的棘手問題,解決這類問題往往有一套可供遵循的常規思路,但是實際做起來往往非常耗時且依賴外部環境,更加棘手的是,為了按部就班地完成工作,你需要學習很多很多前置知識,比方說相關工具的使用。

我傾向于用最少的工作量來完成POC。

不會用crash/ebpf就不能debug內核了嗎?不懂編程就不能優化系統了嗎?并不是。

讓我來展示一下縣城擺攤修傘的二胡師傅和瑞士宮廷制表匠的區別吧。

本文我會舉三個實際的例子。用的都是low到爆的過時玩意兒。

### 示例1:排查TCP連接僵死

netstat顯示一條TCP連接的Send-Q堆積了很多數據,對端相應的Recv-Q卻是0,tcpdump顯示該連接持續無任何交互。

此時應該怎么辦?

經過ss -it確認tcp_info信息,結論是該連接的RWND/CWND,RTT,RTO,MSS等數據均正常,網卡也無相關錯誤統計,但在事實上它就是僵住了,這是一個異?,F象,既然Send-Q中有數據,它是無論如何都要 ***嘗試*** 發送出去的。

幾乎可以肯定,原因無外乎兩點:

- 應用程序進入系統調用時lock住了socket并且阻塞了。

- 內核存在問題。

如何來確認?大多數人的思路傾向于使用crash工具去分析內核數據結構,但是這是一個龐大的靜態分析工程。

我傾向于開著飛機修引擎,我不擅長分析死因,但我擅長做復蘇。我的方法是嘗試給該TCP做復蘇手術。

TCP的發送一直是靠ACK時鐘驅動的,事實上直到BBR開啟的基于pacing的新TCP時代,也依然沒有放棄ACK時鐘,雖然ACK在原教旨意義上不再需要,但BBR依然使用它來計算pacing rate,假如沒有ACK到來了,那么pacing rate便會逐漸跌到0,TCP也就僵住了。

***因此,TCP的復蘇手術,主要是構造一個ACK去擊打它!***

如果你對TCP足夠了解,那么你一定會大贊我的做法。

在TCP連接顯示Send-Q堆積的數據發送端構造這個ACK,需要從本機的網卡注入,為了避開路由子系統的Martian報文校驗,需要另起一個net namespace來做這事。

接下來我們來構造這個ACK:

為了最快速定位問題,我往往不會遵守什么編碼規范,所以我會寫死地址和端口,哪怕需要改的時候再編輯一下代碼。

然后我們來注入:

注意,代碼中的seq,ack字段我們并不知道,如何將這個ACK來精確注入這個僵死的TCP連接?

精確注入需要兩步,用一個bpftrace腳本配合上述python代碼獲取TCP的snd_una,rcv_nxt等字段:

注意,我hook的是tcp_rcv_established,當我實施第一步注入的時候,沒有進入這個trace,那幾乎可以肯定是應用程序lock住了該連接,進而將該ACK排入了backlog以延后處理,這種情況就需要應用程序開發人員來接鍋了。

如果順利進入了該trace,那么我們便獲取了TCP連接的info信息,接下來我們可以用打印出來的snd_una,rcv_nxt信息來填充python代碼中的seq和ack了:

ACK構造配合bpftrace腳本,如此便可以一路跟蹤到數據的發送邏輯,進而定位發送僵死的原因。核心的思路我已經給出了,本文不是case by case分析,也就沒有繼續的必要了。

順便說一句,我不喜歡使用bpftrace,太麻煩且限制太多,還是systemtap順手,特別是-g選項。bpftrace無需編譯執行快并非不可或缺的優點,大家都用bpftrace更多是因為它新潮。

### 示例2:實現tun網卡的readv

最近我雖然將golang實現的tun UDP隧道的總吞吐逼近了物理網卡極限25Gbps,但是對于單流吞吐而言,卻一直無法突破2~3Gbps,因此我想看看瓶頸到底在哪。

事實上,允許IP分片的情況下,我把tun的MTU設置成8000,單流吞吐可達8Gbps。然而在長傳有丟包的線路,IP分片(分片丟失會造成TCP時鐘卡頓)可能會使TCP的性能劣化,打亂BBR所依賴的pacing rate保真。

之前測量的結果,直連環境,通過tun UDP隧道的ping時延是物理網卡ping時延的10倍起步,那么tun和UDP socket處理的系統消耗大概要損耗10倍起步的吞吐,25Gbps下降到2~3Gbps是合理的。

因此我需要減少tun的read/write開銷。

批量讀寫是一個合理的思路,比方說io_uring,readv/writev等。可是tun并不支持這些,怎么辦?

io_uring直接拋棄,太復雜了。

如果要實現一個完備的讀寫數據包的readv/writev,我需要在內核和用戶態均實現數據包邊界的拆包組包問題,我不得不處理各種協議,以在一塊整個的內存中獲取數據包的長度并把它切下來,我不得不時刻當心內存的邊界,把不連續的內存想辦法組合成一個看上去連續的內存,以便后面的加密解密goroutine可以處理它們。

這看上去很復雜,需要對整個程序進行修改(當然了,這對于標準程序員根本不是事,但對于我,這很要命),至少也要花費一整天的時間,可作為業余的事情,每天回家都很晚了,我哪有時間折騰這些。

下面是我一個小時完成事情全部的做法。我改變了readv的語義:

- 每一個iovec僅存放一個skb的數據,下一個skb放在下一個iovec。

- 返回copy成功的skb的數量,而不是copy數據的總字節數。

下面是我對tun_do_read的改造:

就這么幾行代碼。是不是很簡單。

下面是對應的golang代碼:

下面是golang中的Readv:

...

### 示例3:實現松散TCP語義

來,最后一個例子,我簡單說。

我想為直播業務提供一個松散TCP傳輸協議,如何?

什么是松散TCP?很容易理解:

- 網絡狀態很好或者輕微丟包時,執行完備TCP邏輯。

- 嚴重擁塞時不再重傳,直接發后面的數據,能不能到達,聽天由命。

- 接收端可以發送NAK指示發送端是否重傳。

- ...

這對于直播是有意義的,體現在三個方面:

- 直播防卡頓體驗要比清晰度體驗更核心,嚴重擁塞時用戶可以接受模糊但不能接受卡頓,因此可以丟幀,但不能卡住。

- 直播流量在嚴重擁塞時的松散非重傳處理可以降低帶寬成本。

- 大家都不拼命重傳了,或許網絡擁塞就過去了,可期待一種良性全局同步。

既能優化體驗,又能降低成本,何樂而不為?那么怎么落地呢?

開會立項,確定deadline,然后大改TCP協議的實現代碼嗎?Linux內核中TCP的那一大脬代碼能把人看瘋。誰人改得動?然后可以期許的就是開會,延期,加班,哪來的快樂?

因此我用Netfilter:

- 發送端在IP層用Netfilter截獲出方向的TCP段,在嚴重擁塞時偽造ACK回復。

- 接收端在IP層用Netfilter截獲入方向的TCP段,在嚴重擁塞時用0填充丟包亂序造成的sequence空洞。

 

是不是不依賴TCP本身的實現了呢?而且實現起來很快,可以唱著歌寫。先把0.1版本推上去了,業務點了贊,然后慢慢再改那脬TCP代碼。

本文轉載自微信公眾號「Linux閱碼場」,可以通過以下二維碼關注。轉載本文請聯系Linux閱碼場公眾號。

 

責任編輯:武曉燕 來源: Linux閱碼場
相關推薦

2010-06-04 10:40:22

win7水樹奈奈

2013-11-14 13:26:30

IE補丁Windows XP

2010-07-01 15:52:30

2011-08-01 10:21:42

2013-11-14 11:38:43

Windows XPIE補丁

2016-11-23 09:47:10

2015-09-30 09:26:38

大數據高薪

2021-12-01 10:32:53

超級計算機

2009-04-22 15:16:30

2012-08-22 15:17:08

2015-08-19 09:15:01

設計老板干涉

2011-11-28 12:12:57

2022-12-08 10:30:19

2009-05-25 13:50:28

Linux桌面走俏

2015-07-30 09:48:38

自學編程3遍讀書法

2009-02-24 09:59:11

2020-05-11 17:12:38

物聯網傳感器技術

2019-10-18 09:20:37

身份識別網絡攻擊數據泄露

2025-08-07 01:00:00

2021-03-11 11:08:32

辦公
點贊
收藏

51CTO技術棧公眾號

日本天堂在线观看| 欧美一区二区三区不卡视频| 久久一级大片| 亚洲国产日韩综合久久精品| 九九久久99| 中文字幕视频二区| 女主播福利一区| 日韩大片在线观看视频| 91人人澡人人爽人人精品| 超碰免费在线播放| 26uuu国产日韩综合| 成人免费高清完整版在线观看| xxxx 国产| 欧美一区二区三| 欧美v国产在线一区二区三区| 欧美 日韩 国产一区| 麻豆影院在线观看| 91在线精品一区二区| 国产专区精品视频| 亚洲熟女综合色一区二区三区| 99久久九九| 日韩电影在线观看中文字幕 | 欧美xxxbbb| 国产婷婷色一区二区三区| 亚洲最大成人在线| 黄色污污视频软件| 99成人精品| 日韩少妇与小伙激情| 人妻无码一区二区三区| 日韩中文字幕无砖| 欧美色综合影院| 国产原创popny丨九色| 操你啦视频在线| 欧美高清在线视频| 蜜桃久久影院| 日本毛片在线观看| 国产不卡在线视频| 成人情趣片在线观看免费| 波多野结衣理论片| 媚黑女一区二区| 97精品国产aⅴ7777| 极品久久久久久| 欧美r级电影| 国产亚洲美女精品久久久| 国产精品无码一区二区三| 国产视频网站一区二区三区| 欧美主播一区二区三区美女| 久久久久久久激情| 蜜桃在线视频| 午夜激情一区二区三区| 大荫蒂性生交片| 91cn在线观看| 亚洲蜜臀av乱码久久精品| 中文视频一区视频二区视频三区 | 亚洲香蕉在线观看| 日韩人妻一区二区三区| 色天下一区二区三区| 精品99久久久久久| 97人妻精品一区二区三区免费 | 欧美日韩午夜影院| 99久久激情视频| 亚洲天堂资源| 欧美性xxxxx极品娇小| 日韩精品在线观看av| 久草免费在线色站| 夜夜嗨av一区二区三区| www.国产在线播放| 欧美人与动牲性行为| 夜夜嗨av一区二区三区四季av| 麻豆一区二区三区在线观看| 激情成人四房播| 亚洲欧美日韩国产综合在线| 精品日韩在线播放| av免费在线观| 五月婷婷激情综合网| 成年人观看网站| 欧美大片1688网站| 欧美一区二区三区在线电影| 精人妻一区二区三区| 精品亚洲免a| 亚洲人成网站在线播| 亚洲自拍偷拍图| 欧美1级片网站| 久操成人在线视频| 日韩成人av毛片| 亚洲欧美视频| 国产日韩综合一区二区性色av| 国产婷婷在线视频| 成人av免费在线| 欧洲精品一区色| 免费黄色网页在线观看| 夜夜精品浪潮av一区二区三区| 9久久9毛片又大又硬又粗| 二区三区不卡| 51精品久久久久久久蜜臀| 真实乱偷全部视频| 亚洲精品动态| 日韩亚洲精品电影| 日韩欧美a级片| 日韩avvvv在线播放| 91|九色|视频| 欧美精品少妇| 椎名由奈av一区二区三区| 欧美精品久久久久久久自慰| 午夜精品久久久久久久久久蜜桃| 欧美精品欧美精品系列| 久久久久麻豆v国产精华液好用吗| 欧美精品一区二区三区精品| 欧美黑人巨大xxx极品| 波多野结衣午夜| 国产成人在线视频网站| 日本高清视频一区二区三区| 国产精品偷拍| 欧美日韩国产综合一区二区 | 久久久久久久久久久视频| 欧美国产视频| 精品丝袜一区二区三区| 四虎永久免费在线| 日韩av在线免费观看不卡| 国产精品18毛片一区二区| 日日夜夜精品一区| 欧美videosex性极品hd| 99亚洲一区二区| 成人免费直播live| 国产女人在线观看| 一区二区三区中文字幕在线观看| 尤蜜粉嫩av国产一区二区三区| 99亚洲乱人伦aⅴ精品| 在线电影中文日韩| 黄色片视频网站| 国产成人精品网址| 亚洲国产精品久久久久婷婷老年| 欧美13videosex性极品| 日韩精品专区在线| 色欲一区二区三区精品a片| 久久久久网站| 久久综合久久久| 精品欧美色视频网站在线观看| 在线观看日韩国产| 30一40一50老女人毛片| 在线成人欧美| 成人动漫在线视频| 黄网站免费在线观看| 欧美性受xxxx黑人xyx性爽| 亚洲第一黄色网址| 在线看片一区| 国产精品区一区| 黄页在线观看免费| 精品国产欧美一区二区| 婷婷色中文字幕| 国产一区福利在线| 中文字幕一区二区三区最新| 国产亚洲精彩久久| 日韩中文在线视频| 一级做a爱片性色毛片| 国产精品久久久久久久蜜臀 | 99香蕉国产精品偷在线观看 | 亚洲第一区第二区第三区| 欧洲三级视频| 国产精品99久久久久久白浆小说| 国产无套粉嫩白浆在线2022年 | 国产三级精品在线观看| 国产精品乱码一区二区三区软件 | 福利网在线观看| 国产999精品在线观看| 美女999久久久精品视频| 精品国精品国产自在久不卡| 一区二区三区不卡在线观看| 老司机免费视频| 国产亚洲精品bv在线观看| 蜜桃91精品入口| 日韩av电影资源网| 最近2019中文字幕一页二页| 国产精品无码专区av免费播放| 亚洲精品福利视频网站| 国产黄色三级网站| 日韩va亚洲va欧美va久久| 91香蕉视频网址| youjizz亚洲| 欧美中文字幕视频| 亚洲天天影视| 亚洲成人网在线| 成年人视频免费| 亚洲四区在线观看| 国产麻豆xxxvideo实拍| 日本人妖一区二区| 99re6这里有精品热视频| 精品素人av| 国产日韩欧美视频| jizz一区二区三区| 国产一区二区三区视频| 99热这里只有精品5| 精品人伦一区二区三区蜜桃免费| 久久久久久成人网| 成人做爰69片免费看网站| 99久久激情视频| 欧美日韩a区| 日韩成人av电影在线| 欧美经典一区| 人妖精品videosex性欧美| 高潮毛片在线观看| 亚洲男女自偷自拍图片另类| 一区二区国产欧美| 狠狠做深爱婷婷久久综合一区 | 中文字幕亚洲日本| 国产日韩欧美三级| 先锋影音男人资源| 精品日韩在线| 国产区二精品视| 99久久999| 国产成人午夜视频网址| 丁香花在线电影小说观看| 中文字幕9999| 亚洲av成人无码网天堂| 欧美一区二区黄色| 中国a一片一级一片| 精品久久久久久久久久久久久 | 国产精品日日做人人爱| 91破解版在线观看| 欧美精品制服第一页| eeuss影院www在线播放| 亚洲成年网站在线观看| 国产精品午夜福利| 欧美日韩视频在线观看一区二区三区 | 国产精品1区| 国产精品福利小视频| 成年人黄色大片在线| 欧美成人精品不卡视频在线观看| 成人免费在线电影| 日韩精品视频免费专区在线播放| www.超碰在线.com| 欧美日本在线看| 91麻豆精品在线| 欧美性猛交xxxx富婆弯腰| 免费毛片在线播放免费 | 欧美精品一区二区三区在线播放| 91国产免费视频| 在线看日本不卡| 国产免费av一区| 欧美性xxxx极品hd满灌| 毛片视频网站在线观看| 亚洲图片自拍偷拍| 欧美日韩亚洲国产另类| 亚洲三级理论片| 很污很黄的网站| 国产精品美女久久久久久久| 蜜桃av乱码一区二区三区| 久久亚洲免费视频| www.色多多| 久久久久综合网| 久久精品国产亚洲AV熟女| 91麻豆免费观看| 中文视频在线观看| a在线播放不卡| 中文字幕在线播放视频| 91在线丨porny丨国产| 国产精品无码网站| 久久久亚洲午夜电影| mm131丰满少妇人体欣赏图| 26uuu亚洲综合色欧美| 亚洲专区区免费| 久久久电影一区二区三区| caopeng视频| 中文字幕av一区 二区| 成人黄色短视频| 亚洲欧美日韩电影| 青青草激情视频| 亚洲成av人片一区二区梦乃| 日韩手机在线观看| 色综合天天综合| 国产精品露脸视频| 91精品国产手机| 秋霞av鲁丝片一区二区| 日韩高清av在线| 国产香蕉在线| 美女黄色丝袜一区| av岛国在线| 日韩美女av在线免费观看| 国产精品久久久久久久久久齐齐| 成人a在线观看| jazzjazz国产精品麻豆| 久久综合给合久久狠狠色| 成人三级视频| 欧美日韩中文字幕在线播放| 亚洲人成高清| 亚洲综合在线网站| 久草这里只有精品视频| 亚洲精品久久久久久| 91污在线观看| 91制片厂在线| 精品国产电影一区| 中文字幕在线日亚洲9| 精品女同一区二区| 麻豆导航在线观看| 蜜臀久久99精品久久久无需会员 | 日韩欧美一区视频| 国产一区二区小视频| 亚洲二区在线播放视频| 午夜在线小视频| 69久久夜色精品国产69乱青草| 男人av资源站| 国产a久久精品一区二区三区| 夜夜爽99久久国产综合精品女不卡| 欧美777四色影| 日本a√在线观看| 国产69精品久久久久毛片| 91在线无精精品白丝| 亚洲福利一区二区| 一级久久久久久久| 日韩成人激情视频| 中文av资源在线| 国产精品1234| 精品午夜电影| 久久视频免费在线| 秋霞电影网一区二区| 四虎精品一区二区| 亚洲欧美精品午睡沙发| 久久久久久亚洲av无码专区| 精品国产免费视频| 哥也色在线视频| 国产精品久久在线观看| 亚洲妇女av| 亚洲国产成人精品无码区99| 久久99精品视频| 免费观看a级片| 红桃av永久久久| 亚洲精品国产精品国| 精品国产美女在线| 久久91导航| 免费一区二区三区在在线视频| 欧美精品国产| √天堂资源在线| 国产精品麻豆欧美日韩ww| 人妻 日韩精品 中文字幕| 亚洲大胆人体在线| 日本资源在线| 92国产精品久久久久首页| 日韩欧美午夜| 国产又大又黄又粗的视频| 久久蜜桃av一区精品变态类天堂| 日韩精品视频播放| 欧美成人福利视频| 羞羞的视频在线观看| 91精品国产综合久久香蕉最新版 | 探花视频在线观看| 亚洲国产精品专区久久| 日本三级在线观看网站| 91九色蝌蚪嫩草| 欧美午夜电影在线观看| 日本女人性视频| 夜夜嗨av一区二区三区四季av| www.99视频| 欧美黑人狂野猛交老妇| 狂野欧美xxxx韩国少妇| 激情六月天婷婷| 豆国产96在线|亚洲| 国产真人真事毛片| 亚洲国产精品va| 蜜桃视频m3u8在线观看| 欧美日韩喷水| 日韩成人av影视| 国内毛片毛片毛片毛片毛片| 欧美一三区三区四区免费在线看| 成人影院www在线观看| 91福利视频导航| 免费在线黄色片| 欧美性生活一区| 男女啪啪在线观看| 亚洲综合av影视| 欧美体内she精视频在线观看| 年下总裁被打光屁股sp| 婷婷丁香激情综合| 黄色大片在线免费观看| 国产主播喷水一区二区| 狠狠爱综合网| 精品成人av一区二区三区| 欧美日韩在线播放三区四区| caopo在线| 国产在线精品一区| 日韩国产欧美一区二区三区| 日韩av手机在线免费观看| 精品免费国产二区三区| 一个人看的www视频在线免费观看| 日本一区视频在线| 国内一区二区在线| 国产中文字幕免费| 亚洲深夜福利视频| 电影91久久久| 国产性xxxx18免费观看视频| 国产精品视频在线看| 国产成人三级在线观看视频| 国产成人a亚洲精品| 一精品久久久| 欧美丰满少妇人妻精品| 欧美丰满高潮xxxx喷水动漫| 春色校园综合激情亚洲| 亚洲欧洲免费无码| 成人激情小说乱人伦| 在线免费观看中文字幕| 久久久亚洲天堂|