一种基于内存共享机制的容器间快速通信方法研究_第1页
一种基于内存共享机制的容器间快速通信方法研究_第2页
一种基于内存共享机制的容器间快速通信方法研究_第3页
一种基于内存共享机制的容器间快速通信方法研究_第4页
一种基于内存共享机制的容器间快速通信方法研究_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一种基于内存共享机制的容器间快速通信方法研究BUPT演讲者:陆文龙学 校:北京邮电大学目 录1研究概述研究介绍研究背景和意义323系统测试研究概述研究概述作者罗浩北京邮电大学陆文龙北京邮电大学薛晨国家计算机网络与信息安全管理中心2摘要提出了一种基于内核内存共享的同宿主Docker容器间高速通信方案。该方案在不破坏Docker容器间隔离特性的基础上实现容器间内存共享;并在该内核内存共享空间设计了面向连接的通信模型。在NUMA体系环境下的验证结果表明:该通信方案与Docker默认的虚拟网桥通信方式相比,对于Docker容器在同一NUMA节点上和在跨NUMA节点上的两种通信场景,最大吞吐量分别提升了

2、350%和110%。1研究背景和意义研究背景和意义Docker是一款轻量级虚拟化容器的管理引擎,利用Linux内核特性命名空间(namespaces)及控制组(cgroups)为容器提供隔离的运行环境。IPC namespaces隔离特定的IPC资源,这导致Linux系统上传统的进程间通信方式(如system V IPC)不能应用在同宿主Docker容器间的进程通信中,同宿主Docker容器间通常采用Linux bridge的方式进行通信。本研究提出的基于内核共享内存的同宿主Docker容器间通信方案,相比于Linux bridge通信方式,在以下方面做出了改进:优化的数据传输路径轻量级的应用

3、程序接口7研究介绍系统介绍Docker0为连接容器的虚拟网桥;veth1和veth2分别为绑定到虚拟网桥上与容器A和容器B连接的虚拟网路接口;eth0为容器A和容器B各自的网络接口。在SHMBC通信方案中,直接将内核内存块C映射到进行通信的容器A和容器B中的通信进程地址空间C中。系统包括三个管理模块:容器管理、连接管理和内存空间管理,在Docker容器的宿主机操作系统内核中,维护一张容器表和一张连接状态表,以及一个共享内存池。内存空间管理1内存空间管理用来维护一个共享内存池,该内存池中的内存块由连续的物理内存页组成,为通信连接提供共享内存空间。每个内存块由缓冲区状态信息和数据区域(多个数据块组

4、成)。在缓冲区状态信息中包含数据块数量、读索引、写索引,以及其他统计信息。其中,读/写索引在数据区域实现环形缓冲队列,并实现无锁操作。数据块缓冲区状态信息内存块内存块内存块内存池读指针写指针数据块数据块数据块数据块数据块容器管理2容器管理模块负责发现宿主机上的Docker容器,动态的维护宿主机系统中的容器列表。它使用Docker提供的“docker inspect”命令来获取容器的相关信息。右图为“Docker inspect”获取到的Docker容器的详细信息分类,以及“容器表”中的信息项。Docker inspect获取信息变量名说明Id容器编号State容器状态Name容器名Hostco

5、nfig容器配置Networksetting容器网络配置容器表容器ID运行状态容器名挂载文件IP地址列表监听端口列表连接管理listen()等待连接query()查询目标容器receive()接收数据accept()接受连接send()发送数据send()发送数据connection()申请连接close()关闭连接receive()接收数据close()关闭连接3连接管理通过“连接表”实现。服务端建立监听连接,在连接表中注册监听连接状态信息,等待客户端的连接请求;客户端查询连接目标容器是否为同宿主容器,如果是,申请连接服务端,否则提示用户采用socket通信方式;客户端申请连接,如果存在对应服务端的监听连接则建立连接,否则失败返回;连接建立后,服务端和客户端之间开始传输数据;数据传输完成,关闭连接。服务端客户端系统测试测试环境在对系统进行测试时,充分考虑了当前的NUMA体系结构对测试结果的影响,分别测试了NUMA节点内和NUMA节点间的Docker容器通信性能。测试环境如下:服务器型号DELL PowerEdge T620CPU型号2 * Intel

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论