CDN加速

技术博客 > 正文

CDN加速如何进行HTTP头部优化

2021-03-05

HTTP头部优化指的是在CDN加速过程中,根据客户的需求对HTTP头部进行定制性的优化,包括忽略强制刷新、头部大小限制和头部增删改。

网宿HTTP头部优化的忽略强制刷新功能,可以在客户端(客户端一般是指浏览器)发起对已缓存内容的强制刷新请求后,保证请求的内容仍然由边缘节点提供所缓存的内容给客户端,而不用重新回源验证请求内容,或回源取得整个请求内容后再响应给客户端。

网宿HTTP头部优化的忽略强制刷新功能,可以对浏览器的以上强制刷新请求进行忽略,保证在浏览器发出以上强制刷新请求时,都能够由网宿缓存节点直接提供相应内容(无需回源),可以极大地减少源站回源验证请求的处理负载,也可以极大地减少源站对于同一文件回源请求产生的带宽。

该功能适用于对负载要求较大,如源站负载过高的cdn加速网站尤其适用,可以极大减少源站的负载以及源站的带宽。该功能在全站加速中已有体现。

网宿亮相亚马逊云峰会:解读如何构建安全可靠的云基础架构

HTTP头部大小限制,是指网站使用CDN加速后,对于用户的访问,CDN节点可以对请求头或者响应头的大小进行限制,当请求头或者响应头超过配置的最大值时,返回错误的状态码,用户访问失败。

HTTP协议采用了请求/响应模式。客户端向服务端发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。

配置HTTP头部大小限制后,当请求头大小超过配置的最大值时,返回错误请求(Bad Request)的响应,状态码是400。 当响应头大小超过配置的最大值时,返回响应头过大(HTTP_HEADER_TOO_LARGE)的响应,状态码是601。

部分客户为了满足特殊业务需求,需要定制个性化的http头部;而在CDN加速层面,这些定制化的需求或者一些通用http头部,会影响到客户的cdn加速效果,比如导致用户请求频繁回源,从而对用户的访问效果造成影响,并且不利于用户回源量的控制。 头部增删改功能,可通过在CDN层对客户实现个性化http头部控制,让客户在不需要修改源站的情况下,实现定制化的http头部和cdn加速效果的提升。

在网站使用cdn加速后,用户的请求/响应过程被定义为四个方向:用户到CDN的请求,CDN到源站请求,源站到CDN的响应,CDN到用户的响应。

头部的增删改功能通过对用户请求/响应过程中的四个方向对http头部内容(包含http头和头部内容)进行增加、删除、修改操作,从而实现用户请求和回源响应在不同层面上对http头部的不同需求。该功能在网页加速中已有体现。

忽略强制刷新、头部大小限制、头部增删改是CDN加速中HTTP头部优化的重要实现方式。目前已经被用于全站加速、网页加速等各类cdn加速产品的协议中。