本技術涉及服務器,尤其涉及一種網卡測試方法及服務器。
背景技術:
1、網卡是服務器系統必備的模塊,用于實現服務器系統之間的數據傳輸,也是服務器系統的主要功能。因此,無論是在產品研發階段還是在生產交付環節,都需要對服務器系統中部署的網卡性能和網絡鏈路性能進行針對性測試。其中,最重要的測試項目就是網卡壓力測試。
2、一般的,在對服務器系統中部署的網卡進行壓力測試時,需要提供額外的主機,并在主機上運行預設的程序進行測試狀態確認、測試組隊、測試過程控制和測試結果確認,增加了硬件成本和系統維護成本。
技術實現思路
1、本技術實施例提供了一種網卡壓力測試方法及服務器,在進行網卡壓力測試時,不需要額外增加硬件設備和硬件性能需求,在達到網卡壓力測試目的情況下,節省了網卡壓力測試過程中的硬件和軟件成本。
2、第一方面,本技術實施例提供了一種網卡壓力測試方法,應用于第一服務器,該方法包括:第一服務器獲取至少一個第二服務器的第一網口信息文件;第一網口信息文件用于標識第二服務器能夠參與網卡壓力測試;第一服務器根據第一服務器的第二網口信息文件和獲取到的第一網口信息文件,從至少一個第二服務器中確定出第三服務器;第一服務器對第一服務器和第三服務器上的網卡進行壓力測試。其中,第一服務器與第二服務器通過交換機連接。
3、在本方案中,在進行網卡壓力測試時,第一服務器可以自動獲取其他服務器對應的網口信息文件,并根據獲取的網口信息文件自動組成網卡壓力測試組,自動進行網卡壓力測試。即在本方案中,在進行網卡壓力測試時,不需要額外的終端設備對服務器進行測試組隊,測試過程和測試結果控制,節省了硬件和軟件成本。
4、在一個可能的實現方式中,第一服務器獲取至少一個第二服務器所的第一網口信息文件,包括:第一服務器獲取第一信息,第一信息中攜帶有與第一服務器連接的交換機的管理端口的互聯網協議(internet?protoco?l,ip)地址,管理端口的ip地址用于登錄交換機;第一服務器從交換機中獲取第二信息,第二信息包含至少一個第二服務器的網口的ip地址和/或媒體存取控制位址(med?ia?access?contro?l,mac)地址;第一服務器根據至少一個第二個服務器的網口的ip地址和/或mac地址獲取至少一個第二服務器的第一網口信息文件。
5、也就是說,第一服務器可以在獲取其他服務器對應的網口信息文件時,第一服務器可以通過獲取的與第一服務器連接的交換機發送的lldp報文,獲取交換機管理網口的ip地址。然后,第一服務器根據獲取的ip地址登錄交換機,獲取交換機端口中保存的該端口所連接的服務器的網口的ip地址和/或mac地址等信息。第一服務器可以根據獲取的其他服務器的網口的ip地址和/或mac地址,獲取其他服務器對應的網口信息文件。通過獲取的網口信息文件可以對各個服務器進行測試組隊,避免了通過外部設備進行測試組隊控制,節省了硬件成本。
6、在一個可能的實現方式中,通過電子設備對第一服務器的網卡的各個網口和至少一個第二服務器的網卡的各個網口分別分配ip地址。
7、在一個可能的實現方式中,第一服務器根據第一服務器的第二網口信息文件和獲取到的第一網口信息文件,從至少一個第二服務器中確定出第三服務器,包括:第一服務器根據第一網口信息文件和第二網口信息文件中各自攜帶的第一網口信息文件和第二網口信息文件的生成時間,對第一網口信息文件和第二網口信息文件進行排序;按照排序從至少一個第二服務器中確定出第三服務器。
8、也就是說,第一服務器可以根據獲取的各個第二服務器對應的網口信息文件,自動實現網口壓力測試組隊。避免了通過外部設備進行測試組隊控制,節省了硬件成本。
9、在一個可能的實現方式中,第一服務器對第一服務器和第三服務器上的網卡進行壓力測試之前,該方法還包括:第一服務器上的接收端口接收第三服務器上的發送端口發送的第一數據包;在第一服務器上的接收端口接收到第一數據包的情況下,觸發第一服務器啟動網卡壓力測試。
10、也就是說,在啟動網卡壓力的測試的過程中,第一服務器上作為接收端的網口需要接收第三服務器上作為發送端的網口發送的數據包。以保證第一服務器和第三服務器之間的網口之間的通信是暢通的。
11、在一個可能的實現方式中,第一服務器根據第一服務器的網口的ip地址、測試狀態標志位生成第一服務器的第二網口信息文件,其中第二網口信息文件中包括第一服務器中生成網口信息文件的時間。同樣地,第二服務器根據第二服務器的網口的ip地址、測試狀態標志位生成第二服務器的第一網口信息文件,其中第一網口信息文件中包括第二服務器中生成網口信息文件的時間。
12、在一個可能的實現方式中,第一服務器對第一服務器和第三服務器上的網卡進行壓力測試之前,該方法還包括:第一服務器上的發送端口向第三服務器上的接收端口發送第二數據包;第一服務器上的接收端口在接收到第三信息的情況下,觸發第一服務器啟動網卡壓力測試,第三信息用于標識第二數據包被第三服務器接收。
13、也就是說,在啟動網卡壓力測試的過程中,第一服務器作為接收端的網口也需要接收第三服務器上作為發送端的網口發送的數據包。以保證第一服務器和第三服務器之間的網口之間的通信是暢通的。
14、在一個可能的實現方式中,在觸發第一服務器啟動網卡壓力測試以后,該方法還包括:更新第二網口信息文件中保存的第一服務器上的測試狀態標志位。
15、也就是說,在對整機柜服務器進行網卡壓力測試時,對于啟動了網卡壓力測試的服務器,需要更新該服務器對應的網口信息文件,以避免已經啟動網卡壓力測試的服務器與其他位啟動網卡壓力測試的服務器組成測試組。
16、在一個可能的實現方式中,第一服務器對第一服務器和第三服務器上的網卡進行壓力測試,包括:檢測第一服務器和第三服務器上的每一個網口的通信速率;若第一服務器或者第三服務器中存在網口的通信速率低于設定的通信速率閾值,確定第一服務器和第三服務器之間的網卡壓力測試失敗。
17、也就是說,在對第一服務器和第三服務器的網卡壓力測試結果進行判斷時,可以預先設定一個通信速率閾值。如果,第一服務器和第三服務器上存在任意一個網口的通信速率低于預先設定的通信速率閾值,即可以認為第一服務器和第三服務器之間的網卡壓力測試失敗。通過對待測網口的通信速率進行檢測,實現了對網卡壓力測試結果的自動判斷。
18、在一個可能的實現方式中,在確定第一服務器和第三服務器的網卡壓力測試失敗之后,該方法還包括:分別對第一服務器和第三服務器進行單節點測試,以確定發生異常的網卡所在的服務器。
19、也就是說,在第一服務器和第三服務器之間的網卡壓力測試失敗的情況下,可以通過對第一服務器和第三服務器進行單節點測試,以進一步的確定發生異常的網卡所在的服務器。方便后續運維人員的處理。
20、在一個可能的實現方式中,第一網口信息文件和第二網口信息文件包含的信息類型相同;第一網口信息文件中包括:網口的ip地址、網口的mac地址、網口測試狀態標志位、網口信息文件的生成時間。
21、在一個可能的實現方式中,第一網口信息文件中可以包括:網口的ip地址、網口測試狀態標志位、網口信息文件的生成時間。
22、在一個可能的實現方式中,第一網口信息文件中可以包括:網口的mac地址、網口測試狀態標志位、網口信息文件的生成時間。
23、第二方面,本技術實施例提供了一種服務器,包括:
24、至少一個存儲器,用于存儲程序;
25、至少一個處理器,用于執行存儲器存儲的程序,當存儲器存儲的程序被執行時,處理器用于執行第一方面或第一方面的任一種可能的實現方式所描述的方法。
26、第三方面,本技術實施例提供了一種計算機存儲介質,計算機存儲介質中存儲有指令,當指令在計算機上運行時,使得計算機執行第一方面或第一方面的任一種可能的實現方式所描述的方法。
27、第四方面,本技術實施例提供了一種包含指令的計算機程序產品,當指令在計算機上運行時,使得計算機執行第一方面或第一方面的任一種可能的實現方式所描述的方法。