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

模擬百萬(wàn)級(jí)TCP并發(fā)

開(kāi)發(fā) 開(kāi)發(fā)工具
TCP并發(fā)是指一個(gè)服務(wù)器同時(shí)“hold住”的連接數(shù)量,確切的說(shuō)就是指服務(wù)器端看到的“ESTABLISHED”狀態(tài)的TCP連接數(shù)量。

什么是TCP并發(fā)

TCP并發(fā)是指一個(gè)服務(wù)器同時(shí)“hold住”的連接數(shù)量,確切的說(shuō)就是指服務(wù)器端看到的“ESTABLISHED”狀態(tài)的TCP連接數(shù)量。通過(guò)netstat -n|grep ^tcp|awk '{print $NF}'|sort -nr|uniq -c可以查看當(dāng)前服務(wù)器TCP狀態(tài)統(tǒng)計(jì)報(bào)告,下圖是我的執(zhí)行結(jié)果(我正在通過(guò)SSH連接這臺(tái)機(jī)器所以有一個(gè)“ESTABLISHED”狀態(tài)的TCP連接)

測(cè)試TCP并發(fā)就是指讓這個(gè)值達(dá)到的頂峰,要實(shí)現(xiàn)這個(gè)必須滿(mǎn)足兩點(diǎn):

  • 短時(shí)間內(nèi)構(gòu)造百萬(wàn)級(jí)連接
  • 服務(wù)器端同時(shí)hold住百萬(wàn)級(jí)連接

需要注意的是上面的“測(cè)試”不包括“連接之后的交互”僅僅是指“hold住連接”。

傳統(tǒng)工具為什么無(wú)法滿(mǎn)足

很多服務(wù)器都是TCP結(jié)構(gòu)的比如Mysql、Tomcat、Nginx,這些工具也有相應(yīng)的壓力測(cè)試工具,比較著名的包括:Jmeter、Tsung。這些工具的實(shí)現(xiàn)基本上是一致的

  • 同時(shí)啟動(dòng)多個(gè)任務(wù)
  • 每個(gè)任務(wù)打開(kāi)一個(gè)socket連接到服務(wù)器

這種測(cè)試方法受限于三個(gè)資源

  • 可以啟動(dòng)的任務(wù)數(shù)量(線程數(shù)或者進(jìn)程數(shù))
  • 可以打開(kāi)的socket數(shù)量(文件描述符)
  • 受限于本機(jī)可用端口最大值——65535

第一個(gè)限制我們可以通過(guò)“協(xié)程”之類(lèi)的技術(shù)手段解決;第二個(gè)限制在內(nèi)存滿(mǎn)足的情況下可以通過(guò)調(diào)整系統(tǒng)參數(shù)解決(參考我的《你真知道“Too many open files”?》);第三個(gè)限制幾乎是致命的——傳統(tǒng)上只能通過(guò)多臺(tái)服務(wù)器一塊協(xié)同。

即便解決了上述三個(gè)問(wèn)題也很難在“短時(shí)間”內(nèi)造成巨大的壓力,大量的socket會(huì)吃光內(nèi)存,多臺(tái)服務(wù)器協(xié)同必然是一個(gè)分布式問(wèn)題(想想就掉頭發(fā))。

新的思路

TCP連接給人的感覺(jué)是一個(gè)“通道”,這其實(shí)這是一個(gè)“錯(cuò)覺(jué)”。所有的網(wǎng)絡(luò)基本上都是基于“存儲(chǔ)轉(zhuǎn)發(fā)”的經(jīng)過(guò)。三次握手之后的TCP連接到達(dá)“ESTABLISHED”狀態(tài),服務(wù)器會(huì)為它保留資源——即使客戶(hù)端已經(jīng)不再理睬這個(gè)連接。那么我們是不是可以不經(jīng)過(guò)TCP/IP協(xié)議棧直接通過(guò)raw socket構(gòu)造三次握手呢?只要我們大批量的構(gòu)造三次握手就可以對(duì)服務(wù)器構(gòu)成巨大的壓力了。

我們重點(diǎn)關(guān)注Client->Server的兩個(gè)箭頭。第一個(gè)數(shù)據(jù)包是SYN數(shù)據(jù)包,seq=隨機(jī)數(shù);第二個(gè)數(shù)據(jù)包是ACK數(shù)據(jù)包,ACK=收到數(shù)據(jù)包的seq+1,seq=收到數(shù)據(jù)包的ack。其實(shí)TCP數(shù)據(jù)包之間是沒(méi)有直接關(guān)系的,我們收到一個(gè)數(shù)據(jù)包就可以直接算出回復(fù)數(shù)據(jù)包的ack、seq

上面的思路基本上可以證明我們的方法在理論上是可行的,在實(shí)踐上我們還需要克服一些問(wèn)題

  • 怎么獲取Server到Client的SYN+ACK(三次握手中的第二個(gè)箭頭);畢竟我們不是直接使用Socket打開(kāi)TCP連接(這樣做就不需要自己構(gòu)造TCP三次握手了)
  • Server在收到Client請(qǐng)求后會(huì)嘗試對(duì)Client進(jìn)行ARP地址,如果發(fā)現(xiàn)無(wú)法解析就認(rèn)為是一個(gè)非法的數(shù)據(jù)包直接發(fā)送RST數(shù)據(jù)包關(guān)閉TCP連接

第一個(gè)問(wèn)題我們通過(guò)libpcap“旁路”kernel,直接獲取原始數(shù)據(jù)包。下圖是libpcap的原理

libpcap底層使用的是BPF(Berkeley Packet Filter)驅(qū)動(dòng),這是kernel中專(zhuān)門(mén)用來(lái)“調(diào)試”的驅(qū)動(dòng)程序最早是為Unix開(kāi)發(fā)現(xiàn)在已經(jīng)成為各種操作系統(tǒng)的標(biāo)配(只要支持tcpdump那么底層一定是有實(shí)現(xiàn)這個(gè)驅(qū)動(dòng)模型的)。它獨(dú)立于kernel中的其他協(xié)議棧直接和讀取數(shù)據(jù)鏈路層的數(shù)據(jù)包。

通過(guò)libpcap我們可以獲取所有的數(shù)據(jù)包(即便操作系統(tǒng)不處理)然后構(gòu)造自己的數(shù)據(jù)包通過(guò)raw socket直接把寫(xiě)入到數(shù)據(jù)鏈路層。整個(gè)“收包”->“處理”->“回包”完全不需要kernel參與。

第二個(gè)問(wèn)題其實(shí)在前面的文章中我已經(jīng)給出了答案——構(gòu)造并且回復(fù)ARP數(shù)據(jù)包(《深入理解ARP攻擊 》)。簡(jiǎn)單來(lái)說(shuō)就是通過(guò)libpcap獲取arp request,通過(guò)raw socket回復(fù)arp response。

動(dòng)手

我努力去掉所有不相關(guān)的東西只保留了最精簡(jiǎn)的部分,不到300行的代碼。代碼分為兩大部分“發(fā)起TCP SYN數(shù)據(jù)包”和“回復(fù)SYN+ACK數(shù)據(jù)包、ARP request數(shù)據(jù)包”。具體內(nèi)容可以看這里

這次我特意放上了cmake文件,執(zhí)行以下cmake就可以編譯了。

https://github.com/fireflyc/million-tcp-client

模擬多個(gè)IP地址

受限于端口上限,一臺(tái)服務(wù)器只能模擬65535個(gè)TCP連接。但是我提供的演示程序是可以指定IP地址的,這個(gè)IP地址只需要和目標(biāo)IP在同一個(gè)網(wǎng)絡(luò)內(nèi)就可以了。比如我的測(cè)試環(huán)境:

測(cè)試機(jī)器有自己的IP地址172.16.46.128,但是這個(gè)IP地址并沒(méi)有用途,只是為了方便我SSH連接。服務(wù)器的IP地址是172.16.46.133,我啟動(dòng)三個(gè)tcp-client分別綁定200、201、202。

每個(gè)TCP-Client進(jìn)程都可以模擬65535個(gè)TCP連接。(這個(gè)其實(shí)還有改進(jìn)的余地)

【本文是51CTO專(zhuān)欄作者邢森的原創(chuàng)文章,轉(zhuǎn)載請(qǐng)聯(lián)系作者本人獲取授權(quán)】

 

責(zé)任編輯:武曉燕 來(lái)源: 寫(xiě)程序的康德
相關(guān)推薦

2025-08-05 09:20:20

2011-11-03 13:59:05

2009-03-12 09:44:05

高并發(fā)開(kāi)源數(shù)據(jù)庫(kù)MySQL

2025-05-26 02:11:00

2011-08-23 17:12:22

MySQL支撐百萬(wàn)級(jí)流

2025-02-14 03:00:00

2019-12-31 10:33:57

Netty高性能內(nèi)存

2014-02-10 16:27:09

百萬(wàn)級(jí)IOPSOceanStor 1

2020-01-13 10:20:30

架構(gòu)聊天架構(gòu)百萬(wàn)并發(fā)量

2025-05-30 03:40:00

2021-02-18 22:18:50

TCP 服務(wù)器源碼

2019-02-12 09:34:00

微博短視頻架構(gòu)

2025-11-03 04:15:00

2025-02-28 10:10:48

2022-09-09 08:41:43

Netty服務(wù)端驅(qū)動(dòng)

2021-05-24 10:55:05

Netty單機(jī)并發(fā)

2024-12-26 09:15:28

2024-12-04 13:52:30

2025-05-06 07:19:52

2025-10-27 05:11:00

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

91欧美日韩| 欧美aaa大片视频一二区| 成人动漫一区二区三区| 欧美一级淫片videoshd| 黄色片网站免费| 曰本一区二区| 欧美日韩激情网| 亚洲精品一区二| 秋霞欧美在线观看| 美国毛片一区二区| 欧美肥婆姓交大片| 三上悠亚影音先锋| 玖玖精品一区| 在线亚洲高清视频| 人人妻人人做人人爽| 番号集在线观看| 成人毛片老司机大片| 国产精品久久久| 久久久一区二区三区四区| 国产欧美日韩视频在线| 日韩欧美aaaaaa| 日韩av片网站| 色吧亚洲日本| 一区二区三区在线播放| 亚洲精品国产精品久久| 香蕉视频黄色片| 国产成a人亚洲精| 91精品久久久久久久久久久久久久 | 精品视频第一页| 免费看久久久| 精品福利av导航| 一级淫片在线观看| 欧美国产日韩电影| 色综合久久久久综合体| 免费观看美女裸体网站| 51xtv成人影院| 国产精品久久久久四虎| 日本在线播放一区| 免费毛片在线| 91丨九色丨国产丨porny| 国产传媒一区| 亚洲国产一二三区| 国内精品久久久久影院薰衣草 | 亚洲一区二区三区av无码| 毛片在线不卡| 国产精品不卡在线观看| 无遮挡亚洲一区| 成年女人的天堂在线| 久久久午夜电影| 欧美不卡在线一区二区三区| 天天干天天舔天天射| 成人黄色大片在线观看| 国产精品福利视频| 日韩中文字幕免费观看| 成人av中文字幕| 动漫3d精品一区二区三区| 国产视频在线一区| 国产一区二区不卡老阿姨| 成人午夜小视频| 国产精品一级视频| 国产激情91久久精品导航| 92国产精品视频| 性欧美18一19性猛交| 国产91精品入口| 国产一区二区三区av在线| 色窝窝无码一区二区三区成人网站| 不卡的电视剧免费网站有什么| 好吊妞www.84com只有这里才有精品| 欧美一级片免费| 97国产精品videossex| 久久免费99精品久久久久久| 精品推荐蜜桃传媒| 国产精品麻豆一区二区| 男人草女人视频| 国产v日韩v欧美v| 色综合久久中文字幕综合网 | 国产精品a成v人在线播放| 99在线精品免费视频九九视| 日本午夜在线亚洲.国产| 波多野结衣人妻| 国产一区二区精品在线观看| 黄色国产精品一区二区三区| 九色在线免费| 亚洲欧美日韩精品久久久久| 17c丨国产丨精品视频| 美女搞黄视频在线观看| 欧美午夜影院一区| 少妇精品无码一区二区| 亚洲成人一品| 精品国产一区二区三区在线观看| 欧美黄色免费看| 久久先锋资源| 99re国产视频| 第一页在线观看| 亚洲综合色在线| 久久久久免费精品| 日本免费一区二区视频| 亚洲男人av电影| 精品国产乱码久久久久久鸭王1 | 日本精品久久久久| 中文字幕高清一区| 黄页免费在线观看视频| 先锋影音网一区二区| 亚洲精品久久7777777| 青青草华人在线视频| 亚洲精品孕妇| 91麻豆国产精品| 毛片在线免费| 亚洲一区二区三区视频在线播放 | 成人看片网站| 亚洲国产精品久久| 国产黄a三级三级| 性色一区二区三区| 999国产视频| 成年人在线观看| 欧美网站在线观看| 少妇伦子伦精品无吗| 天天做天天爱天天爽综合网| 欧美性受xxx| 成人av手机在线| 中文字幕一区二区三中文字幕| 欧美牲交a欧美牲交| 欧美欧美在线| xvideos亚洲人网站| 波多野结衣在线观看视频| 成人免费精品视频| 国产911在线观看| 日韩久久一区| 在线观看日韩av| 亚洲va在线观看| 成人av免费在线| 欧美精品卡一卡二| 日本免费精品| 欧美情侣性视频| a在线观看免费| 国产精品久久久久久户外露出| 亚洲色欲综合一区二区三区| 久久a爱视频| 欧美—级a级欧美特级ar全黄| 国产又粗又猛又爽又黄91| 国产精品午夜免费| 三级视频中文字幕| av一区二区在线播放| 日韩av手机在线看| 激情小视频在线| 色婷婷久久综合| 香蕉视频久久久| 日韩精品欧美精品| 色综合电影网| 人人玩人人添人人澡欧美| 中国日韩欧美久久久久久久久| 中文字幕av第一页| 国产精品入口麻豆原神| 国产三级三级看三级| 日韩一区二区中文| 成人在线小视频| av激情在线| 亚洲成人教育av| 国产黄色片免费看| 国产午夜精品久久| 污污网站免费看| 女人天堂亚洲aⅴ在线观看| 成人性色av| 黄色激情在线播放| 在线观看91久久久久久| 在线观看色网站| 亚洲欧美偷拍三级| 中文字幕第九页| 久久精品在线| 亚洲午夜精品一区二区| 国产精品一区二区精品| 国内免费久久久久久久久久久| 神马午夜在线观看| 在线免费亚洲电影| 日本中文在线视频| 99久久久久免费精品国产| 欧美视频第一区| 日韩在线高清| 俄罗斯精品一区二区三区| 最新中文字幕在线播放| 综合国产在线视频| 亚洲精品国产片| 日本久久一区二区| 国产乱国产乱老熟300| 久久伊人蜜桃av一区二区| 日本超碰在线观看| 影音先锋日韩资源| 亚洲一区二区高清视频| 中文在线免费一区三区| 欧洲日韩成人av| 精精国产xxxx视频在线| 日韩va亚洲va欧洲va国产| 亚洲视频在线观看免费视频| 亚洲成人精品在线观看| 91成人破解版| 成人一级黄色片| 亚洲欧美在线精品| 国产亚洲激情| 51xx午夜影福利| 久久综合欧美| 国产91社区| 性欧美video另类hd尤物| 性色av一区二区咪爱| 免费在线看黄| 亚洲色图13p| 国产18精品乱码免费看| 欧美日本在线播放| 久久夜靖品2区| 一区二区三区日韩在线观看| 影音先锋制服丝袜| 99精品视频免费在线观看| 天天操夜夜操很很操| 秋霞午夜鲁丝一区二区老狼| 国产精品沙发午睡系列| 亚洲一区色图| 亚洲一区二区三区加勒比| 你懂的视频欧美| 国产日韩欧美精品| 精品一区二区三区亚洲| 国产男人精品视频| 色综合一本到久久亚洲91| 久久久久中文字幕| 天使と恶魔の榨精在线播放| 日韩在线资源网| 国产69久久| 亚洲欧美日韩国产中文| 天天干天天操av| 亚洲成人久久一区| 午夜精品久久久久久久99老熟妇| 69堂成人精品免费视频| 中文字幕视频二区| 日本福利一区二区| 狠狠人妻久久久久久综合| 婷婷成人综合网| 色播视频在线播放| 亚洲成a天堂v人片| 日本三级午夜理伦三级三| 亚洲国产精品久久人人爱蜜臀| 四虎免费在线视频| 亚洲免费观看在线观看| 国产97免费视频| 一区二区在线观看不卡| 欧美激情国产精品免费| 亚洲综合一区二区三区| 久久久久香蕉视频| 亚洲高清免费视频| 日韩欧美国产亚洲| 五月天婷婷综合| 亚洲永久精品在线观看| 欧美特黄级在线| 啪啪小视频网站| 欧美日韩国产不卡| 国产三级三级在线观看| 91精品国产乱| 亚洲福利在线观看视频| 亚洲国产精品小视频| 神马电影在线观看| 中文精品99久久国产香蕉| 黄色av电影在线播放| 欧美日本精品在线| 国产第一页在线| 69av在线视频| 日韩欧美精品电影| 成人免费网站在线看| 午夜视频一区二区在线观看| 国产精品制服诱惑| 欧洲专线二区三区| 亚洲一区二区精品在线| 欧美日韩综合| 日韩久久一级片| 麻豆精品国产传媒mv男同| 中文字幕在线观看视频www| bt欧美亚洲午夜电影天堂| 成人片黄网站色大片免费毛片| 国产精品久久久久一区二区三区| 青花影视在线观看免费高清| 亚洲成年人影院| 国产精品高清无码| 日韩欧美一级二级三级久久久| 四虎免费在线观看| 中文在线不卡视频| 青草视频在线免费直播| 日韩免费视频在线观看| 欧美黄色一级| 欧美午夜精品理论片a级大开眼界 欧美午夜精品久久久久免费视 | 欧美综合一区二区| 亚洲毛片欧洲毛片国产一品色| 亚洲毛片在线免费观看| 黄色精品在线观看| 26uuu亚洲伊人春色| 99精品美女视频在线观看热舞| 国产一级二级三级精品| 欧美h版在线| 日韩中文字幕在线视频观看| 精品一区二区三区在线播放 | www.久久色| 在线日韩日本国产亚洲| 黄色大片在线| 国产精品美女www爽爽爽视频| 亚洲日本va| 影音先锋欧美资源| 国产精品久久久久9999高清| 亚洲一区二区三区四区精品| 国产日本一区二区| 国产精彩视频在线| 在线综合视频播放| yw193.com尤物在线| 91精品国产高清自在线| 成人永久在线| 亚洲mv在线看| 国产亚洲激情| 国产性生活毛片| 曰韩精品一区二区| 一区精品在线观看| 亚洲人成亚洲人成在线观看| 麻豆蜜桃在线| 96久久精品| 91精品国产麻豆国产在线观看| 日韩免费高清在线| 久久综合狠狠综合久久综合88| 久久久久久久国产视频| 91麻豆精品国产91久久久使用方法| 国产中文字幕在线观看| 777国产偷窥盗摄精品视频| 欧美视频二区欧美影视| 一区二区三区偷拍| 琪琪一区二区三区| 91在线无精精品白丝| 欧美性极品少妇精品网站| 欧美一级淫片免费视频魅影视频| 另类色图亚洲色图| 亚洲精品成人一区| 中日韩在线视频| 免费高清在线一区| 中文字幕人妻一区二区三区在线视频| 欧美日韩一区二区在线| 亚洲色图 校园春色| 亚洲91av视频| 美女视频免费精品| 日日摸日日碰夜夜爽无码| av在线播放不卡| 久久久久久久久久影院| 日韩精品在线影院| 在线黄色的网站 | 亚洲欧美日韩高清在线| 爽爽爽在线观看| 亚洲精品水蜜桃| 性生交大片免费看女人按摩| 欧美激情亚洲自拍| 欧美xxxx在线| 日韩av一二三四| 国产日韩欧美高清在线| 久久久久久久久久成人| 国产一区二区久久精品| 久久久久黄色| 自拍偷拍一区二区三区| 国产一区二区三区国产| 久久久久久久久久一区二区三区| 亚洲爱爱爱爱爱| 亚洲国产欧美日本视频| 亚洲 日韩 国产第一区| 国产麻豆9l精品三级站| www.av视频在线观看| 亚洲免费视频网站| 成人涩涩视频| 樱空桃在线播放| 成人激情黄色小说| 一级一片免费看| 久久精品国产69国产精品亚洲| 日本高清精品| 男人天堂999| 136国产福利精品导航| 高h放荡受浪受bl| 日本精品在线视频| **女人18毛片一区二区| 国产精品日日摸夜夜爽| 色94色欧美sute亚洲线路一ni| 毛片在线播放a| 久久精品国产精品国产精品污 | 日本不卡视频| 国产日韩欧美综合精品| 日日夜夜免费精品| 亚洲最大的黄色网址| 亚洲第一福利视频| 777午夜精品电影免费看| 成人在线免费高清视频| 2020国产精品自拍| 国产精品无码AV| 欧美在线观看网址综合| 欧美xxav| 精品人妻一区二区三区香蕉| 欧美精品在欧美一区二区少妇| 变态调教一区二区三区| 亚洲一区bb| 久久亚洲捆绑美女| xxxx18国产| 国产精品一区久久久| 99精品热6080yy久久| 午夜剧场免费在线观看| 亚洲片国产一区一级在线观看|