《计算机网络第八章应用层.ppt》由会员分享,可在线阅读,更多相关《计算机网络第八章应用层.ppt(69页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第八章:应用层8.1.1 什么是Internet从广义上讲,Internet是遍布全球的连接各个计算机的总网络,是成千上万信息资源的总称;从通讯的角度来看,Internet是一个理想的信息交流媒介。从获得信息的角度来看,Internet是一个庞大的信息资源库。从娱乐休闲的角度来看,Internet是一个花样众多的娱乐厅。从经商的角度来看,Internet是一个即能省钱又能赚钱的场所。8.1 概述第八章:应用层8.1.2 Internet的主要功能1.共享资源2.交流信息3.发布和获取信息 第八章:应用层8.2 域名系统(DNS)n 因特网编址机制:三种形式的地址管理机制n 域名地址:n 层次化
2、的地址,便于人们记忆。n IP地址:n 32位逻辑编码,用来在因特网中定位主机和路由器的接口。TCP/IP网络上的每台主机都必须有唯一的IP地址。n 域名地址转换到IP地址由域名服务系统(Domain Name System,DNS)实现,这个转换过程又称为域名解析(Name Resolution)。n MAC地址:12-FA-9B-23-DB-11QAn 48位物理编码,用来在局域网中识别主机/路由器的接口。n IP地址转换到MAC地址由地址解析协议(ARP)实现。DNS(RFC 1035)也是TCP/IP的应用层协议之一。它利用了UDP传输层协议,端口为53。第八章:应用层域名空间(域名树
3、)域名空间分为若干层次:根域(顶级域)和次级域nenu第八章:应用层 域名 含义 域名 含义com 商业机构 nom 个人edu 教育机构 firm 企业或公司gov 政府部门 store 销售公司或企业mil 军事机构 web 与WWW相关的机构net 网络组织和ISP等 art 文化娱乐单位org 非商业组织 rec 消遣娱乐机构arpa 用于反向地址查询 info 提供信息服务单位cn 国家的域名代码DNS顶级域名表第八章:应用层主机域名的构成n 主机名是由一系列由“.”分开的标签组成:n 每个标签不能超过63个字符;n 全部的标签不能超过255个字符;n 书写顺序是从主机开始直到域名树
4、的根域为止。例如:n 域名是一个组织在域名空间中的名字:n 例如:东北师范大学的域名为www.。n 该组织中已注册的主机都以组织的域名为后缀。第八章:应用层DNS系统的组织结构n DNS是一个分布式的数据库n DNS使用了分布式的域名数据库,运行域名数据库的计算机称为DNS服务器。n DNS服务器以层次型结构(和域名树相对应)分布在世界各地,每台DNS服务器只存储了一小部分DNS数据。n 每一个拥有域名的组织都必须要有DNS服务器,以提供自己域内的域名到IP地址的映射服务。n 例如,东北师大的DNS服务器为,它负责进行域内的域名和IP之间的转换。n 通常每个域都有一台主DNS服务器,然后有一台
5、或数台备份DNS服务器。n 东北师大的备份DNS服务器为。第八章:应用层DNS服务器n DNS服务器分为三类n 本地域名服务器(Local Name Server)n 即每个组织/企业的DNS服务器。n 根域名服务器(Root Name Server)n 为下级域名服务器提供域名解析服务;n 它需要知道全部根域名服务器(和部分二级域名服务器)的地址。n 数量很少,由于历史原因,主要分布在北美地区。n 认证域名服务器(Authoritative Name Server)n 每台因特网中的主机都应该在所在域的域名服务器中注册,提供注册的域名服务器就是该主机的认证域名服务器。n 一般来说,认证域名服
6、务器就是主机所在单位的DNS服务器。第八章:应用层n DNS服务器的功能n 能够直接处理域内的域名解析请求。n 能够向其他DNS服务器发出查询请求来处理对其他域的域名解析请求。n 能够缓存对其他域的域名解析请求的结果。n DNS服务器的操作n 如果本地域名服务器不能解析域名,它就向根域名服务器询问;n 根域名服务器将告诉它与哪一个域名服务器联系;n DNS再向该域名服务器进行查询;n 一个DNS请求可能要经过多个往返。第八章:应用层域名的解析方法1.递归解析法 从根服务器开始,自顶向下一级一级往下解析,直到找到相应的IP地址为止。2.重复解析(反复解析或迭代解析)法 从本地的DNS开始,若在本
7、DNS管理范围内找不到相应的域名,则将请求转向更高一层或最靠近的DNS;若还是找不到,则再向高一层的DNS查询,直至最后找到请求域名及相应的IP地址为止。第八章:应用层 域名解析过程如下:是否在本域?查询请求Y返回结果重复解析?返回结果YNN递归解析返回结果第八章:应用层递归解析过程第八章:应用层n 域名解析的例子n 某个用户要浏览东北师大的主页,用户主机(假定为A)必须获得主机(以下简称为nenu)的IP地址。解析过程:n A向本地域名服务器DNS1查询请求;n 如果DNS1上有nenu的记录,就立即将nenu的IP地址返回给A;n 如果DNS1上没有nenu的记录,DNS1就会向根域名服务
8、器发出查询请求;n 根域名服务器把负责cn域的域名服务器B的IP地址告诉给DNS1;n DNS1向B查询,获得负责域DNS服务器C的地址;n DNS1向C查询,获得负责域DNS服务器D的地址;n DNS1向D查询,即可获得的IP地址。n(注:在命令行下可用nslookup 命令进行DNS 查询)第八章:应用层域名解析性能的优化在域名的解析过程中,为提高速度,可以在两方面进行优化:1.复制 根DNS可以被复制出若干副本,并存放在世界各地的多处域名服务器中。实际应用时,地理位置最近的域名服务器通常响应最快。2.缓存 在每个域名服务器内存中开辟一个“域名缓存区”,用来存放最近一段时间中解析过的域名及
9、相应的IP地址,以及描述该域名的服务器位置信息。第八章:应用层DNS与ARP的比较n 地址类型n DNS:域名(应用层地址)IP地址(网络层地址)n ARP:IP地址(网络层地址)MAC地址(数据链路层地址)n 作用范围n DNS:全局(整个因特网)n ARP:本地(仅限于LAN内部)n 工作方式n DNS:本质上是对一个分布式数据库的查询过程n ARP:LAN内部的广播查询第八章:应用层8.3 E-mail服务n 电子邮件是因特网上最典型的服务之一:n 因特网中出现最早,应用最普遍、最广泛n 因特网用户中90以上使用过电子邮件n 方便、快捷、廉价n 电子邮件系统的组成n 用户代理(User
10、Agent)n 功能:编辑、发送、接收、阅读和管理电子邮件。n 常见的用户代理有:n Outlook、Outlook Express、Foxmail等。第八章:应用层n 邮件服务器(E-mail Server)n 功能:类似“邮局”,接收和转发电子邮件,向发信人报告邮件发送状态n 按照客户服务器方式工作n 既是客户,又是服务器n 电子邮件协议n 发送/转发邮件:n SMTP(Simple Mail Transfer Protocol)RFC 821、822n MIME(Multipurpose Internet Mail Extension)RFC 1521 多用途网际邮件扩充协议n 读取邮件
11、:n POP3(Post Office Protocol)RFC 1939n IMAP4(Internet Message Access Protocol)RFC 2060第八章:应用层n点击观看电子邮件的发送和接收过程TCP连接TCP连接TCP连接TCP连接l 发信人运行用户代理编辑邮件。发件人的邮件服务器 收件人的邮件服务器l 发送端邮件服务器收到邮件后,将邮件放入邮件缓存队列,等待发送。l 发送端邮件服务器中的SMTP客户进程发现邮件队列中有待发送的邮件,就与接收端邮件服务器建立TCP连接。l 发送端的SMTP客户进程使用SMTP协议把邮件队列中的邮件发送给接收端的SMTP服务进程。l
12、发送完后,关闭TCP连接。l 接收端邮件服务器将收到的邮件放入收件人的邮箱中。l 收件人收信时,运行用户代理,用户代理使用POP3协议将用户邮箱中的邮件下载到本地计算机。l 用户代理利用SMTP协议将邮件传送给发件人的邮件服务器。第八章:应用层电子邮件地址n 电子邮件用户必须有一个电子邮件地址n 许多网站提供免费电子邮件服务,需要的话可到这些网站上申请一个邮箱(电子邮件地址)。n 电子邮件地址由两部分组成:n 用户名n 邮箱所在的邮件服务器的主机域名n 用户名和邮件服务器域名之间用“”隔开 用户名邮件服务器域名n 例如:第八章:应用层简单邮件传输协议SMTPn SMTP是因特网上通用的电子邮件
13、传输协议。它的特点是简单明了,容易实现。n SMTP定义了邮件格式及如何通过TCP连接传输邮件。n SMTP使用25号端口在两个邮件服务器之间建立TCP连接。n SMTP协议由两个文档进行描述:n RFC821:描述了邮件服务器之间如何转发邮件;n RFC822:定义邮件信息的格式。n SMTP规定邮件的全部内容(包括附件)无论是什么类型的数据都必须转换成7位ASCII码进行传输。第八章:应用层邮件格式n 标准的电子邮件信息由两部分组成:n 邮件头(header):相当于“信封”,主要包括n 收件人地址n 投递日期n 邮件主题n 发件人地址n 邮件体(body):邮件正文,相当于装在信封内的信
14、。第八章:应用层Received:from(unknown 216.136.131.41)by 192.168.30.102(Coremail)with SMTP id XQEAACPEeD3FAIMp.1for;Fri,06 Sep 2004 23:05:16+0800(CST)Message-ID:Received:from 67.242.159.232 by via HTTP;Fri,06 Sep 2004 08:11:04 PDTDate:Fri,6 Sep 2004 08:11:04-0700(PDT)From:Joy Li Subject:ThanksTo:ChenWenge Cc
15、:In-Reply-To:MIME-Version:1.0Content-Type:text/plain;charset=us-ascii赵老师:我的第一次作业在附件中,请批阅。某某第八章:应用层n邮件头信息都由一些关键词引导。邮件正文则没有任何关键词引导,正文是用户编辑邮件时输入的。n邮件头中的一些主要关键词的含义是:Received:接收邮件的路径、日期、时间以及邮件代理程序的版本号。From:表示邮件发送者,包括邮件地址和发送方的“真实姓名”。Date:发信时间。Message-ID:由传输代理分配给该邮件的唯一标识。To:收件人的电子邮件地址。Subject:邮件主题,是发件人写的,告
16、诉收件人该邮件的目的。Content-type:邮件正文的类型,是文本还是MIME格式。Cc:表示抄送,它是“Carbon copy”的缩写,意为“复写副本”,它用来指定那些将收到该邮件副本的人的邮件地址。MIME:多用途网际邮件扩充协议第八章:应用层邮件读取协议n 常用的有:POP3和IMAPn POP3(邮局协议)n 基于TCP协议n 客户/服务器方式n 客户端程序(Outlook Express、Foxmail等)n 服务器程序(Exchange等)n 客户与服务器建立TCP连接后才能读取邮件n 功能:n 为用户提供邮箱n 保存收到的邮件n 把邮件传输给用户(邮件在客户端脱机处理)n 邮
17、件传输给用户后,POP服务器一般不再保留第八章:应用层n IMAP(因特网报文存取协议)n 基于TCP协议(同POP3)n 客户/服务器方式(同POP3)n 功能n 为用户提供邮箱n 保存收到的邮件n 用户可直接操纵IMAP服务器上自己的邮件文件夹n 新建分类文件夹,移动邮件,删除邮件,查找邮件等n 仅需要打开邮件时,邮件才传输到客户端n 邮件将一直保存在IMAP服务器上,除非用户明确地发出删除命令n 典型例子:Web Mail第八章:应用层Outlook Express的使用n 使用通信簿n 建立通信簿n 联系人n 通信组n 手工添加n 自动添加:“工具”“添加到通信簿”n 修改通信簿n 从
18、通信簿发送邮件n 通信簿的导入和导出(Outlook)第八章:应用层8.4 文件传输(FTP)n FTP是什么?n FTP是File Transfer Protocol的英文缩写,即“文件传输协议”。n 用于在计算机之间传送文件n 把文件从本地主机传送到远程主机称为“上载”n Upload,Putn 把文件从远程主机传送到本地主机称为“下载”n Download,Getn FTP可以传输各种类型的文件:n 文本文件(ASCII)、二进制文件(Binary);n 压缩文件、非压缩文件。n 登录FTP服务器的用户需要注册才能登录,但有的FTP服务器也允许匿名(Anonymous)登录。第八章:应用
19、层Software、ProgramDocumentsVideo,AudioUsername:anonymousPassword:匿名登录FTPAnonymous FTP Server第八章:应用层FTP工作原理n FTP基于TCP协议,使用TCP协议实现文件的传输。n FTP以客户/服务器方式工作:n FTP客户程序,如Cuteftp等,运行在用户计算机上n 用户通过它发出传输文件的请求n FTP服务程序,如Serv-U等,运行在服务器上n 接收并响应客户程序的请求,把指定的文件发送到客户端第八章:应用层n 在进行文件传输时,FTP的客户和服务器之间要建立两个TCP连接:n 控制连接(Cont
20、rol Connection):n 客户程序与FTP服务器的端口21建立控制连接,并在整个FTP会话过程中维持连接;n 控制连接用于传输请求和应答信息;n 由FTP客户端发起控制连接。n 数据连接(Data Connection):n 数据连接用于传输文件;n 每传输一个文件都要建立一个数据连接(在FTP服务器的端口20);n 由FTP服务器发起数据连接。第八章:应用层TCP数据传送 控制FTP客户端TCP数据传送 控制FTP服务器端X 21因特网20 Y由客户端发起由服务器端发起第八章:应用层FTP的文件传输过程n 建立控制连接(客户端发起)(1)客户端发送一个TCP SYN(TCP同步)包
21、给服务器端,目的端口为21,源端口为一个临时端口;(2)服务器端发送SYN ACK(同步确认)包给客户端,源端口为21,目的端口为客户端上使用的临时端口;(3)客户端发送一个ACK(确认)包。n 控制连接建立后,客户端使用这个连接来发送FTP命令,服务器端使用这个连接来发送FTP应答。第八章:应用层n 建立数据连接n 当用户发出一个文件传输请求时,客户端软件通过控制连接向服务器发出一个PORT命令,在PORT命令中指定一个临时端口,目的是希望服务器在建立数据连接时使用这个临时端口;(1)服务器端发送一个SYN包给客户端,源端口为20,目的端口为客户端在PORT命令中指定的临时端口;(2)客户端
22、发送一个SYN ACK包,源端口为临时端口,目的端口为20;(3)服务器端发送一个ACK包。n 文件传输 n 数据连接建立后,发送数据的一方使用这个连接把文件传送给对方。第八章:应用层n 断开数据连接n 当数据传输完成后:(1)发送数据的主机发出一个FIN命令来结束数据连接;(2)接收方以ACK确认;(3)接收方紧接着也发送一个FIN命令;(4)发送数据的主机以ACK确认。n 断开控制连接n FTP会话结束后:(1)客户端以FIN命令来关闭控制连接(2)服务器端以ACK确认;(3)服务器端发送一个FIN;(4)客户端以ACK确认。第八章:应用层 ftp Client ftp Server TC
23、P:21 控制连接初始化,控制端口 SYNPort xxxx-Port 21 SYN,ACKPort xxxx Port 21TCP:20 数据连接初始化,数据端口 SYNPort yyyy Port 20 ACKPort yyyy-Port 20数据操作:数据传输 DataPort yyyy Port 20 第八章:应用层图形界面下的FTP客户程序图形界面下的FTP客户程序n 图形界面下的FTP程序简化了操作,只要用鼠标点击即可,但执行流程与上述介绍类似。Windows环境下的FTP传输软件包括:n WS_FTP、CuteFTP、LeapFTP、LeechFTP、n 不论在什么界面下进行FT
24、P操作,以下要素都是必须的:主机地址:IP地址或主机名(域名)登录方式:实名或匿名 用户标识:用户名或anonymous 用户口令:xxxxxx 或 本地工作目录 远程工作目录第八章:应用层图形界面下的FTP(cuteftp)第八章:应用层第八章:应用层第八章:应用层8.5 WWW服务n 万维网基本概念n 浏览器(Browser)是用来解释Web页面并完成相应转换和显示的程序。n 浏览器通过Web页面来进行信息的传递和交流。n Web页面是用超文本标记语言编写的文档,Web页中包括文字、图像、声音、动画、视频等各种多媒体信息,也包括用超文本或超媒体表示的链接。n 主页是进入一个网站首先看到的页
25、面,是一个网站的脸面。第八章:应用层n 超文本(Hypertext):是指可以链接到其他文档的文字。从页面上看超文本也是一般的文字描述,但它包含了到其他文档或同一文档不同部分的链接(Link)或超级链接(Hyperlink)。n 超媒体(Hypermedia):通过图形来完成的链接,或指通过链接可以获得多媒体信息或播放多媒体信息。第八章:应用层n Web服务器:Web页面并向浏览器提供服务的服务器。目前应用最广的是APACHE。n 超文本标记语言(Hypertext Markup Language,HTML):编写Web页面的标准语言。它是通过标记来对Web文档的格式及链接进行定义的一系列规定
26、。n 超文本传输协议(Hypertext Transport Protocol,HTTP):浏览器和Web服务器之间的通信协议。第八章:应用层万维网设计目标n WWW最基本的四项设计目标包括:n 分布式信息系统;n 对多重协议提供一个统一通用的接口;n 对超媒体支持;n 可扩充性,能够支持所有的数据格式。n HTTP之前的其他协议都不能完全实现上述要求,因而HTTP就应运而生了。第八章:应用层HTTP的特点n 以Client/Server模型为基础。HTTP支持客户与服务器之间通信及相互传送数据,一个服务器可以为分布在世界各地的许多客户服务。n 简易性。HTTP被设计成一个非常简单的协议,客户
27、机要连接到服务器,只需发送请求方式和URL路径等少量信息,即可得到服务器的应答。第八章:应用层 客户-服务器模式Internet物理层数据链路层网络层传输层应用层客户程序物理层数据链路层网络层传输层应用层客户程序发送请求返回结果第八章:应用层WWW客户机/服务器体系结构电子商务技术结构的主要组成部分n客户机提供了访问和显示WWW内容的图形用户界面。nWWW服务器主要功能有信息检索、数据管理和事物及安全管理。存放内容的软硬件总称,其内容可以用浏览器访问。n第三方服务另外WWW服务器,提供内容、信息处理工具和电子支付系统。第八章:应用层两层客户机/服务器WWW客户机和服务器之间的信息流第八章:应用
28、层三层客户机/服务器三层客户机/服务器结构中的信息流第八章:应用层浏览器的功能n 接收URL输入(超链点击)并发送请求报文n 显示并解释接收到的响应报文n 导航功能n 服务功能n 接受用户对浏览器的设置第八章:应用层n 统一资源定位器(Uniform Resource Locator,URL)也称Web地址。是在Web页面中定义信息资源位置的标准方法。n 例如:n URL的构成:n n 通过URL可以访问因特网上的多种资源。第八章:应用层n 浏览器可以用的协议(方法)包括:n http:/(超文本传输协议)n ftp:/(文件传输协议)n gopher:/(菜单式检索)n telnet:/(远
29、程仿真终端协议)n news:(新闻组访问)n mailto:(邮件访问)第八章:应用层n 浏览器屏幕可显示的内容包括:n 网页正文n 超链信息,导航按钮(引导到其他网页)n 图像信息(一般为jpg格式的压缩图像)n 音频/视频信息(音乐、电影)n 动态信息(动态的广告信息)n 进行交互功能的表单(如电子邮件用户的注册表格)第八章:应用层n 导航功能n 向前,向后(翻到曾经显示的前/后一个网页)n 打开,搜索(将文件系统中存储的网页文件打开)n 历史资料(根据时间检索曾经访问的网页)n 插入书签(将重要的网页访问连接存入系统)第八章:应用层n 服务功能n 打印(将网页从打印机输出)n 邮件发送
30、(将网页作为邮件发送)n 存成文件(将网页和所携信息分别存储)n 查看网页代码(查看代码,学习网页设计)n 帮助信息(理解浏览器的应用)n 刷新(请求最新的网页内容)n 停止(中断网页的下载过程)第八章:应用层WWW基本工作过程客户端的WWW浏览器获得WWW服务器的主页并显示在客户端的屏幕上的过程如下:第八章:应用层第八章:应用层Web Caches(proxy server)n 目标:满足客户的请求但是不需要重新连接原始的服务器。n 用户设置浏览器:经过web cache访问web;n 客户端发送所有的http requests给web cache:n 请求的对象在web cache中:we
31、b cache返回该对象;n 否则web cache从原始服务器请求该对象,然后返回给客户端。clientProxyserverclienthttp requesthttp requesthttp responsehttp responsehttp requesthttp responseorigin server第八章:应用层HTML语言n HTML:超文本标记语言(Hypertext Markup Language)n 加入了许多被称为链接标签(tag)的特殊字符串的普通文本文件。n 从结构上讲,HTML 文件由许多种元素(element)组成,这些元素用于组织文件的内容和指导文件的输出格
32、式。绝大多数元素是“容器”,即它有起始标记和结尾标记。n 元素的起始标记叫做起始链接标签(start tag),元素结束标记叫做结尾链接标签(end tag),在起始链接标签和结尾链接标签中间的部分是元素体。第八章:应用层为什么要学习HTML?n HTML是一种语言,但不是“程序设计”语言,HTML的作用是说明如何表现文字、图片,以及如何建立文件之间的连接。n HTML是各种网页新技术(DHTML、ASP、PHP、JAVA Script)的基础。n 由于HTML不是程序语言,由其构成的文件不会因时、因地发生变化,也称为“静态网页”。n 为了网页能够动态变化,需要在网页中加入程序,使之成为“动态
33、网页”。n 还有一种类型的网页称为“活动网页”。第八章:应用层HTML基本概念n 标记:n 容器:Testn 标记的属性n 标记名称属性第八章:应用层 标签 说明声明这是用HTML写成的万维网文档定界页面的首部定义页面的标题定界页面的主体 定界一个n级题头 设置为黑体字 设置为斜体字 设置为无序列表第八章:应用层 标签 说明 设置为编号列表设置为菜单 开始一个列表项目 强制换行 一个段落开始 强制换行,同时画出一条水平线 设置为已排版的文本 插入一张图像,其文件名为X定义一个超链。起点为X,终点为“”第八章:应用层8.6 远程登录(Telnet)n 什么是Telnet?n Telnet是Tel
34、ecommunication Network Protocol的英文缩写。n 用户在本地发出命令,通过IP网络,进入另一台机器的系统,这个过程即称为远程登录。n 用户通过本地计算机登录到其他计算机上,本地计算机就成为了那台计算机的“终端”,与那台机器本身的终端享有同样的待遇,在它的权限范围内操作那台计算机。n 大多数提供远程登录的目标系统以UNIX为主。n 注意:远程登录中的“远”字并非指距离,而是指不是从本地登录到这台计算机。第八章:应用层Telnet Server Username:Password:InternetTelnet东北师范大学美国加州大学第八章:应用层Telnet使用网络虚拟
35、终端NVT格式 第八章:应用层Telnet是如何工作的n Telnet采用了Client/Server工作方式,并使用TCP传输协议进行通信(有连接过程)。n 客户端运行Telnet客户端程序n 建立与服务器端的TCP连接;n 接收用户的输入命令及其他信息;n 对命令及信息进行预处理;n 把信息用TCP协议发送给服务器端;n 接收服务器端返回的信息并做相应处理,例如显示在屏幕上。n 服务器端运行服务程序Telnet(常驻进程)n 通知正在准备接受连接的网络软件,Telnet服务已启动;n 网络软件建立与客户机的TCP连接;n 等候以标准格式出现的服务请求;n 对到来的服务请求命令给予执行;n
36、把服务结果按标准格式回送给客户机;n 继续等待新到达的服务请求。第八章:应用层如何使用Telnetn 启动telnet客户端程序telnet remote-system port-numbern 其中n telnet:命令名。注意也有别的名称,如NVT220等。n remote-system:目标主机名(域名)或目标主机的IP地址。n port-number:端口号。它用于标识服务器上的telnet服务 程序进程。telnet的默认端口号是23。n telnet的内部命令行提示符为:telnet 第八章:应用层2.9 博客、博客、网络即时通信n 新闻与公告类服务(BBS)n 播客服务(Podcast)n 博客(Blog)n 微博客(Twitter)n 网络即时通信服务(ICQ、QQ、MSN)n 网络电视(IPTV)第八章:应用层自主学习任务远程桌面连接实现的功能和实现方法