1. 程式人生 > >網路虛擬化 SDN NFV 和企業骨幹網的演化

網路虛擬化 SDN NFV 和企業骨幹網的演化

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

                本來昨天就規劃了今天的這篇文章,無奈昨天中午自己喝了將近一瓶的52度二鍋頭...晚上想著今天怎麼著也完了,要頹廢難受一天了...沒想到早上竟然一點都不難受了,於是就寫下了本文。正文之前,還是做個廣告,喝酒就要喝高度酒,醉得快,醒的也快。     

BGP和IGP的路由黑洞問題

在描述企業骨幹網(大型企業的內網)之前,我得先來解釋一下網際網路路由的層次問題,理解了這個,你才能理解企業內網的構建規則,我還是以問題開始吧。
        路由本身是層次化的,但是路由的查詢則是平坦的。比如下圖的情形:




現在看上圖中紅色字描述的問題,顯然B並不知道10.1.2.0/24的任何資訊。雖然說在整體上,AS200知道10.1.2.0/24的下一跳為172.16.1.1,但是由於路由查詢是平坦的(系統不會將查詢請求傳送到一個叫做“AS路由器”的地方來層次化查詢),這就要求AS200中每一個路由器都有10.1.2.0/24這條路由,顯然的解決方案是有的,那就是在邊界路由器上把從BGP學到的路由全部注入到IGP,比如OSPF中。然而這會讓路由表完全平坦化!這會丟失BGP路由屬性資訊,哪些路由是從BGP學習到的,還是可以區分的,系統路由表將會大大膨脹!屬性的丟失是比較嚴重的,為此將BGP注入到IGP不是一個好辦法!
        那麼還有什麼辦法呢?很簡單,那就是建立Full mesh iBGP,即所有路由器之間全部建立iBGP連線,這樣在每一個路由器均會儲存所有的兩類路由項,一類是IGP路由項,另一類是BGP路由項,兩類路由項分別由IGP程序和BGP程序分別獨立維護,不會相互影響,這就解決了路由黑洞問題。
         當然,上面的討論是簡化的,沒有考慮反射器等機制...介紹BGP和IGP不是本文的目的,本文是想介紹資料中心以及網際網路公司骨幹網的。

網際網路企業骨幹網的演化

不管是阿里還是騰訊,或者其它大型企業,一開始創業的時候,其網路大概就是這個樣子:




但是總有一天,這些公司會產生自己的大量的內容和資料,於是從一開始租用伺服器,到最後自建IDC機房,最終這些大型網際網路企業會擁有多個IDC,這就需要將多個IDC互聯起來,從而形成DCI( Data Center Interconnection)網路,也就是所謂的企業骨幹網。其實不光是網際網路企業,傳統的製造業企業,跨國銀行等也是類似的網路拓撲佈局,我本人在2013年左右一直跟這種跨國銀行打交道,而目前在大型網際網路企業就職,也內窺了好多的內網拓撲,但是本著原則,我是不可能公開這些細節的(更多的細節我也不知道...),所以我只能簡而化之。
        如果企業擁有了多個IDC或者其分公司分佈在多個物理區域,將這個分散的地點連線起來就是一個迫切的需求。問題是採用什麼方式連線呢?可以是物理的連線,那麼這意味著企業要挖溝布光纜,目前中國三大運營商(曾經的郵電部小弟)均有這個能力和資質來完成這件事,但是對於大多數企業而言,由於通訊資源屬於國家級戰略資源,是不允許自己挖溝佈線的,不過好像聽說山西煤老闆要自建海底光纜...還好不是在國土上自建...不過也不是很絕對,如果一家企業財大氣粗到一定地步,一切皆有可能的。
如果不能自己挖溝佈線,那麼咋辦?其實三大運營商已經幫你搞好了,你只需要租用或者購買他們部署的光密集波分複用(DWDM)系統即可,簡單快捷,用錢能解決的事決不找關係,這是成功商人的原則。
        好了,現在搞定了不同IDC之間,分公司之間的互聯問題,那麼一個大型企業的網路便會變成下面的樣子:




有點複雜,不過不要緊,只要你知道什麼是IGP,什麼是BGP,應該是很好理解的。
        這就是企業骨幹網的框架。這種企業骨幹網在國內是沒有對外運營許可權的,也就是說,它只是一個大的資料庫,而不允許終端使用者接入穿越,即不允許使用者直接接入這個骨幹網,然後依靠它的路由系統去訪問別的資源,說白了就是你不能跟三大運營商搶生意。所以說這些企業內網基本上沒有複雜的接入層,然而大型企業需要大量的資料排程,特別是提供CDN服務的企業,所以說它的匯聚層和核心層就必須非常強大!值得一提的是,國內很多人不會把這種企業網路看成是骨幹網,因為在國內,所謂的骨幹網這一稱呼是被賦予運營意味的,如果不能運營,不能被接入,那就不是骨幹網,而只能是一個“私網”,另外,如果不是挖溝佈線建立起來的網路,而只是租用的線路,很多人也不認為這是骨幹網...其實名稱無所謂,知道概念也就行了。本質上,所謂的企業骨幹,就是DCI網路,把資料中心連在一起,不管是自己挖溝佈線還是租用的線路,都算骨幹。DCI骨幹網,DCI核心網,隨便怎麼說吧...
        現在簡單說下為什麼要將一個網路劃分為匯聚層和核心層,其實很簡單,原則就是能本地交換的儘量本地交換,迫不得已再跨區。以上的企業網拓撲是一個平坦層面上的拓撲,按照這個層次關係,企業網的拓撲可以重新畫如下:




現在簡化了,不是嗎?

新舊兩代內部網路的構建

曾經,如果跨區域的分公司要二層穿越或者三層穿越,那麼就要把整個公網雲看作一個路由器,典型的技術就是通過GRE等tunnel技術來封裝資料包,隧道模式的VPN就是這麼個道理,只是加上了安全層面的東西。如下圖所示:




我們可以看到,作為隧道終結點的路由器裝置要完成的工作特別繁重!這種裝置其實把更多的功耗消耗在了隧道封裝而非路由。隨著IDC越來越猛,伺服器的增多,流量的增加,這種隧道終結點越來越不堪重負,所以按照虛擬化的思想,NFV就被提出並派上了用場。
        總的來講就是,既然資料到了隧道終結點要被各種封裝,那為何資料不能在伺服器內部就完成封裝呢?實現的思路很簡單,其實就是把專門的硬體裝置所要完成的功能用軟體的方式實現在伺服器內部。在虛擬化的時代,一臺伺服器再也不是以往看到的一臺機器了,每一臺伺服器其實只是個黑盒子,裡面可能承載了一個網路,所以說虛擬交換機的概念就被提出並付諸實施了。如果想形象化理解,那麼考慮一下我們經常使用的VMWare,其實VMWare內部就有一個虛擬交換機,具體我就不多說了。
        依託虛擬化概念實現了NFV的IDC,大大減少了以往傳統裝置的負載,使得構建企業大二層變得非常簡單:




除了NFV,我想說下SDN的意義。
        注意本文的第三幅圖,我解釋說OSPF作為主導的IGP協議來完成最優路徑規劃,但是事實上這種規劃的效果非常差!有時候次優路徑反而是最優的。這就是SDN全域性控制的深意,因為SDN控制器知道全網當前的快照。我所瞭解到的是Google以及國內的騰訊,阿里等公司已經在自己的骨幹上使能了SDN,效果如何呢?Google作為發起方和第一人,肯定不錯,國內的所謂大型網際網路企業的技術,我只能呵呵,不管怎樣,概念是搶到了,無措也無錯。

說點胡話做點廣告

1.我用OpenVPN構建過並且成功構建過大二層;
2.我曾經自己實現過一個LISP完全繞過了GRE;
3.SDN是否能鋪開取決於左翼和右翼之間的對抗;
4.TCP/IP模型正在被顛覆,這個我是認同的。
...

突然又翻出了幾年前的網路拓撲圖,我在想,幹嘛那麼在乎TCP啊!後來我明白了答案,對於大多數程式設計師而言,資料離開了電腦,自己就再也控制不住了,所以不懂網管的程式設計師腦子裡只有TCP而無IP。網管意味著什麼?其實網管也不是清閒的群體,網管也要會C語言,也要會Python,也要會Java,網管要開發各種工具監控網路中的動態,網管非常忙...最關鍵的一點,網管可以拔網線,可以對交換機澆水,面對此狀,程式設計師又能怎樣呢?難道用加班的方式感動網管把網線插上嗎?
        我不懂程式設計,我不懂網路,我不是程式設計師,我不是網管...

           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述