201249155 六、發明說明: ‘ 【發明所屬之技術領域】 [⑽1] 本發明涉及一種伺服器共用方法及系統,尤其涉及一種 共用伺服器的動態優化方法及系統。 【先前技材ΐ】 [0002] 一台dhcp伺服器,只能為動態分配的IΡ提供相同的租約 時間。在工廠的測試中,不同的測試項目,測試的時間 不同,跨度很大。此時如果將伺服器的租約設為最小值 ,用戶端會頻繁的向伺服器請求續約,當大量主板在同 時測試時,會加重網路負載;而如果將伺服器的租約設 為最大值,則用戶端會存在大量未被釋放的間置IP,而 此時伺服器又無可用IP分配。因此,目前工廠在大批量 生產測試時,都是為一個專案配置一台dhcp伺服器。在 大規模的生產測試車間,一般都會有多個不同的專案在 同時測試,這樣將導致人工和設備的費用與專案的個數 成正比。 【發明内容】 [0003] 鑒於以上内容,有必要提供一種伺服器共用方法及系統 ,能夠讓不同的測試項目共用一台伺服器,讓伺服器為 不同的測試專案分配不同的租期時間,並且對應不同的 測試項目,都可容易的動態調整租期時間。 [0004] 所述伺服器共用方法,應用工廠大批量測試板測試,該 方法包括以下步驟:配置步驟一:在接收到用戶端向伺 服器發送的請求IP的DISCOVERY封包後,配置OFFER封 包;搜索步驟一:搜索租期文檔,判斷在租期文檔中是 100118201 表單編號A0101 第4頁/共22頁 1002030610-0 201249155
Ο 否有與用戶端的網卡MAC位址的首碼相匹配的值,當租期 文檔中存在與用戶端的網卡MAC位址的首碼相匹配的值時 ’則執行替換步驟一,當租期文檔中不存在與用戶端的 網卡MAC位址的首碼相匹配的值時,則執行發送步驟一, 所述租期文檔是在伺服器上創建的一個文檔,該租期文 檔的每條記錄由兩個欄位組成,一個攔位是用戶端的網 卡MAC位址的首碼’另一個襴位是分配給用戶端的1?位址 的租期值;替換步驟一:用租期文檔中相匹配記錄的租 期值替換offer封包中的租期值;發送步驟一:將伺服器 配置好的OFFER封包或者替換過租期值的0FFER封包發送 至用戶端;配置步驟二:在接收到用戶端向伺服器發送 的確認IP的REQUEST封包後,配置ACKNOWLEDGE封包; 搜索步驟二:搜索租期文檔,判斷在租期文檔中是否有 與用戶端的網卡MAC位址的首碼相匹配的值,當租期文檔 中存在與用戶端的網卡MAC位址的首碼相匹配的值時,則 執行替換步驟二’當租期文檔中不存在與用戶端的網卡 M AC位址的首碼相匹配的值時,則執行發送步驟二;替換 步驟二:用租期文檔中相匹配記錄的租期值替換 ACKNOWLEDGE封包中的租期值;發送步驟二:將词服器 配置好的ACKNOWLEDGE封包或者替換過袓期值的 ACKNOWLEDGE封包發送至用戶端。 [0005] 所述伺服器共用系統,運行於伺服器端電腦中,該系統 包括:配置模組一’用於在接收到用戶端向伺服器發送 的請求IP的DISCOVERY封包後,配置OFFER封包;搜索 模組一,用於搜索租期文檔,判斷在租期文檔中是否有 100118201 表單編號A0101 第5頁/共22頁 1002030610-0 201249155
與用戶端的網卡MAC位址的首碼相匹配的值’所述租期文 檔是在伺服器上創建的一個文檔’該租期文檔的每條記 錄由兩個欄位組成,一個欄位是用戶端的網卡MAC位址的 首碼,另一個欄位是分配給用戶端的IP位址的租期值; 替換模組一,用於當在租期文檔中搜索到與用戶端的網 卡MAC位址的首碼一致的值時,用租期文樓中相匹配記錄 的租期值替換OFFER封包中的租期值;發送模組一,用於 當伺服器配置好OFFER封包,或用租期文檔中租期值替換 OFFER封包中的租期值後,將OFFER封包發送至用戶端; 配置模組二,用於在接收到用戶端向伺服器發送的確認 IP的REQUEST封包後,配置ACKNOWLEDGE封包;搜索模 組二,用於搜索租期文檔,判斷在租期文檔中是否有與 用戶端的網卡MAC位址的首碼相匹配的值;替換模組二, 用於在租期文檔中搜索到與用戶端的網卡MAC位址的首碼 一致的值時,用租期文檔中相匹配記錄的租期值替換 ACKNOWLEDGE封包中的租期值;發送模組二,用於當伺 服器配置好ACKNOWLEDGE封包,或用租期文棺中租期值 替換ACKNOWLEDGE封包中的租期值後,將ACKNOWLEDGE 封包發送至用戶端。 [0006] 相較於習知技術,本發明所述之伺服器共用方法及系統 ’能夠讓不同的測試項目共用一台飼服器,讓祠服器為 不同的測试專案分配不同的租期時間,並且對廣不同的 測試項目’都可容易的動態調整租期時間。這樣可以優 化词服器’減少用户端向伺服器請求續約的網路流量, 降低用戶端閒置的IP資源’充分發揮伺服器的性能。 100Π8201 表單編號A0101 第6頁/共22頁 201249155 【實施方式】 [0007] 如圖1所示 構圖。 係為本發日㈣服佳實施例之架 [0008] 伺服器共用系統10運行於伺服器1中,所述飼服器i通過 網路2與多個用戶端3連接(圖僅示出三個),主㈣ 在用戶端3中進打測試。不同的用戶端^可能屬於不同的 測式項目,如圖1中所示,有兩個用戶端3屬於測試項目a
’而另一個用戶端3關於測試項目B。在本實施例中, 所述满路2可以疋企業内部網或乙太網( Ethernet),也可以是網際網路(Internet)或其他 類型的通訊網路》 [0009]如圖2所不’係為本發明飼服器共用系統較佳實施例之功 能模組圖。 [0010] 〇 所述伺服器共用系統1〇包括配置模組一1〇1、搜索模組一 102、替換模組—103,發送模組一 1〇4、配置模組二1〇5 、搜索模組二1 〇 6、替換模組二1 〇 7、發送模組二1 〇 8、 預測試模組109。 [0011] 所述配置模組一 1 01用於在接收到用戶端3向伺服器1發送 的請求IP的DISCOVERY封包後,配置OFFER封包。 [0012] 當用戶端3需要IP時,用戶端3會以廣播的方式發送 DISCOVERY封包,向伺服器1請求ip,該discovery封包 主要包括用戶端3的網卡MAC位址。伺服器1接收到用戶端 3的請求後,將會進行OFFER封包的配置,OFFER封包中 主要包括:伺服器1的IP位址、用戶端3的網卡MAC位址、 100118201 表單編號A0101 第7頁/共22頁 1002030610-0 201249155 伺服器1提供給用戶端3的IP地址、子網路遮罩和伺服器1 提供給用戶端3的IP地址的租期值。此時租期值是保存在 伺服器1中的一個配置文檔裏,預設值一般是43200秒 (12小時)、86400秒(24小時)。作業系統不同,則租 期值的預設值不同,通過修改配置文檔就可以進行租期 值的設置。當伺服器1監聽到用戶端3發出的DISCOVERY 廣播後,伺服器1從那些還沒有租出的地址範圍内,選擇 最前面的空置IP,連同其他TCP/IP設定,響應給用戶端 3 —個0 F F E R封包。 [0013] 所述搜索模組一 102用於搜索租期文檔,判斷在租期文檔 中是否有與用戶端3的網卡MAC位址的首碼相匹配的值。 [0014] 所述租期文檔為在伺服器指定位置上創建的一個文檔, 檔案名為dhcp_time,該租期文檔的每條記錄均對應一 個網卡的產品型號。每條記錄由兩個欄位組成,一個欄 位是用戶端3的網卡MAC位址的首碼,另一個欄位是分配 給此測試項目中用戶端3的IP位址的租期值,所示租期值 的單位為秒,例如: [0015] 00A09844 3600 [0016] 00A0981 3 4400 [0017] 所述網卡MAC位址的首碼由廠商首碼及產品型號首碼組成 。網卡M A C位址是4 8位元的二進位值,即為六個位元組, 前三個位元組(稱為廠商首碼)統一分配給了各個廠商 ,因此不同廠商之間的廠商首瑪不相同。同一薇商的不 同網卡產品型號的產品型號首碼(一般用第四個位元組 100118201 表單編號A0101 第8頁/共22頁 1002030610-0 201249155 [0018] Ο [0019] Ο [0020] 來表示)也不相同,通過廠商首碼及產品型號首碼(統 稱網卡MAC位址的首碼)就可以確定網卡的生產廠商及產 品型號。網卡MAC位址的首碼長度是不確定的,但一定不 小於三個位元組(24位元),目前普遍使用的固定首碼 是四個位元組(32位元),在本發明中使用的MAC位址的 首碼也為四個位元組。 示例如下,有兩個網卡的MAC位址為: 00-A0-98-1 3-00-00和00-A0-98-44-00-00,其中, 前三個位元組,即00-A0-98,是區分廠商的首碼;而前 四個位元組,即00-A0-98_13和00-A0-98-44,是同一 廠商區分不同產品型號的首碼,其中第四個位元組即為 產品型號首碼。 對於不同的測試專案,網卡MAC位址的首碼是不一樣的, 同一個項目中,用戶端3的網卡MAC位址的首碼相同。比 如測試專案A的網卡MAC位址是:00-A0-98-1 3-00-00, 測試專案B的網卡MAC位址是:00-A0-98-44-00-00 ;那 麼測試專案A中的兩個用戶端3的網卡MAC位址的首碼是 00-A0-98-13,而測試項目B中的用戶端3的網卡MAC位 址的首碼是00-A0-98-44。 在所述租期文檔中搜索時,採用遍曆的方式,對租期文 檔中的網卡MAC位址的首碼欄位進行逐一比對,判斷是否 有與用戶端3的網卡MAC位址的首碼一致的值。 所述替換模組一 1 0 3用於當在租期文檔中搜索到有與用戶 端3的網卡MAC位址的首碼一致的值時,用租期文檔中相 100118201 表單編號A0101 第9頁/共22頁 1002030610-0 [0021] 201249155 匹配記錄的租期值替換OFFER封包中的租期值。 [0022] 所述發送模組一 1 〇 4用於當伺服器1配置好OFFER封包後 ,或用租期文檔中租期值替換OFFER封包中的租期值後, 將OFFER封包發送至用戶端3。 [0023] 所述配置模組二105用於在接收到用戶端3向伺服器1發送 的確認IP的REQUEST封包後,配置ACKNOWLEDGE封包。 [0024] 當用戶端3收到伺服器1提供的OFFER封包後,用戶端3會 以廣播的方式發送REQUEST封包,向伺服器1確認IP,該 REQUEST封包主要包括:伺服器1的IP地址、用戶端3獲 得的IP地址。伺服器1接收到用戶端3的REQUEST封包後 ,將會進行ACKNOWLEDGE封包的配置,ACKNOWLEDGE封 包中主要包括:伺服器1的IP地址、用戶端3獲得的IP地 址和伺服器1提供給用戶端3的IP地址的租期值。 [0025] 所述搜索模組二106用於搜索租期文檔,判斷在租期文檔 中是否有與用戶端3的網卡MAC位址的首碼相匹配的值。 [0026] 所述替換模組二1 0 7用於當在租期文檔中搜索到與用戶端 3的網卡MAC位址的首碼一致的值時,用租期文檔中相匹 配記錄的租期值替換ACKNOWLEDGE封包中的租期值。 [0027] 所述發送模組二1 〇8用於當伺服器1配置好ACKNOWLEDGE 封包後,或用租期文檔中租期值替換ACKNOWLEDGE封包 中的租期值後,將ACKNOWLEDGE封包發送至用戶端3。 [0028] 需要說明的是,在剛開始啟動測試時,租期文檔中的租 期值攔位的值為伺服器1系統中的配置文檔中的預設值, 100118201 第10頁/共22頁 表單編號A0101 201249155 在前期的測試中,預測試模組109從每個測試專案中取出 一個用戶端3中的主板30進行測試,計算從開機到最後測 試完成的時間,在所述時間值基礎上加上一個固定時間 值後,將所得的值做為租期文檔中對應測試項目中用戶 端的IP位址的租期值。這樣,租期文檔中租期值將更貼 近測試項目中用戶端3所需的租期值。 [0029] 如圖3所示,係為本發明伺服器共用方法較佳實施例之流 程圖。 [0030] 步驟S100,所述配置模組一 101在接收到用戶端3向伺服 器1發送的請求IP的DISCOVERY封包後,配置OFFER封包 〇 [0031] 當用戶端3需要IP時,用戶端3會以廣播的方式發送 DISCOVERY封包,向伺服器1請求IP,該DISCOVERY封包 主要包括用戶端3的網卡MAC位址。伺服器1接收到用戶端 3的請求後,將會進行OFFER封包的配置,OFFER封包中 主要包括:伺服器1的IP位址、用戶端3的網卡MAC位址、 伺服器1提供給用戶端3的IP地址、子網路遮罩和伺服器1 提供給用戶端3的IP地址的租期值。此時租期值是保存在 伺服器1中的一個配置文檔裏,預設值一般是43200秒 (12小時)、86400秒(24小時)。作業系統不同,則租 期值的預設值不同,通過修改配置文檔就可以進行租期 值的設置。當伺服器1監聽到用戶端3發出的DI SCO VERY 廣播後,伺服器1從那些還沒有租出的地址範圍内,選擇 最前面的空置IP,連同其他TCP/IP設定,響應給用戶端 3 —個0 F F E R封包。 100118201 表單編號A0101 第11頁/共22頁 1002030610-0 201249155 [0032] [0033] [0034] [0035] 步驟SI 01,所述搜索模組一 i〇2搜索租期文檔,判斷在租 期文檔中是否有與用戶端3的網卡MAC位址的首瑪相匹配 的值。當租期文檔中存在與用戶端3的網卡MAC位址的首 碼相匹配的值時,則執行步驟S1 〇 2 ’當租期文播中不存 在與用戶端3的網卡MAC位址的首碼相匹配的值時,則執 行步驟S103。 在所述租期文檔中搜索時,採用遍曆的方式,對租期文 檔中的網卡MAC位址的首碼欄位進行逐一比對,判斷是否 有與用戶端3的網卡MAC位址的首碼一致的值。 步驟S10 2,所述替換模組一 1 〇 3用租期文檔中相匹配記錄 的租期值替換OFFER封包中的租期值。 步驟S103 ’所述發送模組一 1〇4將伺服器1配置好的 OFFER封包或替換了租期值的0FFer封包發送至用戶端3 [0036] [0037] 步驟S104 ’所述配置模組二1〇5在接收到用戶端3向伺服 器1發送的確認IP的REQUEST封包後,配置ACKNOWLEDGE 封包。 當用戶端3收到伺服器1提供的OFFER封包後,用戶端3會 以廣播的方式發送REQUEST封包,向伺服器1確認IP,該 REQUEST封包主要包括:伺服器〗的1?地址、用戶端3獲 得的IP地址。伺服器1接收到用戶端3的REQUEST封包後 ’將會進行ACKNOWLEDGE封包的配置,ACKNOWLEDGE封 包中主要包括:伺服器1的IP地址、用戶端3獲得的IP地 址和伺服器1提供給用戶端3的IP地址的租期值。 100118201 表單編號A0101 第12頁/共22頁 1002030610-0 201249155 [0038] 步驟S105,所述搜索模組二106搜索租期文檔,判斷在租 期文檔中是否有與用戶端3的網卡MAC位址的首碼相匹配 的值。當租期文檔中存在與用戶端3的網卡MAC位址的首 碼相匹配的值時,則執行步驟S106,當租期文檔中不存 在與用戶端3的MAC位址的首碼相匹配的值時,則執行步 驟S107 。 [0039] Ο [0040] [0041] Ο [0042] 步驟S106,所述替換模組二107用租期文檔中相匹配記錄 的租期值替換ACKNOWLEDGE封包中的租期值。 步驟S107,所述發送模組二108將伺服器1配置好的 ACKNOWLEDGE封包或替換了租期值的ACKNOWLEDGE封包 發送至用戶端3。 需要說明的是,在剛開始啟動測試時,租期文檔中的租 期值欄位的值為伺服器1系統中的配置文檔中的預設值, 在前期的測試中,預測試模組109會從每個測試項目中取 出一個用戶端3中的主板30進行測試,計算從開機到最後 測試完成的時間,在所述時間值基礎上加上一個固定時 間值後,將所得的值做為租期文檔中對應測試項目中用 戶端IP位址的租期值。這樣,租期文檔中租期值將更贴 近項目中用戶端3所需的租期值。 综上所述,本發明符合發明專利要件,爰依法提出專利 申請。惟,以上所述者僅爲本發明之較佳實施例,本發 明之範圍並不以上述實施例爲限,舉凡熟悉本案技藝之 人士援依本發明之精神所作之等效修飾或變化,皆應涵 蓋於以下申請專利範圍内。 100118201 表單編號A0101 第13頁/共22頁 1002030610-0 201249155 【圖式簡單說明】 [0043] 圖1係為本發明伺服器共用系統較佳實施例之架構圖。 [0044] 圖2係為本發明伺服器共用系統較佳實施例之功能模組圖 〇 [0045] 圖3係為本發明伺服器共用方法較佳實施例之流程圖。 【主要元件符號說明】 [0046] 伺服器1 [0047] 網路2 [0048] 用戶端3 [0049] 伺服器共用系統 [0050] 主板30 [0051] 配置模組一 101 [0052] 搜索模組一 102 [0053] 替換模組一 103 [0054] 發送模組一 104 [0055] 配置模組二 105 [0056] 搜索模組二 106 [0057] 替換模組二 107 [0058] 發送模組二 108 [0059] 預測試模組 109 100118201 表單編號A0101 第14頁/共22頁 1002030610-0 201249155 [0060] 接收用戶端向伺服器請求I P的DISCOVERY封包,配置 OFFER封包 S100 [0061] 搜索租期文檔’判斷在租期文檔中是否有與用戶端的網 卡MAC首碼相匹配的值S101 [0062] 用租期文檔中租期值替換OFFER封包中租期值S102 [0063] 發送OFFER封包 S1 03 [0064] 接收用戶端向伺服器確認IP的REQUEST封包,配置 & ACKNOWLEDGE封包 S1 04 [0065] 搜索租期文檔,判斷在租期文檔中是否有與用戶端的網 卡MAC首碼相匹配的值S105 [0066] 用租期文檔中租期值替換ACKNOWLEDGE封包中租期值 S106 [0067] 發送ACKNOWLEDGE封包 S107 ◎ 100118201 表單編號A0101 第15頁/共22頁 1002030610-0