精品文档---下载后可任意编辑 IPHONE 手机电视提示缓冲而无法继续观看问题分析1 月 4 日马鞍山分公司反映使用 IPHONE 手机看电视时常常数据缓冲而无法继续观看,经分析初步推断是 RAB 拆链可能会引起 IPHONE 和手机电视平台间TCP 会话问题,而导致业务异常终止。继续分析 TCP 会话过程,产生问题的原因是 IPHONE 在 RAB 没有拆除后发的 TCP 连接时会发两个重复的建链请求(两个一样的 SYN 报文),电视平台侧可能有负载分担机制,可能会把这两个请求转到不同的电视服务器上,可能导致 TCP 会话异常。一、IPHONE 看手机电视流程分析通过消息看 IPHONE 连接手机电视时通过 3GNET 连接到公网。过程如下:1、 手机通过 3GNET 进行 PDP 上下文激活2、 打开页面时,返回网页脚本如下: if (site_host==site_url1||site_host==site_url2){ if (userAgent.indexOf("iPhone")>0){ window.location="http://iphone.wo.com.cn"; } else{ window.location="http://www.10010.com"; }普通手机会直接转到,IPHONE 手机会转到 iPhone,然后在点击手机电视后连接到 itv.wo.com.cn 网站。 然后点击 WEB 网页中的电视节目消息,通过不断猎取节目数据块文件名,通过 TCP 方式收看数据文件(普通手机一般使用 RTP 方式)。过程如下:1、 猎取电视节目最新数据块文件名。GET /3f3d32e072b 得到结果为:#EXTM3U#EXT-X-TARGETDURATION:10#EXT-X-MEDIA-SEQUENCE:1739#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10精品文档---下载后可任意编辑#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:10#EXTINF:102、 下载最新的数据块文件,第一次从倒数第三个开始,并在 IPHONE 手机实时观看(每个文件块约为 500K 左右,10 秒钟播放时间) GET /video1/sample_128k-01752.tsGET /video1/sample_128k-01753.ts3、 再次猎取最新数据块文件名, GET /3f3d32e072b 二、问题分析测试中发现异常情况出现在手机重复猎取 M3U8 文件的过程中,该文件含有最新数据块文件列表。异常情况出现在手机和电视平台 TCP 三次握手后,发GET 请求,平台不回应,手机在重复三次 GET 请求后认为平台异常终止了请求,并终止了本次手机电视业务。该 TCP 会话过程如下:第一个包是平台发给手机的 TCP 握手信号但 ACK=0(正常情况下 ACK 应该=1),同时随后还发了...