陳健法
摘 ? 要:隨著互聯網的快速發(fā)展,當前互聯網的用戶數量快速增加,隨之帶來的是網絡服務器負載的增加,進而導致互聯網服務器響應速率下降,為此需要從整體上提升互聯網數據傳輸的服務質量,并進一步提高互聯網服務器的響應效率,從而更好地滿足互聯網發(fā)展的需要。文章所研究的CDN技術正是在這樣的基礎上發(fā)展起來的,能夠通過增加新的網絡構建,實現流媒體內容有效分送,從而降低服務器負載,是一種新興互聯網技術。
關鍵詞:內容分發(fā)網絡技術;主要機制;關鍵技術;負載均衡;流媒體;未來網絡
隨著互聯網信息技術的快速發(fā)展,圖像、視頻、音頻等互聯網內容的數量和體積快速增大;同時,互聯網服務覆蓋的用戶群及用戶區(qū)域也將全球化作為一個標配。由于受到服務器處理能力局限、用戶訪問距離影響以及網絡擁塞導致的網絡波動等,用戶在互聯網使用體驗方面將面臨較大的挑戰(zhàn)。這對傳統(tǒng)的交互技術與傳輸結構,都提出了新的需求。此外,由于用戶與網站之間的交互質量是直接影響到用戶體驗的重要因素,自然也成為急需解決的問題。
1 ? ?CDN技術主要機制
1.1 ?CDN體系結構
內容分發(fā)網絡(Content Delivery Network,CDN)技術本質上是一種提升網絡訪問速度的技術,能夠通過網絡流量特征和帶寬分布、復制內容以及用戶的訪問特征等因素,對用戶的請求進行數字化的定量分析,從而實現對于網絡內容的全網高質量分送,主要通過4個網絡體系結構進行運作[1]:
首先,內容緩存系統(tǒng)。系統(tǒng)分散與世界各地各個運營商的IDC機房,主要負責緩存互聯網訪問內容以及對用戶請求作出響應。在CDN中也叫作服務節(jié)點。這些節(jié)點由服務器集群組成,通過設備負載均衡及應用負載均衡保障單節(jié)點負載能力及可擴展性,以滿足大規(guī)模用戶訪問的需求。這些節(jié)點往往非常靠近互聯網用戶,互聯網用戶在這些節(jié)點獲得請求響應,減少了回源訪問源站服務器的次數,并避免遠距離獲取數據,從而降低源站負載,并縮短了網絡傳輸距離所需要的時間,從而提升了互聯網服務的響應速度,并提升了源站的穩(wěn)定性及服務能力。
其次,日志系統(tǒng)。分布于各個節(jié)點,并通過節(jié)點緩存軟件,將流量日志及訪問日志定時吐出,然后通過數據同步,將數據同步到中心的日志處理服務器,數據統(tǒng)計后用于CDN服務計費,并可以根據訪問日志排查故障、監(jiān)測服務質量、預警服務故障[2]。
再次,監(jiān)控系統(tǒng)。包括設備監(jiān)控、網絡監(jiān)控及應用監(jiān)控,實時將監(jiān)控狀態(tài)匯總到中央監(jiān)控中心,并通過監(jiān)控中心設置的閾值發(fā)出告警。這些告警數據,實時為CDN運營提供支撐數據,運營人員根據告警數據及時排除故障,并將服務器切換到正常的服務器上去執(zhí)行。監(jiān)控中心的告警數據也作為調度中心的自動調度依據,以保障CDN服務的連續(xù)性。
最后,調度中心。主要是實現對于用戶訪問路徑的管理和實施。主要通過預設的節(jié)點覆蓋方案、故障調度方案以及路徑探測結果,根據用戶IP地址屬性等信息,將不同用戶請求分別導向不同的分支節(jié)點,從而實現用戶就近訪問及最優(yōu)路徑訪問,縮短響應時間[1]。
1.2 ?CDN技術的工作流程
當用戶訪問到已經使用了CDN技術架構的服務網站時,能夠通過域名系統(tǒng)(Domain Name System,DNS)的重定向技術實現對于用戶節(jié)點的導向,最終將用戶的請求指向最佳的CDN節(jié)點,而當用戶的請求實現與CDN節(jié)點接觸時,CDN的服務器能夠將用戶請求的內容分送給不同的用戶,詳細流程如下:
(1)CDN一般在提供服務的時候,會根據服務網站提供域名配置調度策略及覆蓋策略,并提供一個服務域名A。服務網站將自身的服務域名(包括子域名),通過配置CNAME到這個服務域名A的方式將解析權交到CDN調度中心上。
(2)當用戶發(fā)出請求,瀏覽器接收到用戶請求,并向本地的DNS請求域名解析,如果本地DNS有緩存該域名,則直接響應CDN節(jié)點IP;如果沒有緩存該域名的DNS解析信息,則進行遞歸解析。遞歸時會發(fā)現解析權在CDN的調度中心,則去CDN調度中心解析這個域名地址,而CDN調度中心根據來訪的本地DNS服務器的歸屬地及運營商屬性,判斷用戶的歸屬地及運營商屬性,并根據預先配置的覆蓋策略,返回最優(yōu)CDN節(jié)點的IP地址。這時候,本地DNS服務器獲得IP地址后,以DNS解析結果形式響應給請求用戶,同時緩存該域名的DNS解析。
(3)用戶端獲得CDN節(jié)點IP后,向該IP發(fā)起網絡訪問請求,相應的CDN服務器對用戶請求的響應。
2 ? ?CDN解決的問題
當前CDN技術的應用能夠較好地提升服務器的響應速率,這主要是由于它能夠解決以下問題:首先,能夠解決源站網絡成本過高的問題,即利用CDN使得回源量下降到1%~10%左右,還能夠降低回源帶寬成本。其次,能夠使得源站負載降低,即將大部分的訪問負載由CDN技術進行必要的邊緣節(jié)點處理,從而使得源站服務器架構能夠實現簡化、輕量化。再次,能夠實現就近訪問,使得運行和服務速度加快,從而提升用戶的體驗,還能夠通過監(jiān)控整個訪問質量進行調度,并使用不同的節(jié)點服務器為客戶提供必需的服務,從而提升用戶的訪問成功率。此外,能夠實現動態(tài)調度節(jié)點,即通過動態(tài)加速技術彈性地進行帶寬輸出,進而可以降低網絡攻擊的可能性。最后,能夠通過內容緩存實現全局負載均衡(DNS調度)、設備負載均衡、應用負載均衡等多層調度保障系統(tǒng)軟件服務能力。
3 ? ?CDN技術的關鍵技術
3.1 ?CDN靜態(tài)內容緩存技術
當前靜態(tài)內容緩存技術的主要內容是通過反向代理,將用戶經常訪問的互聯網靜態(tài)內容預先緩存到邊緣節(jié)點,當用戶發(fā)出請求時,就近發(fā)放內容,從而將網絡遠距離傳輸中的各種不確定因素進行排除,從而更好地利用用戶的本地高帶寬,達到提高用戶響應速率的目的。
關鍵技術包含:內容切片分段緩存、內容熱度管理、內容存儲位置管理、預取技術、數據壓縮、協議轉換與優(yōu)化、負載均衡等。其中,負載均衡技術用于均衡互聯網訪問量,主要分為服務器負載均衡技術和全局負載均衡技術兩種,從而整合服務器資源及帶寬資源。負載均衡技術是將網絡流量盡可能均勻地分配到相同服務器去執(zhí)行和處理任務的主要技術,通過該技術能夠實現對于網絡節(jié)點的均勻利用,避免過載造成部分節(jié)點過載或者服務器過載,導致整體服務器癱瘓或成本出現突發(fā)、不可控等不利狀況。
3.2 ?CDN動態(tài)加速技術
當前動態(tài)加速技術包括實時網絡探測、最優(yōu)路徑算法、網絡協議優(yōu)化、長連接池的連接復用、數據壓縮等,主要是為了通過動態(tài)的內容分發(fā),實現對于互聯網內容的及時響應。這主要是由于網站的訪問響應速率往往會受到帶寬瓶頸、骨干網擁塞、網絡波動、網站服務器的處理能力以及訪問距離等因素的影響,而這些制約因素的優(yōu)化方法,主要是采用CDN動態(tài)加速技術實現的。簡而言之便是CDN技術能夠實現對于數據傳輸路徑的智能管理,通過“驛站”方式將數據以最快速度遞送至目的地。主要流程如下:
當用戶進行CDN網站服務訪問時,通過域名解析獲取就近的CDN服務節(jié)點,讓用戶能夠以最快的速度獲取服務。而動態(tài)加速技術,由于實時探測節(jié)點間的訪問速率,并通過動態(tài)路徑算法計算出了最佳的轉發(fā)節(jié)點路徑,存儲于邊緣節(jié)點,當請求到達時,將通過這個最優(yōu)路徑進行數據轉發(fā)回源;到達源站后,也將原路返回響應。在節(jié)點到節(jié)點的傳輸過程中,使用數據壓縮、私有協議、共享的長連接通道等進行轉發(fā),從而提升傳輸速度,實現動態(tài)加速。
4 ? ?結語
CDN技術作為一種新型的網絡架構,能夠通過負載均衡、內容緩存、動態(tài)分發(fā)以及動態(tài)內容路由等技術,實現對于互聯網訪問速度和質量的快速提升,并保證互聯網服務器的高質量運行,特別是在流媒體的內容傳輸過程中,仍然能夠實現高性能的提升。因此,CDN技術已經逐漸成了當前互聯網研究的重點內容之一,更是組建未來網絡高速公路的重要技術。
[參考文獻]
[1]甘士成.內容分發(fā)網絡負載均衡技術研究[D].廣州:華南理工大學,2017.
[2]何騰蛟.基于CDN的視頻流媒體內容分發(fā)策略的研究[D].深圳:深圳大學,2017.