根据现在最常用,也是比较权威的NIST (National Institute of Standards and Technology,美国国家标准技术研究院)定义,云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的:SaaSSoftware as a Service,软件即服务,简称SaaS,这层的作用是将应用作为服务提供给客户。PaaSPlatform as a Service,平台即服务,简称PaaS,这层的作用是将一个开发平台作为服务提供给用户。IaaSInfrastructure as a Service, 基础设施即服务,简称IaaS,这层的作用是提供虚拟机或者其他资源作为服务提供给用户。下面一起跟小编看看这三种服务模式都有哪些具体的作用和功能?行业内又有哪些代表产品呢?一SaaS通过SaaS这种模式,用户只要接上网络,并通过浏览器,就能直接使用在云端上运行的应用,而不需要顾虑类似安装等琐事,并且免去初期高昂的软硬件投入。SaaS主要面对的是普通的用户。主要产品NetSuite,Salesforce,Google Apps,Zimbra,Zoho和IBM Lotus Live等。谈到SaaS的功能,也可以认为是要实现SaaS服务,供应商需要完成那些功能?主要有四个方面:1.随时随地访问:在任何时候或者任何地点,只要接上网络,用户就能访问这个SaaS服务。2.支持公开协议:通过支持公开协议(如HTML 4/5),能够方便用户使用。3.安全保障:SaaS供应商需要提供一定的安全机制,不仅要使存储在云端的用户数据处于绝对安全的境地,而且也要在客户端实施一定的安全机制(比如HTTPS)来保护用户。4.多住户(Multi-Tenant)机制:通过多住户机制,不仅能更经济地支撑庞大的用户规模,而且能提供一定的可定制性以满足用户的特殊需求。二PaaS通过PaaS这种模式,用户可以在一个包括SDK,文档和测试环境等在内的开发平台上非常方便地编写应用,而且不论是在部署,或者在运行的时候,用户都无需为服务器,操作系统,网络和存储等资源的管理操心,这些繁琐的工作都由PaaS供应商负责处理,而且PaaS在整合率上面非常惊人,比如一台运行Google App Engine的服务器能够支撑成千上万的应用,也就是说,PaaS是非常经济的。PaaS主要的用户是开发人员。主要产品Google App Engine,force.com,heroku和Windows Azure Platform等。为了支撑着整个PaaS平台的运行,供应商需要提供那么功能?1.友好的开发环境:通过提供SDK和IDE等工具来让用户能在本地方便地进行应用的开发和测试。2.丰富的服务:PaaS平台会以API的形式将各种各样的服务提供给上层的应用。3.自动的资源调度:也就是可伸缩这个特性,它将不仅能优化系统资源,而且能自动调整资源来帮助运行于其上的应用更好地应对突发流量。4.精细的管理和监控:通过PaaS能够提供应用层的管理和监控,比如,能够观察应用运行的情况和具体数值(比如,吞吐量和反映时间)来更好地衡量应用的运行状态,还有能够通过精确计量应用使用所消耗的资源来更好地计费。三IaaS通过IaaS这种模式,用户可以从供应商那里获得他所需要的虚拟机或者存储等资源来装载相关的应用,同时这些基础设施的繁琐的管理工作将由IaaS供应商来处理。IaaS能通过它上面对虚拟机支持众多的应用。IaaS主要的用户是系统管理员。主要产品Amazon EC2,Linode,Joyent,Rackspace,IBM Blue Cloud和Cisco UCS等。IaaS供应商需要在那些方面对基础设施进行管理以给用户提供资源?或者说IaaS云有那些功能?在《虚拟化与云计算》中列出了IaaS的七个基本功能:1.资源抽象:使用资源抽象的方法(比如,资源池)能更好地调度和管理物理资源。2.资源监控:通过对资源的监控,能够保证基础实施高效率的运行。3.负载管理:通过负载管理,不仅能使部署在基础设施上的应用运能更好地应对突发情况,而且还能更好地利用系统资源。4.数据管理:对云计算而言,数据的完整性,可靠性和可管理性是对IaaS的基本要求。5.资源部署:也就是将整个资源从创建到使用的流程自动化。6.安全管理:IaaS的安全管理的主要目标是保证基础设施和其提供的资源能被合法地访问和使用。7.计费管理:通过细致的计费管理能使用户更灵活地使用资源。