System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种用于容器镜像延迟拉取的TOC结构、系统及方法技术方案_技高网

一种用于容器镜像延迟拉取的TOC结构、系统及方法技术方案

技术编号:40960374 阅读:3 留言:0更新日期:2024-04-18 20:38
本发明专利技术涉及IT与软件开发技术领域,具体公开了一种用于容器镜像延迟拉取的TOC结构、系统及方法,所述TOC结构包括Manifest、TOC文件和数据文件;所述Manifest用于储存容器镜像的镜像信息;所述TOC文件中设置有bloom filter,用于对所述数据块进行映射;所述数据文件为所述镜像信息的数据块;本发明专利技术针对eStargz中存在的TOC索引文件暴露元数据的问题,本发明专利技术的目的在于提出一种减少暴露元数据的延迟拉取容器镜像的数据校验方法,不需要将chunk对应的文件名称、文件类型等敏感信息直接存储在TOC索引文件中,同时支持镜像拉取方利用下载的TOC文件对拉取chunk数据进行验证,以此确保容器镜像数据的安全传输。

【技术实现步骤摘要】

本专利技术涉及i t与软件开发,尤其是涉及一种用于容器镜像延迟拉取的toc结构、系统及方法。


技术介绍

1、容器通过容器镜像启动,需要在运行容器之前需要将容器镜像从远程的镜像仓库完拉取到本地。然而,容器在启动过程中仅读取了极小部分的镜像内容,却必须等所有容器镜像数据下载完成后才能开始,流程存在极大的优化空间。

2、因此,近年来业内提出一些延迟拉取方案,例如stargz、estargz(扩展版stargz)等。这些方案将容器镜的l ayer划分为细粒度的数据块,并且准备一个额外的索引文件toc用于记录元数据和数据摘要。容器启动阶段按需从镜像仓库拉取必要的数据块,而不再需要等待下载所有镜像数据就可以启动,以此显著提升容器的启动速度。

3、然而,由于estartgz将镜像l ayer进一步划分为更细粒度的数据块chunk,因此在容器启动按需拉取阶段就涉及到通过toc对这些chunk数据进行验证。toc索引文件记录了chunk的元数据(例如文件名称、文件类型等)以及对应的摘要信息,因此存储在镜像仓库的toc存在暴露容器镜像元数据的风险。


技术实现思路

1、针对estargz中存在的toc索引文件暴露元数据的问题,本专利技术的目的在于提出一种减少暴露元数据的延迟拉取容器镜像的数据校验方法,不需要将chunk对应的文件名称、文件类型等敏感信息直接存储在toc索引文件中,同时支持镜像拉取方利用下载的toc文件对拉取chunk数据进行验证,以此确保容器镜像数据的安全传输。</p>

2、本专利技术的目的是提供一种toc结构,包括manifest、toc文件和数据文件;所述toc文件分别连接于所述manifest和所述数据文件;

3、其中,所述manifest用于储存容器镜像的镜像信息;所述toc文件中设置有bloomfilter;所述数据文件为所述镜像信息的数据块;

4、其中,所述bloom filter用于对所述数据块进行映射。

5、进一步的,所述数据块包括若干chunk与若干所述chunk对应的敏感元数据。

6、进一步的,所述敏感元数据包括文件名和/或文件大小。

7、进一步的,所述bloom filter用于对所述chunk与所述chunk对应的敏感元数据进行映射,具体为:

8、计算所述chunk与所述chunk对应的敏感元数据的哈希值,然后将所述哈希值映射到所述bloom filter的比特位上。

9、进一步的,若干所述chunk组成完整的所述镜像信息。

10、进一步的,所述镜像信息包括镜像层、快照和toc.digest。

11、进一步的,所述toc结构还包括stargz;所述stargz用于将完整的所述容器镜像拆分成若干个独立的层,所述独立的层为所述镜像层。

12、本专利技术还提供一种用于容器镜像延迟拉取的系统,包括任一所述的toc结构。

13、进一步的,所述系统还包括:镜像仓库、容器引擎和容器;

14、所述镜像仓库用于对所述toc文件和所述数据文件进行存放;

15、所述容器引擎用于从所述镜像仓库中获取所述toc文件和所述数据文件;所述容器引擎还用于提取所述容器的容器镜像的镜像信息,并将所述容器镜像置入所述manifest中;所述容器引擎还用于将所述toc文件、所述数据文件和所述manifest组建成任一所述的toc结构。

16、本专利技术还提供一种减少暴露元数据的延迟拉取容器镜像的数据校验方法,包括:

17、获取标准容器的容器镜像的标准镜像信息,获取所述标准镜像信息的chunk,获取所述chunk的敏感元数据,根据所述标准镜像信息、所述chunk和所述敏感元数据建立toc结构;所述toc结构为权利要求1-7任一项所述的toc结构;

18、获取待校验chunk和待校验元数据,对所述待校验chunk和所述待校验元数据进行哈希计算获得哈希值,然后将所述哈希值与所述toc结构中的所述bloom filter中的比特位进行比对,根据比对结果判断所述chunk是否属于所述标准容器。

19、本专利技术还提供一种减少暴露元数据的延迟拉取容器镜像数据的方法,包括构建toc结构和数据校验;其中,所述toc结构为根据标准容器的容器镜像的镜像信息建立任一所述的toc结构;

20、所述数据校验包括获取待校验chunk和待校验元数据,对所述待校验chunk和所述待校验元数据进行哈希计算获得哈希值,然后将所述哈希值与所述toc结构中的所述bloomfilter中的比特位进行比对,根据比对结果判断所述chunk是否属于所述标准容器。

21、本专利技术的有益效果主要有:

22、本专利技术公开一种用于容器镜像延迟拉取的toc结构、系统及方法。

23、相对现有的容器镜像延迟拉取方案estargz而言,本专利技术公开的toc结构、系统及方法对于一些敏感的文件元数据(例如文件名称、文件大小等)不再以明文形式暴露在toc索引文件中,而是与chunk数据一起通过哈希单向映射到bloomfilter中,可以有效地减少暴露给镜像仓库以及通信信道上潜在窃听者的有效信息,提升保容器镜像数据的安全性。

24、下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。

本文档来自技高网...

【技术保护点】

1.一种TOC结构,其特征在于,包括Manifest、TOC文件和数据文件;所述TOC文件分别连接于所述Manifest和所述数据文件;

2.根据权利要求1所述的TOC结构,其特征在于,所述数据块包括若干chunk与若干所述chunk对应的敏感元数据。

3.根据权利要求2所述的TOC结构,其特征在于,所述bloom fi lter用于对所述chunk与所述chunk对应的敏感元数据进行映射,具体为:

4.根据权利要求3所述的TOC结构,其特征在于,若干所述chunk组成完整的所述镜像信息。

5.根据权利要求4所述的TOC结构,其特征在于,所述镜像信息包括镜像层、快照和toc.digest。

6.根据权利要求5所述的TOC结构,其特征在于,所述TOC结构还包括Stargz;所述Stargz用于将完整的所述容器镜像拆分成若干个独立的层,所述独立的层为所述镜像层。

7.一种用于容器镜像延迟拉取的系统,其特征在于,包括权利要求1-6任一项所述的TOC结构。

8.根据权利要求7所述的系统,其特征在于,所述系统还包括:镜像仓库、容器引擎和容器;

9.一种减少暴露元数据的延迟拉取容器镜像的数据校验方法,其特征在于,包括:

10.一种减少暴露元数据的延迟拉取容器镜像数据的方法,其特征在于,包括构建TOC结构和数据校验;其中,所述TOC结构为根据标准容器的容器镜像的镜像信息建立权利要求1-7任一项所述的TOC结构;

...

【技术特征摘要】

1.一种toc结构,其特征在于,包括manifest、toc文件和数据文件;所述toc文件分别连接于所述manifest和所述数据文件;

2.根据权利要求1所述的toc结构,其特征在于,所述数据块包括若干chunk与若干所述chunk对应的敏感元数据。

3.根据权利要求2所述的toc结构,其特征在于,所述bloom fi lter用于对所述chunk与所述chunk对应的敏感元数据进行映射,具体为:

4.根据权利要求3所述的toc结构,其特征在于,若干所述chunk组成完整的所述镜像信息。

5.根据权利要求4所述的toc结构,其特征在于,所述镜像信息包括镜像层、快照和toc.digest。

6....

【专利技术属性】
技术研发人员:铁卓昱
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1