Review| some notes about HTTP3
1.Background
Google is in control of future web protocol development, from SPDY that was eventually standardized as HTTP/2 to QUIC being standardized as HTTP/3. HTTP/2 cannot be seen sniffing with tcpdump because it’s encrypted with SSL. All the implementations of HTTP/2 actually use it over SSL, although the standard allows HTTP/2 run over TCP.
2.headline features
QUIC doesn’t change HTTT/2 as much as change how the transport works. Just focus on transport issues.
A. Latency
QUIC reduces round-trips to set up connections more quickly while TCP sets up connection slowly when there is a lot of network delay.
B. Bandwidth
Congestion will cause bandwidth limitation between source and destination. Bandwidth estimation means sending packets at a proper rate. a. HTTP/1 cannot estimate bandwidth when browsers open multi connections to web servers simultaneously because each tcp connection tries to work independently as if others don’t exist. b. HTTP/2 uses multiplexing features that can calculate one bandwidth limitation for multi interactions between browser/server. However, one interaction may block another. c. HTTP/3 extend multiplexing without any interaction blocking another.
3.Other features
A. User-mode stack performance issues
One of TCP problems is performance issues caused by interaction between kernel and user mode. One of possible practical solutions is moving from Tcp to UDP that can achieve the same performance without user-mode driver. The key principle is recvmmsg() can receive a bunch of UDP packets at one time while the well-known function recv() can deal with one packet at once. BTW, RSS is the feature of network hardware that splits income packets into multi receive queues. QUIC take the advantages to let each core manage its own packets queue without the sharing problems.
B. Mobile support
QUIC identify a connection with 64-bit ID instead of ip/port sets. So you can continue a video phone call when device ip changes
4.Influences for us
We will use a higher level network programming API instead of the well-known transport layer API socket.That means programming to application layer(7) instead of transport layer(4) API.
Google has driven us to application service elements that will handle communication(file/messages) in a standard way among different applications.
相關推薦
Review| some notes about HTTP3
1.Background Google is in control of future web protocol development, from SPDY that was eventually standardized as HTTP/2 to QUIC
Some tips about using google’s TPU
About one month ago, I submit a request to Google Research Cloud for using TPU for free. Fortunately, I received the approvement yesterday. The appro
Some tips about using google’s TPU (Cont.)
Sometimes I get this error from TPUEstimator: ... File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/s
Some modifications about SSD-Tensorflow
In the previous article, I introduced a new library for Object Detection. But yesterday, after I added slim.batch_norm() into ‘nets/ssd_vgg_512.py’ l
Ask HN: Some questions about Banksy's self destructing painting
In regards to this video posted by Banksy (https://youtu.be/iiO_1XRnMt4), and this thread on reddit (https://www.reddit.com/r/instant_regret/comments/9lxtc
Some Thoughts about Productivity and the 40 Hour Work Week
Some Thoughts about Productivity and the 40 Hour Work WeekOne thing I really care about is productivity, and one thing I hate is busyness. Being busy doesn
Some questions about docker
這裡主要記錄一下在我學習docker的過程中給我造成困惑的問題以及最後我的理解。所以下面的內容很有可能有錯誤。 關於docker的學習,我主要參考的是docker官網上的文件。對於初學者來說,已經足夠。 最後感嘆一句,看英文文件真的很折磨,並且學習的過程當中某一節、某一段都有可能
Some tips about the life cycle of Maya thread pool
If you want to know how to use MThreadPool, besides the above link, you can reference our 2 samples, threadTestCmd and threadTestWithLocksCmd. But here,
Some tips about the C++(自己看的,很亂)
...{ char str1[] ="abc"; char str2[]="abc"; constchar str3[]="abc"; constchar str4[]="abc"; char* str5 ="abc"; char*
Some tips about layout
對於Android開發來說佈局說簡單很簡單,說難也挺難的,簡單總結一些常用的技巧或者方法吧(持續更行) tip 1: layout_weight的妙用 在有些場景下,比方說 場景一:我們在螢幕下方的一個linearlayout中擺了四個button,我們希望無論什麼情況下,
Some notes in Stanford CS106A(3)
The value sam str1 collect bject new spec mage 1.If ( str1==str2 ) means if str1 and str2 are refers to the same OBJECT. But when comp
[Review Notes] Introduction to Financial Computing
Basic Financial Arithmetic Simple and Compound Interest Simple Interest : TotalProceed=Principal×(1+interestrate∗daysyear) Co
Review: calix Automation test case study notes
Robot Framework 是一個通用的測試自動化框架,使用python進行底層關鍵字封裝,測試人員也可以用已有的關鍵字封裝成更高層次的關鍵字來寫測試用例(test case)進行功能測試或效能測試。 Docker 伺服器裡搭建了工作站,已經配置了工作環境,只需要gi
線性代數回顧(Linear Algebra Review)
view ont 線性代數 lin geb ebr review 3.1 代數 3.1 矩陣和向量 3.2 加法和標量乘法 3.3 矩陣向量乘法 3.4 矩陣乘法 3.5 矩陣乘法的性質 3.6 逆、轉置 3.1 矩陣和向量 線性代數回顧(
linux commands notes
kill lsof 完整 mtr sta hctosys ipo lastb .sh fsck -y mtr IP cat/tac runlevel/tty eject /eject -t 開/關 mount -o loop *.iso /mnt --bind /roo
前端面試題(來自前端網http://www.qdfuns.com/notes/23515/c9163ddd620baac5dd23141d41982bb8.html)
設置 session hat eval 減少 還需要 height 狀態碼 一次 HTML&CSS 1. 常用那幾種瀏覽器測試?有哪些內核(Layout Engine)? (Q1)瀏覽器:IE,Chrome,FireFox,Safari,Opera。 (Q2)內核
前端面試題二(來自前端網http://www.qdfuns.com/notes/23515/fa8b1e788ac39b04108fc33e5b543c4a.html)
scrip border cal 搜索引擎 val 媒體 分配 error 不刷新 HTML&CSS 1.請描述一下 cookies,sessionStorage 和 localStorage 的區別? cookie是網站為了標示用戶身份而儲存在用戶本地終端(Cl
Yasm 1.3.0 Release Notes
seh st3 require sys storage uil ble ear welcom Yasm 1.3.0 Release Notes http://yasm.tortall.net/releases/Release1.3.0.html Target Audie
SYSTEM "about:legacy-compat"
color leg 大小 單引號 標準 sys 一句話 代碼 doc 在html5中,像如下的聲明都是可以了,也就是說聲明方式允許不區分大小寫,引號不區分是單引號還是雙引號 <!DOCTYPE html> <!DOCTYPE HTML SYSTEM "ab
項目管理系列--好用的代碼評審(Code Review)工具
mos users solution con codes flex reat hat test 1. Gerrit Gerrit is a web based code review system, facilitating online code reviews for