博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Http权威指南(二)---读书笔记
阅读量:4551 次
发布时间:2019-06-08

本文共 901 字,大约阅读时间需要 3 分钟。

Chart4 

====连接管理====

一、TCP连接

  1.  Http和Https的网络协议栈:

  

  2.  Http在TCP/IP传输中的位置:

   

  3.  Http怎么利用TCP传输:

  

 

二、Http依赖的TCP性能(延时)简介

  1.  TCP连接建立握手:安全的三次握手

 

  2.  TCP慢启动拥塞控制

    (1)什么是慢启动:TCP连接会随时间进行自我“调谐”,初期将会限制连接的最大速度,到后期再逐渐加快。

    (2)该原因导致Http存在持久连接(Keep Live).

  3.  数据聚焦的Nagle算法(应用层的缓存)

    (1)问题:小的Http报文1.可能五无法填满一个分组(需等待),2.将等待确认分组(原因4.)

    (2)解决办法:设置TCP的TCP_NODELAY,以非阻塞方式传输

  4.  用于捎带确认的TCP延迟确认算法

    (1)看看这边的一个说法:每个TCP段都有一个序列号和数据完整性校验和,每个段的接受者收到完好的段时,

  都会向发送者回送小的确认分组。如果发送者没有在指定的窗口时间内收到确认信息,发送者就认为已经被破坏,

  将进行重发数据。(SYN/SYN + ACK)是这样的原因么?

    (2)HTTP具有双峰特性的请求-应答行为降低了捎带信息的可能。

    (3)你自然可以对TCP的参数进行设置。

  5.  TIME_WAIT时延和端口耗尽

    (1)产生原因:当某个TCP端点关闭TCP连接时,会在内存维护一个小的控制块,用来记录最近所关闭的IP和端口号,

            这类信息将保存2分钟左右。因此,两分钟内,你不能创建两个具有一样IP和端口号的连接。

        假设:源端口数量:(65536 - 1000) / 120 =  537,意味着2分钟内每秒钟接受超过537的连接,将产生这个问题。

    (2)解决办法:增加服务器数量,建立分发系统,或者使用虚拟IP。

 

转载于:https://www.cnblogs.com/hejianglin/p/5267734.html

你可能感兴趣的文章
使用ZooKeeper协调多台Web Server的定时任务处理(方案1)
查看>>
20171116 每周例行报告
查看>>
[C#] SHA1校验函数用法
查看>>
linux 下 VMware 提示Unable to change virtual machine power state:
查看>>
洛谷P1585 魔法阵
查看>>
线程 题待做
查看>>
PL/SQL可以连oracle,但是jdbc连不上 【转】
查看>>
使用 highlight.js 在网页中高亮显示java 代码 【原】
查看>>
Android应用 程序框架设计方法
查看>>
基于Nginx环境下5种http转https的设置方法
查看>>
windows创建服务
查看>>
锋利的JQuery —— JQuery性能优化
查看>>
MIT许可证
查看>>
JQuery发送Ajax请求
查看>>
SQL 中的 case when
查看>>
【DeepLearning】GoogLeNet
查看>>
【手撸一个ORM】第六步、对象表达式解析和Select表达式解析
查看>>
MsDepSvc 启动失败
查看>>
总结十四
查看>>
泛型约束
查看>>