基于意圖的網(wǎng)絡(luò):縮小網(wǎng)絡(luò)復(fù)雜性的差距
在過去的十年中,網(wǎng)絡(luò)經(jīng)歷了各種各樣的變革。從本質(zhì)上講,網(wǎng)絡(luò)已經(jīng)變得復(fù)雜和難以使用傳統(tǒng)機(jī)制管理?,F(xiàn)在迫切需要設(shè)計和集成來自多個供應(yīng)商的設(shè)備,并采用虛擬化和云服務(wù)等新技術(shù)來管理網(wǎng)絡(luò)。
每個網(wǎng)絡(luò)都是獨一無二的,你永遠(yuǎn)不會遇到兩個完全相同的網(wǎng)絡(luò)。供應(yīng)商提供的產(chǎn)品作為構(gòu)建模塊,供工程師設(shè)計適合他們的解決方案。如果我們都擁有一個簡單且可預(yù)測的網(wǎng)絡(luò),這將不會成為問題。但是沒有全球性的參考可供遵循,設(shè)計也因企業(yè)而異。即使在提供類似服務(wù)時,這些也會導(dǎo)致網(wǎng)絡(luò)變化。
據(jù)估計,超過60%的用戶認(rèn)為他們的IT環(huán)境比兩年前更為復(fù)雜。我們只能假設(shè)未來網(wǎng)絡(luò)的復(fù)雜性會增加。
大型企業(yè)和服務(wù)提供商需要管理這種復(fù)雜性,以確保他們的流量、策略和配置都符合要求和目標(biāo)。您無法以手動方式管理復(fù)雜的網(wǎng)絡(luò)。人為的錯誤總是會讓您付出代價,最終會減緩網(wǎng)絡(luò)的速度,從而阻礙敏捷性。網(wǎng)絡(luò)復(fù)雜且易錯的事實鼓勵自動化,這實際上是如何發(fā)生的,取決于自動化的水平。因此,網(wǎng)絡(luò)需要更高級別的業(yè)務(wù)流程。
現(xiàn)代化的需要
這種復(fù)雜性由于企業(yè)正在尋求其業(yè)務(wù)流程和網(wǎng)絡(luò)現(xiàn)代化,而變得更加復(fù)雜。傳統(tǒng)的垂直集成單片網(wǎng)絡(luò)解決方案禁止網(wǎng)絡(luò)現(xiàn)代化。這就造成了架構(gòu)師的原始意圖和實際的運行時行為之間的差距。
如果進(jìn)行檢查,您會發(fā)現(xiàn)設(shè)計文檔的內(nèi)容與網(wǎng)絡(luò)執(zhí)行松散耦合。首先,對于如何將設(shè)計文檔轉(zhuǎn)換到實際設(shè)備中,沒有結(jié)構(gòu)化的過程。如何實現(xiàn)它完全取決于個人的解釋。
這些網(wǎng)絡(luò)是為不同的時代而建立的。因此,我們現(xiàn)在必須將重點從傳統(tǒng)的網(wǎng)絡(luò)規(guī)范轉(zhuǎn)移到基于意圖的網(wǎng)絡(luò)(IBN)上。IBN是一種能夠使網(wǎng)絡(luò)現(xiàn)代化并與整體業(yè)務(wù)目標(biāo)保持一致的技術(shù)。它使您可以將設(shè)計規(guī)則與網(wǎng)絡(luò)緊密結(jié)合。
對新工具的需求
毫無疑問,我們需要新的工具,不僅從物理設(shè)備的角度來看,還是從流量的角度來看。驗證手動方式將不再有效。我們在數(shù)據(jù)包中有100bits,這意味著流量可以同時執(zhí)行多個會話。因此,使用人工方法跟蹤端到端流是不可能的。
在配置方面,CLI是用于進(jìn)行配置更改的最常用方法。但它有許多缺點。首先,它提供了錯誤的抽象級別。它的目標(biāo)是操作人員,并且沒有驗證工程師是否會遵循正確的程序。
此外,CLI語言在多供應(yīng)商中并未標(biāo)準(zhǔn)化。業(yè)界對此作出反應(yīng),并推出了NETCONF。但是,NETCONF在供應(yīng)商操作系統(tǒng)中存在許多不一致的地方。許多公司使用自己的專有格式,使得跨多個供應(yīng)商網(wǎng)絡(luò)編寫NETCONF應(yīng)用程序變得困難。
NETCONF基本上是為了簡化自動化,但實際上,它所呈現(xiàn)的不規(guī)則性,使自動化變得更加困難。此外,我們使用的老式故障排除工具(如ping、traceroute)無法全面評估網(wǎng)絡(luò)的行為。Traceroute在IP無編號鏈路方面存在問題,這在全自動網(wǎng)絡(luò)環(huán)境中很有利。另一方面,ping不會告訴您網(wǎng)絡(luò)的運行情況。這些工具最初是為更簡單的時間而構(gòu)建的。
我們需要開發(fā)一個與供應(yīng)商無關(guān)的解決方案,該解決方案可以驗證針對配置策略的意圖。這應(yīng)該與設(shè)備數(shù)量、安裝的操作系統(tǒng)、流量規(guī)則和任何其他類型的配置策略無關(guān)。我們需要網(wǎng)絡(luò)自動化和可預(yù)測。而現(xiàn)有的常用工具沒有任何價值。
簡而言之,我們需要一種能夠找出所有設(shè)備和流量交互的新模型,不僅僅是在設(shè)備級別,而是在整個網(wǎng)絡(luò)級別。
IBN和SDN
軟件定義網(wǎng)絡(luò)(SDN)的用戶主要是大公司。這些用戶擁有構(gòu)建自己的硬件和軟件的資源,例如Google和Facebook。
例如,Google的B4項目旨在通過基于流的優(yōu)化以動態(tài)方式構(gòu)建高效的廣域網(wǎng)(WAN)。但是,如果在生產(chǎn)網(wǎng)絡(luò)上使用傳統(tǒng)的WAN架構(gòu),則無法實現(xiàn)這一點。
IBN是SDN的自然繼承者,因為它借用了相同的原則和架構(gòu); 應(yīng)用程序和網(wǎng)絡(luò)基礎(chǔ)架構(gòu)之間的劃分。與SDN類似,IBN正在制作控制整個網(wǎng)絡(luò)的軟件,而不是設(shè)備到設(shè)備。
現(xiàn)在的問題是,作為一個概念,SDN可以根據(jù)需要實現(xiàn)自動化嗎?實際上,SDN使用軟件來配置網(wǎng)絡(luò),從而驅(qū)動基于軟件的網(wǎng)絡(luò)。但是,IBN是下一步,您需要更明確地強(qiáng)調(diào)重點?;谝鈭D的系統(tǒng)在應(yīng)用程序級別中工作得更高,以提供真正的自動化。
什么是IBN?
IBN是需要更大程度的網(wǎng)絡(luò)自動化,IBN是一種提供增強(qiáng)的自動化和網(wǎng)絡(luò)洞察力的技術(shù)。它代表了一種范式的轉(zhuǎn)變,側(cè)重于“網(wǎng)絡(luò)應(yīng)該做什么”,而不是網(wǎng)絡(luò)組件的配置方式。它監(jiān)視網(wǎng)絡(luò)設(shè)計是否正在做它應(yīng)該做的事情。
IBN通過生成設(shè)計和設(shè)備實現(xiàn)的配置來實現(xiàn)這一點。此外,它還可以實時驗證和驗證是否符合原始意圖。例如,如果未滿足所需的意圖,則系統(tǒng)可以采取糾正措施,例如修改QoS策略、VLAN或ACL。這使得網(wǎng)絡(luò)更加符合兩者; 業(yè)務(wù)目標(biāo)和合規(guī)性要求。
它使用聲明性語句,即網(wǎng)絡(luò)應(yīng)該做什么,而不是描述應(yīng)該如何完成的命令式語句。IBN能夠理解大量異構(gòu)網(wǎng)絡(luò),這些網(wǎng)絡(luò)由一系列不具備一個API的不同設(shè)備組成。這實質(zhì)上使您可以專注于業(yè)務(wù)需求而不是傳統(tǒng)網(wǎng)絡(luò)的限制。
IBN之旅
通往IBN之路的第一步是將所有這些轉(zhuǎn)化為明確的邏輯規(guī)則,這些規(guī)則本質(zhì)上是IBN軟件的一部分。您還需要了解流量以查看現(xiàn)實是否與意圖相匹配。為此,系統(tǒng)將構(gòu)建網(wǎng)絡(luò)模型,然后驗證該模型; 這被稱為計算機(jī)科學(xué)中的形式驗證。這是一種方法,我們在數(shù)學(xué)上分析網(wǎng)絡(luò),看它是否與其意圖相匹配。這涉及某些計算以包含邏輯。
網(wǎng)絡(luò)驗證
網(wǎng)絡(luò)驗證是任何IBN系統(tǒng)的關(guān)鍵部分。它需要一個基本的網(wǎng)絡(luò)行為數(shù)學(xué)模型來分析和推理出目標(biāo)網(wǎng)絡(luò)的設(shè)計和策略。系統(tǒng)需要驗證所有可想到的數(shù)據(jù)包流和流量模式。
盡管沒有明確的IBN架構(gòu)指南,但數(shù)學(xué)模型可用于處理每個網(wǎng)絡(luò)設(shè)備。這可以被看作是對每個設(shè)備級別的所有數(shù)據(jù)包類型和流量流的一組代數(shù)和邏輯運算。這允許IBM系統(tǒng)評估和驗證所有可能的方案。
當(dāng)設(shè)備接收到數(shù)據(jù)包時,它可以執(zhí)行許多操作。它可以將數(shù)據(jù)包轉(zhuǎn)發(fā)到特定端口,丟棄數(shù)據(jù)包,或修改數(shù)據(jù)包標(biāo)頭,然后轉(zhuǎn)發(fā)到端口。由數(shù)學(xué)模型決定每個設(shè)備如何響應(yīng)每種可能類型的數(shù)據(jù)包并在網(wǎng)絡(luò)范圍內(nèi)評估行為,而不僅僅是在設(shè)備級別。
原則上,驗證過程必須是端到端的。它必須從網(wǎng)絡(luò)上的每個設(shè)備收集配置文件和狀態(tài)信息。然后在逐跳的基礎(chǔ)上對所有可能的交通流的行為進(jìn)行數(shù)學(xué)分析。IBM系統(tǒng)構(gòu)建網(wǎng)絡(luò)基礎(chǔ)設(shè)施的軟件模型。該模型首先讀取第2層到第4層的配置細(xì)節(jié),然后從每個設(shè)備(IP路由表)收集狀態(tài)。
通過IBN,我們將看到從被動方式轉(zhuǎn)變?yōu)橹鲃臃绞健.?dāng)我們轉(zhuǎn)向主要關(guān)注業(yè)務(wù)需求并使事情變得更容易的模型時,它將對網(wǎng)絡(luò)的未來產(chǎn)生深遠(yuǎn)的影響。我們并不像人們想象的那么遠(yuǎn),但如果你愿意,你今天就可以開始你的IBN之旅。因此,該技術(shù)就在那里,建議采用分階段部署模型。如果你看看IDS/IPS的部署,你會發(fā)現(xiàn)大多數(shù)仍在改變。