CDN的理想與現實
多年之前,當《Kingdom of Heaven》這部史詩電影發行的時候,中國的影迷使用電驢和BT來尋找種子,而那個時候,高清也纔剛剛進入電影領域,個人同事不惜用自家的電腦花費一個星期的時間去下載高清的版本。而如今,中國的影迷在使用迅雷去下載《越獄》,而每一集越獄播出之後,在20小時以內,迅雷上面就能夠下載到有中文字幕的完整版本,而影迷只要半個小時就能夠下載完成,他們使用的是以「CDN」爲基礎的所謂P2SP服務。咱們在這裏不須要討論盜版的問題,咱們在這裏想談論的只是互聯網和CDN的改變……
咱們要談論CDN麼?
互聯網的改變讓CDN變得不那麼神祕與高深
CDN是個古老的東西,在互聯網發展之初就已經出現了。一羣MIT的精英份子發現若是要讓任何地方的人均可以很快的打開本身的網站的話,就須要象在世界各地蓋教堂同樣,把本身的網頁發佈到離信衆最近的地方去。因此,他們用一種簡單的緩存鏡像的辦法實現了這種發佈。最先的入主這個教堂網絡的是Yahoo!那是在1998年。就像天作良緣,Yahoo!使用了當時世界上最大的CDN網絡,固然如今他仍是最大的。啊,忘了解釋:CDN是內容投遞網絡(Content Delivery Network)的簡稱。咱們能夠在Wiki上面輕易找到這個單詞的解釋,但並非全部人都能輕易理解CDN和它的意義,由於它是一個架接在互聯網與傳統電信運營商之間的看不見的橋樑。
讓咱們繼續回顧互聯網與CDN在那耀眼的一瞬以後的日子,互聯網經歷了泡沫的破裂,新模式的創新,但CDN卻好像漸漸的被人遺忘了。咱們熟悉的portal,垂直portal,鼠標加水泥,B2B,C2C,B2C,P2P,Web2.0,搜索,競價排名,Page Ranking, RSS,Wiki,Meshup,podcasting,網絡遊戲,Social Network……那麼多咱們耳熟能詳的名詞,或者其實並不明白其中的真正意思,但在炫耀本身的互聯網閱歷的時候隨口說出的幾個裏面,惟獨沒有CDN……直到短視頻的出現。
當YouTube出如今世人面前的時候,人們爲互聯網的又一次革命而叫好,而與此同時,人們看到了在YouTube後面的一個強大的CDN支持,是這個CDN網絡把YouTube的無數視頻展示在人們面前,在這個時候,人們發現CDN是不可或缺的,CDN在經歷了那麼長時間的默默無聞之後,忽然一晚上間聞達於諸侯,就象君士坦丁大帝把天主教定爲國教同樣,你們忽然認識到了一個不爲人熟知的領域。但咱們看到的是什麼呢?君士坦丁介紹給羅馬的天主教是耶穌創立時的教義麼?咱們所看到的CDN是MIT創立時的CDN麼?
人們開始搜索CDN,研究CDN,發現CDN是那麼的簡單,能夠用一頁PPT就把原理講的清清楚楚,而網絡硬件的廠商也會這樣和互聯網的客戶說,咱們能夠提供完整的CDN解決方案,你不須要作什麼,買咱們的硬件,它已經可以解決你全部的CDN問題。
今後,CDN變成了一個流行詞彙,尤爲是在高盛領投LimeLight(全球第二大CDN公司) 1.2億美金以後,忽然之間,世界各地都出現了大大小小的CDN公司,無數的投資蜂擁而至,就像那時的羅馬,人人都開始信仰天主教,也許是真的信仰,也許是爲了聖餐,也許是爲了研究,總之,「咱們都愛CDN」。
也許有人問:咱們談論的是同一個CDN麼,或者咱們談論的不是CDN?
當咱們在說CDN的時候,全部的公司都是談到兩個偶像,就像談耶穌和聖母同樣,一個是Akamai(世界第一大CDN公司),一個就是LimeLight。因此,陣營就分開來了,要麼介紹本身是師從Akamai,要不就說本身是LimeLight的真傳弟子,儘管大部分這麼說的人幾乎沒有見過Akamai和LimeLight的網絡和服務,但並不影響你們對本身的誇耀和標榜。而CDN是什麼卻愈來愈沒有人關注,哪怕是LimeLight和Akamai的區別也被人忽略了。咱們每個談論CDN的人談論的是同一個概念麼?
CDN是有專利的,這一點與天主教的聖經不一樣,CDN的解釋是能夠經過查詢這些文件發現的。CDN在利用DNS的轉受權來引導最終訪問者找到最理想的緩存或者鏡像站點,它是基於域名的一種服務。在不一樣的實現方式下,最終的定位到哪一個緩存和鏡像站點的策略有很大的不一樣。Akamai使用的是傳統的基於地理位置的定位策略,在世界各地的ISP裏面,都會有本身的節點,而經過智能DNS的判斷,能夠爲用戶找到離本身地理位置「最近」的節點。而LimeLight則用的是徹底不一樣的策略,LimeLight有本身的骨幹網,給訪問者的節點並非地理位置「最近」的節點,而是路由層面「最近」的節點,這一點有點像咱們訪問網站不經過域名而直接經過IP訪問同樣,它會尋找對於訪問者的ISP最近的路由是哪裏,用那裏的節點服務於這個訪問。LimeLight的策略已經在很大程度上改變了CDN的工做方式,因此,當LimeLight準備上市的時候,誰都會認爲他們已經繞過了Akamai的專利壁壘,但不幸的是,以後他們仍是遇到了訴訟的麻煩,或許由於DNS轉受權是沒法改變的……
在這樣的壁壘下面,任何作CDN的公司都好像要面對宗教法庭同樣,要麼被燒死,要麼就皈依。因此,有好事者想咱們若是使用其餘的方式作CDN該有多好?咱們既然能夠把驢弄進貴州,爲何不能把P2P融進CDN?我記得一位Akamai的高管對我說過,那不是CDN,CDN是透明的……,因此,讓咱們忘了P2PCDN吧……。也許尚未人搞清楚P2P和CDN的關係,那麼Cloud呢?也許是個好主意。但實際上客戶已經在本身發展他們認爲的CDN了,其中也包括所謂的P2P CDN。
那麼CDN真的象咱們想象的那麼美好麼?就像天國王朝裏面的聖地?
當年的《天國王朝》,無數的十字軍涌向耶路撒冷,那裏是天國,是一個可讓靈魂昇華與遍地黃金的地方,但生活在聖城的人們卻發現事實與理想相去甚遠……,如今人們涌向CDN,是由於它是一個看起來很美的行業,但實際上如何呢?
自從CDN成爲一個業內的大衆詞彙,CDN服務就像賣白菜同樣了,幾乎沒有人關心你的CDN和別人的CDN有什麼差異,只是問多少錢1M,多少錢1G,好用麼?回答的也是那麼的合乎情理:你能夠試試,很差不要錢。
另外一方面,CDN客戶的流失率歷來沒有下過10%,高的公司能夠達到20%-30%,測試客戶更是今天測,明天走。正是由於這樣,客戶基本上找不到知足要求的CDN公司,從而讓不少人開始質疑CDN自己有問題,甚至忽然以爲CDN應該是一個夕陽產業。
好在中國但凡叫得出名字的CDN公司,這幾年的收入都是翻翻的,雖然利潤少的可憐,並且那些利潤也不是從CDN業務中得到的……
但咱們同時發如今美國的Akamai卻有着不一樣的表現,2007年6億美金的銷售額,1億美金的純利潤,毛利更是超過40%,2008年至少有30%的成長。難道美國是CDN的天國,而中國就是被異教踐踏的土地?仍是咱們並無看到CDN真正的一面?就像柏拉圖所描繪的山洞,咱們看到只是火光照耀的影子?
事實上,互聯網出現以來,只有CDN是沒有海外公司進入中國市場的互聯網業務,而正是這樣的安排或者壁壘,讓中國的CDN與海外的CDN有着巨大的差異。
差異?差距,仍是用差異吧。
(美國的CDN與中國CDN的對比)
在美國,CDN領域裏面會有這樣一些分類:靜態內容的加速,動態內容的加速,大文件下載加速;對不一樣的客戶類型,還會有不一樣的系統與之對應,好比SSL加速,Long Tail加速,Streaming加速;而對不一樣行業客戶也會有不一樣的加速系統,好比媒體類客戶加速,電子商務類客戶加速,軟件與IT行業客戶的加速等等。甚至於對不一樣的客戶規模也會有不一樣的系統與之對應:大流量客戶的加速,中小客戶的加速,甚至我的客戶的加速;CDN的系統是一個龐雜而專業性很是強的領域。在這些領域與系統中,全部的功能甚至網絡都是不同的,配置的系統也是不同的。
但在中國,這些系統的差異大部分是在售前的嘴裏和不知所云的白皮書裏面。而網絡都是一個,功能都是一個,實現方式也是一個,因此就會出現若是一家CDN公司作不了一個功能,幾乎全部的CDN公司都作不到,由於你們都是用最「通用的方式構建本身的通用CDN」,從而使中國CDN成爲一個從電信轉賣帶寬的代理商。
咱們發現了幾個有趣的小例子:
中國的網站很注意防盜鏈(雖然並不注意防盜版),可是竟然沒有哪家CDN公司能夠提供一個讓客戶滿意的防盜鏈的系統,雖然各家都在說本身提供防盜鏈。就象個人一個作遠程教育的朋友和我說的同樣,「測試了可以叫得出名字的全部的CDN公司,但卻沒有一家CDN公司能夠作好防盜鏈。」但在Akamai,這是一個好久就標準化的服務了。
中國是一個遊戲和軟件下載的大國,互聯網上的主要流量是下載,而直到最近,國內的CDN公司纔開始能夠提供基於HTTP下載成功數的統計功能,並且還不是全自動的,是須要客戶配合設置纔可使用。一樣,在Akamai,這也是基本服務項目。
再有一個例子與視頻有關了,短視頻網站使用的Flash視頻,在用戶端是和文件下載沒有區別的,用戶會盡量快的去下載完視頻文件,而一般播放一個視頻只須要300K碼流就能夠流暢播放,這樣會有兩種狀況致使資源的浪費,第1、用戶看視頻並無看完,但下載已經下載完了;第2、用戶若是是寬帶接入的話,雖然只須要300K帶寬,可實際上卻使用了1M。對於最終用戶來講,這兩點幾乎不會有什麼實際影響,但對視頻網站來講,這意味着浪費了寶貴的帶寬資源,在同等條件下支付了更多的成本。這與上面談到的HTTP下載成功數計費是一個道理。而在美國,CDN公司是能夠控制每一個HTTP連接的速度,好比在開始播放的前30秒,1分鐘不進行限速,而超過這個時間,就能夠把速度控制在須要的範圍內,以節省帶寬資源。
至於SLA(服務等級協議),就更加的有趣,一般在中國的SLA是不會做爲依據的,而評估好壞的標準是「你本身上網看看就知道了麼」,這是中國如今一家發展很快的CDN公司的老總的見解。奇怪的是,使用CDN以後,沒有哪家客戶有能力在去進行全部地區的測試,看一下本身的網站是否比原來快。在這樣的狀況下,有些作論壇的客戶就會發動本身在各地的版主進行測試,收集意見,而後再告訴CDN公司,大家哪里哪里很差,可否調一下?咱們的CDN服務商而後說,「噢,你先給咱們解釋你是怎麼測試的?給我一個大家測試的IP,我看看是否是不是中國的IP啊,千萬不要給我你本身機器的IP,要給我Local DNS的IP……,不知道Local DNS?怎麼連這個都不知道呢?……那是……」(其實我我的以爲還應該問問版主是否是中國人,也許這樣更容易發現問題),我只能說,這是多好的客戶啊……,在美國的CDN服務商會感動的掉淚的。
在美國,用戶會天天獲得一份SLA報告,會標出在什麼時間段SLA沒有達到標準,若是用戶須要,還會給用戶具體哪一個區域沒有達到SLA標準,而全部的這些,都只須要用戶登陸到BOSS的portal上面。
相似的例子還有不少,好比流的點播加速,長尾市場,小圖片的加速等等。這些服務功能的差異也許還不是最主要的,而成本的控制與自動化的運營倒是CDN公司可否盈利的關鍵,Akamai部署一個客戶只須要10分鐘,而國內部署須要客戶在填寫複雜的表格後,耐心的等待1天時間;Akamai管理上萬臺服務器只須要4我的,任什麼時候間10%的服務器宕機都無需處理,由於系統會自動保證服務的可靠運行並自主恢復,而國內最小的CDN公司運維人員也有幾十個,而且疲於應付各類「突發」事件。
如今,也許咱們應該提一個建議,開放中國的CDN市場,讓大部分中國的網站均可以看到真正的CDN服務是什麼樣子。
再有一個例子與視頻有關了,短視頻網站使用的Flash視頻,在用戶端是和文件下載沒有區別的,用戶會盡量快的去下載完視頻文件,而一般播放一個視頻只須要300K碼流就能夠流暢播放,這樣會有兩種狀況致使資源的浪費,第1、用戶看視頻並無看完,但下載已經下載完了;第2、用戶若是是寬帶接入的話,雖然只須要300K帶寬,可實際上卻使用了1M。對於最終用戶來講,這兩點幾乎不會有什麼實際影響,但對視頻網站來講,這意味着浪費了寶貴的帶寬資源,在同等條件下支付了更多的成本。這與上面談到的HTTP下載成功數計費是一個道理。而在美國,CDN公司是能夠控制每一個HTTP連接的速度,好比在開始播放的前30秒,1分鐘不進行限速,而超過這個時間,就能夠把速度控制在須要的範圍內,以節省帶寬資源。
至於SLA(服務等級協議),就更加的有趣,一般在中國的SLA是不會做爲依據的,而評估好壞的標準是「你本身上網看看就知道了麼」,這是中國如今一家發展很快的CDN公司的老總的見解。奇怪的是,使用CDN以後,沒有哪家客戶有能力在去進行全部地區的測試,看一下本身的網站是否比原來快。在這樣的狀況下,有些作論壇的客戶就會發動本身在各地的版主進行測試,收集意見,而後再告訴CDN公司,大家哪里哪里很差,可否調一下?咱們的CDN服務商而後說,「噢,你先給咱們解釋你是怎麼測試的?給我一個大家測試的IP,我看看是否是不是中國的IP啊,千萬不要給我你本身機器的IP,要給我Local DNS的IP……,不知道Local DNS?怎麼連這個都不知道呢?……那是……」(其實我我的以爲還應該問問版主是否是中國人,也許這樣更容易發現問題),我只能說,這是多好的客戶啊……,在美國的CDN服務商會感動的掉淚的。
在美國,用戶會天天獲得一份SLA報告,會標出在什麼時間段SLA沒有達到標準,若是用戶須要,還會給用戶具體哪一個區域沒有達到SLA標準,而全部的這些,都只須要用戶登陸到BOSS的portal上面。
相似的例子還有不少,好比流的點播加速,長尾市場,小圖片的加速等等。這些服務功能的差異也許還不是最主要的,而成本的控制與自動化的運營倒是CDN公司可否盈利的關鍵,Akamai部署一個客戶只須要10分鐘,而國內部署須要客戶在填寫複雜的表格後,耐心的等待1天時間;Akamai管理上萬臺服務器只須要4我的,任什麼時候間10%的服務器宕機都無需處理,由於系統會自動保證服務的可靠運行並自主恢復,而國內最小的CDN公司運維人員也有幾十個,而且疲於應付各類「突發」事件。
如今,也許咱們應該提一個建議,開放中國的CDN市場,讓大部分中國的網站均可以看到真正的CDN服務是什麼樣子。
到這裏,其實咱們忽略了一個重要的問題,需求!中國的客戶使用CDN不少時候是但願以此解決南北互通的問題,而美國客戶沒有這個問題,他們使用CDN首要考慮的是off load和下降成本。在有人發現有其餘更加經濟實惠的方案以後,CDN在米國的日子好像也很差過了。
CDN被逐出了聖地?
BT的出現對媒體行業來講是打開了一個盒子(也許是潘多拉,也許是寶盒),盜版的發行比以往任什麼時候候都要快,成本也更低;而同時,視頻直播也達到了史無前例的低成本,咱們也許還記得在P2P客戶端上看歐洲盃,看NBA,看奧運,若是是換成CDN,任何公司都會沒法負擔。
在看看客戶狀況,偉大的Google是一個什麼事情都要in source的公司,它歷來不使用CDN,但它的服務遍佈全球,Amazon的EC2,SaleForce的CRM系統,Second Life的虛擬世界,他們都沒有在CDN上,但他們一樣出色,並且看起來更有效率,成本更低。
如今,已經沒有人會考慮使用CDN作大規模的直播服務了,充其量是做爲一個備份手段;而自從YouTube離開LimeLight之後,CDN的光環也開始慢慢退去,VC和投機者開始又一股腦的質疑這個奇怪的生意,CDN有價值麼?爲何盈利這麼困難呢?就像勇猛的薩拉丁趕走了十字軍同樣,難道CDN會被P2P和不斷升級的光纖所取代?仍是象通過改革的宗教同樣,即便歷經文藝復興與科技的反覆衝擊,而今依然影響着無數的人們。
CDN的宗教革命?
咱們之因此把CDN比做宗教,是由於CDN到如今也有不少「流派」,LimeLight的大節點,大帶寬的作法被許多IDC與運營商背景的公司所推崇,而傳統的Akamai模式則是獨立於運營商以外的CDN公司所首選的道路;而各類新奇理念的出現更是讓CDN行業象是一個萬花筒,從而也使其擁有更多的互聯網氣息。Amazon的Cloud Front,EC2;Level 3的ITM;Prime的CDN Aggregation,CDTM;Simple CDN的S3+等等,如此衆多的演變,任何一種都是對傳統CDN,甚至是對LimeLight模式的革命。感謝LimeLight與Akamai的成功,讓不少優秀的工程師與天才的夢想家投入到CDN這個被Akamai一家統治多年的領域,並不斷給咱們與CDN客戶以驚喜。但當咱們把目光從美國看回中國的時候(上述全部的公司都是美國企業),咱們要面對的是什麼樣的現實?
中國的CDN是CDN的佛教仍是道教?仍是象柏陽說得被中國這個大染缸去其精華留其糟粕的垃圾?
說道中國的CDN,咱們可能要問:何時CDN開始沒人關注SLA?何時CDN開始不提供標準的95/5計費?何時,全網配置的服務被悄悄替換成了「部分」節點配置?何時,CDN變成了一個黑匣子,客戶無從瞭解本身的服務與問題,也沒法控制本身的內容的發佈與刷新(美國的CDN客戶是能夠直接本身設置3段TTL時間的)。這些咱們無從而知,由於可能從咱們開始認識中國CDN的時候就已是這個樣子了。
因此這些後來的中國的CDN廠商第一件要作的事情就是鼓吹本身的節點數量,而無論是否這些節點都爲全部客戶提供服務(客戶甚至不知道有幾個節點在爲本身服務。PS:通常狀況下,中國CDN公司爲每一個客戶配置的節點不會超過20個)
因此,當海外的CDN公司在網站上介紹其服務的時候,中國客戶一般很難找到他們全球有多少節點的信息,而中國CDN公司則樂此不疲的修改本身的節點地圖,也無論地圖畫得就像一張地雷分佈圖。而銷售人員更是信口開河的講本身的公司有幾百個節點,好笑的是,幾乎全部的CDN公司都有「幾百」個節點,全中國的IDC恐怕都不夠這些CDN公司瓜分的了。
中國CDN已經把CDN本土化了,常常掛在嘴邊的是外國公司不瞭解中國的網絡,也許是吧,但到如今爲止,沒有一家本土CDN公司能夠解決教育網的服務質量問題。而大部分的客戶到CDN節點機房看到的狀況是:「哦,怎麼大家在使用和咱們本身同樣的系統?!」這是爲何呢?由於中國的CDN公司認爲CDN是運營業務,就像中國移動,中國電信同樣,最主要的是運營;
而象Akamai這樣的美國CDN公司首先認爲本身是技術公司,而後纔是運營公司,Akamai的系統從底層到應用是本身開發的,全部的服務是本身開發的,全部的控制與監管是本身開發的,甚至在早期,連硬件都要本身開發。我記得一位VC界的著名人物這樣評價在中國很出名的CDN企業:「他們沒有技術」。這就是中國CDN與美國CDN公司的最大差距。那咱們要問,難道十幾年中國CDN的發展就白費了麼?固然不是的,中國的CDN在花費了大量的時間在處理用戶的客戶化需求,惋惜這些需求主要表如今計費領域,有的CDN公司竟然有上百種計費方式。
而對於CDN的黑盒子問題(即用戶看不到及時全面的數據),就像佛教的禪宗同樣,一句「不可說」,客戶也沒有任何辦法。而對於道教的無爲則一般會用在對付客戶的投訴上面。固然,這是不能責怪CDN的運營人員的,即便在CDN如火如荼的年代,可以說清楚CDN的具體狀況與細節的人也仍是少之又少。記得上面提到的發展很快的那家CDN公司的老總說到視頻:「咱們以爲視頻是一個很簡單的服務,根本沒有難度」,但當客戶測試他們視頻服務,卻選擇了其餘運營商以後,已經不多聽到這種氣壯山河的言論了。
中國的CDN雖然經歷了很長的時間,但卻沒有真正的積累下來,而本土化,或者異化的CDN使原本就難於理解的CDN服務被斷章取義的成爲一個Cache和帶寬的替代詞彙。
而事實上,真正的CDN服務或者CDN的原本面目咱們也許就從沒有見到,就像中國的網站編程,在IE下看的好好的,可是換了瀏覽器就全亂了,這才發現原來沒有按照W3C標準編寫,而問題是不少的編程人員根本就沒看過這些標準,因此也就不知道原來IE並非嚴格遵守W3C解析與渲染的。
To be, or not to be: that is the question!
當莎士比亞的這句名言做爲出如今這裏的時候,咱們應該考慮的是CDN的將來,仍是中國CDN的將來?
讓咱們在更高的層面來看待現在的年代,愈來愈多的閃光點出如今這個領域,就像在Google出現以前,沒有人關注搜索同樣,CDN有可能成爲第二個孕育奇蹟的行業。CDN伴隨着互聯網的成長起起落落,如今的服務已經不只僅侷限在內容的分發,愈來愈多的CDN公司開始提供以複雜分佈式存儲爲核心的存儲網絡服務,Amazon的S3是一個典型的表明,而Prime的FileGrid則是另外一個值得關注的方向。Amazon在這個領域已經耕耘多年,雖然不是一個CDN公司,但實際上的服務內容已經涵蓋了CDN服務,而其基於運計算的EC2服務更是如今可使用的惟一的「雲」了。有人說雲計算就是CDN的將來,這也許還很遠,Bill Gate的話也許更有道理:「雲存儲離咱們更近一些」。不管是雲計算仍是雲存儲,對於CDN公司來講,都要比其餘任何行業的公司都要靠近雲端,而CDN的路線圖也必定會是這樣的發展,從內容網絡到存儲網絡再到計算網絡,而將來的CDN也會象使用電燈同樣容易。
對於CDN的將來憧憬,另外的方向就是CDN雲,儘管只是一個概念,但確實是一個很宏偉的想法,雖然如今能夠看到的服務只有Prime的CDTM,或許這是CDN雲的初級階段──一個利用衆多的CDN網絡構建一個更高效成本控制更好與更智能的網絡,但誰可以忽視這使人興奮的進步與想象力?
在中國,各家CDN公司都開始大力開發本身的產品,也從沒有象如今這樣重視研發。而Akamai,CDNetwork已經開始進入中國;Prime也開始在中國展開一些試探。中國的客戶已經開始體驗到不一樣的服務,有的CDN公司提出的SLA至少看起來已是一份有價值或者是能夠度量的標準文件了。雖然路仍是有些漫長,但相信中國的客戶將會很快體驗到世界水準的CDN服務,以及天才工程師們所創造的更多使人興奮的網絡產品。
中國乃至世界CDN領域的大變革正發生在咱們身邊,也許明天你就會看到一個不一樣的CDN來到你的眼前。編程