精品欧美一区二区三区在线观看 _久久久久国色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)

日韩成人视屏| 黄页视频在线播放| 天堂va蜜桃一区二区三区漫画版| 亚洲免费福利视频| 在线观看免费污视频| 黄视频在线观看网站| 成人97人人超碰人人99| 国产精品白嫩初高中害羞小美女| 99久久精品久久亚洲精品| 亚洲码欧美码一区二区三区| 大荫蒂欧美视频另类xxxx| 色综合久久88色综合天天提莫| 国产女主播福利| 亚洲一区二区动漫| 久久精品99久久久香蕉| 国产伦精品一区二区三区精品| 偷拍视频一区二区三区| 一区二区三区加勒比av| 欧洲一区二区日韩在线视频观看免费| 国内精品久久久久久久久久久| 99精品欧美| 精品国产一区二区三区久久狼黑人| 图片区偷拍区小说区| 亚洲精品.com| 香蕉成人伊视频在线观看| 一区二区不卡视频| 天堂网www中文在线| 精品亚洲porn| 国产精品∨欧美精品v日韩精品| 久久久久久免费观看| 日韩系列欧美系列| 亚洲欧美日韩国产成人| 四虎永久免费观看| 国产精品毛片aⅴ一区二区三区| 狠狠躁夜夜躁人人躁婷婷91| 日本a在线天堂| 欧美成人二区| 国产精品网站一区| 日韩电影大全在线观看| 午夜av免费在线观看| 国产不卡在线视频| 91久久精品国产| 在线免费av网| 久久亚洲风情| 日韩av不卡在线| 亚洲国产精品午夜在线观看| 国产伊人精品| 欧美激情18p| 欧美三级在线免费观看| 久久精品亚洲人成影院| 日韩小视频网址| 国产精品久久国产精麻豆96堂| 精品久久精品| 亚洲人成网站在线播| 中文字幕免费国产精品| 九九热精品国产| 成人免费一区| 欧美色精品天天在线观看视频| 国产日韩一区二区在线观看| 伊人成综合网站| 欧美日韩亚洲精品内裤| 欧美亚洲一二三区| 看黄在线观看| 欧美日韩精品在线视频| 欧美色图色综合| 裤袜国产欧美精品一区| 色综合天天天天做夜夜夜夜做| 毛片一区二区三区四区| 免费观看成人性生生活片 | 国产一区二区剧情av在线| 国产欧美在线播放| 国产农村妇女毛片精品| 狠狠色伊人亚洲综合成人| 亚洲aaaaaa| 少妇高潮一区二区三区69| 北条麻妃国产九九精品视频| 精品免费国产| 成人免费在线视频网| 国产精品福利电影一区二区三区四区 | 中文字幕人妻精品一区| 美国十次了思思久久精品导航| 91精品国产综合久久久久久久久| 国产成人精品亚洲精品色欲| 丁香花在线观看完整版电影| 亚洲乱码国产乱码精品精的特点| 女人床在线观看| 蜜桃在线视频| 欧美在线观看一二区| 午夜两性免费视频| 97久久综合精品久久久综合| 日韩电影中文字幕在线观看| 亚洲第一综合网| 欧美不卡在线| 日韩免费中文字幕| 99久久久国产精品无码免费| 97精品超碰一区二区三区| 日韩精品久久久毛片一区二区| 乱人伦中文视频在线| 亚洲影视在线观看| 国产精品入口免费软件| 亚洲综合影院| 国产一区二区三区丝袜| 久久久久黄色片| 日韩av高清在线观看| 鬼打鬼之黄金道士1992林正英| 久久久pmvav| 亚洲黄色免费网站| 一本久道综合色婷婷五月| 国产精品日韩精品在线播放| 日韩精品丝袜在线| 欧产日产国产v| 日韩av网站免费在线| 国产亚洲情侣一区二区无| av中文字幕在线| 欧美日韩国产专区| 亚洲精品mv在线观看| 欧美日韩一二| 7777精品视频| a天堂视频在线| 亚洲国产精品av| 阿v天堂2017| 视频欧美一区| 日韩在线视频免费观看高清中文| 99热只有这里有精品| 国产福利91精品一区二区三区| 日韩区国产区| 在线手机中文字幕| 亚洲精品一区二区三区在线观看| 永久免费未视频| 奇米色777欧美一区二区| 久久大片网站| 欧美性爽视频| 日韩三级在线观看| 乱老熟女一区二区三区| 日韩精品成人一区二区三区| 久99久在线| av有码在线观看| 日韩午夜激情免费电影| 婷婷社区五月天| 毛片不卡一区二区| 色一情一乱一伦一区二区三区丨| 中文在线资源| 亚洲欧洲黄色网| 久久精品国产成人av| 不卡视频在线观看| 日韩av在线播放不卡| 亚洲1区在线| 欧美成人黄色小视频| 国产三级自拍视频| 亚洲私人黄色宅男| 日韩欧美色视频| 欧美91精品| 99视频国产精品免费观看| 日本无删减在线| 亚洲成年人影院在线| 久久久久久久久久久97| 成人免费高清视频| 日本中文字幕亚洲| 神马午夜久久| 国产精品白嫩美女在线观看| 自拍视频在线免费观看| 欧美日韩中文字幕一区| 精品国产视频在线观看| 国产一区不卡精品| 久久久久久久久久网| 你懂的视频欧美| 国产福利视频一区二区| 在线看的av网站| 91精品国产色综合久久| 激情五月婷婷小说| av日韩在线网站| 99视频在线免费| 亚洲国产一区二区在线观看 | 九九热精品视频| 午夜精品久久久久久久爽| 亚洲五码中文字幕| 成年人在线观看av| 另类调教123区| 一本大道东京热无码aⅴ| 三级小说欧洲区亚洲区| 国产精品电影一区| 丝袜美腿av在线| 日韩精品一区二区三区第95| 在线观看中文字幕av| 一区二区三区精品在线观看| 久久偷拍免费视频| 美女视频网站久久| 男人天堂a在线| 久久综合欧美| 亚洲专区中文字幕| 松下纱荣子在线观看| 色偷偷综合社区| 懂色av一区二区三区四区| 色狠狠一区二区三区香蕉| 亚洲波多野结衣| 99久久伊人精品| 日本黄色的视频| 国产精品一页| 无码人妻精品一区二区三区99v| 牛牛影视久久网| 国产有码一区二区| 亚洲一区站长工具| 久久999免费视频| 国产在线资源| 精品成人一区二区| 亚洲一区二区人妻| 无码av免费一区二区三区试看| 欧美成人久久久免费播放| 成人精品免费看| 中文字幕亚洲影院| 老司机午夜精品视频在线观看| www.男人天堂网| 久久香蕉国产| 欧美一级爽aaaaa大片| www.久久东京| 国产一区二区在线播放| 卡通欧美亚洲| 77777少妇光屁股久久一区| 国产在线69| 中文字幕亚洲一区| 性猛交xxxx| 精品久久久久久久久久久久久久久久久| 国产美女www| 福利一区视频在线观看| 精品97人妻无码中文永久在线| 久久久久久久久岛国免费| 中文字幕在线观看91| 久草热8精品视频在线观看| 老头吃奶性行交视频| 国产欧美综合一区二区三区| 人妻无码一区二区三区四区| 99久久99久久精品国产片桃花| 日本成人黄色| 偷窥自拍亚洲色图精选| 国内一区二区在线视频观看| 亚洲精品a区| 亚洲永久免费观看| 成人在线视频www| 国产乱人伦真实精品视频| 欧美美女日韩| 日韩av电影院| 唐人社导航福利精品| 日韩美女毛茸茸| 芒果视频成人app| 日本91av在线播放| 欧美大胆性生话| 日本久久久久亚洲中字幕| 一区二区精品伦理...| 欧美中文在线视频| 精品国产免费人成网站| 国产成人一区二区三区电影| 浪潮色综合久久天堂| 欧美性视频网站| 日本电影欧美片| 国产精品第一区| 日本久久一区| 91性高湖久久久久久久久_久久99| 欧美成a人片免费观看久久五月天| 国产精品久久久久久久久男| 黄色成人小视频| 成人黄色短视频在线观看| 日韩激情欧美| 国产伦精品一区二区三区视频孕妇| 黄色欧美在线| 欧美日韩一区二区视频在线| 欧美色婷婷久久99精品红桃| 一级二级三级欧美| 国产主播一区| 久久精品99国产| 麻豆国产精品官网| 亚洲AV成人精品| 99国产精品视频免费观看| 粉嫩av蜜桃av蜜臀av| 国产日韩影视精品| 美国黄色片视频| 亚洲五码中文字幕| 中文字幕精品无| 欧美人伦禁忌dvd放荡欲情| 国产高清精品软件丝瓜软件| 亚洲加勒比久久88色综合 | 久久久国产影院| xxxx在线视频| 国产99久久久欧美黑人| 国产乱码精品一区二区三区亚洲人| 99三级在线| heyzo久久| 国产香蕉一区二区三区| 国产亚洲一级| 最新免费av网址| 暴力调教一区二区三区| 亚洲一区二区三区日韩| 亚洲欧美激情一区二区| 亚洲黄色激情视频| 5566中文字幕一区二区电影| 少妇精品高潮欲妇又嫩中文字幕| 在线看福利67194| 爱福利在线视频| 国产有码一区二区| 亚洲va久久久噜噜噜久久| 综合视频免费看| 久久免费高清| 91成人在线观看喷潮蘑菇| 欧美国产日韩精品免费观看| 九九九在线视频| 欧美午夜宅男影院| 天天射,天天干| 欧美成人午夜剧场免费观看| 丝袜美腿一区| 九九99玖玖| 欧美高清日韩| 一区二区三区免费播放| 9i在线看片成人免费| 国产精品视频一区二区在线观看| 欧美日韩美女在线| www.超碰在线.com| 最新国产精品亚洲| 成人小电影网站| 国产精品亚洲综合| 欧美在线免费| 日本中文字幕二区| 国产婷婷色一区二区三区在线| 国产精品日日夜夜| 91精品国产综合久久久久| av亚洲在线| 国产成+人+综合+亚洲欧洲 | 免费观看30秒视频久久| 给我看免费高清在线观看| 一区二区三区毛片| 国产aⅴ一区二区三区| www.欧美三级电影.com| 日韩av首页| 欧美专区一二三| 久久精品30| 国产老熟女伦老熟妇露脸| 一级日本不卡的影视| 精品人妻无码一区二区三区蜜桃一 | 手机在线播放av| 亚洲人妖av一区二区| 国产一区二区三区四区视频 | 欧美色图天堂| 5g影院天天爽成人免费下载| 欧美国产小视频| 久久久久久蜜桃一区二区| 国产精品女主播在线观看| 日韩手机在线视频| 亚洲欧美色婷婷| 免费观看一级欧美片| 欧美一区二区三区四区五区六区| 香蕉久久夜色精品国产| 蜜桃精品一区二区| 在线区一区二视频| av在线收看| 成人黄色av网| 国产精品mm| 屁屁影院国产第一页| 精品日韩视频在线观看| 青青草免费在线| 国产精品免费观看在线| 999久久久精品国产| 波多野结衣三级视频| 亚洲成人精品一区| 四虎影视在线播放| 国产成人精品优优av| 日韩在线精品| 女人扒开双腿让男人捅 | 精品无码一区二区三区在线| 99久久免费精品| www.久久久久久久| 色偷偷av一区二区三区乱| 最新亚洲国产| 国产真人做爰毛片视频直播| 99re热这里只有精品视频| 无码人妻av免费一区二区三区| 在线激情影院一区| 欧美视频二区欧美影视| 奇米影视亚洲色图| 国产三级精品在线| 国产手机av在线| 欧美亚洲另类视频| 日韩欧美精品| 激情av中文字幕| 91国偷自产一区二区三区观看| 久久日韩视频| 国产在线一区二| 免费在线成人网| 日韩av电影网| 视频在线观看99| 加勒比色老久久爱综合网| 欧美日韩在线免费播放| 亚洲美女一区二区三区| 四虎精品成人影院观看地址| 国产人妖伪娘一区91| 亚洲精品社区| 婷婷国产成人精品视频| 亚洲福利在线观看| 日本在线一区二区| 国产精品后入内射日本在线观看| 一区在线中文字幕| 嫩草研究院在线观看| 99中文字幕|