Akamai Martin Horčička:最新网络优化技术及编程语言分析
生活随笔
收集整理的這篇文章主要介紹了
Akamai Martin Horčička:最新网络优化技术及编程语言分析
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在LiveVideoStackCon深圳站開場(chǎng)之前,我們邀請(qǐng)到了Akamai公司的研發(fā)經(jīng)理Martin Hor?i?ka來(lái)接受我們的采訪,采訪中Martin向我們分享了他早期關(guān)于UNIX相關(guān)的OS、網(wǎng)絡(luò)和開發(fā)的工作以及對(duì)于近幾年編程語(yǔ)言發(fā)展的看法。除此之外Martin還提供了關(guān)于multi-connection和P2P的一些技巧,最后,Martin還談到了Akamai最近的項(xiàng)目在基于UDP的安全傳輸協(xié)議做一些優(yōu)化。
文 / Martin Hor?i?ka整理 / LiveVideoStackLiveVideoStack:Martin 你好,能否向LiveVideoStack的讀者介紹下自己,以及你目前主要的工作以及關(guān)注的技術(shù)方向?Martin Hor?i?ka:大家好,我是 Akamai 公司QUIC 團(tuán)隊(duì)的研發(fā)經(jīng)理,團(tuán)隊(duì)位于捷克的布拉格,目前主要負(fù)責(zé)提供 QUIC 協(xié)議實(shí)施,以便將它集成到 Akamai 軟件中,支持集成、部署和性能調(diào)優(yōu),除此之外我們還在為QUIC進(jìn)行優(yōu)化、改進(jìn)和改善、調(diào)整網(wǎng)絡(luò)協(xié)議。除了維護(hù)Chromium軟件兼容性,支持新的 Google QUIC 版本以外,我們目前還在優(yōu)化CPU利用率方面開展工作。這是一種提高重新連接的 QUIC 性能的機(jī)制,當(dāng)然最引人注目可是IETF QUIC的支持。我們預(yù)計(jì)IETFQUIC的工作將成為我們2020年最重要的一組任務(wù)。
LiveVideoStack:從你的工作經(jīng)歷可以看到,從最初的UNIX系統(tǒng)管理員到軟件開發(fā)工程師再到研發(fā)經(jīng)理,職位的變動(dòng)對(duì)你來(lái)說(shuō)有哪些不同的感受?職位越高是否意味著不會(huì)再?gòu)氖禄鶎拥木幋a工作??Martin Hor?i?k:在ISP從事系統(tǒng)和網(wǎng)絡(luò)管理以及操作系統(tǒng)測(cè)試,再跨到軟件開發(fā)也許是個(gè)很長(zhǎng)的過(guò)程,但我覺(jué)得是值得的,實(shí)際上這艱難的道路增進(jìn)的我個(gè)人的基本軟件技能、網(wǎng)絡(luò)知識(shí),更何況的是我從中可以深度理解客戶的特殊要求及從不同的角度看待事情。所有我的工作其實(shí)都圍繞著軟件開發(fā),所以才會(huì)最終走向軟件開發(fā)的職業(yè)道路。近期我接觸基本編碼的機(jī)會(huì)也逐漸減少,說(shuō)實(shí)話我偶爾也會(huì)想起那段時(shí)光。另一方面,我保持專注在架構(gòu)層面,我同時(shí)參與多個(gè)有趣的項(xiàng)目,我參與制定公司的技術(shù)方向,最重要的是我可以與許多非常有才華的同事合作。LiveVideoStack:你曾使用C,Python,Perl,Shell和Java編程語(yǔ)言進(jìn)行軟件開發(fā),作為一名資深的軟件開發(fā)工程師,你如何看待近幾年編程語(yǔ)言的發(fā)展?Martin Hor?i?ka:作為過(guò)去9年C++的使用者,我發(fā)現(xiàn)編程語(yǔ)言的發(fā)展終于開始穩(wěn)步地前進(jìn)。過(guò)去,C++開始的時(shí)候遇到缺乏標(biāo)準(zhǔn),很難推進(jìn)。現(xiàn)在,C++定期更新,進(jìn)度問(wèn)題也轉(zhuǎn)移到使用它的公司組織,因?yàn)樗麄冃枰ミm應(yīng)經(jīng)常變更。不過(guò),C++仍然存在一些固有的問(wèn)題,主要是其復(fù)雜性和用戶對(duì)于如何很好地使用它(例如,有或無(wú)例外處理)的意見(jiàn)中的碎片化。我個(gè)人覺(jué)得"batteriesincluded"的概念,可從Python獲得很豐富的存儲(chǔ)庫(kù)與語(yǔ)言,但我相信有些人不一定同意我這一點(diǎn)。每當(dāng)我看到新的編程語(yǔ)言開發(fā),新的想法進(jìn)行測(cè)試時(shí)感覺(jué)很興奮。在我看來(lái),在不需到ISO標(biāo)準(zhǔn)的情況下對(duì)他們有益。另一方面,他們也許會(huì)受到某家公司的控制。不管怎樣,我希望能盡快見(jiàn)證C++的接班者。LiveVideoStack:在此之前你有大量的時(shí)間專注在Giga(一種新的基于UDP的專有傳輸協(xié)議)上,我們知道QUIC也是基于UDP的低時(shí)延的互聯(lián)網(wǎng)傳輸層協(xié)議,是什么原因讓你放棄Giga轉(zhuǎn)而從事QUIC方面的工作?Martin Hor?i?ka::Giga是我們首次進(jìn)入基于 UDP 的傳輸協(xié)議領(lǐng)域的產(chǎn)品。我們更希望用FEC取代常用的基于重新傳輸?shù)臄?shù)據(jù)包丟失恢復(fù)機(jī)制。漸漸地,我們逐漸認(rèn)識(shí)到FEC本身并不是一個(gè)解決方案,生產(chǎn)環(huán)境中的網(wǎng)絡(luò)有許多難題,我們需要在傳輸協(xié)議研發(fā)方面做出更仔細(xì)的推進(jìn)。在這個(gè)項(xiàng)目里,我們領(lǐng)悟了很多珍貴的經(jīng)驗(yàn)。后來(lái),Akamai 收購(gòu)了一家丹麥公司Octoshape,他們是提供視頻流加速解決方案的。與他們合作后,他們帶來(lái)了另一個(gè) UDP 的協(xié)議,更加有意思的傳輸和應(yīng)用程序?qū)尤诤稀K鼮槲覀児疽肓艘恍﹤鬏攲記Q策中對(duì)播放的視頻比特率的感知能力。當(dāng)Google宣布有意在IETF下對(duì)QUIC進(jìn)行標(biāo)準(zhǔn)化時(shí),我們正在考慮如何合并我們兩個(gè)基于UDP的協(xié)議。此協(xié)作機(jī)會(huì)將使得我們的優(yōu)化從專有領(lǐng)域轉(zhuǎn)移到未來(lái)的標(biāo)準(zhǔn)。因此,我們把重點(diǎn)轉(zhuǎn)移到QUIC上,并逐漸終止了舊協(xié)議。LiveVideoStack:基于UDP的QUIC常用來(lái)和基于TCP的SPDY比較,這些協(xié)議和技術(shù)都是為解決數(shù)據(jù)傳輸問(wèn)題而存在,你如何看待網(wǎng)絡(luò)上QUIC終將替代TCP的說(shuō)法?QUIC與TPC在你看來(lái)更像是一種什么關(guān)系?MartinHor?i?ka:盡管 SPDY 演變?yōu)镠TTP/2,被視為 HTTP/1.1 的后繼者,但我們不能說(shuō)它取代了 HTTP/1.1。考慮到TCP比HTTP更普遍。眾所周知,TCP在大多數(shù)條件下工作出色,得到廣泛支持,運(yùn)行效率也很高。QUIC 最初旨在作為一個(gè)實(shí)驗(yàn)平臺(tái),從該平臺(tái)將最成功的功能集成到主流協(xié)議中。例如,我們可以看到 QUIC 加密如何通過(guò)0-RTT 連接啟發(fā) TLS 1.3。我相信,這種趨勢(shì)將繼續(xù)以某種形式,當(dāng)然TCP將繼續(xù)緩慢演進(jìn),也會(huì)從QUIC實(shí)驗(yàn)結(jié)果中受益。LiveVideoStack:QUIC協(xié)議相較于TCP協(xié)議有諸多優(yōu)點(diǎn),例如效率高,速度快,占資源少,在QUIC實(shí)現(xiàn)時(shí)還有哪些需要優(yōu)化的地方?
Martin Hor?i?ka:根據(jù)我們的統(tǒng)計(jì)數(shù)據(jù),QUIC 在某些情況下比TCP 表現(xiàn)更好,而在另一些情況下,QUIC 的表現(xiàn)未必勝出。到目前為止,QUIC 需要的資源(尤其是CPU)明顯多于 TCP 。從CDN的角度來(lái)看,我們更考慮實(shí)用性,使用QUIC時(shí)當(dāng)它可以帶來(lái)顯然的利益,不然的話采用TCP。我相信進(jìn)一步的改進(jìn)和優(yōu)化將逐漸減少 QUIC 的資源使用,一定可以增加QUIC的使用場(chǎng)景,但我認(rèn)為TCP一定會(huì)存在。從優(yōu)化的方向上,我應(yīng)該強(qiáng)調(diào)在OS內(nèi)核中,網(wǎng)卡中支持UDP,支持QUIC實(shí)施。我們非常需要定案QUIC規(guī)范,以至于可以更加集中在某些具體目標(biāo)。
文 / Martin Hor?i?ka整理 / LiveVideoStackLiveVideoStack:Martin 你好,能否向LiveVideoStack的讀者介紹下自己,以及你目前主要的工作以及關(guān)注的技術(shù)方向?Martin Hor?i?ka:大家好,我是 Akamai 公司QUIC 團(tuán)隊(duì)的研發(fā)經(jīng)理,團(tuán)隊(duì)位于捷克的布拉格,目前主要負(fù)責(zé)提供 QUIC 協(xié)議實(shí)施,以便將它集成到 Akamai 軟件中,支持集成、部署和性能調(diào)優(yōu),除此之外我們還在為QUIC進(jìn)行優(yōu)化、改進(jìn)和改善、調(diào)整網(wǎng)絡(luò)協(xié)議。除了維護(hù)Chromium軟件兼容性,支持新的 Google QUIC 版本以外,我們目前還在優(yōu)化CPU利用率方面開展工作。這是一種提高重新連接的 QUIC 性能的機(jī)制,當(dāng)然最引人注目可是IETF QUIC的支持。我們預(yù)計(jì)IETFQUIC的工作將成為我們2020年最重要的一組任務(wù)。
LiveVideoStack:從你的工作經(jīng)歷可以看到,從最初的UNIX系統(tǒng)管理員到軟件開發(fā)工程師再到研發(fā)經(jīng)理,職位的變動(dòng)對(duì)你來(lái)說(shuō)有哪些不同的感受?職位越高是否意味著不會(huì)再?gòu)氖禄鶎拥木幋a工作??Martin Hor?i?k:在ISP從事系統(tǒng)和網(wǎng)絡(luò)管理以及操作系統(tǒng)測(cè)試,再跨到軟件開發(fā)也許是個(gè)很長(zhǎng)的過(guò)程,但我覺(jué)得是值得的,實(shí)際上這艱難的道路增進(jìn)的我個(gè)人的基本軟件技能、網(wǎng)絡(luò)知識(shí),更何況的是我從中可以深度理解客戶的特殊要求及從不同的角度看待事情。所有我的工作其實(shí)都圍繞著軟件開發(fā),所以才會(huì)最終走向軟件開發(fā)的職業(yè)道路。近期我接觸基本編碼的機(jī)會(huì)也逐漸減少,說(shuō)實(shí)話我偶爾也會(huì)想起那段時(shí)光。另一方面,我保持專注在架構(gòu)層面,我同時(shí)參與多個(gè)有趣的項(xiàng)目,我參與制定公司的技術(shù)方向,最重要的是我可以與許多非常有才華的同事合作。LiveVideoStack:你曾使用C,Python,Perl,Shell和Java編程語(yǔ)言進(jìn)行軟件開發(fā),作為一名資深的軟件開發(fā)工程師,你如何看待近幾年編程語(yǔ)言的發(fā)展?Martin Hor?i?ka:作為過(guò)去9年C++的使用者,我發(fā)現(xiàn)編程語(yǔ)言的發(fā)展終于開始穩(wěn)步地前進(jìn)。過(guò)去,C++開始的時(shí)候遇到缺乏標(biāo)準(zhǔn),很難推進(jìn)。現(xiàn)在,C++定期更新,進(jìn)度問(wèn)題也轉(zhuǎn)移到使用它的公司組織,因?yàn)樗麄冃枰ミm應(yīng)經(jīng)常變更。不過(guò),C++仍然存在一些固有的問(wèn)題,主要是其復(fù)雜性和用戶對(duì)于如何很好地使用它(例如,有或無(wú)例外處理)的意見(jiàn)中的碎片化。我個(gè)人覺(jué)得"batteriesincluded"的概念,可從Python獲得很豐富的存儲(chǔ)庫(kù)與語(yǔ)言,但我相信有些人不一定同意我這一點(diǎn)。每當(dāng)我看到新的編程語(yǔ)言開發(fā),新的想法進(jìn)行測(cè)試時(shí)感覺(jué)很興奮。在我看來(lái),在不需到ISO標(biāo)準(zhǔn)的情況下對(duì)他們有益。另一方面,他們也許會(huì)受到某家公司的控制。不管怎樣,我希望能盡快見(jiàn)證C++的接班者。LiveVideoStack:在此之前你有大量的時(shí)間專注在Giga(一種新的基于UDP的專有傳輸協(xié)議)上,我們知道QUIC也是基于UDP的低時(shí)延的互聯(lián)網(wǎng)傳輸層協(xié)議,是什么原因讓你放棄Giga轉(zhuǎn)而從事QUIC方面的工作?Martin Hor?i?ka::Giga是我們首次進(jìn)入基于 UDP 的傳輸協(xié)議領(lǐng)域的產(chǎn)品。我們更希望用FEC取代常用的基于重新傳輸?shù)臄?shù)據(jù)包丟失恢復(fù)機(jī)制。漸漸地,我們逐漸認(rèn)識(shí)到FEC本身并不是一個(gè)解決方案,生產(chǎn)環(huán)境中的網(wǎng)絡(luò)有許多難題,我們需要在傳輸協(xié)議研發(fā)方面做出更仔細(xì)的推進(jìn)。在這個(gè)項(xiàng)目里,我們領(lǐng)悟了很多珍貴的經(jīng)驗(yàn)。后來(lái),Akamai 收購(gòu)了一家丹麥公司Octoshape,他們是提供視頻流加速解決方案的。與他們合作后,他們帶來(lái)了另一個(gè) UDP 的協(xié)議,更加有意思的傳輸和應(yīng)用程序?qū)尤诤稀K鼮槲覀児疽肓艘恍﹤鬏攲記Q策中對(duì)播放的視頻比特率的感知能力。當(dāng)Google宣布有意在IETF下對(duì)QUIC進(jìn)行標(biāo)準(zhǔn)化時(shí),我們正在考慮如何合并我們兩個(gè)基于UDP的協(xié)議。此協(xié)作機(jī)會(huì)將使得我們的優(yōu)化從專有領(lǐng)域轉(zhuǎn)移到未來(lái)的標(biāo)準(zhǔn)。因此,我們把重點(diǎn)轉(zhuǎn)移到QUIC上,并逐漸終止了舊協(xié)議。LiveVideoStack:基于UDP的QUIC常用來(lái)和基于TCP的SPDY比較,這些協(xié)議和技術(shù)都是為解決數(shù)據(jù)傳輸問(wèn)題而存在,你如何看待網(wǎng)絡(luò)上QUIC終將替代TCP的說(shuō)法?QUIC與TPC在你看來(lái)更像是一種什么關(guān)系?MartinHor?i?ka:盡管 SPDY 演變?yōu)镠TTP/2,被視為 HTTP/1.1 的后繼者,但我們不能說(shuō)它取代了 HTTP/1.1。考慮到TCP比HTTP更普遍。眾所周知,TCP在大多數(shù)條件下工作出色,得到廣泛支持,運(yùn)行效率也很高。QUIC 最初旨在作為一個(gè)實(shí)驗(yàn)平臺(tái),從該平臺(tái)將最成功的功能集成到主流協(xié)議中。例如,我們可以看到 QUIC 加密如何通過(guò)0-RTT 連接啟發(fā) TLS 1.3。我相信,這種趨勢(shì)將繼續(xù)以某種形式,當(dāng)然TCP將繼續(xù)緩慢演進(jìn),也會(huì)從QUIC實(shí)驗(yàn)結(jié)果中受益。LiveVideoStack:QUIC協(xié)議相較于TCP協(xié)議有諸多優(yōu)點(diǎn),例如效率高,速度快,占資源少,在QUIC實(shí)現(xiàn)時(shí)還有哪些需要優(yōu)化的地方?
Martin Hor?i?ka:根據(jù)我們的統(tǒng)計(jì)數(shù)據(jù),QUIC 在某些情況下比TCP 表現(xiàn)更好,而在另一些情況下,QUIC 的表現(xiàn)未必勝出。到目前為止,QUIC 需要的資源(尤其是CPU)明顯多于 TCP 。從CDN的角度來(lái)看,我們更考慮實(shí)用性,使用QUIC時(shí)當(dāng)它可以帶來(lái)顯然的利益,不然的話采用TCP。我相信進(jìn)一步的改進(jìn)和優(yōu)化將逐漸減少 QUIC 的資源使用,一定可以增加QUIC的使用場(chǎng)景,但我認(rèn)為TCP一定會(huì)存在。從優(yōu)化的方向上,我應(yīng)該強(qiáng)調(diào)在OS內(nèi)核中,網(wǎng)卡中支持UDP,支持QUIC實(shí)施。我們非常需要定案QUIC規(guī)范,以至于可以更加集中在某些具體目標(biāo)。
LiveVideoStack?秋季招聘
LiveVideoStack正在招募編輯/記者/運(yùn)營(yíng),與全球頂尖多媒體技術(shù)專家和LiveVideoStack年輕的伙伴一起,推動(dòng)多媒體技術(shù)生態(tài)發(fā)展。同時(shí),也歡迎你利用業(yè)余時(shí)間、遠(yuǎn)程參與內(nèi)容生產(chǎn)。了解崗位信息請(qǐng)?jiān)贐OSS直聘上搜索“LiveVideoStack”,或通過(guò)微信“Tony_Bao_”與主編包研交流。
總結(jié)
以上是生活随笔為你收集整理的Akamai Martin Horčička:最新网络优化技术及编程语言分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LiveVideoStackCon深圳-
- 下一篇: 张贤国:视频压缩还远没有达到最优