您好,欢迎访问三七文档
攀枝花学院计算机网络工程实训报告HTTP协议分析学生姓名:杨玉刚学生学号:200710801075院(系):计算机学院年级专业:07计本2版指导教师:范胜波二〇一〇年六月攀枝花学院本科学生课程设计任务书题目HTTP协议分析1、课程设计的目的通过本课程设计,学生可以了解计算机网络工程设计的一般任务,明确计算机网络设计与建设的基本原则,熟悉计算机网络需求分析的目标、任务与方法,掌握计算机网络设计的通用方法,并能学会撰写规范的相关设计报告。2、课程设计的内容和要求(包括原始数据、技术要求、工作要求等)1.需求分析根据选定的题目接合实际需求,完成需求分析。2.方案设计接合需求分析和提示知识点内容,针对性的对目标应用查找相应的资料和目标应用研究,设计基本可行的方案。3.方案文档的撰写完成设计报告,其中包含目标应用的提出背景、需求分析、设计方案及实现方法等3、主要参考文献[1]AndrewS.Tanenbaum著,潘爱民译,徐明伟审.计算机网络[J].—北京:清华大学出版社,2004,8.[2]ABRAMSON,N.:“InternetAcessUsingVASTs,”IEEECommum.Magazine,vol.38,pp.60-68,July2000.[3][美]BelachanderKrishnamurthy,JenniferRexford著,范群波、沈金河译.Web协议与实践,科学出版社.2003,74、课程设计工作进度计划序号时间(天)内容安排备注1第1天选题、背景知识学习2第2天需求分析3第3天方案设计4第4天课程设计报告和总结5第5天课程设计报告和总结总计5(天)指导教师(签字)日期年月日教研室意见:年月日学生(签字):接受任务时间:年月日课程设计(论文)指导教师成绩评定表题目名称评分项目分值得分评价内涵工作表现20%01学习态度6遵守各项纪律,工作刻苦努力,具有良好的科学工作态度。02科学实践、调研7通过实验、试验、查阅文献、深入生产实践等渠道获取与课程设计有关的材料。03课题工作量7按期圆满完成规定的任务,工作量饱满。能力水平35%04综合运用知识的能力10能运用所学知识和技能去发现与解决实际问题,能正确处理实验数据,能对课题进行理论分析,得出有价值的结论。05应用文献的能力5能独立查阅相关文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获取新知识的能力。06设计(实验)能力,方案的设计能力5能正确设计实验方案,独立进行装置安装、调试、操作等实验工作,数据正确、可靠;研究思路清晰、完整。07计算及计算机应用能力5具有较强的数据运算与处理能力;能运用计算机进行资料搜集、加工、处理和辅助设计等。08对计算或实验结果的分析能力(综合分析能力、技术经济分析能力)10具有较强的数据收集、分析、处理、综合的能力。成果质量45%09插图(或图纸)质量、篇幅、设计(论文)规范化程度5符合本专业相关规范或规定要求;规范化符合本文件第五条要求。10设计说明书(论文)质量30综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学。11创新10对前人工作有改进或突破,或有独特见解。成绩指导教师评语指导教师签名:年月日攀枝花学院计算机网络工程实训报告Ⅰ摘要HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送方式的数据,关于HTTP协议的详细内容请参考RFC2616。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符关键词HTTP协议,客户端,服务器,HTTP的头域攀枝花学院计算机网络实训报告Ⅰ目录摘要………………………………………………………………………………………Ⅰ1前言………………………………………………………………………………………………11.1http协议简述………………………………………………………………………………12需求分析………………………………………………………………………………………22.1http协议通信过程…………………………………………………………………………22.1.1URL自动解析……………………………………………………………………………22.1.2获取IP,建立TCP连接…………………………………………………………………22.1.3客户端浏览器向服务器发出HTTP请求………………………………………………22.1.4Web服务器应答,并向浏览器发送数据…………………………………………………22.1.5Web服务器关闭TCP连接………………………………………………………………32.1HTTP的头域………………………………………………………………………………32.1.1通用头域…………………………………………………………………………………32.1.2请求消息…………………………………………………………………………………42.1.3响应消息…………………………………………………………………………………52.1.4实体信息…………………………………………………………………………………63系统设计………………………………………………………………………………………73.1HTTPAnalyzer工具介绍…………………………………………………………………83.2分析访问浏览器和服务器通信的过程……………………………………………………84系统分析………………………………………………………………………………………124.1HTTP请求消息…………………………………………………………………………124.1HTTP响应消息…………………………………………………………………………13结论……………………………………………………………………………………………15参考文献…………………………………………………………………………………………16附录……………………………………………………………………………………………17攀枝花学院计算机网络工程实训报告11前言1.1HTTP协议简述HTTP是一个客户端和服务器端请求和应答的标准(TCP)。客户端是终端用户,服务器端是网站。通过使用Web浏览器、网络爬虫或者其它的工具,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求。(我们称这个客户端)叫用户代理(useragent)。应答的服务器上存储着(一些)资源,比如HTML文件和图像。(我们称)这个应答服务器为源服务器(originserver)。在用户代理和源服务器中间可能存在多个中间层,比如代理,网关,或者隧道(tunnels)。尽管TCP/IP协议是互联网上最流行的应用,HTTP协议并没有规定必须使用它和(基于)它支持的层。事实上,HTTP可以在任何其他互联网协议上,或者在其他网络上实现。HTTP只假定(其下层协议提供)可靠的传输,任何能够提供这种保证的协议都可以被其使用。攀枝花学院计算机网络工程实训报告22需求分析2.1HTTP协议通信过程当我们在浏览器的地址栏输入“”然后按回车,这之后发生了什么事,我们直接看到的是打开了对应的网页,那么内部客户端和服务端是如何通信的呢?2.1.1URL自动解析HTTPURL包含了用于查找某个资源的足够信息,基本格式如下:[“:”port][abs_path],其中HTTP表示桶盖HTTP协议来定位网络资源;host表示合法的主机域名或IP地址,port指定一个端口号,缺省80;abs_path指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。例如:输入浏览器会自动转换成:获取IP,建立TCP连接浏览器地址栏中输入并提交之后,首先它会在DNS本地缓存表中查找,如果有则直接告诉IP地址。如果没有则要求网关DNS进行查找,如此下去,找到对应的IP后,则返回会给浏览器。当获取IP之后,就开始与所请求的Tcp建立三次握手连接,连接建立后,就向服务器发出HTTP请求。2.1.3客户端浏览器向服务器发出HTTP请求一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令,接着以头信息的形式向Web服务器发送一些别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头信息的发送。2.1.4Web服务器应答,并向浏览器发送数据客户机向服务器发出请求后,服务器会客户机回送应答,HTTP/1.1200OK应答的第一部分是协议的版本号和应答状态码,正如客户端会随同请求发送关于自身的信息一样,服务器也会随同应答向用户发送关于它自己的数据及被请求的文档。攀枝花学院计算机网络工程实训报告3Web服务器向浏览器发送头信息后,它会发送一个空白行来表示头信息的发送到此为结束,接着,它就以Content-Type应答头信息所描述的格式发送用户所请求的实际数据2.1.5Web服务器关闭TCP连接一般情况下,一旦Web服务器向浏览器发送了请求数据,它就要关闭TCP连接,然后如果浏览器或者服务器在其头信息加入了这行代码Connection:keep-aliveTCP连接在发送后将仍然保持打开状态,于是,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽。2.2HTTP的头域2.2.1通用头域通用头域包含请求和响应消息都支持的头域,通用头域包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via。对通用头域的扩展要求通讯双方都支持此扩展,如果存在不支持的通用头域,一般将会作为实体头域处理。下面简单介绍几个在UPnP消息中使用的通用头域。2.2.1.1Cache-Control头域Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if-cached,响应消息中的指令包括public、private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下:Public指示响应可被任何缓存区缓存。Private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。no-cache指示请求或响应消息不能缓存no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max
本文标题:HTTP协议分析
链接地址:https://www.777doc.com/doc-5316361 .html