1.概述
-
应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分。
2. 客户/服务器模式(C/S)和对等方式(P2P)
(Clint /Server)
- 客户是请求方,服务器是服务提供方
- 服务器总是处于运行状态,等待客户的服务请求。服务器有固定的端口号(例如HTTP服务器的默认端口号为80),而运行服务器的主机也具有固定的IP地址
- 是因特网上传统的、最成熟的方式,万维网WWW、电子邮件、文件传输FTP都是这种方式
- 基于C/S方式的应用服务是服务集中性,应用服务集中在网络中比客户计算机少的多的服务器计算机上。
- 一台服务器计算机要为多个客户机提供服务,常出现服务器计算机跟不上客户请求的情况
- 为此常用计算机群集或服务器场构建一个强大的虚拟服务器。
(Peer to Peer)
- 没有固定的服务请求者和服务提供者
- 包括P2P文件共享、即时通信、P2P流媒体、分布式存储
- 基于P2P的应用是服务分散型,服务分散在大量对等的计算机中。
- 最突出的特性之一是可扩展性。因为系统每增加一个对等方,不仅增加的是请求者,也是提供者,系统性能不会因规模增大而降低
- 具有成本上的优势,因为通常不需要庞大的服务器设施和服务器带宽
3. 动态主机配置协议DHCP
- DHCP(Dynamic Host Configuration Protocol)提供了一种机制,称为即插即用连网。这种机制允许一台计算机加入新网络时刻自动获取IP地址等网络配置信息而不用手工参与。
- DHCP报文在运输层使用UDP协议封装,客户端口号68,服务器端口号67
- DHCP客户在未获取到IP地址时使用地址0.0.0.0
- 在没一个网络上都设置一个DHCP服务器会使DHCP服务器数量太多。因此现在是每一个网络至少有一个DHCP中继代理(通常是一台路由器),它配置了DHCO服务器的IP地址信息,作为网络中计算机与DHCP服务器的桥梁。
4.域名系统DNS
(Domain Name System)是因特网使用的命名系统,用来把便于人们记忆的具有特定含义的主机名(如www.baidu.com),转换为便于机器处理的IP地址
因特网采用层次树状结构的域名结构
顶级域名(Top Level Damain)分为以下三类:国际顶级域名、通用顶级域名、反向域
DNS使用分布在各地的域名服务器来实现域名到IP地址的转换
域名服务器可以划分为:根域名服务器、顶级域名服务器、权限域名服务器、本地域名服务器
-
域名解析的过程使用两种域名查询方式:递归查询和迭代查询
为了提高查询效率,减轻根域名服务器的负荷和减少因特网上的DNS查询报文数量,在域名服务器和主机中广泛的使用了高速缓存
DNS报文使用运输层的UDP协议进行封装,端口号53
5. 文件传送协议FTP
-
FTP(File Transfer Protocol)是因特网上使用的最广泛地文件传送协议
- FTP提供交互式的访问,允许客户指明文件的类型与格式(如指明是否使用ASCII码),并允许文件具有存取权限(如访问文件的用户必须经过授权)
- FTP屏蔽了各计算机系统的细节,因而适用于在异构网络中任意计算机之间传送文件
-
FTP客户和服务器之间要建立以下两个并行的TCP连接
- 控制连接,在整个绘画期间一直保持打开,用于传送FTP相关控制命令。
- 数据连接,用于文件传输,在每次文件传输时才建立,传输结束就关闭
默认情况下,FTP使用TCP21端口进行控制连接,TCP20端口进行数据连接。但是,是否使用TCP20端口建立数据连接与传输模式有关,主动方式使用TCP20端口,被动方式由路由器和客户端自行协商决定
6.电子邮件
- 电子邮件系统采用客户/服务器方式。三个主要组成构件:用户代理,邮件服务器
以及电子邮件所需的协议。- 用户代理是用户与电子邮件系统的接口,又称为电子邮件客户端软件。
- 邮件服务器是电子邮件系统的基础设施。因特网上所有的ISP都有邮件服务器,其功能是发送和接收邮件,同时还要负责维护用户的邮箱。
- 协议包括邮件发送协议(例如SMTP)和邮件读取协议(例如POP3)。
- 常用的邮件发送协议是简单邮件传送协议SMTP
基于TCP连接,端口号为25;只能传送ASCII码文本;用于用户代理向邮件服务器发送邮件以及邮件服务器之间的邮件发送 - 为解决SMTP传送非ASCII码文本的问题,提出了多用途因特网邮件扩展MIME。
- 常用的邮件读取协议有以下两个:
- 邮局协议POP3:∶非常简单、功能有限的邮件读取协议。用户只能以下载并删除方式或下载并保留方式从邮件服务器下载邮件到用户方计算机。不允许用户在邮件服务器上管理自己的邮件。
- 因特网邮件访问协议IMAP:功能比POP3强大的邮件读取协议。用户在自己的计算机上就可以操控邮件服务器中的邮箱,就像在本地操控一样,因此IMAP是一个联机协议。
- POP3和IMAP4都采用基于TCP连接的客户/服务器方式。POP3使用端口110,IMAP4使用端口143。
- 基于万维网的电子邮件
- 通过浏览器登录(提供用户名和口令)邮件服务器万维网网站就可以撰写、收发、阅读和管理电子邮件。
- 这种工作模式与IMAP很类似,不同的是用户计算机无需安装专门的用户代理程序,只需要使用通用的万维网浏览器。
7. 万维网WWW
万维网是一个大规模的、联机式IDE信息储藏所,是运行在因特网上的一个分布式应用。
浏览器最重要的部分是渲染引擎,爷就是浏览器内核,负责对网页内容进行解析和显示
万维网使用统一资源定位符URL来指明因特网上任何种类资源的位置。
-
超文本传输协议HTTP(HyperText Transfer Protocol)定义了浏览器怎样向万维网服务器请求文档以及服务器怎样把万维网文档传送给浏览器。
- HTTP/1.0采用非持续连接方式。每次浏览器要请求一个文件都要与服务器建立TCP连接(80端口),当收到响应后立即关闭连接
- HTTP/1.1采用持续连接方式。万维网服务器在发送响应后仍然保持连接,使得同一个客户和该浏览器可以继续在这条连接上传送后续的HTTP请求报文和响应报文。为了进一步提高效率,还可以采用流水线方式,即浏览器在收到HTTP响应报文之前就能够连续发送多个请求报文。
-
HTTP有两类报文:请求报文和响应报文。报文中的每一个字段都是一些ASCII码,并且每个字段的长度都是不固定的
Cookie提供了一种机制是的万维网服务器能够记住用户,而无需用户主动提供用户标识信息。也就是说,Cookie是一种对无状态的HTTP进行状态化的技术。
万维网中还可以使用缓存机制以提高万维网的效率。万维网缓存又称为Web缓存,可位于客户机,也可位于中间系统上,位于中间系统上的Web缓存又称为代理服务器。