一种基于嵌入式浏览器的双模数据接收和访问方法

文档序号:7997419阅读:295来源:国知局
一种基于嵌入式浏览器的双模数据接收和访问方法
【专利摘要】本发明提出了一种基于嵌入式浏览器的双模数据接收和访问方法,用于支持嵌入式浏览器通过CABLE和IP通道分别接收广播数据和互联网数据,包含:步骤101)针对IP通道的数据,嵌入式浏览器采用标准的HTTP协议进行传输和接收;步骤102)针对CABLE通道的数据,嵌入式浏览器采用自定义的数据通信协议“cable协议”进行广播数据的接收,且当下载广播数据时采用回调接口的方式,所述回调接口的方式具体为:当有URL请求时,在浏览器内核之外的应用层进行广播数据的传输处理,处理完数据的下载存储后,将广播数据的存储地址,即新的URL地址,返回给浏览器内核使用。本发明将广播数据的处理放在应用层而不是在浏览器内核中,这样使结构清晰,应用扩展强,开发周期加快。
【专利说明】一种基于嵌入式浏览器的双模数据接收和访问方法

【技术领域】
[0001] 本发明涉及数据广播【技术领域】和嵌入式浏览器数据接收和访问【技术领域】,具体地 说,本发明涉及一种基于嵌入式浏览器的互联网数据和数据广播数据的接收和访问方法。

【背景技术】
[0002] 模拟电视数字化之后,除了可以传输传统的音视频节目之外,还可以传输其它数 据,实现数据增值业务,其中数据广播就是数字电视增值业务的基础平台。
[0003] 数据广播是指利用数字电视广播系统传输的非音视频业务,利用MPEG-II标准中 的数据扩展功能来进行一些增值业务,例如股票、天气预报、新闻、分类广告、生活资讯、远 程教育、电视游戏、电子邮件、短信业务和应用。
[0004] 目前浏览器已经是PC必备软件,是我们获取信息的最主要方式之一。最近几年浏 览器也被配置到更多的嵌入式设备上,成为这些设备获取信息的主要渠道,其中之一就是 数字电视机顶盒。由于在数字电视的环境下,网页的数据不再仅仅是通过HTTP协议获得, 而更多地通过标准的数据广播协议获得,因此数字电视的嵌入式浏览器必须支持标准的数 据广播协议。但是要在嵌入式浏览器内部完全实现对数据广播协议的支持,需要在浏览器 内部添加数据广播协议模块,除了开发周期较长,同时还会破坏浏览器原有的独立性,另 夕卜,如果前端的各种定义条件和标准不断发生变化,还需要不停地重复更新浏览器,效率较 低。因此嵌入式浏览器如何能够快速高效地支持HTTP数据和数据广播数据的接收和访问 变得越来越重要。在本发明中将互联网数据和数据广播数据简称为双模数据


【发明内容】

[0005] 本发明的目的是快速高效地支持嵌入式浏览器对于HTTP数据和广播数据的接收 和访问,我们将数据广播数据的处理放在应用层而不是在浏览器内核中,这样可以使结构 清晰,应用扩展强,开发周期加快。
[0006] 为实现上述目的,本发明提供了一种基于嵌入式浏览器的双模数据接收和访问方 法,用于支持嵌入式浏览器通过CABLE和IP通道分别接收广播数据和互联网数据,所述方 法包含:
[0007] 步骤101)针对IP通道的数据,嵌入式浏览器采用标准的HTTP协议进行传输和接 收;
[0008] 步骤102)针对CABLE通道的数据,嵌入式浏览器采用自定义的数据通信协议 "cable协议"进行广播数据的接收,且当下载广播数据时采用回调接口的方式,所述回调接 口的方式具体为:当有URL请求时,在浏览器内核之外的应用层进行广播数据的传输处理, 处理完数据的下载存储后,将广播数据的存储地址,即新的URL地址,返回给浏览器内核使 用;
[0009] 其中,所述自定义的数据通信协议"cable协议"采用一种资源标志符,所述资源 标识符的格式为:cable://id/filepath/file. html,该格式的具体含义如下:cable://表 示协议名称,id:表示特定的数据业务标识,filepath:表示实际请求的数据存储的路径, file.html :表示实际请求的数据;当客户向服务器请求数据时,仅传送请求业务类型id和 数据存储路径fil印ath,嵌入式浏览器经过协议转换启动DSM-CC协议并通过数据广播通 道进行数据的下载;最终嵌入式浏览器将下载到本地的数据以本地网页的方式呈现给用 户。
[0010] 针对广播数据的传输处理具体包含:协议的解析,数据的下载,数据的存储和数据 的后台更新。
[0011] 如果要在数据广播网页中访问互联网数据,在网页制作时,数据广播网页中互联 网相关的超链接描述符合通用资源标识符URI格式;如果要在互联网网页中访问数据广播 数据,在网页制作时,互联网网页中数据广播数据相关的超链接描述需要符合资源标识符 cable协议。
[0012] 当所述步骤102)采用DSM-CC协议下载数据时根据请求的资源进行下载,即按需 求请求数据和下载数据,仅下载当前资源标志符中请求的数据。
[0013] 嵌入式浏览器终端根据硬件配置条件选择下载数据的存储方式,如果存在硬盘, 则将数据存储在硬盘的区域A中;如果不存在硬盘,则在内存中指定一块区域A存储数据广 播数据;
[0014] 其中,当在区域A中存放数据时,采用的存放位置和结构与所述cable协议资源标 志符中的路径格式相同。
[0015] 上述步骤102)之后还包含:动态更新广播数据的步骤,具体为:
[0016] 终端接收的广播数据的动态更新方式为:在主进程中创建一个线程后台运行,采 用监控方式,后台监控数据广播通道中数据流的变化,具体是检测数据流的版本是否有发 生变化,如果数据的版本有发生变化,则表示数据有更新,此时后台线程查找数据广播数据 存储区域,是否有更新的业务数据在终端已经下载,如果终端已经下载该数据,则后台强制 下载更新数据;如果终端未下载该数据,则不作任何处理。

【具体实施方式】 [0017] 为:
[0018] 当用户启动一个页面数据请求处理时,所述基于嵌入式浏览器的双模数据接收和 访问方法具体包含如下步骤:
[0019] 步骤201)用户点击访问超链接URL ;
[0020] 步骤202)浏览器将超链接URL通过注册的回调接口交给应用程序处理,如果是标 准的HTTP协议,直接将超链接URL返回给浏览器内核处理;如果是Cable协议,将超链接 URL交给数据0C下载模块处理,并执行步骤203);
[0021] 步骤203)数据0C下载模块根据超链接URL得到业务类型标识符,根据数据存储 规则得出文件路径Filepath,检查是否存在该文件,如果存在,则执行步骤205),如果不存 在,检查Fil印ath中的文件目录是否存在,如果不存在,则创建文件目录,并到步骤204);
[0022] 步骤204)启动0C下载,根据业务ID标识创建通道,设置过滤条件,将得到的PES 数据包存到buffer中,执行步骤205);
[0023] 步骤205 )将步骤204 )中得到的buffer,根据数据存储规则,得出文件路径 Filepath,将该buffer存储到Filepath中,此时Filepath就是访问数据的新的超链接URL 地址,转到步骤206);
[0024] 步骤206)数据下载存储完毕,将新的超链接URL返回给浏览器内核处理;
[0025] 步骤207)浏览器加载新的超链接URL,在页面加载过程中,如果浏览器访问其它 超链接URL,则重复202)到206)的步骤,直到整个页面加载完毕;
[0026] 其中,所述数据存储规则为:采用与所述cable协议资源标志符中相同的路径格 式进行存储,即,当请求的资源标识符为cable://id/filepath/file. html时,贝U数据存储 的路径为/tmp/id/filepath/file. html,该存储路径的具体含义为:tmp表示系统用于存 储数据广播数据的根目录,id表示数据业务标识,filepath表示实际请求的数据存储的路 径,file, html表示实际请求的数据。
[0027] 与现有技术相比,本发明的技术优势在于:
[0028] 本发明提供的技术方案在不改变浏览器对标准的HTTP协议支持的情况下,可以 分别支持数据广播数据和互联网数据的接收和访问,并且可以支持数据广播数据和互联网 数据交互访问。由于嵌入式浏览器对数据传输协议的核心处理都是在应用层完成,对浏览 器内核的依赖性小,在浏览器内核中只需要注册一个回调接口,将浏览器访问的超链接URL 传递给应用层处理,应用层处理完后再将新的URL交回给浏览器内核处理,采用这种方式 数据传输业务与浏览器的耦合度低,独立性高,应用扩展性强,结构清晰,平台移植性好。

【专利附图】

【附图说明】
[0029] 图1是本发明数据广播数据存储区域的文件目录结构;
[0030] 图2是本发明数据广播数据的动态更新流程;
[0031] 图3是本发明中嵌入式浏览器从请求一个页面数据到接收和访问的处理流程;

【具体实施方式】
[0032] 下面结合附图和实施例对本发明所述方法进行详细说明。
[0033] 本发明提出一种基于嵌入式浏览器的双模数据接收和访问方法,它支持嵌入式浏 览器通过CABLE和IP通道分别接收广播数据和互联网数据,支持在数据广播网页中访问互 联网数据,支持在互联网网页中访问广播数据。关于IP通道的数据,嵌入式浏览器采用标 准的HTTP协议进行传输和接收,这部分内容不作讨论;关于CABLE通道的数据,嵌入式浏览 器采用一种新的自定义的数据通信协议--cable协议,用于广播数据的接收和访问。 [0034] 关于基于嵌入式浏览器的双模数据接收和访问方法,具体包含了以下内容:
[0035] (1)提出的一种cable协议,它是采用一种资源标志符,句法类似http和https 体系;支持客户服务器模式,客户向服务器请求数据时,只需传送请求业务类型ID和数据 存储路径,嵌入式浏览器经过协议转换启动DSM-CC协议,通过数据广播通道进行数据的下 载。最终嵌入式浏览器将下载到本地的数据以本地网页的方式呈现给用户。它支持的数 据类型包括HTML文档,图像或多媒体对象等。该资源标志符的基本格式为:cabl e://id/ filepath/file. html,该格式的具体含义如下:
[0036] (1) cable://表示协议名称,类似于http:// ;
[0037] (2) id:表示特定的数据业务标识(比如股票或者资讯);
[0038] (3) filepath :表示实际请求的数据存储的路径;
[0039] (4) file, html :表示实际请求的数据。
[0040] (2)这种方法给出了一种广播数据和互联网数据交互访问的方法,如果要在数据 广播网页中访问互联网数据,在网页制作时,数据广播网页中互联网相关的超链接描述需 要符合URI (通用资源标识符)格式;如果要在互联网网页中访问广播数据,在网页制作时, 互联网网页中广播数据相关的超链接描述需要符合cable协议(资源标识符)。
[0041] (3)CABLE通道数据接收方式是通过数据广播通道,采用DSM-CC协议下载数据,该 模块类似于传统浏览器中的HTTP网络数据传输模块,不同之处在于它们的传输通道和下 载协议不同,同时DSM-CC主要用于下载静态的数据文件。由于数据广播的带宽比IP网络 带宽更宽,传输速度更快,可以高效地实现数据的实时请求实时传输。特别地,该数据下载 模块是根据请求的资源进行下载,即按需求请求数据和下载数据,下载模块只下载当前资 源标志符中请求的数据。这是区别于传统的广播数据下载的地方,传统的广播数据下载会 将整个模块(Module)的数据全部进行下载,耗时较长,不能满足浏览器实时性的要求,同 时会下载一些可能长时间都不会访问的页面数据,占用存储空间。
[0042] 这种方式还有利于资源的重复使用,比如对于有相同背景图片的页面,只需要在 网页制作时将资源标志符指向同一个资源路径就可多个模块共用同一个背景图片资源,而 无需各个模块分别下载相同的数据。
[0043] (4)终端数据的存储方式根据硬件配置条件进行选择,如果存在硬盘,则将数据 存储在硬盘的区域A中;如果不存在硬盘,则在内存中指定一块区域A专门存储数据广播 数据。终端数据在区域A中的存放位置和结构,采用与cable协议资源标志符中相同的路 径格式进行存储。即如果区域A对应的路径为/tmp,资源标志符的内容为cable://660/ homepage/index. html,则在终端存储的路径为 /tmp/660/homepage/index. html,文件存储 目录结构见说明书附图1。
[0044] 由于实际应用中终端分配给数据广播存储的存储资源有限,尤其是不存在的硬盘 的情况下,数据存储会占用内存资源,如果分配给数据广播使用的内存用光,则采用最久未 使用数据替换算法来更新数据,即当广播数据存储区域存满后,当有新的数据需要存储时, 内存中闲置时间最长的数据将最先被消除和替换掉。
[0045] (5)实际系统中前端的数据可能随时会发生变化,因此终端需要有相应的数据更 新机制。本发明关于终端接收的广播数据的动态更新方式是在主进程中创建一个线程后台 运行,采用监控(monitor)方式,后台监控数据广播通道中数据流的变化,具体是检测数据 流的版本是否有发生变化,如果数据的版本有发生变化,则表示数据有更新,此时后台线程 查找广播数据存储区域,是否有更新的业务数据在终端已经下载,如果终端已经下载该数 据,则后台强制下载更新数据;如果终端未下载该数据,则不作任何处理。这种方式可以保 证已经下载的数据能够同步更新,避免浏览数据时终端数据与服务器前端不一致。数据动 态更新的具体流程见说明书附图2。
[0046] (6)本发明中嵌入式浏览器在处理协议转换和下载广播数据的流程上与浏览器内 核独立,采用回调接口的方式,当有URL请求时,可以在浏览器内核之外的应用层进行广播 数据的传输处理,包括协议的解析,数据的下载,数据的存储,数据的后台更新,处理完数据 的下载存储后,将广播数据的存储地址(即新的URL地址)返回给浏览器内核使用。进一步, 浏览器加载新的URL地址,如果网页加载解析过程中,有其他广播数据的请求,则重复上述 流程,直至网页加载解析完毕。具体地,一个页面数据请求处理流程见说明书附图3,包括下 面的步骤:
[0047] ①用户点击访问超链接URL。
[0048] ②浏览器将超链接URL通过注册的回调接口交给应用程序处理。如果是标准的 HTTP协议,直接将超链接URL返回给浏览器内核处理;如果是Cable协议,将超链接URL交 给数据0C下载模块处理,到步骤3。
[0049] ③0C下载模块根据超链接URL得到业务类型标识符,根据规则2中数据存储规 则得出文件路径Fil印ath,检查是否存在该文件,如果存在,则到步骤5,如果不存在,检查 Filepath中的文件目录是否存在,如果不存在,则创建文件目录。到步骤4。
[0050] ④启动0C下载。根据业务ID标识创建通道(channel),设置过滤条件(filter), 将得到的PES数据包存到buffer中,到步骤5。
[0051] ⑤将步骤4中得到的buffer,根据规则2中数据存储规则,得出文件路径 Fi 1 epath,将该buf f er存储到Fi 1 epath中,此时Fi 1 epath就是访问数据的新的超链接URL 地址。到步骤6
[0052] ⑥数据下载存储完毕,将新的超链接URL返回给浏览器内核处理。步骤7。⑦浏览 器加载新的超链接URL,在页面加载过程中,如果浏览器访问其他超链接URL,则重复(2)到 (6)的步骤,直到整个页面加载完毕。
[0053] 实施例
[0054] (1)例如,用户在一个互联网网页中点击了 一个超链接,这个超链接的URL为 cable://660/cover. html,这个URL表示是一个广播数据,下面具体描述嵌入式浏览器从 请求一个数据到接收和访问的整个步骤。
[0055] 步骤1 :浏览器通过应用层注册的回调接口,将这个URL地址交给应用层。到步骤 2〇
[0056] 步骤2 :应用层得到资源标志符cable://660/cover. html,分析该资源标志符语 法符合cable协议,启动DSM-CC协议进行数据的下载,到步骤3。
[0057] 步骤3 :通过数据广播通道下载该数据存储到bufferl里面,再将bufferl存到文 件/1:115)/660/(3〇¥61'.111:1111中。到步骤4。
[0058] 步骤4 :应用层再注册的回调接口将实际的数据路径/tmp/660/cover. html返回 给浏览器内核。到步骤5。
[0059] 步骤5 :浏览器加载解析本地网页file://tmp/660/cover. html。如果在加载网页 的过程中,浏览器需要有再访问的超链接的URL,此时到步骤1,重复上述整个步骤直到网 页加载完毕。到步骤6。
[0060] 步骤6 :浏览器将整个网页输出到显示设备上。
[0061] (2)此时0C后台程序监测到发生版本变化的数据有660/cover. html和661/ cover, html,由于(1)中下载过660/cover. html数据,所以此时后台通过数据广播通道重 新下载该数据替换原来的数据;此时由于终端没有下载661/cover. html数据,所以忽略此 数据的更新,等到有实时数据请求时再去下载这个已经更新过的数据;
[0062] (3)此时用户操作网页,浏览器需要访问超链接URL :cable://661/cover. html, 此时通过(1)中的步骤下载已经更新过的661/cover. html数据;此时如果存储区域满,按 照采用最久未使用数据替换算法将Id=660相关的数据先清除,再下载Id=661数据。
[0063] 最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参 照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方 案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明 的权利要求范围当中。
【权利要求】
1. 一种基于嵌入式浏览器的双模数据接收和访问方法,用于支持嵌入式浏览器通过 CABLE和IP通道分别接收广播数据和互联网数据,所述方法包含: 步骤101)针对IP通道的数据,嵌入式浏览器采用标准的HTTP协议进行传输和接收; 步骤102)针对CABLE通道的数据,嵌入式浏览器采用自定义的数据通信协议"cable 协议"进行广播数据的接收,且当下载广播数据时采用回调接口的方式,所述回调接口的方 式具体为:当有URL请求时,在浏览器内核之外的应用层进行广播数据的传输处理,处理完 数据的下载存储后,将广播数据的存储地址,即新的URL地址,返回给浏览器内核使用; 其中,所述自定义的数据通信协议"cable协议"采用一种资源标志符,所述资源标识 符的格式为:cable://id/filepath/file.html,该格式的具体含义如下:cable://表示协 议名称,id:表示特定的数据业务标识,filepath :表示实际请求的数据存储的路径,file, html :表示实际请求的数据;当客户向服务器请求数据时,仅传送请求业务类型id和数据 存储路径fil印ath,嵌入式浏览器经过协议转换启动DSM-CC协议并通过数据广播通道进 行数据的下载;最终嵌入式浏览器将下载到本地的数据以本地网页的方式呈现给用户。
2. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,针对广播数据的传输处理具体包含:协议的解析,数据的下载,数据的存储和数据的后 台更新。
3. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,如果要在数据广播网页中访问互联网数据,在网页制作时,数据广播网页中互联网相关 的超链接描述符合通用资源标识符URI格式;如果要在互联网网页中访问数据广播数据, 在网页制作时,互联网网页中数据广播数据相关的超链接描述需要符合资源标识符cable 协议。
4. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,当所述步骤102)采用DSM-CC协议下载数据时根据请求的资源进行下载,即按需求请求 数据和下载数据,仅下载当前资源标志符中请求的数据。
5. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,嵌入式浏览器终端根据硬件配置条件选择下载数据的存储方式,如果存在硬盘,则将数 据存储在硬盘的区域A中;如果不存在硬盘,则在内存中指定一块区域A存储数据广播数 据; 其中,当在区域A中存放数据时,采用的存放位置和结构与所述cable协议资源标志符 中的路径格式相同。
6. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,所述步骤102)之后还包含:动态更新广播数据的步骤,具体为: 终端接收的广播数据的动态更新方式为:在主进程中创建一个线程后台运行,采用监 控方式,后台监控数据广播通道中数据流的变化,具体是检测数据流的版本是否有发生变 化,如果数据的版本有发生变化,则表示数据有更新,此时后台线程查找数据广播数据存储 区域,是否有更新的业务数据在终端已经下载,如果终端已经下载该数据,则后台强制下载 更新数据;如果终端未下载该数据,则不作任何处理。
7. 根据权利要求1所述的基于嵌入式浏览器的双模数据接收和访问方法,其特征在 于,当用户启动一个页面数据请求处理时,所述基于嵌入式浏览器的双模数据接收和访问 方法具体包含如下步骤: 步骤201)用户点击访问超链接URL ; 步骤202)浏览器将超链接URL通过注册的回调接口交给应用程序处理,如果是标准的 HTTP协议,直接将超链接URL返回给浏览器内核处理;如果是Cable协议,将超链接URL交 给数据OC下载模块处理,并执行步骤203); 步骤203)数据OC下载模块根据超链接URL得到业务类型标识符,根据数据存储规则 得出文件路径Filepath,检查是否存在该文件,如果存在,则执行步骤205),如果不存在, 检查Fil印ath中的文件目录是否存在,如果不存在,则创建文件目录,并到步骤204); 步骤204)启动OC下载,根据业务ID标识创建通道,设置过滤条件,将得到的PES数据 包存到buffer中,执行步骤205); 步骤205)将步骤204)中得到的buffer,根据数据存储规则,得出文件路径Fil印ath, 将该buffer存储到Filepath中,此时Filepath就是访问数据的新的超链接URL地址,转 到步骤206); 步骤206)数据下载存储完毕,将新的超链接URL返回给浏览器内核处理; 步骤207)浏览器加载新的超链接URL,在页面加载过程中,如果浏览器访问其它超链 接URL,则重复202)到206)的步骤,直到整个页面加载完毕; 其中,所述数据存储规则为:采用与所述cable协议资源标志符中相同的路径格式进 行存储,即,当请求的资源标识符为cable://id/filepath/file. html时,贝U数据存储的路 径为/tmp/id/filepath/file. html,该存储路径的具体含义为:tmp表示系统用于存储数 据广播数据的根目录,id表示数据业务标识,fil印ath表示实际请求的数据存储的路径, file, html表示实际请求的数据。
【文档编号】H04L29/06GK104065678SQ201310091283
【公开日】2014年9月24日 申请日期:2013年3月21日 优先权日:2013年3月21日
【发明者】刘春梅, 胡建良, 齐向东, 潘梁 申请人:中国科学院声学研究所, 北京中科智网科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1