當(dāng)前位置:首頁 >  IDC >  服務(wù)器 >  正文

技術(shù)解析:UCloud云主機(jī)網(wǎng)絡(luò)增強(qiáng)特性如何煉成?

 2015-09-19 15:02  來源: 互聯(lián)網(wǎng)   我來投稿 撤稿糾錯

  阿里云優(yōu)惠券 先領(lǐng)券再下單

摘要:隨著互聯(lián)網(wǎng)深入發(fā)展,許多應(yīng)用程序都需要頻繁的交互操作,這讓許多單臺云主機(jī)網(wǎng)絡(luò)包處理的瓶頸愈發(fā)顯現(xiàn),一些增強(qiáng)云主機(jī)網(wǎng)絡(luò)的新特性開始出現(xiàn),他們優(yōu)化數(shù)據(jù)包并發(fā)處理的能力,UCloud云主機(jī)就是這樣一個優(yōu)秀案例。

引子

隨著產(chǎn)品交互需求越來越頻繁,數(shù)據(jù)量也越來越大,高并發(fā)成為了一種常態(tài),給網(wǎng)絡(luò)帶來了極大的挑戰(zhàn)。特別是,大量頻繁用戶請求和數(shù)據(jù)交互、體積小的網(wǎng)絡(luò)包通信的新業(yè)務(wù)場景下,單個云主機(jī)網(wǎng)絡(luò)包處理能力已經(jīng)無法滿足需求。

為解決單個云主機(jī)網(wǎng)絡(luò)包處理能力存在的瓶頸,UCloud云主機(jī)發(fā)布了網(wǎng)絡(luò)增強(qiáng)新特性,可以支撐數(shù)倍在線請求,將單臺PPS提高數(shù)倍,從而保證網(wǎng)絡(luò)性能的穩(wěn)定。

舉個例子:就游戲而言,輕微的網(wǎng)絡(luò)波動就會造成在線玩家掉線和卡頓,單臺云主機(jī)平均更是有幾萬的包轉(zhuǎn)發(fā),單臺云主機(jī)的網(wǎng)絡(luò)包處理能力明顯不足。但是,打開網(wǎng)絡(luò)增強(qiáng)特性后,對于游戲商來說就能一個區(qū)服承載數(shù)倍游戲玩家,而對于不注重單機(jī)能力的情況也能起到一臺頂多臺的作用,所以網(wǎng)絡(luò)增強(qiáng)特性不僅可以提高單臺主機(jī)的包處理能力,還能減少云主機(jī)的部署數(shù)量與相應(yīng)的成本。

初識網(wǎng)絡(luò)增強(qiáng)

那么,UCloud云主機(jī)網(wǎng)絡(luò)增強(qiáng)特性具體能為高包量并發(fā)的數(shù)據(jù)處理帶來哪些優(yōu)化呢? 在介紹UCloud云主機(jī)的網(wǎng)絡(luò)增強(qiáng)新特性,先介紹數(shù)據(jù)包和并發(fā)的概念,了解一條消息的旅程:

包(Packet),是TCP/IP協(xié)議通信傳輸中的數(shù)據(jù)單位,一般也稱“數(shù)據(jù)包”。在網(wǎng)絡(luò)中,數(shù)據(jù)被劃分為多個數(shù)據(jù)包,這些包沿著不同的路徑在一個或多個網(wǎng)絡(luò)中傳輸,在傳輸?shù)穆吠旧希總€小數(shù)據(jù)包還可能會被繼續(xù)分片。當(dāng)這些小數(shù)據(jù)包到達(dá)目標(biāo)機(jī)器時,他們會被重新拼裝到一起。

簡單的說,用戶瀏覽網(wǎng)頁、打開App、玩聯(lián)網(wǎng)手機(jī)游戲,實際上就是數(shù)據(jù)包的交換,因為這些簡單動作背后,你完成了給網(wǎng)站發(fā)送數(shù)據(jù)包,而網(wǎng)站接收到了之后,根據(jù)你發(fā)送的數(shù)據(jù)包的IP地址,返回給你網(wǎng)頁的數(shù)據(jù)包這兩個過程,即數(shù)據(jù)包的交換。

并發(fā),在操作系統(tǒng)中,是指一個時間段中有幾個程序都處于已啟動運(yùn)行到運(yùn)行完畢之間,且這幾個程序都是在同一個處理機(jī)上運(yùn)行,但任一個時刻點(diǎn)上只有一個程序在處理機(jī)上運(yùn)行,即兩個或多個事件在同一時間間隔內(nèi)發(fā)生。

簡單的說,當(dāng)春運(yùn)期間,12306網(wǎng)站開放購票,1秒內(nèi)10000個人點(diǎn)擊購買按鈕,此時12306網(wǎng)站服務(wù)器就收到了10000個并發(fā)請求。

UCloud云主機(jī)的網(wǎng)絡(luò)增強(qiáng)新特性,優(yōu)化的就是數(shù)據(jù)包并發(fā)處理的能力,打開網(wǎng)絡(luò)增強(qiáng)配置,創(chuàng)建的新主機(jī)可以擁有網(wǎng)絡(luò)高包量多隊列并發(fā)特性,使帶寬能力大幅提升,能并行處理和接受批量連接的報文,極大提升了虛擬機(jī)的包處理能力。

技術(shù)實現(xiàn)

云主機(jī)的網(wǎng)絡(luò)增強(qiáng)特性,利用的是網(wǎng)卡多隊列特性,讓多核CPU配合多隊列網(wǎng)卡驅(qū)動的支持,將各個隊列通過中斷綁定到不同的核上,使得CPU的各個核實現(xiàn)并發(fā)收包,所以在網(wǎng)絡(luò)流量大的時候,數(shù)據(jù)包可以被分散到各個核上,避免了CPU成為瓶頸的尷尬。

那多隊列網(wǎng)卡特性又是如何實現(xiàn)的呢?事實上,以往的內(nèi)核是不支持多隊列的,而不支持多隊列的內(nèi)核中的每個網(wǎng)卡都擁有一個排隊的規(guī)則,根據(jù)排隊規(guī)則的過濾器將數(shù)據(jù)包區(qū)分為一個個類,類中還可以嵌套新的更細(xì)的排隊規(guī)則,但這種以網(wǎng)卡為中心的方式實際上不適應(yīng)如今的網(wǎng)絡(luò)應(yīng)用,從而誕生了多隊列特性的網(wǎng)卡。

實現(xiàn)了多隊列的網(wǎng)卡圖示如下:

數(shù)據(jù)被劃分為數(shù)據(jù)包在網(wǎng)絡(luò)傳輸,到達(dá)目標(biāo)機(jī)器時,先通過網(wǎng)卡轉(zhuǎn)發(fā)給內(nèi)核,內(nèi)核包括驅(qū)動和內(nèi)存,最終到達(dá)CPU,CPU對數(shù)據(jù)包進(jìn)行處理。對于普通的云主機(jī)來說,網(wǎng)卡只有一個根隊列,所有的數(shù)據(jù)包進(jìn)來都要進(jìn)入這個根隊列進(jìn)行排隊,由一個CPU進(jìn)行處理。所以當(dāng)數(shù)據(jù)量大的時候,就會造成瓶頸,以致CPU來不及處理數(shù)據(jù)包,最終導(dǎo)致丟包。

而多隊列網(wǎng)卡是一種技術(shù),將各個隊列通過中斷綁定到不同的核上,實現(xiàn)了多隊列,就不再逼迫數(shù)據(jù)包強(qiáng)擠到網(wǎng)卡的根隊列進(jìn)行排隊,使得每個網(wǎng)卡擁有很多的根隊列,甚至每個應(yīng)用一個隊列都有可能,從而增強(qiáng)并發(fā)處理能力,使帶寬能力大幅提升,能并行處理和接受批量連接的報文,極大提升了虛擬機(jī)的包處理能力。

實現(xiàn)上,我們主要是通過負(fù)載均衡方法論,升級宿主機(jī)和虛擬機(jī)操作系統(tǒng)Linux 的內(nèi)核,實現(xiàn)對網(wǎng)卡驅(qū)動多隊列的支持,并利用多核CPU的性能,讓原來的一個隊列變成四個隊列,使得數(shù)據(jù)包的調(diào)度變得更加有效,同時也由多個CPU進(jìn)行處理,從而提升并發(fā)處理的能力。

(注:目前只支持在部分Linux發(fā)行版4核CPU以上的標(biāo)準(zhǔn)機(jī)型上開啟。)

性能測試

對于UCloud云主機(jī)網(wǎng)絡(luò)增強(qiáng)的性能,我們也進(jìn)行了測試。主要是通過使用通用網(wǎng)絡(luò)性能測試工具netperf對UHost標(biāo)準(zhǔn)版機(jī)型在是否開啟網(wǎng)絡(luò)增加配置的兩種情況下進(jìn)行網(wǎng)絡(luò)性能測試得到的結(jié)果,最新的測試數(shù)據(jù)如下圖所示(鑒于是測試環(huán)境,該數(shù)據(jù)僅供參考):

圖解:

1. ucloud-yg: 未開啟網(wǎng)絡(luò)增強(qiáng)的云主機(jī)

2. ucloud-gre: 開啟網(wǎng)絡(luò)增強(qiáng)的云主機(jī)

3. 未標(biāo)注的數(shù)據(jù)為業(yè)內(nèi)其他云主機(jī)

經(jīng)過測試,網(wǎng)絡(luò)增強(qiáng)配置的特性,會讓帶寬利用率更是大幅提升,內(nèi)網(wǎng)帶寬接近4Gb/s,是業(yè)內(nèi)平均水平的7倍以上。

經(jīng)過測試,網(wǎng)絡(luò)增強(qiáng)配置的特性,可以極大的提升包處理能力,是業(yè)內(nèi)平均水平的3倍以上,最大包吞吐能力高達(dá)18萬。

(注:相關(guān)測試數(shù)據(jù)見鏈接)

總結(jié)

本文簡單的介紹了利用多隊列網(wǎng)卡特性使得云主機(jī)擁有網(wǎng)絡(luò)高包量多隊列并發(fā)特性的實現(xiàn)過程。希望通過分析數(shù)據(jù)包傳輸路徑以及處理過程讓大家直觀的看到,UCloud云主機(jī)網(wǎng)絡(luò)增強(qiáng)新特性帶來的高包量并發(fā)處理能力的提升。

未來,UCloud還會對網(wǎng)絡(luò)增強(qiáng)配置進(jìn)行升級,隨著硬件提升和可能的內(nèi)核優(yōu)化,高包量處理能力還將有持續(xù)提升空間。希望此特性能夠滿足新場景下通訊頻繁、數(shù)據(jù)包體積小但數(shù)量大的新需求。

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)文章

  • 新加坡云主機(jī)需要考慮哪些方面

    新加坡云主機(jī)是指部署在新加坡的云計算主機(jī)服務(wù),它能夠提供高度安全、可控和定制化的計算資源,滿足企業(yè)和個人特定需求。新加坡作為東南亞一個重要的經(jīng)濟(jì)和科技中心,擁有良好的基礎(chǔ)設(shè)施和網(wǎng)絡(luò)連接,這使得其成為許多企業(yè)部署云服務(wù)的熱門選擇。下面將詳細(xì)介紹新加坡云主機(jī)的幾個主要方面,rak小編為您整理發(fā)布新加坡云

    標(biāo)簽:
    云主機(jī)
  • Raksmart韓國VPS主機(jī)分析解讀

    Raksmart韓國VPS主機(jī)因其高性能、靈活配置和地理位置優(yōu)勢,在市場中占有一席之地**。它位于韓國首爾數(shù)據(jù)中心,為用戶提供了快速、穩(wěn)定的服務(wù)器體驗。以下是對Raksmart韓國VPS主機(jī)的分析:rak部落小編為您整理發(fā)布Raksmart韓國VPS主機(jī)的分析。

    標(biāo)簽:
    云主機(jī)
  • 超全?。?!雙十一國內(nèi)外主機(jī)商優(yōu)惠活動看這一篇就夠了

    雙十一這個一年一度的購物狂歡節(jié),終于又要來啦!國內(nèi)外主機(jī)商們已陸陸續(xù)續(xù)推出了很多誘人的優(yōu)惠活動,想要購買主機(jī)的朋友們是不是都快挑花眼了呢?相信大家一定有這樣的感受,市場上主機(jī)品牌那么多,產(chǎn)品也各式各樣,價格、配置、服務(wù)等都各有優(yōu)劣,再加上一個主機(jī)商一個網(wǎng)站,來來回回的切換,信息對比不直觀,有好多國外

    標(biāo)簽:
    云主機(jī)
  • 2023年國內(nèi)外主機(jī)VPS服務(wù)器618年中大促活動大盤點(diǎn)

    “618”年中購物節(jié)可以說是一年一度的大型促銷活動,商家往往會推出各種優(yōu)惠驚喜,如爆款低價秒殺、充值送現(xiàn)金、多年購買優(yōu)惠、大額折扣等等,切實為消費(fèi)者帶來超值優(yōu)惠和折扣。本文羅列了一些國內(nèi)外知名主機(jī)商發(fā)布的618年中大促活動,下面一起來看下相關(guān)活動內(nèi)容介紹。一、RAKsmart爆款服務(wù)器$30秒殺新人

    標(biāo)簽:
    云主機(jī)
  • 彈性云主機(jī)有什么優(yōu)勢?

    彈性云主機(jī),就是我們常說的云服務(wù)器。簡單地說,彈性云主機(jī),是指運(yùn)行在云計算環(huán)境中的虛擬服務(wù)器。彈性云主機(jī)可以說是虛擬專用服務(wù)器(VPS),但VPS卻不能說是云服務(wù)器。這是因為兩者有著本質(zhì)的區(qū)別。VPS只能存放在單個硬件服務(wù)器中,從而在任何硬件故障時極容易造成單點(diǎn)故障以及隨之而來的服務(wù)中斷。彈性云主機(jī)

    標(biāo)簽:
    云主機(jī)

熱門排行

信息推薦