與SDN的一步之遙:讓機器自動做決策
我也承認這個觀點,我本身也是一位空間極客。更壞的是,我偶爾還是一位飛行員、認證調度員,我的IT生涯始于一家航空公司。上世紀70年代,我在孩提時就觀看了阿波羅號發射升空,和許多工程師一樣,我也在追隨技術發展,從非凡的Werner von Braun手工焊接熱機械似的龐然大物到現代更復雜的小型電子化空間系統。
在之前新型獵戶座多用途航天飛行器的***發射計劃推遲后,我最近又觀看了它的***成功發射之后,我認識到SDN與可編程網絡也將遇到與NASA發射系統相同的挑戰。我們都在依賴網絡自動化,但是有時候我們需要人工干預。兩者的***區別是,企業IT必須提供持續在線時間,幾乎不存在允許一項事務暫停的可能性。
獵戶座的主要通信方式是以太網
獵戶座攜帶的中央數據網絡是以太網。再詳細點說,生命支持、導航、推進器點火、通信與模塊交互協調等等,所有方面都通過時間觸發的千兆以太網實現互連。確實,這個網絡采用了一種IEEE 802.3的私有實現,但是它具有兼容性,增加了一種可靠消息交付分類。此外,它的速度比國際空間站采用的技術快1000倍,并且還包含抗輻射的ASIC,它很像每一個核心交換機都采用的技術。
和現代企業網絡類似,最有意思的是獵戶座網絡將多個原本分散的服務集中到一個電路上。它混合了關鍵指令流量、***文件拷貝和中級語音及視頻(但是延遲和抖動要求較高)。與企業網絡不同的是,獵戶座的網絡工程師更關注于保持大帶寬,更依賴于芯片,而不是路由器的QoS策略映射。
由獨立軟件定義的決策過程
在獵戶座發射時,瞬時風力曾經兩次讓發射流程自動中止,而且中止就發生在倒數期間。這迫使飛行主管焦急萬分地喊出:“中止!中止!中止!”然后團隊作了一個預警決定——它禁用了自動風力傳感器,轉而采用阿波羅時代的控制方式——由人來觀測風速和風向等指數。
回到SDN和網絡自動化,我們也會遇到類似的問題。我們將來能交付一些自動決策系統,但是我們也知道在一些特定環境下需要一些人工干預。
然而,IT面臨著一個NASA遇不到的特殊挑戰。如果NASA沒有備用系統,那么它可以選擇推遲發射。但是企業IT不可能這樣做。我們一直在壓力中保持系統能夠承受所有這些問題,然后保持不間斷地正常運行。可是,在壓力下快速作出決策時,安全性往往會成為網絡質量中被犧牲的一個方面。
在獵戶座***發射時,有一位經驗豐富的飛行主管專門負責監控一個簡單的發射/不發射的倒數控制項。這位飛行主管將自己多年的經驗用在監控一個重要的SLA指標值。但是在SDN的高度虛擬化聚合網絡中,我們不可能有足夠多的飛行主管去監控每分鐘可能出現的100、1000或10,000個訪問策略沖突。我們必須將服務交付需求加到應用程序之中,在SDN控制器中部署安全策略訪問規則,然后再退一步,讓自主配置的網絡自行挑選。
報告:我們遇到了一個網絡管理問題
我們的挑戰是,在網絡運營中心(NOC)控制臺發出大量的策略沖突警報時,我們當前的管理與修復方法是無效的。想象一下現在的vMotioning的應用場景,它不僅可以監控一個集群中不同的ESX,也可以監控打包為支持用Docker傳輸的虛擬機,它們可以每天大批量、自動地從亞馬遜遷移到本地數據中心或Azure。這些實例可能會經常與定義的訪問策略發生沖突,因為我們的控制器會動態尋找更高效和更劃算的配置。當找到這種配置時,我們就必須知道如何教會網絡使用這些配置。
這也是從NASA學到的一個經驗教訓。無論是一個離火星20分鐘的任務,或是一個離柯伊伯帶4小時的任務,探測器都必須自主運行數十年時間。在30年前,這很多時候都由計時器和猜測來完成,但是現在他們使用一些機器學習技術和大量預編程策略定義,讓機器自動作出重大決策。
作為管理員,我們必須學習如何將自己深厚的網絡連接知識和從各個網絡獲得的專業技能轉化為智能規則,而非只是一些靜態配置。簡單的允許或阻擋決策變成了在什么條件下允許或阻擋。QoS分類也需要感知時間/阻塞環境。我們的網絡性能監控系統不僅需要監控IP范圍,也需要基于設備發送的流量來自動發現設備。
NASA做到的我們也能做到
NASA的官方行為給了我們希望。NASA有著全世界最聰明的工程師,但是他們的探索激情需要經過一系列繁文縟節的考驗,其復雜程度遠遠超過我們在辦公室要面對的步驟。但是,他們仍然能夠成功實現毫無差錯的偉大工程壯舉。只有少量的經費,一點點高明的管理,再加上正確的工具,SDN就可以讓管理員給原本繁雜的手工配置網絡添加真正的智能。但是,我們可能還需要在各個位置部署一些抗輻射的以太網。