基础概念¶
传输协议¶
通讯的规则。
计算机网络中实现通信必须有一些约定即通信协议,对速率、传输代码、代码结构、传输控制步骤、出错控制等制定标准。
由于结点间联系复杂,制定协议时,把复杂成份分解成一些简单的成份,再将它们复合起来。最常用的复合方式是层次方式,即同层间可以通信、上一层可以调用下一层,而与再下一层不发生关系。
常见协议:TCP、UDP
CDN¶
内容分发网络(Content Delivery Network)CDN是为了解决长距离网络访问速度慢的问题而诞生的一种网络应用服务。加快向世界各地的用户交付静态html内容而开发的。如今只要提供http流量就应该使用CDN。
边缘服务器¶
CDN拉近了内容和用户的距离,提高了用户感知服务的性能,这对保留用户至关重要。
为了让服务更贴近用户,CDN在全球数百个地点部署服务器,这些服务器位置称为存在点Point of Presence(PoP)
,PoP服务器称为边缘服务器。在世界各地有很多PoP,确保用户可以快速的访问临近的边缘服务器。不同的CDN使用不同的技术,将用户的请求并行到最近的PoP。通过基于DNS的路由,每个PoP都有自己的ip地址,当用户查找CDN的地址时,DNS返回它们最近的PoP地址。每个边缘服务器充当具有巨大内容缓存的反向代理。静态内容缓存在边缘服务器上的该内容缓存中。如果缓存中有一段内容,则可以快速将其返回给用户。
由于边缘服务器仅在其缓存中没有静态内容时才从源服务器请求静态内容的副本,大大降低了源服务器集群的负载和带宽要求。
现在CDN还可以将静态内容转换为更优化的格式,比如:可以动态的缩小JavaScript包,或者将图像格式转换为现代格式(WEBP、AVIF)。
边缘服务器(Edge server)在现代http堆栈中扮演重要角色。所有TLS连接均终止于边缘服务器,TLS握手的成本很高,需要多次网络往返才能建立。
CDN最核心的原则是“就近访问”,使用HTTP协议里的代理和缓存技术,用户在上网的时候不直接访问原网站,而是访问离他最近的一个CDN节点,节省了访问过程中的时间成本。
1、负载均衡
跟缓存有关系。降低了源服务器的负载。
2、安全防护
将攻击流量分散到大量服务器上。
3、边缘计算
慢的原因:
- 链路过长(长沙访问北京资源,经过很多路由)。
- 网络问题,南电信北联通
CDN构成¶
边缘节点
二级节点
源站节点
HTTP协议传输和TCP协议传输的区别¶
http是短连接,TCP是长连接,即时通讯使用长连接。
HTTP连接使用的是“请求—响应”的方式,请求时需要先建立连接,客户端向服务器发出请求后,服务器端才能回复数据。
TCP/IP主要的作用就是保证连接的可靠性,保证不丢包。比如TCP协议,无论上层让他传啥数据,他都通过与IP协议的操作,把这些东西分段,然后输送,同时保证在这个过程中,数据不会丢,如果丢了一块,他还得想办法重传,这就是TCP/IP的意义。
HTTP协议,可以认为主要是用来访问网页的,是比TCP更上层的协议,HTTP里面规定了我们访问网页的时候如何进行缓存,以及请求什么格式,等等。主要是为了访问网页的时候更快,更安全,而规定了很多参数。
在传输数据时,可以只使用传输层(TCP/IP),但由于没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用应用层协议(HTTP、FTP、TELNET等),也可以自己定义应用层协议。
- TCP是传输层,HTTP是应用层,HTTP基于TCP连接基础上的。TCP就是单纯建立连接,简单的传输,不涉及任何我们需要请求的实际数据。HTTP是用来收发数据,即实际应用上来的。
- TCP是底层通讯协议,定义的是数据传输和连接方式的规范。HTTP是应用层协议,定义的是传输数据的内容的规范,HTTP协议中的数据是利用TCP协议传输的,所以支持HTTP也就一定支持TCP。
- HTTP支持的是www服务,WEB使用HTTP作传输层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发送到网络上。
- TCP/IP是网络中使用的基本的通信协议。
- TCP/IP是Internet协议族,不单单是TCP和IP。它包括上百个各种功能的协议,如:远程登录、文件传输和电子邮件等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。