当前位置:文档之家› 应用层功能及协议

应用层功能及协议

3 应用层功能及协议表示层表示层有三个主要功能:对应用层数据进行编码与转换,从而确保目的设备可以通过适当的应用程序理解源设备上的数据;采用可被目的设备解压缩的方式对数据进行压缩;对传输数据进行加密,并在目的设备上对数据解密。

会话层会话层,顾名思义,它就是用于在源应用程序和目的应用程序之间创建并维持对话。

会话层用于处理信息交换,发起对话并使其处于活动状态,并在对话中断或长时间处于空闲状态时重启会话。

常见TCP/IP 协议包括:域名服务协议(DNS),用于将Internet 域名解析为IP 地址;超文本传输协议(HTTP),用于传输构成万维网网页的文件;简单传输协议(SMTP),用于传输及其附件信息;Telnet 协议(一种终端模拟协议),提供对服务器和网络设备的远程访问;文件传输协议(FTP),用于系统间的文件交互传输。

P2P在点对点网络中,两台或两台以上的计算机通过网络互连,它们共享资源(如打印机和文件)时可以不借助专用服务器。

每台接入的终端设备(称为“点”)既可以作为服务器,也可以作为客户机。

拥有两台互连电脑、一台共享打印机的家庭简易网络就是一种典型的点对点网络。

端口号传输层使用某种编址方案,称为端口号。

端口号识别应用程序及应用层服务(即源数据和目的数据)。

服务器程序通常使用客户机已知的预定义端口号。

当我们研究不同的TCP/IP 应用层协议和服务时,我们将参考与这些服务相关联的TCP 和UDP 端口号。

这些服务包括:域名系统(DNS)—TCP/UDP 端口53超文本传输协议(HTTP) —TCP 端口80简单传输协议(SMTP)—TCP 端口25邮局协议(POP)—TCP 端口110Telnet —TCP 端口23动态主机配置协议—UDP 端口67 和端口68文件传输协议(FTP)—TCP 端口20 和端口21DNS在数据网络中,设备以数字IP 地址标记,从而可以参与收发消息。

但是人们很难记住这些数字地址。

于是,人们创建了可以将数字地址转换为简单易记名称的域名系统。

我们通常在配置网络设备时提供一个或者多个DNS 服务器地址,DNS 客户端可以使用该地址进行域名解析。

Internet 服务供应商往往会为DNS 服务器提供地址。

当用户的应用程序请求通过域名连入远程设备时,DNS 客户端将向某一域名服务器请求查询,获得域名解析后的数字地址。

用户还可以使用操作系统中名为nslookup的实用程序手动查询域名服务器,来解析给定的主机名。

该实用程序也可以用于检修域名解析的故障,以及验证域名服务器的当前状态。

在图中,输入nslookup 后,即显示为主机配置的默认DNS 服务器。

DNS 服务器使用域名守护程序(通常简称为named 守护程序)提供域名解析。

当客户端提出查询请求时,服务器的named 守护进程将首先检索自己的记录,以查看是否能够自行解析域名。

如果服务器不能通过自身存储的记录解析域名,它将连接其它服务器对该域名进行解析。

当前服务器将该信息返回至源请求服务器,并将匹配域名的数字地址临时保存在缓存中。

因此,当再次请求解析相同的域名时,第一台服务器就可以直接调用域名缓存中的地址。

通过缓存机制,不但降低了DNS 查询数据网络的流量,也减少了上层服务器工作的负载。

在安装Windows 系统的个人电脑中,DNS 客户端服务可以预先在内存中存储已解析的域名,从而优化DNS 域名解析性能。

在Windows XP 或者Windows 2000 操作系统中,输入ipconfig /displaydns命令可以显示所有DNS 缓存条目。

域名系统采用分级系统创建域名数据库,从而提供域名解析服务。

该层级模型的外观类似一棵倒置的树,枝叶在下,而树根在上。

位于最高层的根域名服务器维护最高级域名服务器记录,而后者维护下一级域名服务器的记录,以此类推。

不同的顶级域有不同的含义,分别代表着组织类型或起源国家/地区。

请参见如下顶级域名实例:.au —澳大利亚.co —哥伦比亚. —商业或行业.jp —日本.org —非营利组织顶级域名下层为二级域名,二级域名下层还有其它更低级的域名。

每个域名的组XX是按照层级树由上而下的顺序排列。

服务及HTTP当在web 浏览器中输入一个Web 地址(或者URL 地址)时,Web 浏览器将通过HTTP 协议建立与服务器上的Web 服务之间的连接。

一提到Web 地址,大多数人往往想到统一资源定位器(URL) 以及统一资源标识符(URI)。

浏览器是如何打开网页的我们采用如下URL 地址:.cisco./web-server.htm。

首先,浏览器对URL 地址的三个组成部分进行分析:1. http(协议或方案)2. .cisco.(服务器名称)3. web-server.htm(所要请求的文件名称)然后,浏览器将通过域名服务器将.cisco. 转换成到数字地址,用它连接到该服务器。

根据HTTP 协议的要求,浏览器向该服务器发送GET 请求,并要求访问web-server.htm 文件。

被请求服务器随即将被请求网页的HTML 代码发送给浏览器。

最后,浏览器解读HTML 代码并将网页内容显示到浏览器窗口中。

HTTP在万维网中,HTTP 是一种数据传输协议。

同时,它还是最常用的应用程序协议。

GET 是一种客户端数据请求消息。

Web 浏览器向Web 服务器发送请求页面的GET 消息。

如图所示,一旦收到GET 请求,服务器将立即反馈一条状态行(如HTTP/1.1 200 OK)以及一条消息,消息内容可以是被请求的文件,也可以是报错消息,或者是其它信息。

POST 和PUT消息用于向Web 服务器发送上传数据的请求。

例如,当用户在Web 页面的表单中输入数据时,一条包含数据的POST 消息将被发送到服务器上。

PUT 用于向Web 服务器上传资源或内容。

SMTP/POP电子客户端可以使用POP 协议从电子服务器接收电子消息。

从客户端或者从服务器中发送的电子消息格式以及命令字符串必须符合SMTP 协议的要求。

用户代理(MUA)传送代理(MTA)分发代理(MDA)MDA还可以解决最终分发问题,如病毒扫描、垃圾过滤以及送达回执处理。

FTP文件传输协议(FTP) 也是一种常用的应用层协议。

FTP 用于客户端和服务器之间的文件传输。

FTP客户端是一种在计算机上运行的应用程序。

通过运行FTP 守护程序(FTPd),FTP 客户端可以从服务器中收发文件。

为了保障文件的成功传输,FTP要求在客户端和服务器之间建立两条连接:一条是命令和回复连接,另一条是实际文件传输连接。

客户端在TCP 的21 号端口建立第一条连接。

该连接由客户端命令和服务器回复组成,用于管理传输流量;第二条连接建立在TCP 的20 号端口。

每当有文件需要传输时建立该连接,用于实际文件传输。

在两个方向上,都可以进行文件传输。

即客户端可以从服务器中下载(取)文件,也可以向服务器中上传(放)文件。

DHCP动态主机配置协议(DHCP) 服务,网络中的设备可以从DHCP 服务器中获取IP 地址和其它信息。

该服务自动分配IP 地址、子网掩码、网关以及其它IP 网络参数。

如果客户端请求的IP 地址(或者服务器提供的IP 地址)仍然有效,服务器将返回DHCP ACK 消息以确认地址分配。

如果请求的地址不再有效(可能由于超时或被其他用户使用),则所选服务器将发送DHCP NAK (否定)信息。

一旦返回DHCP NAK 消息,应重新启动选择进程,并重新发送新的DHCP 发现消息。

客户端获得地址后,应在租期结束前发送DHCP 请求消息进行续期。

(SMB) 服务器消息块是一种客户端/服务器文件共享协议。

用于规X共享网络资源(如目录、文件、打印机以及串行端口)的结构。

这是一种请求/响应协议。

与FTP 协议支持的文件共享不同,SMB 协议中的客户端要与服务器建立长期连接。

一旦建立连接,客户端用户就可以访问服务器上的资源,就如同资源位于客户端主机上一样。

Gnutella 协议通过基于Gnutella 协议的P2P 应用程序,人们可以将自己硬盘中的文件共享给其他人下载。

通过与Gnutella 协议兼容的客户端软件,用户可以在Internet 上连接Gnutella 服务,然后定位并访问由其它Gnutella 对等设备共享的资源。

Gnutella 协议中定义了五种不同类型的数据包:ping —用于查找设备pong —用于回复pingquery —用于定位文件query hit —用于回复querypush —用作请求下载Telnet 服务及协议远程访问计算机系统。

使用Telnet 的连接称为虚拟终端(VTY) 会话或者连接。

与使用物理设备连接服务器不同,Telnet使用软件创建虚拟设备,通过访问服务器命令行接口(CLI) 提供相具备同功能的终端会话。

Telnet 协议命令包括:Are You There (AYT) —允许用户请求终端屏幕上显示一些可见字符,以表明VTY 会话处于活动状态。

Erase Line (EL) —从当前行中删除所有文本。

Interrupt Process (IP) —暂停、中断、放弃或者终止与虚拟终端相连的进程。

例如,如果用户通过VTY 在Telnet 服务器上打开一个程序,他/她也可以发出一条IP 命令来终止程序。

安全外壳协议(SSH)作为一种最佳实践,不管是否需要,网络工程师都应该始终用SSH 来代替Telnet。

相关主题