![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CDN
lotluck
我会成为你的眼睛,为你看清未来
展开
-
CDN问题排查:劫持下tcp三次握手分析
一、问题直观感受就是curl 好像卡住了,一直不通。 但是ping, telnet正常,大概率被劫持了,客户端和服务端抓包即可二、分析1.服务端抓包tcpdump -i any port 80 and host 1.1.1.1 -w 6.cap2.客户端抓包从抓包可以得出, 客户端 和 服务端 三次握手成功了,客户端发起get请求,在客户端看来服务端没有响应。客户端觉得是不是三次握手的ack消息难道我没发成功? 客户端就退回到三次握手阶段,连续给服务端发送三次握手的ack消息。 从抓包原创 2020-08-21 19:56:32 · 462 阅读 · 0 评论 -
[CDN 技术] HTTP参数中Etag的重要性
Etag在HTTP1.1中有介绍,主要的作用就是在(css file, image, javascript file)文件后面添加一个唯一的参数(相当于查询参数字符串),Etag有服务器端生成,并且随着文件的改变而改变,这样浏览器端就会只重新请求获取 Etag发生变化的文件,减少浏览器端数据的流量,加快浏览器的反应速度,重要的是减轻服务器端的压力,所以服务器端Etag的实现就比较重要了.现在我们有个问题为什么要使用Etag呢?Etag主要为了解决Last-Modified无法解决的一些问题.他能比Last_转载 2017-11-04 20:18:21 · 2424 阅读 · 0 评论 -
HTTP中的Range: bytes=0-
HTTP中的Range就是分段请求字节数,也是大家经常说的断点续传。Range头域可以请求实体的一个或者多个子范围,Range的值为0表示第一个字节,也就是Range计算字节数是从0开始的表示第二个500字节:bytes=500-999表示最后500个字节:bytes=-500表示500字节以后的范围:bytes=500-第一个和最后一个字节:bytes=0-0,-1同时指定几个范围:byt原创 2017-11-09 10:13:07 · 10581 阅读 · 0 评论 -
Transfer-Encoding 和Content-Encoding
Transfer-Encoding: chunked分块编码,对应Content-Length计算实体长度。 有的时候服务器发送的数据并没有具体的长度,这是时候就需要chunked分块编码 Content-Encoding:gzip 内容编码, 很多网站都使用了gzip压缩,这样使传输的数据量减少了3/4,但是一般图片不建议压缩,因为图片都是压缩过的Content-Encoding 和 Trans原创 2017-12-26 21:28:20 · 2167 阅读 · 0 评论 -
FLV格式解析及其解析器的实现
一、FLV基础入门最近在搞flv解析器,网站看到一些比较好的基础入门资料,直接搬过来了 FLV文件格式详解 FLV文件格式解析 FLV封装原理 flv文件元信息(metadata) FLV文件结构解析其实看这么多资料还不如下载一个flv解析器(flvparse)直接看里面的格式,heard、tag应有尽有,一目了然 二、FLV解析器实现在对flv格式清楚的基础上,就...原创 2018-02-26 10:57:56 · 2491 阅读 · 2 评论 -
记录一次采坑--如何处理Linux动态库同名函数?
一、背景介绍需求描述:业务提供一个鉴权的静态库,我只需要从url 和 参数中提取相应的参数传给业务的静态库,将静态库的处理结果直接返回给业务(return < 0, 直接返回403)。但是最近业务反馈,请求部分url直接返回Error:-1015错误,不符合预期。二、分析过程业务刚开始反馈问题,我的第一反应:怎么可能是我的问题,我就仅仅写了一个so(暂时命名1.so),直接调用了你...原创 2019-07-26 20:40:55 · 1968 阅读 · 0 评论