總結(jié)一下連接的一些要點(diǎn):
1.tcp為http提供了一條可靠的比特傳輸管道
2.tcp流是分段的循衰,有ip分組傳輸
ip分組包括:
(1).ip分組首部
(2)tcp段首部
(3)tcp數(shù)據(jù)塊
3.tcp的性能
常見的tcp相關(guān)延時包括如下幾個:
(1)tcp連接建立握手
這個很好理解苍匆,每次建立新的連接都要進(jìn)行握手動作吞琐,這里也是耗時的常見點(diǎn)
(2)tcp慢啟動擁塞控制
tcp連接會隨著時間的推移提高傳輸速度扬卷,這種自我調(diào)諧成為tcp慢啟動
tcp慢啟動限制了一個tcp端點(diǎn)在任意時刻可以傳輸?shù)姆纸M數(shù)
通俗來說就是:每成功接收一個分組,發(fā)送端就有了發(fā)送另外兩個分組的權(quán)限
如:
摸個http事物有大量數(shù)據(jù)要發(fā)送茄螃,但是不能將所有的分組一次性發(fā)送出去雪猪,必須發(fā)送一個分組,等待確認(rèn)渤刃,然后發(fā)送兩個拥峦,等待確認(rèn),再發(fā)送四個卖子,一次類推略号,這種方式成為“打開擁塞窗口”
(3)數(shù)據(jù)聚集的Nagle算法
如果tcp發(fā)送了大量包含少量數(shù)據(jù)的分組,網(wǎng)絡(luò)性能就會嚴(yán)重下降洋闽,這時候就用Nagle算法進(jìn)行優(yōu)化發(fā)送玄柠,但是算法會阻止數(shù)據(jù)的發(fā)送,所有會帶來一些延遲诫舅,很少羽利。
4.提高h(yuǎn)ttp連接性能
(1)并行連接:通過多條tcp連接發(fā)起并行的http請求
(2)持久連接:重用tcp
(3)管道化連接:通過共享的tcp連接發(fā)起并發(fā)的http請求