姜 靖
(武漢郵電科學研究院,湖北 武漢 430074)
隨著互聯網的不斷普及,互聯網規模日益龐大,大量的以太網交換機被應用到了互聯網中,但這隨之產生了一個問題,大量的以太網交換機被部署,隨之將需要大量人力對設備進行安裝調試,這既影響了部署效率又大大增加了成本,提供網絡設備軟件智能安裝以及自動配置功能成為必然。
為了降低網絡部署中的成本,實現交換機設備的自動升級和配置功能,文章研究并實現了一種智能安裝(Smart Install)技術,該方案借助DHCP協議的DHCP Option[1]選項來獲取鏡像文件和配置文件以及FTP/TFTP服務器的信息,并從服務器下載所需文件進行安裝,可以提供零接觸部署設備的能力,在設備接入網絡以后,設備將自動下載安裝合適的鏡像文件,并執行相應的配置文件,從而開通業務,這大大簡化了網絡配置,實現了對設備的集中管理和遠程調測。經實驗證明本方案能夠很好的實現以太網交換機軟件的自動配置以及軟件升級功能,具有較大的實用價值。
如圖1所示,在一個Smart Install應用網絡中主要包括4中角色,分別是Client交換機、Director交換機、DHCP Server、FTP/TFTP Server。其 中Client和Director是 支 持Smart Install功能的交換機。Client交換機是需要安裝鏡像文件和配置文件的交換機。Director交換機主要為Client交換機提供功能輔助,為Client交換機安排合適的鏡像文件和配置文件。DHCP Server是動態主機設置協議的服務器端,它為新加入智能安裝網絡的Client交換機動態分配IP地址,同時會通過DHCP Option選項告知Client交換機有關FTP/TFTP服務器的信息以及鏡像文件和配置文件信息。在一個智能安裝網絡中,Client交換機所需的配置文件和鏡像文件都存儲在FTP/TFTP服務器中,Client交換機通過連接FTP/TFTP服務器下載所需鏡像和配置文件完成自動配置和升級等。
在一臺交換機被配置為Director以后,會監聽DHCP Client和DHCP Server之間的協議報文,構造Director數據庫,在該數據庫存儲了Smart Install網絡中所有Client交換機信息,包括Client交換機的MAC地址、IP地址、Product ID(產品標志)等信息。同時Director根據配置為Client交換機分組,并根據分組為Client交換機分配鏡像和配置文件。

圖1 Smart Install應用拓撲圖
為了使Client端能夠獲取有關鏡像文件和配置文件的信息,在DHCP Server端需要設置DHCP Option選項,設置FTP/TFTP服務器以及鏡像文件和配置文件的相關信息。Client端解析DHCP Option,從中獲取有關FTP/TFTP服務器以及鏡像文件和配置文件的信息,然后下載所需的鏡像文件和配置文件,進行設備的升級和配置。在設計中,主要涉及如下幾種DHCP Option選項:
1) Option 67(Bootfile name option[1]):用來指定配置文件名。
2) Option 125(Vendor-Identifying Vendor Options[2]):在該選項中自定義其中4個子選項,Sub-option1用來指定FTP user name;Sub-option2指 定 FTP password;Sub-option3指定FTP Server IP;Sub-option4指定中間文件Imagelist。在Imagelist文件中主要存儲了Client交換機和鏡像文件及配置文件的對應關系。
3) Option 150(TFTP Server Address Option[3]):用來指定TFTP Server的IP地址。
Smart Install結構框圖,如圖2所示。Smart Install功能主要包括網管配置、初始化模塊、定時器模塊、文件管理、Smart Install組管理、Smart Install狀態維護、Director數據庫管理等幾個部分。

圖2 Smart Install功能模塊圖
1)網管配置模塊
網管配置模塊主要為網管提供標準的API接口,用來配置、獲取Smart Install模塊的屬性。
2)初始化模塊
主要是對Smart Install模塊進行初始化操作。
3)定時器模塊
在Client交換機中,定時器功能主要是:① Smart Install使能以后,定時通告DHCP Client模塊發送地址請求,如果獲取成功,則停止DHCP獲取地址過程;② 獲取鏡像、配置文件成功后,根據需求判斷是否需要延時重啟設備。
在Director交換機中,定時器主要功能是:通過DHCP Snooping監聽client交換機和DHCP Server之間的消息,構造Director數據庫。
4)文件管理模塊
在client交換機中,文件管理模塊主要功能是:獲取IP成功以后,從DHCP Client模塊獲取鏡像文件信息和配置文件信息;成功獲取文件信息以后,通過從TFTP/FTP Client獲取配置文件和鏡像文件。
在Director交換機中,文件管理模塊主要功能是為Client交換機分配合適的鏡像和配置文件。
5)Smart Install組管理
維護網管配置的組信息。
6)director數據庫管理
維護Director交換機中的數據庫信息,數據庫中主要包含Smart Install網絡中的client交換機信息。
7)Smart Install狀態維護
主要功能是維護Smart Install的全局使能狀態、交換機角色、Director的IP地址等。
在執行智能安裝的過程中,Client交換機工作過程主要分為3個階段:
1)啟動
空配置設備啟動以后會自動檢查Flash中是否存在配置文件,如果存在配置文件,則按照配置文件進行配置下發完成啟動。如果不存在配置文件,則判斷設備是否使能了Smart Install功能,若使能則創建獲取文件定時器,然后下發默認配置完成啟動,如果未使能則直接下發默認配置完成啟動。
2)定時獲取文件
首先,在空配置交換機啟動以后,會自動使能DHCP Client功能,通過與DHCP Server的交互獲取相關信息,可包括設備的IP地址、FTP/TFTP Server的IP地址、FTP用戶名和密碼等;
其次,交換機根據用戶配置決定是否自動下載鏡像文件進行升級;
最后,Client交換機會通過FTP/TFTP獲取配置文件。在該過程中,Client交換機會查找DHCP報文中是否存在option67選項,如果存在,則根據選項找到配置文件并下載;否則,Client交換機則會從FTP/TFTP服務器上獲取中間文件Imagelist,然后根據Imagelist找到所需要的就配置文件,并下載安裝。
3)生效階段
文件獲取成功以后,則設備可以生效配置,正式開始工作。
在Client交換機中,Smart Install具體工作流程,如圖3所示。
Director檢查是否有Client加入到Smart Install網絡的時候,主要分為兩種情況,分別是:Director提供DHCP Server服務和Director不提供DHCP Server服務。
1)如果Director提供DHCP server服務,則Director交換機上不用使能DHCP snooping功能。DHCP server在為client分配地址以后,會通告給Smart Install模塊。Smart Install模塊接收到通告以后,更新數據庫,查找client交換機所屬的分組,然后將對應的配置文件和鏡像文件信息通過DHCP Option發送給client。
2)如果Director不提供DHCP Server服務,則此時需要第三方設備提供DHCP Server服務。在此情況下,在Director啟動以后,通過DHCP Snooping監聽DHCP client和DHCP server之間的DHCP報文來確定是否有新的client加入網絡,并更新數據庫。如果有新的client加入Smart Install網絡,則Director更新數據庫,查找client所屬的group,并將group的配置文件和鏡像文件信息通過DHCP option發送給Client。

圖3 Client交換機中Smart Install工作流程

圖4 Director交換機中Smart Install工作流程
在測試過程中,采用如圖5所示的拓撲結構。Client交換機、Director交換機、DHCP Server都處于同一網段,Client交換機通過FTP進行升級。

圖5 測試拓撲
按照圖5搭建拓撲,在Director交換機上使能Smart Install功能,并使能DHCP Snooping功能。在DHCP Server上配置地址池范圍和Client交換機處于同一網段,并配置DHCP Option選項,設置FTP用戶名、密碼、IP等。將Client交換機的配置文件和鏡像文件放在TFTP服務器的下載路徑下,編輯中間文件Imagelist,內容為Client交換機升級所需要的鏡像文件名,并將其放在TFTP下載路徑下。在Client交換機上使能Smart Install功能。
從圖6可以看出,Client交換機成功獲取到了鏡像文件和配置文件,并進行了軟件升級以及配置文件的下發。實驗結果表明,該方案成功實現了以太網交換機軟件的智能安裝,以及自動配置功能。

圖6 測試結果
本文針對以太網交換機軟件的智能安裝技術進行了闡述,重點對智能安裝過程的原理以及實現過程進行了討論。該技術在實際中已經得到了應用,經過實驗和工程應用驗證了該功能的實用性,相對于傳統的對每臺交換機進行軟件升級以及配置該技術有了明顯進步,節省了大量人力物力,簡化了維護人員的工作,具有較大的實用價值。
[1]RFC2132,DHCP Options and BOOTP Vendor Extensions[S],1997.
[2]RFC3925,Vendor-Identifying Vendor Options for Dynamic Host Configuration Protocol version 4 (DHCPv4)[S],2004.
[3]RFC5859,TFTP Server Address Option for DHCPv4 [S],2010.
[4]RFC6153,DHCPv4 and DHCPv6 Options for Access Network Discovery and Selection Function (ANDSF) Discovery[S],2011.