03应用层功能及协议
3.1应用程序——网络间的接口
3.1.1OSI模型和TCP/IP模型
1、开放式系统互连(Open Systems Interconnection reference,OSI) 参考模型是一种抽象的
分层模型。
OSI七层网络参考模型:
Layer 7:应用层(Application Layer)
Layer 6:表示层(Presentation Layer)
Layer 5:会话层(Session Layer)
Layer 4:传输层(Transport Layer)
Layer 3:网络层(Network Layer)
Layer 2:数据链路层(Data Link Layer)
Layer 1:物理层(Physical Layer)
TCP/IP协议模型:
应用层(Application Layer);传输层(Transport Layer);Internet层/网络层;网络接入层(Network Access Layer)
2、OSI七层网络参考模型
1)应用层(Application Layer):该层为用于通信的应用程序和用于消息传输的底层网络提供接口
2)表示层(Presentation Layer):
表示层有三个主要功能:
●对应用层数据进行编码与转换,从而确保目的设备可以通过适当的应用程序理解源设备
上的数据;
●采用可被目的设备解压缩的方式对数据进行压缩;
●对传输数据进行加密,并在目的设备上对数据解密
3)会话层(Session Layer):它就是用于在源应用程序和目的应用程序之间创建并维持对话。大多数应用程序(如Web 浏览器或电子邮件客户程序)已包含OSI 模型5、6、7 层的功能。
3、TCP/IP 应用层协议是那些用于交换用户信息的协议。常见TCP/IP 应用层协议包括:
●域名服务协议(DNS),用于将Internet 域名解析为IP 地址;61.139.2.69;202.96.68.98 ●超文本传输协议(HTTP),用于传输构成万维网网页的文件;
●简单邮件传输协议(SMTP),用于传输邮件及其附件信息;
●电子邮局协议版本3(POP3),用于接收邮件及其附件信息;
●Telnet 协议(一种终端模拟协议),提供对服务器和网络设备的远程访问;明文传输。
●安全外壳(Secure Shell ,SSH),提供对服务器和网络设备的远程访问,提供加密功能。
●文件传输协议(FTP),用于系统间的文件交互传输。
3.1.2应用层的软件
1、网络感知应用程序:
应用程序是指人们用于网络通信的软件程序。有些终端用户应用程序是网络感知程序,即这些程序实现应用层协议,并可直接与协议栈的较低层通信。电子邮件客户程序和Web 浏览器就属于这种类型的应用程序。
2、应用层服务
3.1.3用户应用程序、服务以及应用层协议
●应用程序为我们提供创建消息的方法;
●应用层服务负责创建与网络交互的接口;
●协议则负责提供进行数据处理的规则和格式。
●这三个组件可以由一个可执行程序使用,甚至还可以使用相同的名称。例如谈到
“Telnet”时,我们可以指应用程序,也可以指服务,还可以指协议。
3.1.4应用层协议功能
1、应用层协议为应用程序之间的通信提供规则,为确保通信畅通,源主机和目的主机上所
实现的应用层协议必须一致。
2、应用层协议的功能:
●为通信双方定义过程;
●定义消息类型;
●定义消息的语法;
●定义任何信息性字段的含义;
●定义发送消息的方式和预期的响应;
●定义与下一层之间的交互;
3.2 准备应用程序和服务
3.2.1 客户端——服务器模型
1、客户端/服务器模型(CS模型)
1)在客户端/服务器模型中,请求信息的设备称为客户端,而响应请求的设备称为服务器;2)从客户端到服务器的数据传输称为上传(UPload);而从服务器到客户端的数据传输则称为下载(Download)。
3.2.2 服务器(Server)
1、在一般网络环境中,响应客户端应用程序请求的设备扮演的是服务器角色。
2、在客户端/服务器网络中,服务器运行的服务或者进程有时被称为服务器守护程序。
3.2.3 应用层的服务和协议
3.2.4 P2P(点到点)网络及其应用程序
1、点对点模型
1)点对点网络
2)点对点应用程序
点对点应用程序(P2P) 允许设备在同一通信过程中既作客户端又作服务器。
3.3应用层协议及服务实例
3.3.1DNS服务及协议
1、DNS(Domain Name System ,域名系统):可以将数字地址转换为简单易记名称的域名
系统。
2、DNS 是一种客户端/服务器服务。
3、C:\nslookup
4、DNS 服务器使用域名守护程序(通常简称为named 守护程序)提供域名解析。
5、域名系统采用分级系统创建域名数据库,从而提供域名解析服务。该层级模型的外观类
似一棵倒置的树,枝叶在下,而树根在上。
6、位于最高层的根域名服务器维护最高级域名服务器记录,而后者维护下一级域名服务器
的记录(如.com、.org、.cn)
7、顶级域名下层为二级域名,二级域名下层还有其它更低级的域名。
3.3.2WWW服务及HTTP
1、超文本传输协议(HTTP) 是TCP/IP 协议簇中的一种协议。
2、GET 是一种客户端数据请求消息。
3、POST 和PUT 消息用于向Web 服务器发送上传数据的请求。
3.3.3电子邮件服务及SMTP/POP3协议
1、电子邮件服务中最常见的两种应用层协议是邮局协议(POP) 和简单邮件传输协议
(SMTP)。
2、电子邮件客户端可以使用POP 协议从电子邮件服务器接收电子邮件消息。从客户端或
者从服务器中发送的电子邮件消息格式以及命令字符串必须符合SMTP 协议的要求。
3、电子邮件服务器进程—MTA 及MDA
电子邮件服务器运行两个独立的进程:
邮件传送代理(MTA)
邮件分发代理(MDA)
3.3.4FTP(File Transfer Protocol ,文件传输协议)
1、为了保障文件的成功传输,FTP 要求在客户端和服务器之间建立两条连接:一条是命令
和回复连接,另一条是实际文件传输连接。
●客户端在TCP 的21 号端口建立第一条连接。该连接由客户端命令和服务器回复组
成,用于管理传输流量;
●第二条连接建立在TCP 的20 号端口。每当有文件需要传输时建立该连接,用于实际
文件传输。
3.3.5DHCP(Dynamic Host Configuration Protocol ,动态主机配置协议)
1、通过动态主机配置协议(DHCP) 服务,网络中的设备可以从DHCP 服务器中获取IP
地址和其它信息。该服务自动分配IP 地址、子网掩码、网关以及其它IP 网络参数。
3.3.6文件共享服务与SMB协议
1、SMB(Server Message Block ,服务消息块)是一种客户端/服务器文件共享协议。
2、与FTP 协议支持的文件共享不同,SMB 协议中的客户端要与服务器建立长期连接。一
旦建立连接,客户端用户就可以访问服务器上的资源,就如同资源位于客户端主机上一样。
3.3.7P2P服务和Gnutella协议
3.3.8Telnet服务及协议
使用Telnet 的连接称为虚拟终端(VTY) 会话或者连接。与使用物理设备连接服务器不同,Telnet 使用软件创建虚拟设备,从而提供相同性质的终端会话并能访问服务器命令行接口(CLI)。