各服务器工作原理.docx
- 文档编号:23844540
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:13
- 大小:52.85KB
各服务器工作原理.docx
《各服务器工作原理.docx》由会员分享,可在线阅读,更多相关《各服务器工作原理.docx(13页珍藏版)》请在冰豆网上搜索。
各服务器工作原理
FTP(文件传输协议)服务器工作原理
FTP(文件传输协议)工作原理
目前在网络上,如果你想把文件和其他人共享。
最方便的办法莫过于将文件放FTP服务器上,然后其他人通过FTP客户端程序来下载所需要的文件。
1、FTP架构
如同其他的很多通讯协议,FTP通讯协议也采用客户机/服务器(Client/Server)架构。
用户可以通过各种不同的FTP客户端程序,借助FTP协议,来连接FTP服务器,以上传或者下载文件。
2、FTP通讯端口知识 FTP服务器和客户端要进行文件传输,就需要通过端口来进行。
FTP协议需要的端口一般包括两种:
控制链路--------TCP端口21 所有你发往FTP服务器的命令和服务器反馈的指令都是通过服务器上的21端口传送的。
数据链路--------TCP端口20 数据链路主要是用来传送数据的,比如客户端上传、下载内容,以及列目录显示的内容等。
3、FTP连接的两种方式 在数据链路的建立上,FTP Server 为了适应不同的网络环境,支持两种连接模式:
主动模式(Port)和被动模式(Pasv)。
其实这两种连接模式主要是针对数据链路进行的,和控制链路无关。
主动模式 主动模式是这样工作的:
客户端把自己的高位端口和服务器端口21建立控制链路。
所有的控制命令比如Is或get都是通过这条链路传送的。
当客户端需要服务器端给它传送数据时,客户端会发消息给服务器端,告诉自己的位置和打开的高位端口(一般大于1024的端口都就叫高位端口),等候服务器的20端口和客户端打开的端口进行连接,从而进行数据的传输。
当服务器端收到信息后,就会和客户端打开的端口连接,这样数据链路就建立起来了。
采用主动模式连接服务器的客户端,当它位于NAT或者防火墙的保护之后时会碰到连接失败的问题。
这是因为当防火墙接到服务器发送过来的信息的时候,并不知道应该发送给内部网络中的哪一台客户端造成的。
被动模式 被动模式是这样工作的:
当客户端发送数据请求后,服务器也会发信息给客户端,告诉客户端:
服务器在本地打开了一个高位端口P,你现在来连接我吧。
当客户端收到该信息时,就会去连接服务器端的端口P,连接成功后,数据链路就建立了。
Web服务器工作原理:
一个 Web 服务器也被称为 HTTP 服务器,它通过 HTTP 协议与客户端通信。
这个客户端通常指的是 Web 浏览器。
Web服务器的工作原理简单的可以归纳为:
客户机连接服务器,客户端向服务器发送请求,服务器向客户机发送应答,客户机与服务器断开。
一个简单的事务处理事件就是这样实现的,看起来不简单,做起来其实也是挺简单的,呵呵……需要注意的是客户机与服务器直接的通信是非连接的,也就是当服务器发送了应答后就与客户机断开连接,等待下一次请求。
HTTP 是一种让 Web 服务器与浏览器(客户端)通过 Internet 发送与接收数据的协议。
它是一个请求、响应协议--客户端发出一个请求,服务器响应这个请求。
HTTP 运用可靠的 TCP 连接,通常用的 TCP80 端口。
在 HTTP 中,客户端总是通过建立一个连接与发送一个 HTTP 请求来发起一个事务。
服务器不能主动去与客户端联系,也不能给客户端发出一个回叫连接。
客户端与服务器端都可以提前中断一个连接。
例如,当用一个浏览器下载一个文件时,你可以通过点击“停止”键来中断文件的下载,关闭与服务器的 HTTP 连接。
http协议使Web服务器和浏览器可以通过Web交换数据。
它是一种请求/响应协议,即服务器等待并响应客户方请求。
HTTP不维护与客户方的连接,它使用可靠的TCP连接,通常采用TCP80端口。
客户/服务器传输过程可分为四个基一步骤:
1) 浏览器与服务器建立连接;
2) 浏览器向服务器请求文档;
3) 服务器响应浏览器请求;
4) 断开连接。
HTTP是一种无状态协议,它不维护连接的状态信息。
1. 客户请求
客户请求包含以下信息:
请求方法
请求头
请求数据
(1)请求方法是用于特定URL或Web页面的程序HTTP请求方法:
方法 描述
GET 请求指定的文档
HEAD 仅请求文档头
POST 请求服务器接收指定文档作为可执行的信息
PUT 用从客户端传送的数据取代指定文档中的内容
DELETE 请求服务器删除指定页面
OPTIONS 允许客户端查看服务器的性能
TRACE 用于测试—允许客户端查看消息回收过程
(2)头信息是可选项,它用于向服务器提供客户端的其他信息
如果客户采用某种方法获取数据(如POST),数据就放在头(header)之后;否则客户机等待
从服务器传来的响应。
2. 服务器响应
服务器响应包括以下关键部分:
状态码
响应头
响应数据
HTTP定义了多组返回给浏览器的状态码。
响应头向客户方提供服务器和/或请求文档的信息HTTP响应头:
方法 描述
Server Web服务器信息
Date 当前日期/时间
LastModified 请求文档最近修改时间
Expires 请求文档过期时间
Content-length 数据长度(字节)
Content-type 数据MIME类型
WWW-authenticate 用于通知客户方需要的认证信息(如用户名、口令等)
如果有客户方请求的数据,数据放在响应头之后,否则服务器断开连接。
3.通信实例:
1. 请求
在本例中,浏览器请求文档的URL为http:
//
GET/index.htmlHTTP/1.1
Accept:
text/plain
Accept:
text/html
User-Agent:
Mozilla/4.5(WinNT)
(blankline)
(DATA)
浏览器使用Get方法请求文档/index.html。
浏览器声明它只能接收纯文本和html数据,它使用Mozilla/4.5(Netscape)引擎。
2. 响应
服务响应包括状态码、一些头信息(以空行结束)及请求数据,假设数据存在,则响应信息如下:
HTTP/1.1200OK
DateSunday,15-Jul-0512:
18:
33GMT
Server:
Apache/1.3.6
MIME-version:
1.0
Content-type:
test/html
Last-modified:
Thursday,02-Jun-0520:
43:
56GMT
Content-length:
1432
(blankline)
(此行开始为数据部分,与前面头部要空一行)
......
假设文档未找到,响应信息如下
HTTP/1.1404NOTFOUND
DateSunday,15-Jul-0512:
19:
33GMT
Server:
Apache/1.3.6
Wins服务器工作原理:
WINS服务器为客户端提供名字注册、更新、释放和转换服务,下面就详细介绍这四个基本服务的工作原理:
1.名字注册
名字注册就是客户端从WINS服务器获得信息的过程,在WINS服务中,名字注册是动态的。
当一个客户端启动时,它向所配置的WINS服务器发送一个名字注册信息(包括了客户机的IP地址和计算机名),如果WINS服务器正在运行,并且没有没有其它客户计算机注册了相同的名字,服务器就向客户端计算机返还一个成功注册的消息(包括了名字注册的存活期----TTL)。
与IP地址一样,每个计算机都要求有唯一的计算机名,否则就无法通信。
如果名字已经被其它计算机注册了,WINS服务将会验证该名字是否正在使用。
如果该名字正在使用则注册失败(发回一个负确认的信息),否则就可以继续注册。
2.名字更新
因为客户端被分配了一个TTL(存活期),所有它的注册也有一定的期限,过了这个期限,WINS服务器将从数据库中删除这个名字的注册信息。
它的过程是这样的:
(1).在过了存活期的1/8后,客户端开始不断试图更新它的名字注册,如果收到不到任何响应,WINS客户端每过2分钟重复更新浓度,直到存活期过了一半。
(2).当存活期过了一半时,WINS客户端将尝试与次选WINS服务器更新它的租约,它的过程与首选WINS服务器一样。
(3).如果时间过了一半后仍然没有成功的话,该客户端又回到它的首选WINS服务器了。
在该过程中,不管是与首选还是次选WINS服务器,一旦名字注册成功之后,该WINS客户端的名字注册将被提供一个新的TTL值。
3.名字释放
在客户端的正常关机过程中,WINS客户端向WINS服务器发送一个名字释放的请求,以请求释放其映射在WINS服务器数据库中的IP地址和NetBIOS名字。
收到释放请求后,WINS服务器验证一下在它的数据库中是否有该IP地址和NetBIOS名,如果有就可以正常释放了,否则就会出现错误(WINS服务器向WINS客户端发送一个负响应)。
如果计算机没有正常关闭,WINS服务器将不知道其名字已经释放了,则该名字将不会失效,直到WINS名字注册记录过期。
4.名字解析
当客户端在许多网络操作中需要WINS服务器解析名字,例如当使用网络上其它计算机的共享文件时,为了得到共享文件,用户需要指定两件事:
系统名和共享名,而系统名就需要转换成IP地址。
名字解析过程是这样的:
(1).当客户端计算机想要转换一个名字时,它首先检查本地NetBIOS名字缓存器。
(2).如果名字不在本地NetBIOS名字缓存器中,便发送一个名字查询到首选WINS服务器(每隔15秒发送一次,共发三次),如果请求失败,则向次选WINS发送同样的请求。
(3).如果都失败了,那么名字解析可以通过其它途径来转换(例如本地广播、lmhosts文件和hosts文件、或者DNS来进行名字解析。
Dns服务器工作原理:
DNS服务器工作原理
DNS分为Client和Server,Client扮演发问的角色,也就是问Server一个DomainName,而Server必须要回答此DomainName的真正IP地址。
而当地的DNS先会查自己的资料库。
如果自己的资料库没有,则会往该DNS上所设的DNS询问,依此得到答案之后,将收到的答案存起来,并回答客户。
DNS服务器会根据不同的授权区(Zone),记录所属该网域下的各名称资料,这个资料包括网域下的次网域名称及主机名称。
在每一个名称服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录快取缓存区中,这样当下一次还有另外一个客户端到次服务器上去查询相同的名称时,服务器就不用在到别台主机上去寻找,而直接可以从缓存区中找到该笔名称记录资料,传回给客户端,加速客户端对名称查询的速度。
例如:
当DNS客户端向指定的DNS服务器查询网际网路上的某一台主机名称DNS服务器会在该资料库中找寻用户所指定的名称如果没有,该服务器会先在自己的快取缓存区中查询有无该笔纪录,如果找到该笔名称记录后,会从DNS服务器直接将所对应到的IP地址传回给客户端,如果名称服务器在资料记录查不到且快取缓存区中也没有时,服务器首先会才会向别的名称服务器查询所要的名称。
例如DNS客户端向指定的DNS服务器查询网际网路上某台主机名称,当DNS服务器在该资料记录找不到用户所指定的名称时,会转向该服务器的快取缓存区找寻是否有该资料,当快取缓存区也找不到时,会向最接近的名称服务器去要求帮忙找寻该名称的IP地址,在另一台服务器上也有相同的动作的查询,当查询到后会回复原本要求查询的服务器,该DNS服务器在接收到另一台DNS服务器查询的结果后,先将所查询到的主机名称及对应IP地址记录到快取缓存区中,最后在将所查询到的结果回复给客户端。
两种真正DNS的查询模式
有两种询问原理,分为Recursive和Interactive两种。
前者是由DNS代理去问,问的方法是用Interactive方式,后者是由本机直接做Interactive式的询问。
由上例可以看出,我们一般查询名称的过程中,实际上这两种查询模式都是交互存在着的。
递归式(Recursive):
DNS客户端向DNSServer的查询模式,这种方式是将要查询的封包送出去问,就等待正确名称的正确响应,这种方式只处理响应回来的封包是否是正确响应或是说是找不到该名称的错误讯息。
交谈式(Interactive):
DNSServer间的查询模式,由Client端或是DNSServer上所发出去问,这种方式送封包出去问,所响应回来的资料不一定是最后正确的名称位置,但也不是如上所说的响应回来是错误讯息,他响应回来告诉你最接近的IP位置,然后再到此最接近的IP上去寻找所要解析的名称,反复动作直到找到正确位置。
Client就像点菜的waiter,想吃什么跟他点,到底有没的吃就要看大厨server的能力了,当然还要看库存,巧妇难做无米之炊嘛!
这里的“米”就是本级DNS已有储存资料。
没有所要的就得向上级汇报,逐级申请,找到为止。
用不完的保存下来,以便其它顾客有相同需求。
这就是DNS工作的整个流程。
DHCP服务器工作原理:
dhcp服务器的工作过程:
一、客户机请求IP(DHCPdiscover)
二、服务器响应(DHCPoffer)
三、客户机选择IP(DHCPrequest)
四、服务器确认IP租约(DHCPack/DHCPnak)
以下为详细过程:
一、客户机请求IP(DHCPdiscover)
当客户机设置使用DHCP协议获取IP时,客户机将使用0.0.0.0作为源地址,使用255.255.255.255作为目标地
址来广播请求IP地址的信息。
广播信息中包含DHCP客户机的MAC地址和计算机名。
二、服务器响应(DHCPoffer)
由于是广播所以同一网段内的计算机都会“听”到!
DHCP服务器当然也不例外。
DHCP服务器“听”到后,它首先
会针对该次请求的信息所携带的MAC地址与DHCP服务器本身的设置值进行对比。
如果DHCP服务器的设置中有针
对该MAC提供的静态IP(每次都给一个固定IP),则提供给客户机相关的固定IP与相关的网络参数;如果该
信息的MAC并不在DHCP服务器的设置中,则DHCP主机会选取当前网段内没有使用的IP给客户机使用!
当然这里
的响应,服务器也是采用255.255.255.255的广播,因为此时客户机还没IP哦~
这里有几个要注意的地方:
1、如果同一网段内有多台DHCP服务器,那么客户机是看谁先响应,谁先响应就选择谁。
2、在DHCP主机发给客户端的信息中,会附带一个“租约期限”信息,用来告诉客户机这个IP能用多久!
三、客户机选择IP(DHCPrequest)
当客户机接收到响应的信息之后,首先会以ARP在网段内广播(ARP使用全1的广播MAC地址),以确定来自
DHCP服务器的IP没被占用!
如果该IP被占用,那么客户机对于这次的DHCP信息将不接受,而是再次发送DHCP
请求。
若该IP没有被占用,客户机则接受DHCP服务器所给的网络参数。
同时,客户机发出一个广播,通知所挑
选的DHCP服务器(有多台DHCP服务器存在时),当然此时也是通知其它的DHCP服务器,让这些DHCP服务器将
本预分配给客户机的IP释放掉!
(这里的概念一定要弄清楚!
)注意,这一步客户机并还没有应用从DHCP服务
器获取到IP哦!
所以这一步源地址还是0.0.0.0,目标地址是255.255.255.255。
四、服务器确认IP租约(DHCPack/DHCPnak)
终于到最后一步了,DHCP服务器收到客户机选择IP的广播后,则以DHCPack消息的形式向客户机广播成功的确
认。
DHCPack包含:
IP、掩码、网关、DNS等。
此时,当客户机收到DHCP服务器的DHCPack消息后,客户机便使用了DHCP服务器所给的网络参数!
注意事项:
1、当我们的客户机无法找到DHCP服务器时,它将从TCP/IP的B类网段169.254.0.0中挑选一个IP地址作为自
己的IP地址,而继续每隔5分钟尝试与DHCP服务器进行通信。
(这里的这个B类地址被称为APIPA,即自动分
配私有IP地址!
)
2、IP租约的更新,当客户机重新启动或租期达50%时,客户机不会从第一步(DHCPdiscover)开始重新申请IP
,而是从第三步(DHCPrequest)开始哦~只有当租期达87.5%时,它才从第一步(DHCPdiscover)开始重新申
请!
邮件服务器工作原理:
在Internet上将一段文本信息从一台计算机传送到另一台计算机上,可通过两种协议来完成,即SMTP(SimpleMailTransferProtocol,简单邮件传输协议)和POP3(PostOfficeProtocol,邮局协议3)。
SMTP是Internet协议集中的邮件标准。
在Internet上能够接收电子邮件的服务器都有SMTP。
电子邮件在发送前,发件方的SMTP服务器与接收方的SMTP服务器联系,确认接收方准备好了,则开始邮件传递;若没有准备好,发送服务器便会等待,并在一段时间后继续与接收方邮件服务器联系。
这种方式在Internet上称为“存储——转发”方式。
POP3可允许E-mail客户向某一SMTP服务器发送电子邮件,另外,也可以接收来自SMTP服务器的电子邮件。
换句话说,电子邮件在客户PC机与服务提供商之间的传递是通过P0P3来完成的,而电子邮件在Internet上的传递则是通过SMTP来实现。
电子邮件的发送和接收
电子邮件在Internet上发送和接收的原理可以很形象地用我们日常生活中邮寄包裹来形容:
当我们要寄一个包裹的时候,我们首先要找到任何一个有这项业务的邮局,在填写完收件人姓名、地址等等之后包裹就寄出而到了收件人所在地的邮局,那么对方取包裹的时候就必须去这个邮局才能取出。
同样的,当我们发送电子邮件的时候,这封邮件是由邮件发送服务器(任何一个都可以)发出,并根据收信人的地址判断对方的邮件接收服务器而将这封信发送到该服务器上,收信人要收取邮件也只能访问这个服务器才能够完成。
电子邮件地址的构成
电子邮件地址的格式是“USER@SERVER.COM”,由三部分组成。
第一部分“USER”代表用户信箱的帐号,对于同一个邮件接收服务器来说,这个帐号必须是唯一的;第二部分“@”是分隔符;第三部分“SERVER.COM”是用户信箱的邮件接收服务器域名,用以标志其所在的位置。
电子邮件的工作原理
电子邮件与普通邮件有类似的地方,发信者注明收件人的姓名与地址(即邮件地址),发送方服务器把邮件传到收件方服务器,收件方服务器再把邮件发到收件人的邮箱中。
如下图所示:
更进一步的解释涉及到以下几个概念:
MUA--MailUserAgent,邮件用户代理,帮助用户读写邮件;
MTA--MailTransportAgent,邮件传输代理,负责把邮件由一个服务器传到另一个服务
器或邮件投递代理;
MDA--MailDeliveryAgent,邮件投递代理,把邮件放到用户的邮箱里。
整个邮件传输过程如下:
目前使用的SMTP协议是存储转发协议,意味着它允许邮件通过一系列的服务器发送到最终目的地。
服务器在一个队列中存储到达的邮件,等待发送到下一个目的地。
下一个目的地可以是本地用户,或者是另一个邮件服务器,如下图所示。
如果下游的服务器暂时不可用,MTA就暂时在队列中保存信件,并在以后尝试发送。
与邮件服务器产品有关的主要有以下6个:
1)SMTP协议
SMTP协议是简单的邮件传输协议(SimpleMailTransferProtocol)的缩写。
这是最早出现的,也是被普遍使用的最基本Internet邮件服务协议。
2)POP3协议
POP协议是邮局协议(PostOfficeProtocol)的缩写,是一种允许用户从邮件服务器收发邮件的协议。
与SMTP协议相结合,POP3是目前最常用的电子邮件服务协议。
3)IMAP4协议
IMAP协议是Internet消息访问协议(InternetMessageAccessProtocol)的缩写,现在常用的是版本4,它为用户提供了有选择的从邮件服务器接收邮件的功能、基于服务器的信息处理功能和共享信箱功能。
IMAP4在用户登录到邮件服务器以后,允许采取多段处理方式查询邮件。
首先,用户可以仅读取电子邮箱中的邮件信头(Messageheader);然后,用户可以选择下载指定的邮件或者全部邮件。
IMAP4在邮件服务器一端为用户保留邮件。
4)HTTP协议和HTML语言
HTTP协议是超级文本传输协议(HyperTextTransferProtocol)的缩写,支持这个协议的邮件服务器,可以提供通过Web的电子邮件收发服务。
5)MIME协议
MIME是多用途Internet邮件扩展(MultipurposeInternetMailExtensions)协议的缩写。
作为对SMTP协议的扩充,MIME规定了通过SMTP协议传输非文本电子邮件附件的标准。
目前,MIME的用途早已经超越了收发电子邮件的范围,成为在Internet上传输多媒体信息的基本协议之一。
6)LDAP协议
LDAP协议是轻量目录访问协议(LightweightDirectoryAccessProtocol)的缩写。
通过将相关的内容存放在统一的目录之下,目录服务为用户提供了基于客户/服务器工作方式的信息查询手段。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 服务器 工作 原理
![提示](https://static.bdocx.com/images/bang_tan.gif)