云计算基础技术与应用-11.Web服务.pptx

上传人:阿*** 文档编号:14497387 上传时间:2022-05-04 格式:PPTX 页数:103 大小:235.23KB
返回 下载 相关 举报
云计算基础技术与应用-11.Web服务.pptx_第1页
第1页 / 共103页
云计算基础技术与应用-11.Web服务.pptx_第2页
第2页 / 共103页
点击查看更多>>
资源描述

《云计算基础技术与应用-11.Web服务.pptx》由会员分享,可在线阅读,更多相关《云计算基础技术与应用-11.Web服务.pptx(103页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、回顾01 虚拟化概念02 虚拟化起源03 虚拟化的特征04 虚拟化技术分类Web服务第十一章目录01 Web服务的用户端和服务端02 三层架构03 Web服务相关知识04 实战项目PHP+MySQL+ Apache动态网站服务部署1. Web服务的用户端和服务端Web服务的用户端和服务端基于Web的服务开发具有简单易用的特点,Web技术通常被用作云计算服务的实现介质和管理接口。所谓Web,在互联网领域里指网页,可以表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)、超文本传输协议(HTTP)等。Web技术指的是开发互联网应用的技术总称,一般包括Web服务端技术和We

2、b用户端技术。Web用户端Web用户端的主要任务是展现信息内容。Web用户端设计技术主要包括HTML语言、Java Applets、脚本程序、CSS、DHTML、插件技术以及VRML技术等。Web用户端(1)HTML语言:语言:HTML是Hypertext Markup Language(超文本标记语言)的缩写,它是构成Web页面的主要工具。Web用户端(2)Java Applets:即Java小应用程序。Java Applets使用Java语言创建小应用程序,浏览器可以将Java Applets从服务器下载到浏览器,在浏览器所在的计算机上运行。Java Applets可提供动画、音频和音乐等

3、多媒体服务。1996年,著名的Netscape浏览器在其2.0版本中率先提供了对Java Applets的支持,随后,Microsoft的IE3.0也在这一年开始支持Java技术。Java Applets使得Web页面从只能展现静态的文本或图像信息,发展到可以动态展现丰富多样的信息。动态Web页面不仅可以表现网页上午视觉展示方式的多样化,更重要的是它可以对网页中的内容进行控制与修改。Web用户端(3)脚本程序:)脚本程序:即嵌入在HTML文档中的程序。使用脚本程序可以创建动态页面,提高交互性。用于编写脚本程序的语言主要有JavaScript和VBScript。JavaScript由Netsca

4、pe公司开发,具有易使用、变量类型灵活和无须编译等特点。VBScript由Microsoft公司开发,与JavaScript一样,可用于设计交互的Web页面。虽然JavaScript和VBScript语言最初都是为创建用户端动态页面而设计,但它们都可以用于编写服务端脚本程序。用户端脚本与服务端脚本程序的区别在于执行的位置不同,前者在用户端计算机执行,而后者是在Web服务端计算机执行。Web用户端(4)CSS(Cascading Style Sheets):即级联样式表。通过在HTML文档中设立样式表,可以统一控制HTML中各标志显示属性。1996年底,W3C提出了CSS的建议标准,同年,IE3

5、.0引入了对CSS的支持。CSS大大提高了开发者对信息展现格式的控制能力,1997年的Netscape4.0不但支持CSS,而且增加了许多Netscape公司自定义的动态HTML标签,这些标签在CSS的基础上,让HTML页面中的各种要素的展现方式更加灵活。Web用户端(5)动态)动态HTML (Dynamic HTML,DHTML):1997年,Microsoft发布了IE4.0,并将动态HTML标签、CSS和动态对象(Dynamic Object Model)发展成为一套完整、实用、高效的用户端开发技术体系,Microsoft称其为DHTML。同样是实现HTML页面的动态效果,DHTML技术

6、无须启动Java虚拟机或其他脚本环境,就可以在浏览器的支持下,获得更好地展现效果和更高的执行效率。Web用户端(6)插件技术:)插件技术:这一技术大大丰富了浏览器的多媒体信息展示功能,常见的插件包括QuickTime、Realplayer、Media Player和Flash等。为了在HTML页面中实现音频、视频等更为复杂的多媒体应用,1996年的Netscape2.0成功地引入了对QuickTime插件的支持,插件这种开发方式也迅速融入了Web技术。同年,在Windows平台上,Microsoft将COM和ActiveX技术运用到IE浏览器中,其推出的IE3.0正式支持在HTML页面中插入A

7、ctiveX控件,这为其他厂商扩展Web用户端的信息展现方式提供了便捷的途径。1999年,Realplayer插件先后在Netscape和IE浏览器中取得了成功,与此同时,Microsoft的媒体播放插件Media Player也被预装到了各种Windows版本之中。20世纪90年代初期,Jonathan Gay在FutureWave公司开发了一种名为Future Splash Animator的二维矢量动画展示工具,1996年,Macromedia公司收购了FutureWave,并将Jonathan Gayde的发明改名为我们熟悉的Flash。从此,Flash动画成了Web开发者一种常用的工

8、具。Web用户端(7)VRML技术:技术:Web已经由静态步入动态,并正在逐渐由二维走向三维,将用户带入五彩缤纷的虚拟现实世界。VRML是目前创建三维对象最重要的工具,它是一种基于文本的语言,并可运行于任何平台。Web用户端(8)HTTP2:HTTP2不再是纯文本协议,而是二进制协议,这样协议的解析也更简单,而传输也更快。HTTP2从Google的SPDY中借鉴了很多特性,重点改善了之前HTTP在网络环境下的性能。简单地来讲,HTTP2更快。先是来自于同一个domain的HTTP请求可以共享同一个TCP连接,这样可以很大程度上解决网络延时带来的性能问题。HTTP2的出现让之前的很多Web前端优

9、化技术可能不再需要。HTTP2还有其他一些特性,例如header压缩等。Firefox已经开始支持HTTP2,不少浏览器包括Chrome之前就支持SPDY。Web用户端(9)HTML5:HTML5的标准规范已经制定完成,并公开发布。HTML5的设计目的是为了在移动设备上支持多媒体。新的语法特征被引进以支持这一点,如video、audio和canvas 标签。HTML5还提供了一些新的元素和属性,例如nav(网站导航块)和footer。这种标签将有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视障人士使用。 HTML5还引进了新的功能,可以真正改变用户与文档的交互方式,包括新的解析规则增强了

10、灵活性、一个HTML5文档到另一个文档间的拖放功能、离线编辑、多用途互联网邮件扩展(MIME)和协议处理程序注册、在SQL数据库中存储数据的通用标准(Web SQL)等。Web服务端与Web用户端技术从静态向动态的演进过程类似,Web服务端的开发技术也由静态向动态逐渐发展、完善起来。Web服务器技术主要包括服务器、CGI、PHP、ASP、ASP.NET、Servlet和JSP等技术。Web服务端(1)服务器技术:)服务器技术:主要指有关Web服务器构建的基本技术,包括服务器策略与结构设计、服务器软硬件的选择及其他有关服务器构建的问题。Web服务端(2)公共网关接口)公共网关接口(Common

11、Gateway Interface,CGI)技技术:术:最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器。CGI是第一种使服务器能根据运行时的具体情况,动态生成HTML页面的技术。1993年,NCSA(National Center Supercomputing Applications)提出CGI1.0的标准草案,之后分别在1995 年和1997年,制定了CGI1.1和1.2标准。CGI技术允许服务端的应用程序根据用户端的请求,动态生成HTML页面,这使用户端和服务端的动态信息交换成为可能。随着CGI技术的普及,聊天室、论坛、电子商务、信息查

12、询、全文检索等各式各样的Web应用蓬勃兴起,人们可以享受到信息检索、信息交换、信息处理等更为便捷的信息服务。Web服务端(3)PHP(原始为原始为Personal Home Page的缩写,已经正式更的缩写,已经正式更名为名为 PHP: Hypertext Preprocessor )技术:技术:1994年,Rasmus Lerdorf发明了专用于Web服务端编程的PHP语言。与以往的CGI程序不同,PHP语言将HTML代码和PHP指令合成为完整的服务端动态页面,Web应用的开发者可以用一种更加简便、快捷的方式实现动态Web功能。Web服务端(4)活动服务器页面)活动服务器页面 (Active

13、 Server Pages,ASP)技术:技术:1996年,Microsoft借鉴PHP的思想,在其Web服务器IIS 3.0中引入了ASP技术。ASP使用的脚本语言是VBScript和Javascript。借助Microsoft Visual Studio等开发工具在市场上的成功,ASP迅速成为Windows系统下Web服务端的主流开发技术。Web服务端(5)ASP.NET技术:技术:由于它使用C#语言代替ASP技术的JavaScripe脚本语言,用编译代替了逐句解释,提高了运行效率。ASP.NET是建立.NET Framework的公共语言运行库上的编程框架,可用于在服务器上生成功能强大的

14、Web应用程序,代替以前在Web网页中加入ASP脚本代码,使界面设计与程序设计以不同的文件分离,复用性和维护性得到提高,已经成为面向下一代企业级网络计算的Web平台,是对传统ASP技术的重大升级和更新。Web服务端(6)Servlet、JSP技术:技术:以Sun公司为首的Java阵营于1997和1998年分别推出了Servlet和JSP技术。JSP的组合让Java开发者同时拥有了类似CGI程序的集中处理功能和类似PHP的HTML嵌入功能,此外,Java的运行时编译技术也大大提高了Servlet和JSP的执行效率。Servlet和JSP被后来的JavaEE平台吸纳为核心技术。2.三层架构三层架构

15、三层架构(3-tier architecture)通常意义上是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。三层架构不是指物理上的三层,不是简单地放置三台计算机就是三层架构,也不仅仅有B/S应用才是三层架构,三层是指逻辑上的三层,即把这三个层放置到一台计算机上。区分层次的目的是利用了 “高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。三层架构三层架构三层架构的关键思想是在用户端与数据库之间加入了一个中间层,即业务逻辑层。3个

16、层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。三层架构的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,用户端不直接与数据库进行交互,而是通过COM/DCOM通信与中间层建立连接,再经由中间层与数据库进行交互。三层架构三层架构的具体定义如下:三层架构(1)界面层:)界面层:又称表示层,主要是指与用户交互的界面,用于接收用户输入的数据和显示处理后用户需要的数据。界面层主要以Web方式表示,也可以表示成WINFORM方式,如果逻辑层足够强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。三层架构(2)业务逻辑层:)业务逻辑层:界面层和数据访问层之

17、间的桥梁,实现业务逻辑。业务逻辑具体包含验证、计算、业务规则等。业务逻辑层是系统架构中体现核心价值的部分,它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域逻辑有关。业务逻辑层在体系架构中的位置很关键,它处于数据访问层与界面层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“透明”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可

18、抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于界面层而言,它却是被调用者。三层架构(3)数据访问层:)数据访问层:与数据库打交道,主要实现对数据的增、删、改、查,将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。数据访问层可以访问数据库系统、二进制文件、文本文档或是XML文档。用户的需求反映给界面层,界面层反映给业务逻辑层,业务逻辑层反映给数据访问层,数据访问层进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户。三层架构采用三层架构的优点在于以下几点:

19、三层架构(1)开发人员可以只关注整个结构中的其中某一层;(2)可以很容易地用新的实现来替换原有层次的实现;(3)结构清晰、耦合度低,可以降低层与层之间的依赖;(4)有利于标准化;(5)利于各层逻辑的复用;(6)结构更加的明确;(7)可维护性高,可扩展性高,极大地降低了维护成本和维护时间。三层架构采用三层架构的缺点在于以下几点:三层架构(1)降低了系统的性能:如果不采用分层式结构,很多业务可以直接访问数据库,获取相应的数据,如今却必须通过中间层来完成。(2)有时会导致级联的修改:这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑

20、层和数据访问层中都增加相应的代码。增加了开发成本。3. Web服务相关知识Web服务相关知识除了Web的用户端和服务端、Web的服务模式之外和三层架构之外,还有许多跟Web服务和技术相关的知识。包括统一资源标识符URL、HTML语言、HTTP协议、HTTPS协议、服务等级协议、服务质量QoS等。统一资源标示符URLInternet上的信息资源分布在各个Web站点,要找到所需信息就必须有一种确定信息资源位置的方法,这种方法就是统一资源定位符(Uniform Resource Locator,URL)。URL也被称为网页地址,是Internet上标准的资源的地址。它最初是由蒂姆伯纳斯李发明用来作为

21、万维网的地址,现在它已经被万维网联盟编制为Internet标准RFC1738。我们在浏览器的地址栏里输入的网站地址URL,通过HTTP或者HTTPS协议请求资源。浏览器将Web服务器上站点的网页代码提取出来,并翻译成网页。统一资源标示符URL一个完整的URL包括访问协议类型、主机地址、端口号、路径、参数、查询、信息片断。统一资源标示符URL(1)访问协议类型:)访问协议类型:指使用的传输协议。File代表资源是本地计算机上的文件,格式是file:/;ftp代表通过FTP访问资源,格式是FTP:/;gopher代表通过Gopher协议访问该资源;http代表通过HTTP访问该资源,格式是HTTP

22、:/;https代表通过安全的HTTPS访问该资源,格式是HTTPS:/;mailto代表资源为电子邮件地址,通过SMTP访问,格式是mailto:;MMS代表支持MMS(流媒体)协议播放该资源,格式是MMS:/;ed2k代表支持ed2k(专用下载链接)协议的P2P软件访问该资源;格式是ed2k:/;Flashget代表支持Flashget(专用下载链接)协议的P2P软件访问该资源,格式是Flashget:/;Thunder代表支持thunder(专用下载链接)协议的P2P软件访问该资源,格式是thunder:/;News代表通过NNTP访问该资源。统一资源标示符URL(2)主机地址:)主机地

23、址:指存放资源的服务器的主机名或IP地址。有时,在主机名前也可以包含连接到服务器所需的用户名和密码(格式:username:passwordhostname)。统一资源标示符URL(3)端口号:)端口号:整数,可选,省略时使用方案的默认端口,各种传输协议都有默认的端口号,如http的默认端口为80。如果输入时省略,则使用默认端口号。有时候出于安全或其他考虑,可以在服务器上对端口进行重定义,即采用非标准端口号,此时,URL中就不能省略端口号这一项。统一资源标示符URL(4)路径:)路径:由零或多个“/”符号隔开的字符串,一般用来表示主机上的一个目录或文件地址。统一资源标示符URL(5)参数:)参

24、数:用于指定特殊参数的可选项。统一资源标示符URL(6)查询:)查询:可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开。统一资源标示符URL(7)信息片断:)信息片断:字符串,用于指定网络资源中的片断。例如一个网页中有多个名词解释,可使用fragment直接定位到某一名词解释。统一资源标示符URLURL可以实现转发,这是通过服务器的特殊设置,将访问当前域名的用户引导到指定的另一个网络地址。例如,URL转发可以让用户在访问http:/时,自动转向访问到一个指定的网址h

25、ttp:/,URL转发功能是万网提供的域名注册后的增值服务。HTML语言万维网上的一个超媒体文档称为页面(page)。作为一个组织或者个人在万维网上放置开始点的页面称为主页(Homepage)或首页,主页中通常包括有指向其他相关页面或其他节点的指针(超级链接),所谓超级链接是一种统一资源定位器URL指针,通过激活(单击)它,可使浏览器方便地获取新的网页。在逻辑上将视为一个整体的一系列页面的有机集合称为网站(Website或Site)。HTML语言超文本标记语言(Hyper Text Mark-up Language,HTML)是万维网的描述语言。设计 HTML语言的目的是为了能把存放在一台计算

26、机中的文本或图形与另一台计算机中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前计算机上还是在网络的其他计算机上。这样,用户只要使用鼠标在某一文档中点取一个图标,Internet就会马上转到与此图标相关的内容上去,而这些信息可能存放在网络的另一台计算机中。网页的本质就是HTML,通过结合使用其他的Web技术(例如脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因此,超级文本标记语言是万维网编程的基础,也就是说万维网是建立在超文本基础之上的。HTML语言HTML语言是标准通用标记语言下的一个应用,是一种规范和标准,它通过标签来标记要显示的网页中的各个部分。H

27、TML中的“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。超文本标记语言的结构包括头部分(Head)、和主体部分(Body),其中头部提供关于网页的信息,主体部分提供网页的具体内容。HTML语言一个网页对应多个HTML文件,超文本标记语言文件以.htm为扩展名或.html为扩展名。可以使用任何能够生成TXT类型源文件的文本编辑器来产生超文本标记语言文件,只用修改文件后缀即可。标准的超文本标记语言文件都具有一个基本的整体结构,标签一般都是成对出现(部分标签除外,例如:),即超文本标记语言文件的开头与结尾标志和超文本标记语言的头部与实体两大部分。HTML语言HTML文档制作不

28、是很复杂,但功能强大,支持不同数据格式的文件镶入,这也是万维网盛行的原因之一,其主要特点如下。HTML语言(1)简易性:HTML语言版本升级采用超集方式,从而更加灵活方便。(2)可扩展性:HTML语言的广泛使用以及采取子类元素的方式,为系统扩展带来保证。(3)平台无关性:虽然个人计算机大行其道,但使用MAC等其他计算机的大有人在,超级文本标记语言可以使用在广泛的平台上。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的计算机或浏览器。HTML语言HTML文件其实是文本,它需要浏览器的解释,它的编辑器大体可以分为三种。HTML语言(1)基本

29、文本、文档编辑软件:使用微软自带的记事本或写字板就可以编写HTML文件,存盘时使用.htm或.html作为扩展名,浏览器就可以直接解释执行。(2)半所见即所得软件:如:FCK-Editer、E-Webediter、Sublime Text等在线网页编辑器。(3)所见即所得软件:使用最广泛的编辑器,例如,AMAYA(出品单位:万维网联盟)、FRONTPAGE (出品单位:微软)、Dreamweaver(出品单位:Adobe)。所见即所得软件与半所见即所得的软件相比,开发速度更快,效率更高,且直观的表现更强。任何地方进行修改只需要刷新即可显示。缺点是生成的代码结构复杂,不利于大型网站的多人协作和精

30、准定位等高级功能的实现。HTTP超文本传输协议HTTP(HyperText Transfer Protocol) 是TCP/IP组中的协议之一,互联网上使用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准,设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering

31、Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。HTTPHTTP是用户端浏览器或其他程序与Web服务器之间的应用层通信协议。在Internet上的Web服务器上存放的都是超文本信息,用户机需要通过HTTP传输所要访问的超文本信息。HTTP用于从Web服务器传输超文本到本地浏览器,它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。HTTP包含命令和传输信息,不仅可用于Web访问,也可以用于其他Internet/内联网应用系统之间

32、的通信,从而实现各类应用资源超媒体访问的集成。HTTP通常,HTTP的使用由HTTP用户端发起一个请求,建立一个到服务器指定端口(默认是80端口)的TCP连接。HTTP服务器则在那个端口监听用户端发送过来的请求。一旦收到请求,服务器向用户端发回一个状态行,如HTTP/1.1 200 OK,和响应的消息,消息的消息体可能是请求的文件、错误消息,或者其他一些信息。HTTP使用TCP而不是UDP的原因在于打开一个网页必须传送很多数据,而TCP提供传输控制,按顺序组织数据,和错误纠正。HTTPHTTP的主要特点可概括如下:HTTP(1)支持用户/服务器模式,支持基本认证和安全认证。(2)简单快速:用户

33、向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了用户与服务器联系的类型不同。由于HTTP简单,使得HTTP服务器的程序规模小,因而通信速度很快。(3)灵活:HTTP允许传输任意类型的数据对象,正在传输的类型由Content-Type加以标记。HTTP(4)HTTP 0.9和1.0使用非持续连接:限制每次连接只处理一个请求,服务器处理完用户的请求,并收到用户的应答后,即断开连接。采用这种方式可以节省传输时间。(5)HTTP 1.1使用持续连接:不必为每个Web对象创建一个新的连接,一个连接可以传送多个对象。(6)无状态:HTTP是无状态协议。

34、无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。例如,用户获得一张网页之后关闭浏览器,然后再一次启动浏览器,再登录该网站,但是服务器并不知道用户关闭了一次浏览器。HTTP由于Web服务器要面对很多浏览器的并发访问,为了提高Web服务器对并发访问的处理能力,在设计HTTP时规定Web服务器发送HTTP应答报文和文档时,不保存发出请求的Web浏览器进程的任何状态信息。这有可能出现一个浏览器在短短几秒之内两次访问同一对象时,服务器进程不会因为已经给它发过应答报文而不接受第二期服务请求。由于Web服务器不保存发送请求

35、的Web浏览器进程的任何信息,因此HTTP属于无状态协议。HTTP一次HTTP操作称为一个事务,其工作过程可分为四步。HTTP(1)首先用户机与服务器需要建立连接,只要单击某个超级链接,HTTP的工作开始。(2)建立连接后,用户机发送一个请求给服务器,请求方式的格式是统一资源标识符(URL)、协议版本号、请求修饰符、用户机信息和可能的内容等。(3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码、服务器信息、实体信息和可能的内容等。(4)用户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后用户机与服务器断开连接。HTTP如果在以上

36、过程中的某一步出现错误,那么产生错误的信息将返回到用户端,由显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标单击,等待信息显示就可以了。HTTP请求方法有多种,各个方法的解释如下:HTTP(1)GET:请求获取Request-URI所标识的资源。(2)POST:在Request-URI所标识的资源后附加新的数据。(3)HEAD:请求获取由Request-URI所标识的资源的响应消息报头。(4)PUT:请求服务器存储一个资源,并用Request-URI作为其标识。(5)DELETE:请求服务器删除Request-URI所标识的资源。(6)TRACE:请求服务器回送收到的请

37、求信息,主要用于测试或诊断。(7)CONNECT:保留将来使用。(8)OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求。HTTP状态代码由三位数字组成,第一个数字定义了响应的类别,有五种可能的取值:HTTP(1)1xx:指示信息,表示请求已接收,继续处理。(2)2xx:成功,表示请求已被成功接收、理解、接受,例如:200 OK表示用户端请求成功。(3)3xx:重定向,要完成请求必须进行更进一步的操作。HTTP(4)4xx:用户端错误,请求有语法错误或请求无法实现,例如,400 Bad Request表示用户端请求有语法错误,不能被服务器所理解,401 Unauthorize

38、d表示请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用,403 Forbidden表示服务器收到请求,但是拒绝提供服务,404 Not Found表示请求资源不存在,例如输入了错误的URL。(5)5xx:服务器端错误,服务器未能实现合法的请求,例如,500 Internal Server Error表示服务器发生不可预期的错误,503 Server Unavailable表示服务器当前不能处理用户端的请求,一段时间后可能恢复正常。HTTPS协议HTTP被用于在Web浏览器和网站服务器之间传递信息。HTTP以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取

39、了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP不适合传输一些敏感信息,如信用卡号、密码等。为了解决HTTP的这一缺陷,需要使用另一种协议:超文本传输安全协议HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer)。HTTPS协议HTTPS是以安全为目标的HTTP,简单讲是HTTP的安全版,即HTTP下加入安全套接层SSL(Secure Sockets Layer)。HTTPS的安全基础是SSL。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为

40、浏览器和服务器之间的通信加密。HTTPS协议SSL及其继任者传输层安全是为网络通信提供安全及数据完整性的一种安全协议。SSL在传输层对网络连接进行加密。SSL为Netscape所研发,用以保障在Internet上数据传输安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。SSL协议位于TCP/IP与各种应用层协议之间,为数据通信提供安全支持。SSL协议可分为两层: SSL记录协议:它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。HTTPS协议SSL握手协议:它建立在SSL记录协议之上,用于在实际的数据传输开始前,通信双方进行身份认

41、证、协商加密算法、交换加密密钥等。SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。SSL的当前版本为3.0,已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。HTTPS协议HTTPS协议用于对数据进行加密和解密操作,并返回网络上传送回的结果。在使用时,用https:URL表示,表明它使用了HTTP,但HTTPS与HTTP的不同点在于默认端口及增加了一个加密/身份验证层(在HTTP与TCP之间),即SSL层。HTTPS使用端口443,而不是像HTTP那样使用端口80来和TC

42、P/IP进行通信。HTTPS的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全。另一种就是确认网站的真实性,凡是使用了 https 的网站,都可以通过单击浏览器地址栏的锁头标志来查看网站认证之后的真实信息,也可以通过 CA 机构颁发的安全签章来查询。HTTPS协议TLS记录协议位于TLS握手协议的下面,在可靠的传输协议(如TCP/IP)上面。TLS记录协议的一条记录包含长度字段、描述字段和内容字段。TLS记录协议处理数据的加密,即记录协议得到要发送的消息之后,将数据分成易于处理的数据分组,进行数据压缩处理(可选),计算数据分组的消息认证码MAC,加密数据然后发送数据。接收

43、到的消息首先被解密,然后校验MAC值,解压缩,重组,最后传递给协议的高层用户。记录协议有四种类型的用户:握手协议、警告协议、改变密码格式协议和应用数据协议。通常使用一个对称算法,算法的密钥由握手协议提供的值生成。HTTPS协议TLS握手协议处理对等用户的认证,在这一层使用了公共密钥和证书,并协商算法和加密实际数据传输的密钥,该过程在TLS记录协议之上进行。TLS握手协议是TLS协议中最复杂的部分,它定义了10种消息,用户端和服务器利用这10种消息相互认证,协商哈希函数和加密算法并相互提供产生加密密钥的机密数据。TLS记录协议会在加密算法中用到这些加密密钥,从而提供数据保密性和一致性保护。HTT

44、PS协议HTTPS现在被广泛用于万维网上安全敏感的通信,例如交易支付方面。HTTPS和HTTP的区别主要为以下四点。HTTPS协议(1)HTTPS协议需要到ca申请证书,一般免费证书很少,需要交费。(2)HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议。(3)HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。(4)HTTP的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP构建的可进行加密传输、身份认证的网络协议,比httP安全。服务等级协议Web服务本质上是一种服务,用户通过服务的形式来使用Web资源。评

45、价服务的质量,则需要制定一种标准。服务质量指标(Service-Level Agreement,SLA)是在一定开销下为保障服务的性能和可靠性,服务提供商与用户间定义的一种双方认可的协定。通常这个开销是驱动提供服务质量的主要因素。服务等级协议一个完整的SLA同时也是一个合法的文档,包括所涉及的当事人、协定条款(包含应用程序和支持的服务)、违约的处罚、费用和仲裁机构、政策、修改条款、报告形式和双方的义务等。并且,服务提供商可以对用户在工作负荷和资源使用方面进行规定。典型的SLA 包括以下内容:服务等级协议(1)分配给用户的最小带宽;(2)用户带宽极限;(3)能同时服务的用户数目;(4)在可能影响

46、用户行为的网络变化之前的通知安排;(5)拨入访问可用性;(6)服务供应商支持的最小网络利用性能,如99.9%有效工作时间或每天最多为1分钟的停机时间;(7)各类用户的流量优先权;(8)用户技术支持和服务;(9)惩罚规定,为服务供应商不能满足 SLA 需求所指定。服务等级协议传统上,SLA包含了对服务有效性的保障,譬如对故障解决时间、服务超时等的保证。但是随着更多的商业应用在Internet的广泛开展,越来越需要SLA对性能(如响应时间)做出保障。这种需要将会随着越来越多的商业在Internet 的开展而重要起来。实际上,SLA的保障是以一系列的服务等级目标(SLO)的形式定义的。服务等级目标是

47、一个或多个有限定的服务组件的测量的组合。一个SLO被实现是指那些有限定的组件的测量值在限定范围里。SLO有所谓的操作时段,在这个时间范围内,SLO必须被实现。但是由于Internet的统计特性,不可能任何时候都能实现这些保障。因此SLA一般都有实现时间段和实现比例。实现比例被定义为SLA必须实现的时间与实现时段的比值。服务质量QoS服务质量(Quality of Service,QoS)是指能够利用各种基础技术,为指定的网络通信提供更好的服务能力的一种安全机制,可以用来解决网络延迟和阻塞等问题。 在Internet创建初期,没有意识到QoS应用的需要。因此,整个Internet运作如一个“竭尽

48、全力”的系统。每段信息都有4个“服务类别”位和3个“优先级”位,但是他们完全没有派上用场。数据包从起点到终点的传输过程中会发生许多事情,并产生如下有问题的结果:服务质量QoS(1)丢失数据包:)丢失数据包:当数据包到达一个缓冲器已满的路由器时,则代表此次的发送失败,路由器会依网络的状况决定要丢弃、不丢弃一部分或者是所有的数据包,而且这不可能在预先就知道,接收端的应用程序在这时必须请求重新传送,而这同时可能造成总体传输严重的延迟;服务质量QoS(2)延迟:)延迟:可能需要很长时间才能将数据包传送到终点,因为它会被漫长的队列迟滞,或需要运用间接路由以避免阻塞,延迟难以预料。服务质量QoS(3)传输

49、顺序出错:)传输顺序出错:当一群相关的数据包经过Internet时,不同的数据包可能选择不同的路由器,这会导致每个数据包有不同的延迟时间。最后数据包到达目的地的顺序会和数据包从发送端发送出去的顺序不一致,这个问题必须要有特殊额外的协议负责刷新失序的数据包;服务质量QoS(4)出错:)出错:有:时候,数据包在运送的途中会发生跑错路径、被合并甚至是毁坏的情况,这时接收端必须要能侦测出这些情况,并将它们统统判别为已遗失的数据包,再请求发送端再送一份同样的数据包。服务质量QoS在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,如Web应用,或E-mail设置等。但QoS对关键应用

50、和多媒体应用就十分必要。当网络过载或拥塞时,所有的数据流都有可能被丢弃,为满足用户对不同应用不同服务质量的要求,就需要网络能根据用户的要求分配和调度资源,对不同的数据流提供不同的服务质量:对实时性强且重要的数据包文优先处理;对于实时性不强的普通数据包文,提供较低的处理优先级,网络拥塞时甚至丢弃。QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。服务质量QoS支持QoS功能的设备,能够提供传输品质服务。针对某种类别的数据流,可以为它赋予某个级别的传输优先级,来标识它的相对重要性,并使用设备所提供的各种优先级转发策略、拥塞避免等机制为这些数据流提供特殊的传输服务。配置了QoS的网络环

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁