iEx.ec网络虚拟化

image035
作者:Oleg Lodygensky
iEx.ec团队技术总监。
法国巴黎第十一大学LAL/CNRS的国家科学研究中心高级研究工程师,XtremWeb-HEP的主要开发者。

 

 

我们准备了一系列文章来介绍基于区块链分布式云计算平台iEx.ec背后的技术。上一篇文章我们介绍了iEx.ec的安全性能。本文将会介绍iEx.ec网络虚拟化方面的内容。

47

简介

在上一篇文章中,我们将iEx.ec定位为广为人知的实现三层架构的全球计算平台的范例。在iEx.ec构建的网络系统中,通过分散的服务(client和worker)形成的网络连接使得集中式服务实例化和易访问。

一方面,client提供用户与平台交互所需的接口,帮助用户可以轻松注册应用程序。另一方面,worker聚集志愿IT资源来运行处理终端用户数据的应用程序。

架构

之前的系列文章描述的平台架构内容不是很完全,所以无法让读者清晰了解背后的基本理念。下图深入展示了虚拟化网络服务和协议方面的内容。读者可以结合之前介绍XWHEP方面的内容来更深入和全面理解scheduler、数据存储库、client和worker之间的工作原理。

下图详细介绍了Ibis SmartSocket服务和协议方面的内容,该框架允许所有可能方向的分布式服务间的互连:client可以连接到worker,worker间可以互连等等。没有SmartSocket,分布式资源间无法连接,因为受防火墙保护,分布式资源没有公网IP地址,只有本地的一个基于NAT协议的IP地址。

48

实例展示

这里我们举一个简单的client服务器例子,而非具体描述内部技术方面的内容,感兴趣的读者可以参考相关资料。该实例需要部署数据服务器和client,它通过部署的服务器连接和检索数据。在下图中,服务器是“Apache”图标表示,client是“Firefox”图标表示。为了部署这样的基础设施,用户需要:

  1. 提交服务器
  2. 通过worker部署服务器
  3. 服务器自动获取一个socket来监听。服务器本身并不知道该socket来自于Ibis SmartSocket Hub的虚拟socket。这是通过iEx.ec中间件自动实现的。
  4. 检索获得服务器的虚拟 SmartSocket 地址。
  5. 启动提供服务器虚拟SmartSocket地址的client。
  6. 通过worker部署client。

Client可以像往常一样连接(如http://whatever:80)。Client本身并不感知虚拟SmartSocket。 iEx.ec中间件自动将client请求转换为虚拟SmartSocket。

49

结论

本文介绍了iEx.ec的应用程序部署方面的内容。下一篇文章我们将会介绍数据管理方面的内容。

 

【原文链接】https://medium.com/iex-ec/iexec-network-virtualization-48f7ce0a93fb#.s5a36u359

联系方式

诚挚邀请您加入或者联系我们,与我们更多互动交流:

https://iexec-team.slack.com

https://twitter.com/iEx_ec

https://www.reddit.com/r/iexec/

资源

iEx.ec Github:https://github.com/iExecBlockchainComputing/

XtremWeb-HEP Github:https://github.com/iExecBlockchainComputing/xtremweb-hep

XWHEP资料:

https://github.com/iExecBlockchainComputing/xtremweb-hep/blob/master/doc/xwhep-intro.odt

2014CrowComputing大会上XWHEP介绍视频:https://vimeo.com/113122296