搜档网
当前位置:搜档网 › 服务器原理和协议TomcatHttp协议

服务器原理和协议TomcatHttp协议

服务器原理和协议

学习的思路:

Servler + Jsp + 数据库

1,Javaweb服务器原理 + HTTP协议

2,编程的API,来学,应该先学Servlet,比JSP而言,更复杂,倾向底层原理,JSP主要是页面显示

3,Servlet和Jsp之间加上数据库课程,(Mysql+Oracle),数据库语言Sql+Java数据库编程JDBC

B/S 和C/S 的区别

Browser/Server 是一直特殊C/S结构,客户端采用浏览器实现:基于web系统微博,网页游戏,云计算 Google

Client/Server 客户端必须单独安装腾讯QQ 微软

WEB系统是怎样通信的?

Web browser(客户端)(客户端请求包含要访问的资源路径和名称)request Server(服务端)(服务端可以将页面、图片、媒体等很多的资源内容发送给客户端)response如果客户端的请求没有得到正确处理,服务端的响应会包含一个错误的状态码返回

什么是WEB应用?

Web应用就是基于HTTP协议在B/S结果中的服务端的应用程序,它接收客户端浏览器的请求并返回应答结果(通常是以页面的形式返回)

WEB应用部分的组成:

什么是静态资源,什么是动态资源?

静态资源的数据是固定的

动态资源的数据随着程序的执行而改变的

静态资源技术:Html + Css + JavaScript - DHTML Dynamic Html

动态资源技术:ASP/PHP/JSP 用来开发网站

ASP被 .net取代,.net代表的是很多微软技术综合(VB、ASP、C#)开发网站(工具,到运行平台都是收费的)俗称为网站开发技术贵族

PHP 网站开发第一技术,民间开发的,开源,免费–>开发网站(免费开源)网站开发技术平民

JSP开发成本太高(必须先学java),效率太低,服务器性能,服务器少

JAVA 优点:开发企业级应用 ERP/CRM/OA 规范性强、更加标准

B/S 系统基于请求–> 响应模型注意:必须现有请求才有响应,请求和响应是成对出现的;

访问网站基于一个协议的

输入网站----- 唯一域名----映射IP ----- 互联网一台服务器

服务器想被外界访问,必须开发端口

URL格式:

协议:采用哪种协议进行进行本次网路访问;

JavaWeb应用所包含的内容:

Sun对JavaWeb应用定义如下,Java Web应用是由一组Servlet、HTML页、JSP页、工具类以及其他可以绑定的资源构成,它可以在各种供应商提供的实现Servlet规范的servlet容器中运行

JAVAWeb常用服务器

WebLogic(Oracle):收费,全面支持JavaEE规范(Servlet,Jsp,Xml,EJb,Jms)+Oracle 数据库

Websphere(IBM):收费,全面支持JavaEE规范,

JBOSS:EJB服务器,免费

Servlet/JSP和EJB之间的关系:

Servlet/JSP用于解决请求响应数据,页面显示,EJB用于复杂业务流程,数据处理Tomcat:Apache公司,jdkarta子项目,免费的,只支持Servlet和Jsp 轻量级,中小规模软件开发

Tomcat版本Servlet/JSP版本JavaEE版本JDK版本

5.0 2.3/2.9 1.3

5.5 2.4/2.0 1.4

6.0 2.5/2.1 5.0

7.0 3.0/2.2 6.0

Servlet容器的概念:

Servlet容器为JavaWeb应用提供了运行时环境,它负责管理Servlet和JSP的生命周期,以及管理他们的共享数据

Servlet容器也称为JavaWeb应用容器,或者Servlet/JSP容器

本机IP默认:127.0.0.1或者http://localhost配置hosts

JavaEE版本和Jdk区别?

JavaEE是技术规范

JDK是运行环境

Tomcat目录结构

bin 运行程序(存放启动和关闭 Tomcat 的脚本文件)

conf 配置文件(存放 Tomcat 服务器的各种配置文件)

lib tomcat 需要类库(存放 Tomcat 服务器和所有 web 应用程序需要访问的 jar 文件)Logs tomcat 日志(存放 Tomcat 的日志文件)

temp(存放 Tomcat 运行时产生的临时文件)

Webapps 网站部署目录(当发布 web 应用程序时,通常把 web 应用程序的目录及文件放到这个目录下)

Work 存放JSP编译后文件(Tomcat 将 JSP 生成的 Servlet 源文件和字节码文件放到这个目

录下)

Tomcat启动异常

1,没有配置JAVA_Home:

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

At least one of these environment variable is needed to run this program Doc 命令行最后加Pause是暂停的意思

2,配置Java_Home配置值的时候多写;

3,将Java_Home配置为JRE路径

The JAVA_HOME environment variable is not defined correctly

This environment variable is needed to run this program

NB: JAVA_HOME should point to a JDK not a JRE

查看日志要看当天最大的那个文件

端口占用启动问题:

发现Tomcat端口被占用(查看logs)用Fport找到占用端口进程名称用任务管理器杀

掉进程

8080是Tomcat默认端口,Oracle Listener

开发中经常将默认端口修改为80 conf/server.xml

运行Fport.exe出现下列错误:Program too big to fit in memory

CATALINA_HOME环境变量:用来指定默认运行Tomcat目录位置。不管运行那个Tomcat/bin/stattup.bat,都启动的是CATALINA_HOME配置的Tomcat

Tomcat配置环境为什么配置JDK环境

为了编译Servlet和JSP所以要配置JDK目录,如果只是运行Tomcat的话,只要配置jre 就

可以

在运行中输入services.msc然后转到服务界面,在这里可以将占用8080端口这个程序禁止WEB应用程序

指供浏览器访问的程序,通常也简称为web应用

一个web应用由多个静态web资源和动态web资源组成,如

Html、css、js文件

JSP文件、Java程序、支持jar包、配置文件等,

组成web应用的这些文件通常我们会使用一个目录组织,这个目录称为web引用所在目录(网站的根目录)

Web应用开发的好处,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚拟目录的映射。

虚拟目录的映射方式(如何部署WEB程序)

1,Tomcat/conf/context.xml里面的配置信息,将会用于所有的web应用

2,Tomcat/conf/为每一个主机建立一个context.xml用于所有该主机web应用引擎,

主机部署web应用三种方式

a)配置server.xml修改元素内部,添加

的网站所在的根目录”>

b)配置$CATALINA_HOME/conf/[enginename]/[hostname]/ directory在conf下新建

Catalina

,在Catalina里面新建localhost,在localhost中新建xx.xml

c)将整个web应用目录拷贝到webapps里面

缺省web应用。

访问IP,直接打开默认web应用 ----path为Root

1,webapps下面的ROOT目录

2,配置server.xmlpath什么也不写的时候是缺省web应用

3,在conf/Catalina/localhost配置ROOT.xml

通过WAR方式发布部署web应用

War文件是zip格式。

先压缩成zip格式,然后在将扩展名改成war

WEB应用的组成结构:不同类型的文件有严格的存放规则,否则会报错。

静态资源直接存放在网站根目录

动态放到WEB-INF下

WEB-INT的目录结构(不可以直接访问,)

Classes存放字节码文件

Lib存放jar包

Web.xml存放配置文件(配置欢迎界面:找到conf 目录下的web.xml文件进行简单修改)

xmlns:xsi="https://www.sodocs.net/doc/d113523459.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.sodocs.net/doc/d113523459.html,/xml/ns/javaee

https://www.sodocs.net/doc/d113523459.html,/xml/ns/javaee/web-app_2_5.xsd"

version="2.5">

index.html

Mail

|--

|-html、jsp、css、js文件等

|--

|WEB-INF目录

|--

|-- classes目录(Java类)

|--

|--lib目录(Java类运行所需的jar包) |--

|--web.xml文件(web应用的配置文件)配置虚拟主机

WEB应用所在目录

这些文件一般存在web应用根目录下,根目录下的文件可以直接访问

Java类、jar包、web应用的配置文件存在这个目录下,该目录下的文件外界无法直接访问,由web服务器负责调用

指的是在一台服务器中放置多个站点

如何架设一个站点?

1,开发站点代码

2,一台服务器(购买服务器或者,服务器托管。购买服务器空间,虚拟主机空间)。

IP地址

3,购买域名

配置Tomcat虚拟主机

1. 配置server.xml 添加 元素

2、配置hosts文件将目标域名映射本机(WINDOWS\System32\drivers\etc\hosts)

用ping 网址在doc命令行测试hosts文件是否修改成功

3、提供默认缺省虚拟目录(网站) ---- ROOT

配置缺省虚拟主机

什么是缺省:只提供了IP没有域名,所以只能访问默认的主机。

有什么用? ---- 当服务器DNS瘫痪时,只有缺省虚拟主机能被访问!

HTTP协议

超文本传输协议

OSI七层协议的分层

TCP/IP协议分层

TCP传输层协议,IP网络层协议

三次握手

发送方:你能收到我的数据吗?

接收方:我能收到,你能收到吗?

发送方:我也能收到

TCP 不丢包的数据传输

HTTP请求:

1,请求行,包括三部分1)请求方式(GET/SET);2)请求资源路径;3)协议版本

2,消息头

3,消息体

GET和POST的区别?

HTTP请求头细节:

HTTP响应;

1,响应行

a)协议版本,

b)状态码,

i.1XX;请求收到,需要继续处理

ii.2XX;请求处理完成

iii.3XX;重定向

4XX;客户端错误,错误的语法或者不可能完成,服务器无法处理(页面找不

到)

iv.5XX;服务器错误,服务器内部错误,空指针、角标越界

200 请求处理成功

302 重定向,A找B借钱,B告诉A去找C借去,

304和307 if-modified-since-modified 服务器通知客户段查看本地缓存。A找B 借钱,

B 说你自己有

404 页面找不到错误 A找B借钱,B说没有

500 服务器内部异常

c)状态信息

2,头信息

Location: https://www.sodocs.net/doc/d113523459.html,/index.jsp

结合302状态码使用,服务器通知客户端重定向常见应用,未登录,自动跳转到登录页面

Server:apache tomcat

Content-Encoding: gzip 通知客户端响应内容使用压缩格式

Content-Length: 80 响应长度

Content-Language: zh-cn 响应语言

Content-Type: text/html; charset=GB2312 响应数据类型,编码集

Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT

通知客户端,该资源在服务端的最后修改时间

Refresh: 1;url=https://www.sodocs.net/doc/d113523459.html,表示1秒后,跳转到https://www.sodocs.net/doc/d113523459.html,

自动刷新功能,案例:用户在登录后,显示5秒后自动跳转回主页

Content-Disposition: attachment; filename=aaa.zip

文件以附件格式下载

Set-Cookie:SS=Q0=5Lb_nQ; path=/search

Expires: -1过期时间

Cache-Control: no-cache 不缓存

Pragma: no-cache 不缓存

以上3个头信息资源,用于通知客户端,响应数据不缓存,三个头一起使用是为了满足跨浏览器

Connection: close/Keep-Alive

Date: Tue, 11 Jul 2000 18:23:51 GMT

3,响应体

Socket编程

. .

网络协议总结版

文章来源: https://www.sodocs.net/doc/d113523459.html,/blog/static/8312073620089634134536/ 这个小结,很难写啊~~~网络的东西太多了~~主要是细节很多~~而且,协议也很多,感觉也没有必要去了解这些细节~~似乎找不到重点~~~也没好的办法 ~~~copy了一大堆资料,整理了几个问题~~~~希望可以勾勒出网络的框架~~有的是概要性质的,也有些是细节方面的,选择性的瞄一眼吧~~~貌似有的写的挺详细,有的就很简略~~~最后一看,有点像大杂烩了,嘿嘿嘿,能看完算你狠(LF) ●电路交换技术、报文交换、分组交换 ●OSI的模型与 TCP/IP(*) ●CSMA/CD ●网桥 ●交换机 ●RIP 与 OSPF(*) ●集线器与交换器比较 ●虚拟局域网VLAN ●什么是三层交换 ●二层交换、三层交换、路由的比较 ●交换机与路由器比较(*) ●IP分片控制 ●TCP为什么要三次握手?(*) ●TCP拥塞控制 ●CS模型与SOCKET编程(*) 其他还有一些很小很小的问题,放到最后了,包括协议三个要素,协议分层优点,NAT,ICMP等等 我觉得网络的重点仍然是对网络的整体性概念,如果不是专门进行协议开发的话,一般不会深入到协议的细节。仍然有重点。协议的重点是TCP和IP,然后概要性需要了解的是UDP,ICMP,ARP,RIP,OSPF等等,其他像NAT、CIDR、DNS、HTTP、FTP、SNMP等有个简单的了解可能更好。 电路交换技术、报文交换、分组交换

OSI的模型与TCP/IP OSI每层功能及特点 物理层为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特。此外,该层中还具有确定连接设备的电气特性和物理特性等功能。物理层的作用:尽可能地屏蔽掉各种媒体的差异。 数据链路层负责在网络节点间的线路上通过检测、流量控制和重发等手段,无差错地传送以帧为单位的数据。为做到这一点,在每一帧中必须同时带有同步、地址、差错控制及流量控制等控制信息。 网络层为了将数据分组从源(源端系统)送到目的地(目标端系统),网络层的任务就是选择合适的路由和交换节点,使源的传输层传下来的分组信息能够正确无误地按照地址找到目的地,并交付给相应的传输层,即完成网络的寻址功能。 传输层传输层是高低层之间衔接的接口层。数据传输的单位是报文,当报文较长时将它分割成若干分组,然后交给网络层进行传输。传输层是计算机网络协议分层中的最关键一层,该层以上各层将不再管理信息传输问题。 会话层该层对传输的报文提供同步管理服务。在两个不同系统的互相通信的应用进程之间建立、组织和协调交互。例如,确定是双工还是半双工工作。 表示层该层的主要任务是把所传送的数据的抽象语法变换为传送语法,即把不同计算机内部的不同表示形式转换成网络通信中的标准表示形式。此外,对传送的数据加密(或解密)、正文压缩(或还原)也是表示层的任务。 应用层该层直接面向用户,是OSI中的最高层。它的主要任务是为用户提供应用的接口,即提供不同计算机间的文件传送、访问与管理,电子邮件的内容处理,不同计算机通过网络交互访问的虚拟终端功能等。 TCP/IP 网络接口层这是TCP/IP协议的最低一层,包括有多种逻辑链路控制和媒体访问协议。网络接口层的功能是接收IP数据报并通过特定的网络进行传输,或从网络上接收物理帧,抽取出IP数据报并转交给网际层。 网际网层(IP层)该层包括以下协议:IP(网际协议)、ICMP(Internet Control Message Protocol,因特网控制报文协议)、ARP(Address Resolution Protocol,地址解析协议)、RARP(Reverse Address Resolution Protocol,反向地址解析协议)。该层负责相同或不同网络中计算机之间的通信,主要处理数据报和路由。在IP层中,ARP协议用于将IP地址转换成物理地址,RARP协议用于将物理地址转换成IP地址,ICMP协议用于报告差错和传送控制信息。IP 协议在TCP/IP协议组中处于核心地位。 传输层该层提供TCP(传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)两个协议,它们都建立在IP协议的基础上,其中TCP提供可靠的面向连接服务,UDP提供简单的无连接服务。传输层提供端到端,即应用程序之间的通信,主要功能是数据格式化、数据确认和丢失重传等。

HTTP协议简介及其工作原理

HTTP协议简介及其工作原理 1.HTTP的概述 超文本传输协议(HTTP)是万维网应用层的协议,是通过两个程序实现:一个是客户端程序(一般称为浏览器),另一个是服务器(常称Web服务器)。这两个通常运行在不同的主机上通过交换HTTP报文来完成网页请求和响应。并且HTTP定义了报文的结构和客户/服务器之间交换报文的规则。 2. HTTP的工作流程 浏览器可以向web服务器发送请求并显示收到的网页,当用户在浏览器地址栏中输入一个URL或点击一个超连接时,浏览器就向服务器发出了HTTP请求,该请求被送往由URL 指定的WEB服务器,WEB服务器接收到请求后,进行相关文档的检索并以HTTP规定的格式送回所要求的文件或其他相关信息,再由用户计算机上的浏览器负责解释和显示。 在HTTP协议中,由于WEB服务器在发送用户要求的文档过程中,并不储存任何有关客户端的状态信息。如果某个客户端在几秒钟内两次要求同一文档,服务器绝对不会认为不合理,因为它根本不记得用户端曾经来访过,因此HTTP 不维持客户端状态,故它又被称为无状态协议。 3. HTTP运作过程中的连接 3.1连接过程说明 假设某个网页有10个JPFG图像,总共11个对象存在同一个服务器中,该网页的基本文档形式URL为: https://www.sodocs.net/doc/d113523459.html,/somedepartment/home.index 当采用HTTP/1.0时,WEB服务过程: ⑴.HTTP的客户端启用了对https://www.sodocs.net/doc/d113523459.html,服务器的TCP连接,该服务器的80 号端口(HTTP的默认端口)用来监听来自网络的网络服务请求。 ⑵. HTTP的客户端通过第一步建立的链接套接字发送“请求报文”。请求报文中包含了文 档的路径名(/somedepartment/home.index )。 ⑶.HTTP服务器通过第一步建立连接套接字收到了该请求报文,从磁盘或内存中查找 /somedepartment/home.index,将文档封存在HTTP的“相应报文”中,并通过先前建立的套接字将该报文送到客户端。 ⑷. HTTP服务器告诉TCP断开连接(TCP在客户端完全收到响应报文之前不会断开TCP 连接)。 ⑸.当客户端接受完响应报文,本次TCP连接即告结束。到达的报文说明所封装的内容是

必须掌握的http协议知识

HTTP协议 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议。所有的www文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。是用于从万维网(Wide Web )服务器传输超文本到本地浏览器的传送协议。 HTTP/0.9 已过时。只接受GET 一种请求方法,没有在通讯中指定版本号,且不支持请求头。由于该版本不支持POST 方法,所以客户端无法向服务器传递太多信息。 HTTP/1.0 这是第一个在通讯中指定版本号的HTTP 协议版本,至今仍被广泛采用,特别是在代理服务器中。HTTP/1.1 当前版本。持久连接被默认采用,并能很好地配合代理服务器工作。还支持以管道方式同时发送多个请求,以便降低线路负载,提高传输速度。 HTTP/1.1相较于HTTP/1.0 协议的区别主要体现在: ?缓存处理 ?带宽优化及网络连接的使用 ?错误通知的管理 ?消息在网络中的发送 ?互联网地址的维护 ?安全性及完整性

HTTP 工作原理 HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。 Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等。 Web服务器根据接收到的请求后,向客户端发送响应信息。 HTTP默认端口号为80,但是你也可以改为8080或者其他端口。 HTTP三点注意事项: ?HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 ?HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。 ?HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 以下图表展示了HTTP协议通信流程:

网络协议原理复习题 简答及数据包分析

1、简要说明ARP的工作原理 ARP是Address Resolution Protocal(地址转换协议)是TCP/IP协议中最底层的协议之一它的作用是完成IP地址到MAC的转换。在局域网中两台计算机之间的通讯,或者局域网中两台计算机之间的通讯,或者局域网中的计算机将IP数据包转发给网关的时候,网卡都需要知道目标计算机的物理地址,以填充物理帧中的目的地址。 2、简述路由器在转发IP数据报时,生存时间字段的作用及路由器的处理过程。TTL字段的目的是就是为了防止1个IP数据报网络中循环的流动。,路由器收到IP数据包后,检查包头中的目标IP地址,然后与自己的路由表对照,如果目标IP 地址已经在路由表里,就从相应的接口转发出数据包。如果没有这个IP地址,就丢弃这个数据包。它不像交换机,会泛洪出所有端口。 3、介绍端口在运输层的作用,端口的分类并列举常用的TCP端口。 4、说明IP在转发数据报的过程中分片的必要性,简述分片和重组的过程。 5、说明如何用ping命令判断网络故障 1.目的MAC地址和源MAC地址分别是什么? 2.标识、标志和片偏移几个字段的值分别是多少? 3.该IP数据报的生存时间是多少? 4.源端口和目的端口分别是多少,访问的是何种服务? 5.IP数据报中封装数据的序号和确认号字段值 6.给出计算IP数据报中封装数据的检验和的伪首部(十六进制形式) 7.目的MAC地址 8.MAC帧封装的协议编号,是什么协议的数据 9.源MAC地址 10.目的IP地址及其点分十进制形式 11.源端口 12.IP数据报的长度是多少字节? 13.源IP地址的点分十进制形式? 14.目的端口是多少? 15.访问的是什么服务? 16.源IP和目的IP的点分十进制形式? 17.IP数据报中封装数据的首部长度是多少字节? 18.IP数据报中封装数据的协议编号? 19.IP数据报的首部长度是多少字节? 20.目的IP地址的点分十进制形式? 21.U、A、P、R、S、F几个比特的值,该报文段的语义是什么? 22.发送方通知接收方,其接收窗口的大小是多少。

HTTP协议详解

引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/的第六版,HTTP/的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议的主要特点可概括如下: 1.支持客户/服务器模式。 2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 一、HTTP协议详解之URL篇 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:":"port][abs_path] http表示要通过HTTP协议来定位网络资源;host表示合法的Internet主机域名或者IP地址;port指定一个端口号,为空则使用缺省端口80;abs_path指定请求资源的URI;如果URL

http协议交互过程

竭诚为您提供优质文档/双击可除 http协议交互过程 篇一:wireshake抓包分析tcp与http过程详解 http协议报文格式详解 在我们日常生活中最常见的应用环境就是上网浏览网页,很多上班族到办公室的第一件事就是打开电脑,而开机后的第一件事就是打开ie、Firefox、myie、greenbrowser、opera等浏览器时,做的第一件事就是浏览一下例如.cn,的新闻,而这种简单的应用操作,完成的交互过程就是一个典型的http协议的应用过程。 http是基于tcp的连接,因此,建立http连接必须经过tcp的过程,tcp的建立过程是3次握手的过程。然后就是http过程,http只有两种报文,请求和应答报文。完成http过程后,3次断开tcp连接。 http tcp的第一阶段 http开始之前先3次握手,第一阶段就是客户向服务器发送同步请求,flag字段的syn位置1。 第二阶段

第二阶段就是服务器向客户回复一个ack包,其中Flag 字段的syn位和ack字段置1。 tcp的第三阶段: tcp的第三阶段是客户向服务器发送ack,至此,tcp的3次握手结束 tcp三次握手结束之后就是http请求 客户发出http请求之后,服务器收到请求发送ack: 服务器发送应答报文 篇二:http协议分析报告实例 http协议分析 1实验目的 分析http协议报文首部格式,理解http协议工作过程2实验内容 截获http报文,分析http协议报文首部格式,学习http 协议工作过程。3实验原理 超文本传送协议http(hypertexttransferprotocol),是万维网客户程序与万维网服务器程序之间的交互所要严 格遵守的协议。http是一个应用层协议,它使用tcp连接进行可靠的传送。对于万维网站点的访问要使用的http协议。 http的uRl的一般形式是:http://:/ www采用b/s结构,客户使用浏览器在uRl栏中输入http 请求,即输入对方服务器的地址,向web服务器提出请求。

软考网络工程师常用协议名称——必背

软考网络工程师常用协议名称——必背SAP;service access point /服务访问点。N+1实体从N服务访问点SAP获得N服务。15 CEP;connection end point /连接端点。N连接的两端叫做N连接端点。16 SNA;系统网络体系结构。是一种以大型主机为中心的集中式网络。20 APPN Advanced Peer-to-Peer Networking 高级点对点网络21 X.25;包括了通信子网最下边的三个逻辑功能层,即物理层、链路层和网络层。22 VC;virtual circuit /虚电路连接。23 PAD;packet assembly and disassembly device /分组拆装设备。在发送端要有一个设备对信息进行分组和编号,在接收端也要有一个设备对收到的分组拆去头尾并重排顺序。具有这些功能的设备叫做PAD.(在以数据报的传播方式中)50 CATV;有线电视系统。51 TDM;time division multiplexing /时分多路复用。52 WDM;wave division multiplexing /波分多路复用。53

CDMA;code division multiple access /码分多路复用。53 CRC ;cyclic redundancy check /循环冗余校验码。59 PSTN;public switched telephone network /公共交换电话网。61 DTE;data terminal equipment /数据终端设备。62 DCE;data circuit equipment/数据电路设备。 62 TCM;trellis coded modulation /格码调制技术。现代的高速Modem(调制解调器)采用的技术。66 Modem:modulation and demodulation /调制解调器,家用电脑上Internet(国际互联网)网的必备工具,在一般英汉字典中是查不到这个词的,它是调制器(MOdulator)与解调器(DEModulator)的缩写形式。Modem是实现计算机通信的一种必不可少的外部设备。因为计算机的数据是数字信号,欲将其通过传输线路(例如电话线)传送到远距离处的另一台计算机或其它终端(如电传打字机等),必须将数字信号转换成适合于传输的模拟信号(调制信号)。在接收端又要将接收到的模拟信号恢复成原来的数字信号,这就需要利用调制解调器。66

HTTP协议分析

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议的主要特点可概括如下: 1.支持客户/服务器模式。 2.简单快速: 客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、H EAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 3.灵活: HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 4.无连接: 无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态: HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 一、HTTP协议(URL)

http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下: http: //host[": "port][abs_path] 二、HTTP协议的请求 http请求由三部分组成,分别是: 请求行、消息报头、请求正文 1、请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本,格式如下: Method Request-URI HTTP-Version CRLF 其中Method表示请求方法;Request-URI是一个统一资源标识符;HTTP-Version表示请求的HTTP协议版本;CRLF表示回车和换行(除了作为结尾的CRLF外,不允许出现单独的CR或LF字符)。 请求方法(所有方法全为大写)有多种,各个方法的解释如下: GET 请求获取Request-URI所标识的资源 POST 在Request-URI所标识的资源后附加新的数据 HEAD 请求获取由Request-URI所标识的资源的响应消息报头 PUT 请求服务器存储一个资源,并用Request-URI作为其标识

HTTP协议解析

文章来源:网络转载点击数:1148 更新时间:2009-9-14 10:35:27 字体:[大中小] 收藏到: HTTP协议详解 掌握HTTP虽然不是必须的,但是如果你知道它的工作原理,那么在学习JSP开发中的某些知识就可以易如反掌了。 一,HTTP协议详解之URL篇 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:http://host[":"port][abs_path] http 表示要通过HTTP协议来定位网络资源;host表示合法的Internet主机域名或者IP地址;port 指定一个端口号,为空则使用缺省端口80;abs_path指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。eg: 1、输入:https://www.sodocs.net/doc/d113523459.html, 浏览器自动转换成:https://www.sodocs.net/doc/d113523459.html,/ 2、http:192.168.0.116:8080/index.jsp 二、HTTP协议详解之请求篇 http请求由三部分组成,分别是:请求行、消息报头、请求正文 1、请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本,格式如下:Method Request-URI HTTP-Version CRLF 其中Method表示请求方法;Request-URI是一个统一资源标识符;HTTP-Version表示请求的HTTP 协议版本;CRLF表示回车和换行(除了作为结尾的CRLF外,不允许出现单独的CR或LF字符)。请求方法(所有方法全为大写)有多种,各个方法的解释如下: GET 请求获取Request-URI所标识的资源 POST 在Request-URI所标识的资源后附加新的数据 HEAD 请求获取由Request-URI所标识的资源的响应消息报头 PUT 请求服务器存储一个资源,并用Request-URI作为其标识 DELETE 请求服务器删除Request-URI所标识的资源 TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断 CONNECT 保留将来使用 OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求 应用举例: GET方法:在浏览器的地址栏中输入网址的方式访问网页时,浏览器采用GET方法向服务器获取资源,eg:GET /form.html HTTP/1.1 (CRLF) POST方法要求被请求服务器接受附在请求后面的数据,常用于提交表单。 eg:POST /reg.jsp HTTP/ (CRLF) Accept:image/gif,image/x-xbit,... (CRLF) ...

常用的网络传输协议

常用的网络传输协议 网络0901 周骏达 TCP/IP协议族中最常用的两种传输协议是传输控制协议(TCP)和用户数据 报协议(UDP)。这两种协议都用于管理多个应用程序的通信,其不同点在于每个 协议执行各自特定的功能。 一、TCP:可靠通信 TCP协议通常被称为面向连接的协议,这一协议保证可靠有效地将数据从发 送者传送到接受者。 TCP通信的可靠性在于使用了面向连接的会话。主机使用TCP协议发送数据 到另一主机前,传输层会启动一个进程,用于创建与目的主机之间的链接。通过 该链接,可以跟踪主机之间的会话或者通信数据流。同时,该进程还确保每台主 机都知道并做好了通信准备。完整的TCP会话要求在主机之间创建双向会话。 会话创建后,目的主机针对收到的数据段向源主机发送确认信息。在TCP 会话中,这些确认信息构成了可靠性的基础。源主机收到确认信息时,即表明数 据成功发送,且可以退出数据跟踪。如果源主机未在规定时间内收到确认信息,它将向目的主机重新发送数据。 在TCP连接中,充当客户端的主机将向服务器发起会话。TCP连接创建具体 的过程分为以下三个步骤,即“三次握手”。 1.客户端向服务器发送包含初始序列值的数据段,开启通信会话。 2.服务器发送包含确认值的数据段,其值等于收到的序列值加1,并加上自 身的同步序列值。该值比序列号大1,因为确认字段(ACK)总是下一个预期字 节或二进制八位数。通过此确认值,客户端可以将响应和上一次发送到服务器的 数据段连接起来。 3.发送带确认值的客户端响应,其值等于接受序列值加1。这边完成了整个 连接过程。图1显示了建立一个TCP连接的步骤: 1.发送SYN消息 (SQE=100 CTL=SYN) 收到SYN消息 2.发送SYN,ACK消息 (SEQ=300 ACK=101 CTL=SYN,ACK)收到SYN消息 3.连接已建立 (SEQ=101 ACK=301 CTL=ACK) 图1 TCP连接的建立

实验 TCP协议与HTTP协议

实验三TCP协议与HTTP协议 学号__142055210__ 姓名__李奋伟__ 实验机IP_ 192.168.1.103______ 实验机MAC地址_34-E6-D7-77-E7-35__ 日期__2016.6.17 实验目的: 掌握TCP协议内容,掌握HTTP协议内容。 实验步骤: 1、捕获TCP三次握手的过程,如下: 2、写出TCP三次握手的原理。 综合上图,设IP地址为192.168.1.254 的主机为A,IP地址为101.199.97.158 的主机为B。可以分析得出,A是客户,B为服务器。 第一次握手: A的TCP客户进程首先创建TCB,然后向B发出连接请求报文段,首部中的同步位SYN=1,同时初始序号seq=0; 第二次握手: B收到连接请求报文段,同意建立连接,向A发送确认。在确认报文段中把SYN和ACK 置为1,确认号ack=1,初始序号seq=0; 第三次握手: TCP客户进程收到B的确认后,向B给出确认。确认报文段的ACK置1,确认号ack=1,自己的序号为seq=1。 这时,A进入ESTABLISHED(已建立连接)状态。B收到A的确认后,也进入ESTABLISHED状态。 3、分析HTTP协议,写出工作过程。 首先捕获一个数据包,如下: 由上图可知通过三次握手连接成功,请求方式为GET;HTTP为 1.1本;浏览器类型是windows/6.2 IntelUS;Host行定义了目标所在的主机为239.255.255.250:1900\r\n。 原始框显示了分组中包含的数据的每个字节.从中可以观察最原始的传输数据.方框左边是十

六进制的数据,右边是ASCII码。 HTTP 协议定义了 Web 客户端(浏览器)如何向 Web 站点请求 Web 页以及 Web 服务器如何将 Web 页传送给客户机。具体来说,这是通过客户端发送 HTTP 请求报文和 HTTP 响应报文来实现的。当用户请求一个页面时(在浏览器中输入网址或者点击网页某一个链接),浏览器会向 Web 服务器发出对该页及其引用的相关对象的 HTTP 请求报文,服务器响应这些请求报文,生成 HTTP 响应报文,并将请求的对象附在 HTTP 响应报文后发送给客户端。由于网页文档的传输需要可靠性的保证,所以 HTTP 协议使用传输层的 TCP 协议作为载体。 4、分析SMTP协议,写出工作过程。 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转发出的电子邮件。 它使用由TCP提供的可靠的数据传输服务把邮件消息从发信人的邮件服务器传送到收信人的邮件服务器。跟大多数应用层协议一样,SMTP也存在两个端:在发信人的邮件服务器上执行的客户端和在收信人的邮件服务器上执行的服务器端。SMTP的客户端和服务器端同时运行在每个邮件服务器上。当一个邮件服务器在向其他邮件服务器发送邮件消息时,它是作为SMTP客户在运行。 5、分析FTP协议,写出工作过程。 FTP 是文件传输协议(File Transfer Protocol)的简称。 FTP 基于 TCP 协议,它通过两个 TCP 连接来传输一个文件,一个是控制连接,另一个是数据连接。相应的,在进行文件传输时,FTP 需要两个端口,分别用于控制连接端口(用于给服务器发送指令以及等待服务器响应)和数据传输端口(在客户机和服务器之间发送一个文件或目录列表)。 两种连接的建立都要经过一个“三次握手”的过程,同样,连接释放也要采用“四次握手”方法。控制连接在整个回话期间一直保持打开状态。数据连接是临时建立的,在文件传送结束后被关闭。 6、使用netstat 查看当前的TCP连接,简要说明。 如下:

常用网络协议原理之V24接口(doc 13页)(完美版)

V.24接口 目录 V.24接口协议属于OSI参考模型的物理层协议,它包括了接口电路的功能特性和过程特性。终端或计算机称为数据终端设备DTE(data teeminal equipment),调制解调器称为DCE (data circuit-terminating equipment)。 1 功能特性 ITU-T V.24建议定义了接口电路的名称和它们的功能,包括100系列接口线和200系列接线;前者适用于DTE与调制解调器(DCE)之间、DTE与串行自动呼叫/自动应答器(DCE)之间的接口电路;后者适用于DTE与并行自动呼叫器(DCE)之间的接口电路。 1.1 100系列接口线(与RS-232C对照) 100系列接口线是V.24基本的通用接口线,它分为四部分:地线、数据线、控制线、定时线,RS-232C和V.24100系列相近,如表1所示。 表1 V.24和RS 232对照 接口线类型V.24接口线 代码(针) RS 232 接口线 接口线 名称 方向 DTE→DCE DCE→DTE 地线101(1) 102(7) AA AB 保护地线 PG 信号地线 SG 数据线 103(2) 104(3) 118(14) 119(16) BA BB SBA SBB 发送数据 TXD 接收数据 RXD 辅助发送数据 辅助接收数据 √ √ √ √ 控制线 105(4) 106(5) 107(6) 108/1(20) 108/2(20) 125(22) 109(8) 110(21) 111(23) 112(18) 120(19) 121(13) 122(12) 140 141 142 CA CB CC 无 CD CE CF CG CH CI SCA SCB SCF RL LL TM 请求发送 RTS 允许发送 CTS 数据设备准备 DSR 把数据设备接至线路 数据终端准备 DTR 振铃指示(呼叫指示) CI(RI) 接收线路信号检测 DCD 信号质量检测 数据信号速率选择(DTE) 数据信号速率选择(DCE) 辅助请求发送 辅助允许发送 辅助接收线路信号检测 远地环回 本地环回 测试方式 √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ 定时线113(24) 114(15) 115(17) DA DB DD 发送信号码元定时(DTE) TXC 发送信号码元定时(DCE) TXC 接收信号码元定时(DCE) RXC √√ √

网络协议原理复习题

一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题末括号里)(本大题共20小题,每小题1分,总计20分) 1、构建计算机网络的目的是实现信息传输和(B )。 A.增加运算速度 B.资源共享 C.分布式运算 D.共享CPU 2、计算机网络实现资源共享,“资源”包括硬件资源、软件资源和(A )。 A.数据资源 B.数据库 C.存储空间 D.网络资源 3、以下是MAC 地址的是(B )。 A.0D-01-22-AA B.00-01-22-0A-AD-01 C.A0.01.00 D.139.216.000.012.002 4、CSMA/CD访问控制方法的协议标准是(C )。 A.IEEE802.1 B.IEEE802.2 C.IEEE802.3 D.IEEE802.4 5、在CSMA/CD的帧中,PDU的最小长度是(B )。 A.46字节 B.64字节 C.80字节 D.100字节 6、在CSMA/CD的帧中,帧校验序列采用的是(D )。 A.累加和校验 B.奇偶校验 C.余3码校验 D.循环冗余校验 7、A类IP地址能表示(D )。 A.126个网络地址 B.127个网络地址 C.128个网络地址 D.254个网络地址 8、ICMP协议位于TCP/IP参考模型的(B )。 A.网络接口层 B.互联网络层 C.传输层 D.应用层 9、IP协议提供了(A )。 A.无连接的数据报服务 B.面向连接的服务 C.虚电路服务 D.电路交换服务 10、IPv6的地址有(D )。 A.16位 B.32位 C.64位 D.128位 *11、以下关于IP数据报报头各域的描述中,错误的是(C )。 A.头长度域是以4个字节为计量单位的。 B.生存期域用于防止数据报在因特网中无休止的传递。 C.报头校验和域用于保证整个IP数据报的完整性。 D.版本域用4位字段指明当前使用的IP版本号。 *12、TCP连接的一方向对方发送关闭连接请求后(D )。 A.立即关闭连接 B.不再接收数据 C.等待接收对方的关闭连接请求 D.可以继续发送数据 13、一个主机上的多个进程使用TCP实体进行通信时(B )。 A.不能同时进行 B.可以使用不同的端口同时进行 C.可以使用同一端口同时进行 D.只有本机的进程间可以通信 14、TCP报文中的确认号字段为(B )。 A.2个字节 B.4个字节 C.8个字节 D.16个字节 15、UDP为上层提供服务是(B )。 A.可靠的 B.不可靠的 C.有序的 D.无重复的 *16、有关UDP协议的描述中正确的是(B )。

HTTP协议详解,你所不知道的

协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器 目前我们使用的是HTTP/1.1 版本 Web服务器,浏览器,代理服务器 当我们打开浏览器,在地址栏中输入URL,然后我们就看到了网页。原理是怎样的呢? 实际上我们输入URL后,我们的浏览器给Web服务器发送了一个Request, Web服务器接到Request后进行处理,生成相应的Response,然后发送给浏览器,浏览器解析Response中的HTML,这样我们就看到了网页,过程如下图所示 我们的Request 有可能是经过了代理服务器,最后才到达Web服务器的。 过程如下图所示

代理服务器就是网络信息的中转站,有什么功能呢? 1. 提高访问速度,大多数的代理服务器都有缓存功能。 2. 突破限制,也就是翻-墙了 3. 隐藏身份。 URL详解 URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下 schema://host[:port#]/path/.../[?query-string][#anchor] scheme 指定低层使用的协议(例如:http, https, ftp) host HTTP服务器的IP地址或者域名 port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明,例如https://www.sodocs.net/doc/d113523459.html,:8080/ path 访问资源的路径 query-string 发送给http服务器的数据 anchor- 锚 URL 的一个例子 https://www.sodocs.net/doc/d113523459.html,/sj/test/test.aspx?name=sviergn&x=true#stuff Schema: http host: https://www.sodocs.net/doc/d113523459.html, path: /sj/test Query String: name=sviergn&x=true Anchor: stuff 复制代码

1、HTTP协议分析

开放式课题 实验报告 实验名称:基于Wireshark软件的HTTP协议分析 学号: 姓名: 指导教师:宫婧 指导单位:理学院

目录 实验目的..........................................................错误!未定义书签。 1) 掌握Wireshark软件使用方法............. 错误!未定义书签。 2)理解HTTP协议工作原理..................................... 错误!未定义书签。 实验任务.................................... 错误!未定义书签。 1) 抓取数据包........................... 错误!未定义书签。 2)分析数据包........................... 错误!未定义书签。实验环境.............................. 错误!未定义书签。软件介绍 (2) 1) wireshark软件简介 (2) 2) wireshark软件的应用 (2) 3) wireshark软件的价值 (2) 4) wireshark软件的操作简介 (3) HTTP协议详解............................... 错误!未定义书签。 1) HTTP协议基础概念....................... 错误!未定义书签。 2) HTTP协议工作流程....................... 错误!未定义书签。 3) HTTP协议请求响应信息 (6) HTTP请求报文信息....................................6 HTTP响应报文信息....................................7HTTP数据包分析 (8) 1)网络接口层信息 (10) 2)网络层信息 (11) 3)传输层信息 (12) 4)应用层信息 (13) 总结........................................ 错误!未定义书签。参考文献.. (14)

网络协议复习详解详解

网络协议复习资料 第一章 1.计算机网络的概念(名词解释) 答:计算机网络就是通信线路和通信设备将分布在不同的地点的具有独立功能的多个计算机系统互相连接起来在网络软件的支持下实现彼此之间的数据通信和资源共享的系统。 2.Internet和internet的区别(简答题) 答:Internet:最大的互联网,以大写字母I开始的Internet则是一个专用名词,它指当前全球开放的,最大的,由众多网络相互连接而成的特定互联网络。采用tcp/ip协议簇。其前身是美国的APPANET。 Internet:网络的网络。以小写字母i开始的Internet是通用名词,泛指由多个计算机网络互连而成的虚拟网络。 3.网络互联的目的(简答题) 答:(1)将不同的网络或相同的网络用互连设备连接在一起形成一个更大的网络; (2)位增加网络性能及安全和管理方面的考虑将原来一个很大的网络划分为几个网段或逻辑上的子网; (3)实现异种网之间的服务和资源共享。 4.网络互连和网络互联的区别(简答题) 答:网络互连指网络的物理连接是底层的连接。 网络互联不仅是物理上的连接还是逻辑上的连接,互联使多个网络形成一个有机的整体实现跨网络的交互操作。 5.OSI参考模型和TCPIP参考模型的数据传输过程及详解(画图/简答题) 答:(只写OSI参考模型,TCPIP参考模型与OSI差不多,自行脑补。)这是一个OSI参考模型,它分为七层,分别为应用层、表示层、会话层、传输层、网络层、数据链路层和物理层。 它的数据传输过程图示如下:主机A向主机B发送数据DATA,从上至下层层封装后通过通信信道传输给主机B,再从下往上层层解封装后得到主机A要发送给B的信息。 封装过程:(1)经过应用层、表示层和会话层,用户信息被转换为上层数据; (2)上层数据到达传输层被加上TCP报头形成数据段; (3)随后数据段和目标IP地址一起被交给网络层,网络层给其添加IP报头,形成分组; (4)接下来网络层交分组交给数据链路层形成帧,帧头是LLC/MAC 报头,帧尾为FCS; (5)帧向下传递给物理层,物理层使用比特定时规则将数据编码成数

计算机网络原理 超文本传输协议(HTTP)

计算机网络原理超文本传输协议(HTTP) HTTP协议(Hypertext Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。从层次的角度看,HITP是面向事务的产应用层协议.它是万维网上能够可靠地交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础。 HTTP协议不仅保证计算机正确快速地传输超文本文档,还准确了传输文档中位置等。所以我们在浏览器中看到的网页地址都是以“http://”开头的。 由于HTTP协议是基于客户机/服务器模式。所以客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。 许多HTTP通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源的请求。最简单的情况可能是在用户代理和服务器之间通过一个单独的连接来完成。在Internet上,HTTP通讯通常发生在TCP/IP连接之上。但这并不预示着HTTP协议在Internet或其它网络的其它协议之上才能完成。HTTP只预示着一个可靠的传输。所以万维网的大致工作过程如图7-14所示。 图7-14 万维网的工作过程 在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。基于HTTP协议的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、释放连接。这就好像上面的例子,我们电话订货的全过程。 每个万维网网点都有一个服务器进程,它不断地监听TCP的端口80,以便发现是否有浏览器〔即客户进程)向它发出连接建立请求。一旦监听到连接建立请求并建立了TCP连接之后,浏览器就向服务器发出浏览某个页面的请求,服务器接着就返回所请求的页面作为响应。最后,TCP连接就被释放了。在浏览器和服务器之间的请求和响应的交互,必须按照规定的格式和遵循一定的规则。这些格式和规则就是超文本传送协议HTTP。 HTTP规定在HTTP客户与HTTP服务器之间的每次交互都由一个ASCll码串构成的请求和一个“类MIME(MIME-like)的响应组成。虽然大家都使用TCP连接进行传送,但标准并没有这样明确规定。 用户浏览页面的方法有两种。一种方法是在浏览器的地址窗口中键入所要找的页面的URL。另一种方法是在某一个页面中用鼠标点击一个可选部分,这时浏览器自动在因特网上找到所要链接的页面。

相关主题