网络协议性能优化
2019-12-01 本文已影响0人
fanstastic
-
关于本书
网络开发中要用到哪些协议,这些协议有什么固有的局限性,如何针对底层网络优化自己的应用,浏览器提供了哪些网络相关的功能。
我们将从TCP,UDP,TLS协议的内部工作原理说起,向大家解释如何针对这几种协议进行网络优化。
要设计和开发高性能应用,必须理解每一位数据如何交付,必须理解每一种传输机制和相关协议的特点。 -
延迟与带宽
延迟是消息或分组从起点到终点经历的时间。 -
传播延迟
消息从发送端到接收端需要的时间,是信号传播距离和速度的函数 -
传输延迟
把消息中所有比特转移到链路所需要的时间,是消息长度和链路速率的函数 -
处理延迟
处理分组首部,检查位错误以及确定分组目标所需要的时间 -
排队延迟
到来的分组排队等待处理的时间
以上延迟时间的总和就是客户端到服务器的总延迟时间。
CDN最重要的就是通过把内容部署在全球各地,让用户从最近的服务器加载内容,大幅降低传播分组的时间。
-
tcp的构成
因特网有两个核心协议: IP和TCP
IP负责联网主机之间的路由选择和寻址
TCP负责在不可靠的传输信道上提供可靠的抽象层,向应用层隐藏了大多数网络通信的复杂细节,比如丢包重发,按序发送,拥塞控制和避免,数据完整等等。采用tcp数据流可以确保发送的所有字节都能被完整收到,tcp专门为精确做了优化。 -
三次握手
所有tcp连接一开始都要经过三次握手,客户端和服务器在交换应用数据之前,就必须起始分组序列号,以及其他一些连接相关的细节达成一致。出于安全考虑,序列号由两端随机生成。