http协议是无状态协议因此在客户端与服务器之间.docx
《http协议是无状态协议因此在客户端与服务器之间.docx》由会员分享,可在线阅读,更多相关《http协议是无状态协议因此在客户端与服务器之间.docx(11页珍藏版)》请在冰豆网上搜索。
![http协议是无状态协议因此在客户端与服务器之间.docx](https://file1.bdocx.com/fileroot1/2023-3/20/d101319e-d1e3-4e4d-aa29-24a892a3c534/d101319e-d1e3-4e4d-aa29-24a892a3c5341.gif)
http协议是无状态协议因此在客户端与服务器之间
竭诚为您提供优质文档/双击可除
http协议是无状态协议,因此在客户端与服务器之间().
篇一:
计算机网络作业八及解答
计算机网络作业八及解答
一、单项选择题
1.服务程序在windows环境下工作,并且允许该服务器程序的计算机也作为客户访问其他计算机上提供的服务。
那么,这种网络应用模型属于()。
a.主从式b.怼等式c.客户/服务器模式d.集中式
2.用户提出服务请求,网络将用户请求传送到服务器;服务器执行用户请求,完成所要求的操作并将结果送回用户,这种工作模式称为()。
a.c/s模式b.p2p模式c.csma/cd模式d.令牌环模式
3.以下关于:
p2p概念的描述中,错误的是()。
a.p2p是网络节点之间采取对等的方式直接交换信息的工作模式
b.p2p通信模式是指p2p网络中对等节点之间的直接通信能力
c.p2p网络是指与互联网并行建设的、由对等节点组成的物理网络
d.p2p实现技术是指为实现对等节点之间直接通信的功能和特定的应用所需要设计的协议、软件等
4.下面关于客户/服务器模型的描述,()存在错误。
i.客户端必须知道服务器的地址,而服务器则不需要知道客户端的地址
ii.客户端主要实现如何显示信息与收集用户的输入,而服务器主要实现数据的处理Ⅲ.浏览器的显示内容来自服务器
Ⅳ.客户端是请求方,即使连接建立后,服务器也不能主动发送数据
a.Ⅰ﹑iVb.iii、Ⅳc.只有iVd.只有iii
5.下列关于客户/服务器模型的说法中,不正确的是()。
a.服务器专用于完成某些服务,而客户机则是作为这些服务的使用者
b.客户机通常位于前端,服务器通常位于后端
c.客户机和服务器通过网络实现计算任务
d.客户机是面向任务的,服务器是面向用户的
6.【20xx年计算机联考真题】l
如果本地域名服务器无缓存,当采用递归方法解析另一网络某主机域名时,用户主机和本地域名服务器发送的域名请求条数分别为()。
a.1条,1条b.1条,多条
c.多条,1条d.多条,多条
7.下列说法错误的是()。
a.intemet上提供客户访问的主机一定要有域名
b.同一域名在不同时间可能解析出不同的ip地址
c.多个域名可以指向同一个主机ip地址
d.ip子网中主机可以由不同的域名服务器来维护其映射
8.域名系统dns的组成不包括()。
l
a.域名空间b.分布式数据库
c.域名服务器d.从内部ip地址到外部ip地址的翻译程序
9.dns是基于()模式的分布式系统。
a.c/sb.b/s
c.p2pd.以上均不正确
10.互联网中域名解析依赖于由域名服务器组成的逻辑树。
请问在域名解析过程中,主机
上请求域名解析的软件不需要知道以下哪些信息()。
i.本地域名服务器的ip
ii.本地域名服务器结节点的ip
iii.域名服务器树根节点的ip
a.i和iib.i和iii
c.ii和iiid.i、ii和iⅡ
11.【20xx年计算机联考考真题】
Ftp客户和服务器间传递Ftp命令时,使用的连接是()。
a.建立在tcp之上的控制连接b.建立在tcp之上的数据连接
c.建立在udp之上的控制连接d.建立在udp之上的数据连接
12.以下关于:
Ftp工作模型的描述中,错误的是()。
a.Ftp协议使用控制连接、数据连接来完成文件的传输
b.用于控制连接的tcp连接在服务器端使用的熟知端口号为21
c.用与控制连接的tcp连接在客户端使用的端口号为20
d.服务器端由控制进程、数据进程两个部分组成
13.一个Ftp用户,发送了一个list命令来获取服务器的文件列表,这时候服务器应该通过()端口来传输该列表。
a.21c.22b.20d.19
14.下列关于Ftp连接的叙述正确的是()。
a.控制连接先于数据连接被建立,并先于数据连接被释放
b.数据连接先于控制连接被建立,并先于控制连接被释放
c.控制连接先于数据连接被建立,并晚于数据连接被释放
d.数据连接先于控制连接被建立,并晚于控制连接被释放
15.Ftpclient发起对Ftpserver连的第一阶段是建立()。
a.传输连接b.数据连接
c.会话连接d.控制连接
16.控制信息是带外传送的协议是()。
a.httpb.smtp
c.Ftpd.pop
17.当一台计算机从Ftp服务器下载文件时,在该Ftp服务器上对数据进行封装的5个装换步骤是()。
a.比特,数据帧,数据报,数据段,数据
b.数据,数据段,数据报,数据帧,比特
c.数据包,数据段,数据,比特,数据帧
d.数据段,数据报,数据帧,比特,数据
18.文件传送协议(Ftp)的一个主要特征是()。
a.允许客户指明文件的类型但不允许指明文件的格式
b.不允许客户指明文件的类型但允许指明文件的格式
c.允许客户指明文件的类型与格式
d.不允许客户指明文件的类型与格式
19.下列关于电子邮件格式的说法错误的是()。
a.电子邮件内容包括邮件头与邮件体两部分
b.邮件头中发信人地址(From:
)、发送时间、收信人地址(to:
)以及邮件主题
(subject)
是由系统自动生成的。
c.邮件体就是实际要传送的信函内容
d.mime协议允许电子邮件系统传输文字、图像、语音与视频等多种信息
20.不能用于用户从邮件服务器接收电子邮件的协议是()。
a.httpb.pop3c.smtpd.imap
21.当电子邮件用户代理向邮件服务器发送邮件时,使用的是()协议:
当用户想从邮件服务器读取邮件时,可以使用()协议。
a.pppb.pop3c.p2pd.smtp
22.用户代理只能发送不能接收电子邮件,则可能是()地址错误。
a.pop3b.smtpc.httpdmail
23.smtp基于传输层的()协议,pop3基于传输层的()协议。
a.tcp,tcpb.tcp,udp
c.udp,udpd.udp,udp
24.从协议分析的角度,www服务的第一步操作是浏览器对服务器的()。
a.请求地址解析b.传输连接建立
c.请求域名解析d.会话连接建立
25.以下关于非持续连接http特点的描述中,错误的是()。
a.http支持非持续连接与持续连接
b.http/1.o版使用非持续连接,而http/1.1的默认模式为持续连接
c.非持续连接中对每一次请求/响应都要建立一次tcp连接
d.非持续连接中读取一个包含100个图片对象的web页面,需要打开和关闭10次
tcp连接
26.当使用鼠标单击一个万维网文档时,若该文档除了有文本外,还有三个gif图像。
ttp/1.0中需要建立()次udp连接和()次tcp连接。
a.0,4b.1,3c.0,2d.1,2
27.tcp和udp的一些端口保留给一些特定的应用使用。
为http协议保留的端口号为()。
a.tcp的80端islb.udp的80端口
c.tcp的25端口d.udp的25端口
28.当仅需web服务器对http报文进行响应,但并不需要返回请求对象时,http请求报文应该使用的方法是()。
a.getb.putc.postd.head
29.http是一个无状态协议,然而weh站点经常希望能够识别用户,这时需要用到
()。
a.wreb缓存b.cookie
c.条件getd.持久连接
30.下列关于cookie的说法中,错误的是()。
a.cookie存储在服务器端b.cookie是服务器产生的
c.cookie会威胁客户的隐私d.cookie的作用是跟踪用户的访问和状态
31.万维网上每个页面都有一个唯一的地址,这些地址统称为()。
a.ip地址b.域名地址
c.统一资源定位符d.www地址
32.要从某个已知的uRl获得一个万维网文档时,若该万维网服务器的ip地址开始时并不知道,需要用到的应用层协议有()。
a.Ftp和httpb.dns协议和Ftp
c.dns协议和httpd.telnet协议和http
33.下面()协议中,客户机与服务器之间采用面向无连接的协议进行通信。
a.Ftpb.smtpc.dnsd.http
二、综合应用题
1.下面列出的是使用tcp/ip协议通信的两台主机a和b传送邮件的对话过程,请根据这个对话回答问题。
a:
220beta.govsimplemailtransferserviceready
b:
heloalpha.edu
a:
250beta.gov
b:
mailFRom:
。
a:
250mailaccepted
b:
Rcptto:
a:
250recipientaccepted
b:
Rcptto:
a:
550nosuchuserhere
b=Rcptto:
brown@beta.gov
a:
250recipientaccepted
b:
data
a:
354startmailinput;endwith.b:
date:
Fri27may20xx14:
16:
21bj
b:
From:
smith@alpha.edu
b:
......
b:
......
b:
.
a:
250ok
b:
quit
a:
221beta.govserviceclosingtransmissionchannel.
问题:
1)邮件接收方和发送方机器的全名是什么发邮件的用户名是什么
2)发送方想把邮件发给几个用户他们各叫什么名字
3)哪些用户能收到该邮件
4)传送邮件所使用的传输层协议叫什么名字
5)为了接受邮件,接收方机器上等待连接的端口号是多少?
2.在浏览器中输入http:
//www.sina.com并按回车,直到新浪的网站首页显示在其浏览器中,请问:
在此过程中,按照tcp/ip参考模型,从应用层到网络层都用到了哪些协议
篇二:
如何理解http是无状态的协议
http是一个无状态协议,同一个会话的连续两个请求互相不了解,他们由最新实例化的环境进行解析,除了应用本身可能已经存储在全局对象中的所有信息外,该环境不保存与会话有关的任何信息。
自己的理解,在里:
每次提交服务器的页面没有任何关系,每次记录在页面的信息下次提交是记不住的,(除了应用本身可能已经存储在全局对象中的所有信息外)在.net里实际就是Viewstate,Viewstate是中保存页面信息的基本单位,应用时就是保存在控件隐藏域等中的数据
协议的状态是指下一次传输可以“记住”这次传输信息的能力.
http是不会为了下一次连接而维护这次连接所传输的信息的.
无状态是指,当浏览器发送请求给服务器的时候,服务器响应,但是同一个浏览器再发送请求给服务器的时候,他会响应,但是他不知道你就是刚才那个浏览器,简单地说,就是服务器不会去记得你,所以是无状态协议。
而dns是有状态协议。
http是一个属于应用层的面向对象的协议,http协议一共有五大特点,
1、支持客户/服务器模式;2、简单快速;3、灵活;4、无连接;5、无状态;“无状态”是http协议的主要特点之一,以下为
“无状态”的解释。
无状态:
是指
协议对于事务处理没有记忆能力。
缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
另一方面,在服务器不需要先前信息时它的应答就较快。
http是hypertexttransferprotocol的缩写,顾名思义,这个协议支持着超文本的传输。
那么什么是超文本呢?
说白了就是使用html编写的页面。
通常,我们使用客户端浏览器访问服务器的资源,最常见的uRl也是以html为后缀的文件。
因此,我们可以说超文本是网络上最主要的资源。
既然http协议的目的在于支持超文本的传输,更加广义一些就是支持资源的传输,那么在客户端浏览器向http服务器发送请求,继而http服务器将相应的资源发回给客户端这样一个过程中,无论对于客户端还是服务器,都没有必要记录这个过程,因为每一次请求和响应都是相对独立的,就好像你在自动售货机前投下硬币购买商品一样,谁都不会也不需要记住这样一个交易过程。
一般而言,一个uRl对应着唯一的超文本,而http服务器也绝对公平公正,不管你是michael,还是jordon,它都会根据接收到的uRl请求返回相同的超文本。
正是因为这样的唯一性,使得记录用户的行为状态变得毫无意义,所以,http协议被设计为无状态的连接协议符合它本身的需求。
然而,随着时间的推移,人们发现静态的html着实无聊而乏味,增加动态生成的内容才会令web应用程序变得更加有用。
于是乎,html的语法在不断膨胀,其中最重要的是增加了表单(Form);客户端也增加了诸如脚本处理、dom处理等功能;对于服务器,则相应的出现了cgi(commongatewayinterface)以处理包含表单提交在内的动态请求。
在这种客户端与服务器进行动态交互的web应用程序出现之后,http无状态的特性严重阻碍了这些应用程序的实现,毕竟交互是需要承前启后的,简单的购物车程序也要知道用户到底在
之前选择了什么商品。
于是,两种用于保持http连接状态的技术就应运而生了,一个是cookie,而另一个则是session。
cookie是通过客户端保持状态的解决方案。
从定义上来说,cookie就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息。
让我们说得更具体一些:
当用户使用浏览器访问一个支持cookie的网站的时候,用户会提供包括用户名在内的个人信息并且提交至服务器;接着,服务器在向客户端回传相应的超文本的同时也会发回这些个人信息,当然这些信息并不是存放在http响应体(Responsebody)中的,而是存放于http响应头(Responseheader);当客户端浏览器接收到来自服务器的响应之后,浏览器会将这些信息存放在一个统一的位置,对于windows操作系统而言,我们可以从:
[系统盘]:
\documentsandsettings\[用户名]\cookies目录中找到存储的cookie;自此,客户端再向服务器发送请求的时候,都会把相应的cookie再次发回至服务器。
而这次,cookie信息则存放在http请求头(Requestheader)了。
有了cookie这样的技术实现,服务器在接收到来自客户端浏览器的请求之后,就能够通过分析存放于请求头的cookie得到客户端特有的信息,从而动态生成与该客户端相对应的内容。
通常,我们可以从很多网站的登录界面中看到“请记住我”这样的选项,如果你勾选了它之后再登录,那么在下一次访问该网站的时候就不需要进行重复而繁琐的登录动作了,而这个功能就是通过cookie实现的。
与cookie相对的一个解决方案是session,它是通过服务器来保持状态的。
由于session这个词汇包含的语义很多,因此需要在这里明确一下session的含义。
首先,我们通常都会把session翻译成会话,因此我们可以把客户端浏览器与服务器之间一系列交互的动作称为一个session。
从这个语义出发,我们会提到session持续的时间,会提到在session过程中进行了什么操作等等;其次,session指的是服务器端为客户端所开辟的存储空间,在其中保存的信息就是用于保持状态。
从这个语义出发,我们则会提到往session中存放什么内容,如何根据键值从session中获取匹配的内容等。
要使用session,第一步当然是创建session了。
那么session在何时创建呢?
当然还是在服务器端程序运行的过程中创建的,不同语言实现的应用程序有不同创建session的方法,而在java中是通过调用httpservletRequest的
getsession方法(使用true作为参数)创建的。
在创建了session的同时,服务器会为该session生成唯一的sessionid,而这个sessionid在随后的请求中会被用来重新获得已经创建的session;在session被创建之后,就可以调用session相关的方法往session中增加内容了,而这些内容只会保存在服务器中,发到客户端的只有sessionid;当客户端再次发送请求的时候,会将这个sessionid带上,服务器接受到请求之后就会依据sessionid找到相应的session,从而再次使用之。
正式这样一个过程,用户的状态也就得以保持了。
有关session的内容还比较多,在以后的post中,我还将继续讲述。
综上所述,http本身是一个无状态的连接协议,为了支持客户端与服务器之间的交互,我们就需要通过不同的技术为交互存储状态,而这些不同的技术就是cookie和session了
篇三:
http协议——请求和响应
http协议——请求和响应
http(hypertexttransferprotocol,超文本传输)协议:
是tcp/ip协议的一个应用层协议,定义客户端和服务器通讯的格式。
协议版本:
有http/1.0、http/1.1等版本
区别在于http/1.0版本,与服务器建立连接后马上断开连接,在一个连接上只能获取一个web资源,http/1.1版本,与服务器建立连接后可以在一个连接上获取多个web资源。
http/1.0
http/1.1
1、cmd进入命令行;
2、telnetip端口;
3、ctrl+](回显功能);
4、向服务器发送请求(指定请求方式、请求路径和协议版本号),服务器回应请求并断开连接;
(图1-1)
说明:
1)http请求分为四个部分(请求行、请求头信息、空行和请求实体)
①请求行(请求方式、请求路径和协议版本)
注:
请求方式(get/post/head/put/delete/tRace/options)
get请求方式(如uRl请求,超链接请求和表单缺省请求等):
在uRl请求地址后附带参数,通常数据容量不能超过1k;
post请求方式:
可以在请求实体中向服务器发送数据,数据量不限大小。
②请求头信息(key:
value)
accept:
text/html,image/*——>通知服务器客户端所支持的数据类型accept-charset:
iso-8859-1——>通知服务器客户端所支持的编码方式accept-encoding:
gzip,compress——>通知服务器客户端所支持的数据压缩格式
accept-language:
en-us,zh-cn——>通知服务器客户端的语言环境
host:
——>通知服务器客户端请求的主机地址
if-modified-since:
tue11jul20xx21:
02:
37gmt——>通知服务器资源的缓存时间
Referer:
/index.html——>通知服务器客户端从哪个资源访问服务器(用于防盗链)
user-agent:
mozilla/4.0(compatible;msie5.5windowsnt5.0)——>通知服务器客户端的软件环境
cookie:
——>客户端向服务器请求资源时可以带的数据
connection:
close/keep-alive客户端请求完毕之后需要断开连接(close);保持连接(keep-alive)
date:
tue11jul20xx21:
02:
37gmt客户端请求资源的当前时间
③空行,请求头和请求实体之间用一个空行隔开,没有请求实体时,空行仍不能
省
④请求实体(可选):
发送信息
2)http响应也分为四个部分(响应行、响应头信息、空行和响应实体)
①响应行(协议版本、状态码和状态文字)
②响应头信息(key:
value)
location:
——>配合302通知客户端重定向的资源地址server:
apachetomcat——>通知客户端服务器的类型
content-encoding:
gzip——>通知客户端数据的压缩格式
content-length:
80——>通知客户端回送数据的长度
content-language:
zh-cn——>通知客户端回送数据的语言环境
content-type:
text/html;charset=gbk2312——>通知客户端回送数据的类型
last-modified:
tue11jul20xx21:
02:
37gmt——>通知客户端资源最后的缓存时间
Refresh:
1;url=/retype/zoom/8011182a7fd5360cbb1adb09pn=3&x=0&y=0&raww=893&rawh=293&o=png_6_0_0_0_0_0_0_892.979_1262.879&type=pic&aimh=157.491601343785&md5sum=a95b43891e5b9f1b505a6f052588c91a&sign=86503df351&zoom=&png=81286-123355&jpg=0-0"target="_blank">点此查看
tRace请求(查看路由器或交换机是否对请求信息有修改)
options请求(返回服务器可用的请求方法)
二:
状态码和状态文字
200服务器成功返回网页
301/2永久/临时重定向
304未修改(取缓存)
307重定向链中保持原来数据不丢失(post请求方式)
403服务器拒绝客户端的访问
404请求资源找不到
500服务器内部错误
503服务器暂时不可用