1. 程式人生 > >PXE網路技術在自動測試中的實現

PXE網路技術在自動測試中的實現

PXE(Preboot Execution Environment,遠端預啟動執行環境),是Intel開發的遠端預啟動技術,被稱為2000年NC的最前沿尖端科技,應用於無盤工作站與瘦客戶機系統(Client/Server)的網路模式下,支援廣泛的作業系統,如Microsoft Win95/98/2000/NT/XP、Linux等。它使用最新的網路技術、協議,支援工作站通過網路從遠端伺服器下載映像,並由此支援來自網路的作業系統的啟動過程,應用面極廣。不同於以往廣泛應用的基於RPL的無盤工作站系統,它效能更高,安裝更簡單,適用範圍更廣泛,安全性、可維護性更強。目前應用於為廣大網民提供收費上網服務的網咖或網路咖啡屋。首先,所有的工作全集中在單一的伺服器上進行,不必分別安裝或者維護每一臺客戶機,可大大降低業主的維護工作量。其次,系統具有高安全性。客戶機採用虛擬上網的形式,既使顧客任意刪除、修改系統檔案也不會對網路系統、硬體造成破壞,只要重新啟動工作站即可復原,而在伺服器上加一個功能強大的防火牆系統就可解決網路安全的難題。第三,保證高速上網,系統內資訊傳輸高速穩定。由於PXE協議將資料分割成極為細小的部分,並應用虛擬記憶體技術,所以使資料的傳輸速度大大加快,相對於以前的RPL遠端引導無盤啟動技術,PXE的執行速度提高三倍以上,對於大型軟體執行相當穩定。第四,區域網內功能強大。由於該無盤工作站支援Win98/XP系統,所以通用的基於系統的軟體都可以執行。第五,該網咖方案具有極高的價效比。無盤站可完全省掉硬碟、保護卡的投資,系統配置經濟、靈活;另外,由於網咖終端從伺服器遠端啟動,作為無盤工作站的終端, 作業系統和遊戲等軟體資料均通過伺服器遠端下載和執行,如果終端作業系統或應用軟體工作異常,復位該終端即可重新從伺服器下載並恢復,這樣大大減少了維護費用。而且,系統非常便於管理,也節約了系統管理成本。綜合幾點來看,成本的節約造就了PXE網咖無盤工作站的高性價比。除在網咖的大量使用外,還大量以瘦客戶機形式大量適用於行業使用者使用,如:政府辦公網路、稅收徵收系統、電力系統、醫遼領域等等。但PXE網路技術在製造業的測試中有什麼發揮餘地,又如何實現呢?將在下面的介紹中為大家闡述。關鍵詞: PXE,DHCP,TCPIP,TFTP,MAC Address,RPL,瘦客戶機,網絡卡ID 一 術語解釋PXE:(Preboot Execution Environment,它是基於TCP/IP、DHCP、TFTP等Internet協議之上的擴充套件網路協議)技術提供的從網路啟動的功能。DHCP:動態主機配置協議 (DHCP),提供主機 IP 地址的動態租用配置、並將其他配置引數分發給合法網路客戶端的 TCP/IP 服務協議。DHCP 提供了安全、可靠、簡便的 TCP/IP 網路配置,能避免地址衝突,並且有助於保留網路上客戶端 IP 地址的使用TCPIP:傳輸控制協議/網際協議,Internet 上得到廣泛使用的一組網路協議,用來跨有不同硬體體系結構和不同作業系統的計算機相互連線的網路通訊。TCP/IP 包括計算機如何進行通訊的標準,及用於連線網路和路由選擇通訊的約定。TFTP:零碎檔案傳輸協議一種用來下載開始安裝過程中所需初始檔案的協議。MAC Address:網絡卡的實體地址,可以在全世界範圍內唯一標示連線到網路的主機瘦客戶機:瘦客戶機是一種通過遠端顯示協議執行多使用者Windows2000Server系統的客戶端裝置。它的工作原理是:終端和伺服器通過TCP/IP協議和標準的區域網聯結, 瘦客戶機作為客戶端將其滑鼠、鍵盤的輸入傳遞到終端伺服器處理,伺服器再把處理結果傳遞迴客戶端顯示。眾多的客戶端可以同時登入到伺服器上,彷彿同時在伺服器上工作一樣,它們之間的工作是相互隔離的。生成樹協議:生成樹協議 Spanning Tree 定義在 IEEE 802.1D 中,是一種橋到橋的鏈路管理協議,它在防止產生自迴圈的基礎上提供路徑冗餘。二、PXE工作原理介紹為便於理解,在介紹PXE之前不得不提到RPL,並對兩者進行分別理解:PXE(Preboot Execution Environment,遠端引導技術)是RPL(Remote Initial Program Load,遠端啟動服務)的升級產品。它們的不同之處為:RPL是靜態路由,PXE是動態路由。不難理解:RPL是根據網絡卡上的ID號加上其它的記錄組成的一個幀向伺服器發出請求,而伺服器那裡早已經有了這個ID資料,匹配成功則進行遠端啟動;PXE則是根據伺服器端收到的工作站MAC地址(就是網絡卡號),使用DHCP服務給這個MAC地址指定一個IP地址,每次重啟動可能同一臺工作站有與上次啟動有不同的IP,即動態分配地址。下面是主機通過PXE聯網的原理和具體工作流程的介紹:一部機器通過網路啟動,它必須得到這些資訊:1) 一個identity;(有許多client同時啟動,每臺都有唯一識別號,不然,這臺機器在網路中就沒有身份。)2) 某個作業系統的映像檔案;(把作業系統引導(boot)下來。)3) 可以操作的檔案系統。下面,按工作站引導過程說明它的原理:1)當客戶機啟動後,若主機在啟動時發現網絡卡上已經連線有網線時就會預設的開始啟動其網絡卡上的PXE BootRom(目前大多數的主機板都已經將此功能整合到了主機板的BIOS中),它會廣播一個引導請求幀(FIND幀),該幀中包含有客戶機的網絡卡號,就是MAC地址:00E09C410021這樣的獨一無二的主機網路標示。客戶機FOUND幀PXE Server2)如果伺服器收到工作站所送出的要求, 就會送回 DHCP 迴應, 這個響應包括:分配給工作站端的機器名字、IP地址、伺服器端的IP地址、以及啟動時的映像檔案等。)。 否則, 伺服器會忽略這個要求。 3)工作站收到第一個響應後(假如網路上有不止一臺的sever在執行遠端啟動服務,工作站只對收到的第一個FOUND幀有響應,則傳送一個SEND.FILE.REQUESTFrame給第一個響應的遠端啟動伺服器,以請求傳送啟動所需的檔案。4)當遠端啟動伺服器收到SEND.FILE.REQUESTFrame的要求後,會根據其遠端啟動資料庫中的工作站記錄查詢對應的啟動塊,就是bootblock,將工作站所需的啟動檔案傳送給工作站(就是啟動所要的那個映像檔案)。5)工作站使用TFTP協議接收到我們編寫的啟動映像後,就開始執行映像檔案中的啟動程式,將執行點轉向啟動塊的入口,啟動工作站開始將控制權轉交啟動塊,引導作業系統,完成遠端啟動。這裡補充解釋一下TFTP協議。TFTP協議是可以理解為FTP的下傳部分,是FTP的cut-down版本,它使用了UDP(User Datagram Protocol )代替TCP(TransmissionControl Protocol),這是因為client端的bootrom很小,32k或16k,由於UDP是塊導向的,而TCP是流導向的,所以我們無盤啟動用了TFTP,一塊一塊地傳,直到檔案傳完。其間,它們要握手的,怕包的丟失。整個啟動映像檔案傳輸完畢後,在入口處,bootrom的控制權就交給作業系統的啟動映像檔案了。三、實現PXE測試的軟硬體需求1 軟體方面:支援PXE無盤啟動的伺服器端軟體;伺服器端DHCP協議的安裝;可以啟動的映像檔案;客戶端獨立的MAC地址;伺服器端TFTP協議;伺服器端活動目錄;提供支援的Server OS;客戶端CMOS啟動的正確設定;伺服器已安裝如下協議:NETBEUI、IPX/SPX、TCP/IP協議;伺服器具有固定IP;具有足夠空間的NTFS分割槽等等。2 硬體方面:效能較優良的伺服器支援;所有客戶端必須具有PXE遠端啟動晶片;區域網Switch的支援;無環路等風險的區域網拓撲;等等。四、如何在製造業利用PXE技術實現網路下載1.資源準備方面:A.軟體可選:1 Tftpd32是一個整合DHCP, TFTP, SNTP和Syslog多種服務的袖珍網路伺服器包,同時提供TFTP客戶端應用,支援tsize, blocksize 和 timeout等等。2 Intel公司的Intel-PDK-PXE程式,是Intel公司出品的PXE伺服器軟體,雖然它並不直接支援多網段,但由於操作簡單易行,再加上是免費軟體,所以被大多數PXE無盤網路所採用。考慮Tftpd32軟體功能強大且滿足需求,操作簡便,因此選擇此軟體。B.伺服器:以目前線下載交換機為例(聯想R520 ,R630)。C.客戶端:目前出貨機器基本上都存在PXE啟動晶片,只要CMOS啟動專案設定正確即可。D.交換機:聯想和神州數碼交換機基本都支援,Cisco交換機採用生成樹協議,因此會有時間延遲,導致PXE啟動失敗。E.網路拓撲:以目前測試網路拓撲為例。2.伺服器設定(1)機器IP及協議安裝協議要求,在已安裝好的系統中增加DHCP協議,安裝Netbeui及IPX/SPX相容協議等。IP設定以192.168.0.1為例,子網掩碼為255.255.255.0,其它項為空(預設),注意:IP在區域網內是否衝突。(2)伺服器程式設定,執行tftpd32.exe(可存放於機器任意位置)詳細設定按圖示即可,當然可以修改一些值,當前目錄與基本目錄是需要按共享目錄設定的。上圖簡單說明:IP pool starting address(IP開始地址),可以根據需要設定,與伺服器處於同一段即可Size of pool,工作站數量,根據實際設定Boot file,引導檔案,按圖中填寫Wins/dns servwer(解析伺服器)與default router(預設路由)均填寫伺服器IP,mask(掩碼)填255.255.255.0上圖的後面項按圖中樣式即可,完成後點選save再點選settings彈出如下畫面:接好工作站,插上網線啟動後,伺服器正常工作會有如下資訊顯示3.交換機設定來料主機板網路啟動一般配置情況下需要8至15秒時間。而Cisco交換機的Spanning Tree功能預設情況下是開的,當PC連線到交換機埠後會經過一段時間(20-30S)才真正UP起來。因此其中會產生一個7-24S的差異,導致使用Cisco交換機的下載點使用PXE聯網不成功的問題。以上海廠為例,目前生產下載交換機共28臺線上使用,其中20臺為cisco3550交換機。即多數交換機不支援PXE啟動。解決方案:1.對Cisco交換機進行引數除錯,解決此問題,聯網時間可以控制在1S以內。兩種方法:a、在埠上啟用portfast功能:spanning-tree portfast2.在全域性模式下關掉SPT:no spanning-tree vlan 1缺 點:無法規避環路風險。4 Boot Image製作:可以根據本身需求進行製作,工具可以參考相關資料。

五.PXE無盤測試中的注意事項1.如果伺服器包含多塊網絡卡,注意多餘或其他網絡卡DHCP功能的限制,避免區域網段IP衝突導致的網路問題。2.如果需要對交換機進行除錯,注意檢測區域網的環路問題,避免廣播風暴導致的網路問題。3.對提供DHCP服務的Server做好標記,並對涉及站點進行標註,對出現的問題可以快速響應。