新四季網

對伺服器的網絡性能進行壓力測試的方法、設備及系統的製作方法

2023-09-18 03:02:45 2

專利名稱:對伺服器的網絡性能進行壓力測試的方法、設備及系統的製作方法
技術領域:
本發明涉及一種對伺服器的網絡性能進行壓力測試的方法、測試設備及
系統,特別涉及一種多IP (Internet Protocal,英特網協議,本文指IP地 址)地址對Web伺服器進行訪問,從而測試其網絡性能的方法、測試設備及 系統。
背景技術:
壓力測試是指通過應用很大的工作負載來使軟體超負荷運轉,從而達到 測試目的的測試方法,通過壓力測試經常能夠發現許多隱蔽的錯誤,如內存 洩漏、死鎖及同步問題,而採用一般的功能測試和單元測試的方法,通常發 現不了這些錯誤。
對阿帕奇(apache, —種Web伺服器)網絡性能的壓力測試通常是利用 壓力機器模擬大量用戶IP對apache進行訪問,來測試apache的性能,某些 用戶IP在對apache進行訪問時,經常被預先擋住,無法進行後續的測試流 程,目前採用的壓力測試方法都是通過將這些被預先擋住的用戶IP添加到白 名單中,該白名單中的用戶IP對apache進行訪問時,就會跳過一些會預先 擋住該IP的代碼流程,而在真實的網絡中用戶IP的訪問均是正常的流程, 因此,這種壓力測試的方法無法模擬完全真實的情況,存在一定的風險。
由於超文本傳輸控制協議(HyperText Transfer Protocol,以下筒稱 http)是基於傳輸控制協議(Transmission Control Protocol,以下簡稱 tcp)連接的,需要3次握手才能建立連接,使用大量偽造的用戶IP建立連 接難度大,目前尚無此類工具。
另外,受限於linux主機管理制度,無法使用root帳號進行壓力測試, 因而無法隨意修改路由表;同時壓力測試也不能影響其他主機,測試的壓力 也受到一定限制。

發明內容
本發明第一個方面的目的在於提供一種對伺服器的網絡性能進行壓力測 試的方法,能使用一臺壓力機器發出多個用戶IP請求,模擬多用戶IP位址 不同的壓力,克服偽造IP連接難度大的問題,同時提高壓力能力。
本發明第二個方面的目的在於提供一種對伺服器的網絡性能進行壓力測 試的測試設備,能使用一臺壓力機器發出多個用戶IP請求,模擬多用戶IP 地址不同的壓力。
本發明第三個方面的目的在於提供一種對伺服器的網絡性能進行壓力測 試的系統,能使用一臺壓力機器發出多個IP請求,模擬多用戶IP位址不同 的壓力,同時提高壓力能力,增強測試系統的安全性。
本發明第一個方面通過一些實施例提供了如下的技術方案,包括如下步

步驟l、將伺服器和測試設備配置在同一個虛擬區域網中,並將偽造IP 的路由插入到所述伺服器的路由表中;
步驟2、測試設備發送源地址為所述偽造IP的數據包,向伺服器發起 tcp連接請求;
步驟3、伺服器接收測試設備發送來的數據包,根據所述伺服器的路由 表將返回包發送給測試設備;
步驟4、測試設備偵聽所有到達的數據包,過濾出伺服器的返回包,並 根據所述返回包偽造出確認包發送給伺服器,完成tcp連接;
步驟5、測試設備向伺服器發送測試數據。
本發明第一個方面通過一些實施例提供的對伺服器的網絡性能進行壓力
測試的方法,使用一臺壓力機器發出多個IP請求,模擬多用戶IP位址不同
的壓力,提高了壓力能力;通過將伺服器和測試設備配置在同一個虛擬局域
網中,並將偽造IP的路由插入到伺服器的路由表中,克服了偽造IP連接難 度大的問題。
本發明的第二個方面通過一些實施例提供了如下的技術方案,包括偽 造IP單元,用於生成預先配置的偽造IP段內的偽造IP;數據單元,用於生 成測試數據;偵聽單元,用於偵聽所有到達所述測試設備的數據包,過濾出 所述伺服器發送來的返回包;發送單元,用於向所述伺服器發送數據包,根 據所述伺服器的返回包偽造出確認包,並將所述確認包發送給所述伺服器; 還用於將所述數據單元生成的測試數據發送給所述伺服器;接收單元,用於 接收所述伺服器發送的返回包。
本發明第二個方面通過一些實施例提供的對伺服器的網絡性能進行壓力 測試的測試設備,通過設置偽造IP單元,使得一臺壓力機器發出多個IP請 求,模擬多用戶IP位址不同的壓力。
本發明的第三個方面通過一些實施例提供了如下的技術方案,包括服務 器和測試設備,其中所述伺服器包括設置路由單元,用於實現在工作帳號 下將偽造IP的路由插入到所述伺服器的路由表中;所述測試設備用於生成偽 造IP和測試數據以及與伺服器之間的信息交互。
本發明第三個方面通過一些實施例提供的對伺服器的網絡性能進行壓力 測試的系統,將可以生成偽造IP的測試設備作為壓力機器,使得一臺壓力機 器發出多個IP請求,模擬多用戶IP位址不同的壓力;通過設置路由單元, 使得能夠在工作帳號下修改路由,增強了測試系統的安全性。


圖1為本發明第一個方面一具體實施例的流程圖; 圖2為本發明第二個方面一具體實施例的示意圖3為本發明第三個方面一具體實施例的示意圖。
具體實施例方式
下面通過附圖和實施例,對本發明的技術方案啦l進一步的詳細描述。
本發明的實施例中,伺服器為一種Web伺服器,測試設備為測試程序所 在的主機,測試設備即一臺壓力機器;測試設備向伺服器發送大量的偽造IP, 均與伺服器進行tcp連接,然後向伺服器發送測試數據,模擬多用戶IP位址 不同大小和不同頻率的壓力訪問,從而對Web伺服器的網絡性能進行測試, 且儘量與實際上線的情況保持一致。
在以下的實施例中,偽造IP單元是指一個用於偽造IP的壓力工具,其 可生成不斷變化的IP;設置路由單元是指一個可以在工作帳號下添加、刪除 及查看路由的單元。
如圖1所示,為本發明第一個方面一具體實施例的流程圖,包括
步驟101、將伺服器和測試設備配置在同一個虛擬區域網(Virtual Local Area Network,以下簡稱VLAN)中,並將偽造IP的路由插入到所述服務 器的路由表中。
假設測試設備的IP為IP1,伺服器的IP為IP2,伺服器和測試設備在同 一個VLAN中,IP1與IP2為同一網段。根據壓力測試所需要的壓力,預先配 置一偽造IP段,該IP段內包括一定範圍的偽造IP,將其添加到偽造IP單 元中,通過偽造IP單元隨機生成該預先配置的偽造IP段內的偽造IP;為了 能使伺服器返回包能到達測試設備上,預先配置的偽造IP段內的偽造IP與 IP1和IP2不在同一網段,因為如果偽造IP與IP2在同一網^a,月l務器在發 送tcp3次握手中的第二個數據包時,即伺服器的返回包時,就不會查詢路由 表,而直接查詢地址解析協議(Address Resolution Protocol,以下簡稱 ARP)表發送,這樣返回包就不能正確到達測試設備。
在伺服器上,通過設置路由單元,使用工作帳號修改IP路由表,將偽造
IP的路由插入到伺服器的路由表中,並將預先配置IP段的網關設置為測試 設備的IP1,這樣所有偽造IP的路由均指向IP1。
當一個偽造IP要向伺服器發送測試數據前,首先要和伺服器建立tcp連 接,每個偽造IP與伺服器建立tcp連接,均要執行下面的步驟102、 103和 104。
步驟102、測試設備發送源地址為偽造IP的數據包,向伺服器發起tcp 連接請求。
該數據包是測試設備的某個偽造IP向伺服器發送的第一個tcp數據包, 該數據包的IP頭和tcp頭均為偽造的信息,設該偽造IP為IP3, IP3與IP1 和IP2不在同一網段;該數據包的源IP為IP3,目的IP為IP2,數據包在發 送的過程中,檢測到是從測試設備發送到伺服器,又由於測試設備IP1和服 務器的IP2在同一個網段,所以該數據包發送過程為二層轉發,即在數據鏈 路層即可完成轉發;該二層轉發的過程中,測試設備向伺服器發送的數據包 中封裝有測試設備隨機生成的序列號A。
步驟103、伺服器接收測試設備發送來的數據包,根據伺服器的路由表 將返回包發送給測試設備。
服務端接收到測試設備發送來的數據包後,提取該數據包中的序列號A, 在序列號A的基礎上加1生成確認號A + 1,並將確認號A + 1和伺服器隨機 生成的序列號B封裝在返回包中。
返回包的源IP為IP2,目的IP為IP3,由於IP2和IP3不在同一網l殳, 所以該返回包的發送過程為三層轉發,即需要經過路由轉發;因為IP3是偽 造的IP,而真實的IP3存在於網絡中,為了能完成壓力測試,不能讓測試數 據包發送到真實的IP3處,使測試設備接收到所有發送到IP3的數據包,所 以在步驟101中,預先設置了所有偽造IP的路由均指向測試設備的IP1;因 此,在路由轉發過程中,偽造IP3指向的路由為IP1,返回包被成功轉發至 測試設備。
步驟104、測試設備偵聽所有到達的數據包,過濾出伺服器的返回包,
並根據返回包偽造出確認包發送給伺服器,完成tcp連接。
因為測試設備和伺服器連接在網絡中,測試設備會接收到來自於許多設
備發送來的數據包,測試設備利用PF-PACKET類型的socket接口偵聽所有到 達的數據包,根據數據包中封裝的源IP位址、目的IP位址、序列號、確認 號以及埠號等信息過濾出伺服器的返回包,封裝在伺服器的返回包中的信 息為源IP位址為IP2,目的IP位址為IP3,序列號為B,確-〖人號為A + l, 提取出上述信息即可過濾出伺服器的返回包;伺服器對確認號A + 1和序列號 B進行處理,分別生成序列號A + 1和確認號B + 1,將其封裝在第3個tcp數 據包,即確認包中;當測試設備把該確認包發送給伺服器後,測試設備即確 認與伺服器建立tcp連接;當伺服器接收到該確認包後,提取封裝在該確認 包中的確認號B + 1,也確認和測試設備建立tcp連接。
通過執行步驟102、 103和104,偽造IP3與伺服器建立tcp連接,隨即 執行步驟105。
步驟105、在完成tcp連接後,測試設備向伺服器發送測試數據。
在偽造IP3與伺服器建立tcp連接後,則向伺服器發送測試數據,以進 一步測試伺服器在壓力測試下的網絡性能。
上述步驟101中,可以通過在root帳號下置s位的方式,即i殳置位於 user或group權限組的第三位置,使得以後修改路由表可以使用工作帳號。
在上述步驟中,測試設備向伺服器發送的數據包、確認包和測試數據, 以及伺服器向測試設備發送的返回包均為單播報文,因此,這些壓力數據包 不會到達VLAN內的其他主機上,也不會到達網關上,只會在測試設備與服務 器之間流動,極大的減輕了 VLAN內數據包的傳送量。
在上述步驟101中,將一個以上的偽造IP的路由插入到伺服器的路由表 中,隨後,每個偽造IP需執行步驟102、 103、和104與伺服器建立tcp連 接,然後執行步驟105,從而通過使用一臺壓力機器完成多IP對伺服器進行
壓力測試的過程,模擬多用戶IP位址不同的壓力;通過將伺服器和測試設備 配置在同一VLAN中,將偽造IP的路由插入到伺服器的路由表中,克服了偽 造IP連接難度大的問題,提高了壓力能力;又由於將偽造IP的路由插入到 伺服器的路由表中,是通過在工作帳號下進行的,增強了測試系統的安全性。
本發明還可以通過防火牆技術來偽造IP,但需涉及作業系統內核的修改, 提高了成本;本發明也可以不修改伺服器的路由,而使用猜測IP頭中序列號 的方法完成tcp連才妄。
本領域的普通技術人員可以理解,tcp的連接過程均遵循網際網路標準, 因此,本實施例所述的tcp連接過程適用於所有基於tcp/ip協議的環境,而 不僅限於linux環境,同時還適用於微軟系列作業系統等其他環境。
本發明第二個方面一具體實施例
如圖2所示,為本發明第二個方面一具體實施例的示意圖。本發明對服 務器的網絡性能進行壓力測試的測試設備,包括偽造IP單元21,用於生 成預先配置的偽造IP段內的偽造IP;數據單元22,用於生成測試數據;偵 聽單元23,用於偵聽所有到達所述測試設備的數據包,過濾出所述伺服器發 送來的返回包;發送單元24,用於向所述伺服器發送數據包,根據所述服務 器的返回包偽造出確認包,並將所述確認包發送給所述伺服器;還用於將所 述數據單元生成的測試數據發送給所述伺服器;接收單元25,用於接收所述 伺服器發送的返回包。
上述測試設備中,通過設置偽造IP單元21,使得一臺壓力機器發出多 個IP請求,模擬多用戶IP位址不同的壓力。
本發明第三個方面一具體實施例
如圖3所示,為本發明第三個方面一具體實施例的示意圖。本發明對服 務器的網絡性能進行壓力測試的系統,包括測試設備31和伺服器32,測試 設備31模擬一臺壓力機器,伺服器32為一種Web伺服器。
其中伺服器32包括設置路由單元,用於實現在工作帳號下將偽造IP
的路由插入到伺服器32的路由表中;測試設備31,用於生成偽造IP和測試 數據以及與伺服器32之間的信息交互。 其中,測試設備31包括
偽造IP單元21,用於生成預先配置的偽造IP段內的偽造IP;數據單元 22,用於生成測試數據;偵聽單元23,用於偵聽所有到達所述測試設備31 的數據包,過濾出所述伺服器32發送來的返回包;發送單元24,用於向所 述伺服器32發送數據包,根據所述伺服器32的返回包偽造出確認包,並將 所述確認包發送給所述伺服器32;還用於將所述數據單元生成的測試數據發 送給所述伺服器32;接收單元25,用於接收所述伺服器32發送的返回包。
上述系統中,通過設置偽造IP單元,使得一臺壓力機器發出多個IP請 求,模擬多用戶IP位址不同的壓力;通過設置路由模塊,使得能夠在工作帳 號下^f奮改^各由,增強了測試系統的安全性。
本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟 可以通過程序指令相關的硬體來完成,前述的程序可以存儲於一計算機可讀 取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述 的存儲介質包括R0M、 RAM、磁碟或者光碟等各種可以存儲程序代碼的介質。
最後應說明的是以上實施例僅用以說明本發明的技術方案,而非對其 限制;儘管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術 人員應當理解其依然可以對前述各實施例所記載的技術方案進行》務改,或 者對其中部分技術特徵進行等同替換;而這些修改或者替換,並不使相應技 術方案的本質脫離本發明各實施例技術方案的精神和範圍。
權利要求
1、一種對伺服器的網絡性能進行壓力測試的方法,其中執行以下步驟步驟1、將伺服器和測試設備配置在同一個虛擬區域網中,並將偽造IP的路由插入到所述伺服器的路由表中;步驟2、所述測試設備發送源地址為所述偽造IP的數據包,向所述伺服器發起tcp連接請求;步驟3、所述伺服器接收所述測試設備發送來的所述數據包,根據所述伺服器的路由表將返回包發送給所述測試設備;步驟4、所述測試設備偵聽所有到達的數據包,過濾出所述伺服器的所述返回包,並根據所述返回包偽造出確認包發送給所述伺服器,完成tcp連接;步驟5、所述測試設備向所述伺服器發送測試數據。
2、 根據權利要求1所述的方法,其特徵在於,所述步驟1中將伺服器 和測試設備配置在同一個虛擬區域網中,具體為將所述伺服器和所述測試 設備的IP配置成同一網段的IP。
3、根據權利要求2所述的方法,其特徵在於,所述偽造IP與所述服務 器和所述測試設備的IP不在同一網段。
4、 根據權利要求1所述的方法,其特徵在於,所述步驟1中,將偽造 IP的路由插入到所述伺服器的路由表中,具體為將預先配置的偽造IP段 內的所述偽造IP插入到所述伺服器的路由表中,所述偽造IP的路由均指向 所述測試設備的IP。
5、 根據權利要求2或3所述的方法,其特徵在於,所述步驟2中所述 測試設備向所述伺服器發起所述tcp連接請求的過程為二層轉發。
6、 根據權利要求3所述的方法,其特徵在於,所述步驟3中將所述返 回包發送給所述測試設備的過程為三層轉發。
7、 根據權利要求l-3所述的任一方法,其特徵在於,所述步驟4中所述測試設備偵聽所有到達的數據包,過濾出所述伺服器的所述返回包,具體為所述測試設備偵聽所有到達的數據包,並根據所述數據包中的源IP地 址、目的IP位址、序列號、確認號以及埠號的信息過濾出所述伺服器的返 回包。
8、 根據權利要求1或4所述的方法,其特徵在於,在工作帳號下將所 述偽造IP的路由插入到所述伺服器的路由表中。
9、 根據權利要求1所述的方法,其特徵在於,所述測試設備向所述服 務器發送的所述數據包、所述確認包和所述測試數據,以及所述^L務器向所 述測試設備發送的所述返回包均為單播報文。
10、 一種對伺服器的網絡性能進行壓力測試的測試設備,包括 偽造IP單元,用於生成預先配置的偽造IP段內的偽造IP; 數據單元,用於生成測試數據;偵聽單元,用於偵聽所有到達所述測試設備的數據包,過濾出所述服務 器發送來的返回包;發送單元,用於向所述伺服器發送數據包,根據所述伺服器的返回包偽 造出確認包,並將所述確認包發送給所述伺服器;還用於將所述數據單元生 成的測試數據發送給所述伺服器;接收單元,用於接收所述伺服器發送的返回包。
11、 一種對伺服器的網絡性能進行壓力測試的系統,包括伺服器和測試 設備,其特徵在於,所述伺服器包括設置路由單元,用於實現在工作帳號 下將偽造IP的路由插入到所述伺服器的路由表中;所述測試設備用於生成偽 造IP和測試數據以及與所述伺服器之間的信息交互。
12、 根據權利要求11所述的系統,其特徵在於,所述測試設備包括 偽造IP單元,用於生成預先配置的偽造IP段內的偽造IP; 數據單元,用於生成測試數據;偵聽單元,用於偵聽所有到達所述測試設備的數據包,過濾出所述伺服器發送來的返回包;發送單元,用於向所述伺服器發送數據包,根據所述伺服器的返回包偽造出確認包,並將所述確認包發送給所述伺服器;還用於將所述數據單元生 成的測試數據發送給所述伺服器;接收單元,用於接收所述伺服器發送的返回包。
全文摘要
本發明涉及一種對伺服器的網絡性能進行壓力測試的方法、測試設備及系統,其中方法執行以下步驟將伺服器和測試設備配置在同一個虛擬區域網中,並將偽造IP的路由插入到伺服器的路由表中;測試設備向伺服器發送源地址為偽造IP的數據包;伺服器接收數據包,根據伺服器的路由表將返回包發送給測試設備;測試設備偵聽所有到達的數據包,過濾出伺服器的返回包,並偽造出確認包發送給伺服器,完成tcp連接;測試設備向伺服器發送測試數據。本發明的方法使用一臺壓力機器發出多個IP請求,模擬多用戶IP位址不同的壓力,提高了壓力能力,克服了偽造IP連接難度大的問題。
文檔編號H04L12/26GK101388800SQ20071012167
公開日2009年3月18日 申請日期2007年9月12日 優先權日2007年9月12日
發明者周澤睿, 磊 王 申請人:百度在線網絡技術(北京)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀