《Networkapplication课件》由会员分享,可在线阅读,更多相关《Networkapplication课件(41页珍藏版)》请在金锄头文库上搜索。
1、计算机网络基础第四部分 网络应用1Network-application主要内容客户/服务器模式域名系统电子邮件万维网多媒体应用主机配置2Network-application1. 应用软件提供高层服务 互连网系统提供了一个通用的通信结构框架,但没有指定哪些高层服务将被提供、哪些计算机运行这些服务、如何知道这些服务、以及如何使用这些服务等,这些问题留给了应用软件和用户。应用软件为用户提供各种高层服务,比如发送和接收电子邮件、浏览信息文档、在两台计算机之间传输文件等。3Network-application应用的网络交互方式客户/服务器模式l一个应用程序被动地等待来自另一个应用程序的初始化通信l
2、积极初始化连接的应用称为客户,被动等待连接的应用称为服务器客户软件运行在用户的PC机上,主动访问服务器,不需要特殊硬件或复杂的操作系统。服务器软件是有特殊用途的、具有特权的程序,用于提供一种服务,可同时处理多个远程客户,需要功能强大的硬件和复杂的操作系统。服务器级计算机:运行服务器软件的功能强大的计算机,可以同时运行多个服务器软件,提供多种服务。4Network-application服务标识方法客户和服务器使用传输协议直接进行交互。传输协议提供了标识服务的机制l每种服务被分配一个唯一的标识符l服务器开始运行时,向本地协议软件注册它使用的服务标识符l客户联系远程服务器时,需要指定它请求的服务的
3、标识符l客户机上的传输协议在生成请求包时,向服务器计算机发送这一标识符l服务器计算机上的传输协议使用这一标识符决定处理这一请求的服务器程序。TCP使用16位整数值(端口号)来标识服务。5Network-application2. 域名系统(DNS)计算机使用二进制形式的IP地址标识主机,而用户习惯使用符号名称来记忆主机的名字,因此需要一种机制将计算机的符号名称转换成对应的IP地址。集中式维护绑定表的方法可扩展性差:表规模很大,更新周期长,名字冲突。20世纪80年代中期,DNS投入使用。DNS使用层次命名方案和分布式数据库实现解决了可扩展性问题:l层次命名:避免名字冲突l分布式实现:减小表的规模
4、,减小表的维护和传播开销。域名系统通常由其它应用使用,将用户提供的主机名字或电子邮件地址转换成IP地址。6Network-applicationDNS的名字空间DNS在概念上将因特网分成了200多个顶级域,每个顶级域被进一步划分成若干个二级子域,每个二级子域还可以再分子域,依次类推。所有这些域被组织到一棵树中。一个指定的域是指树中一个特定的节点以及该节点以下所有的节点。某个域的域名用从该域开始向上直到树根(为空)的标号序列表示,标号之间用句点隔开,如。域名的任一后缀也是一个域。顶级域分为组织域和国家域两类。7Network-application域名树的一部分8Network-applicat
5、ionDNS的组织域域分配给com商业组织edu教育机构gov美国政府组织mil美国军事组织net主要网络提供商org非赢利组织arpa临时ARPA域(仍在使用)int国际组织9Network-applicationDNS的工作过程应用程序调用一个称为解析器的库例程,将名字作为参数传递进去。解析器的内部配置了本地DNS服务器的地址,解析器将需要查询的信息封装成一个DNS请求报文,发送给本地域名服务器。若本地数据库中有所需的信息,本地域名服务器将查到的信息封装成DNS响应报文,发回给解析器。解析器从DNS响应报文取出查询结果,返回给调用者。10Network-applicationDNS服务器的
6、组织方式三种类型的DNS服务器,按照层次结构从上到下依次为:l根DNS服务器:知道所有顶级域服务器的IP地址,因特网上共有13个根DNS服务器。l顶级域(TLD)服务器:每个顶级域至少有一个顶级域服务器,每个TLD服务器知道本域下所有二级子域的权威DNS服务器的IP地址。l权威DNS服务器:存放各组织机构公共可访问DNS记录的服务器。分层解析:l本地DNS服务器,根DNS服务器,TLD服务器,二级子域权威服务器,三级子域权威服务器,通常使用DNS缓存提高查找效率;另外,本地DNS服务器通常缓存TLD服务器的IP地址,以绕过查询链中的根服务器。物理域名服务器的层次结构往往比域名的层次结构少得多,
7、因而查询链不会太长。11Network-application3. 电子邮件系统两个概念:l电子邮箱:由计算机上的一个存储区域(如磁盘上的一个文件)组成,每个邮箱均被分配了唯一的电子邮件地址。l电子邮件地址:由两个部分组成,形如:mailboxcomputer,前者为用户邮箱的字符串,后者为邮箱所在的计算机的名字,符号分隔这两部分。因特网电子邮件系统由三个部分组成:l用户代理:一个本地程序(或称邮件阅读器),为用户提供读邮件、编辑邮件、发送邮件及管理信箱等功能。l消息传输代理:运行在邮件服务器后台的一个系统守护程序,负责传递邮件及将收到的邮件放入用户邮箱。l简单邮件传输协议SMTP:在两个计算
8、机之间传递邮件。12Network-application一个邮件传输的例子Alice向Bob发送一个邮件,假设Alice与Bob的邮箱不在同一个邮件服务器上:lAlice调用用户代理编辑邮件,提供Bob的电子邮件地址,然后通过用户代理发送邮件。lAlice的用户代理把信件发送给Alice的邮件服务器,该邮件被放到邮件服务器的发送队列中。lAlice的邮件服务器在发送队列中发现这封邮件,与Bob的邮件服务器进行交互,然后将邮件发送给Bob的邮件服务器。lBob的邮件服务器接收邮件,将其放入Bob的邮箱中。lBob在方便的时候,调用用户代理阅读该邮件。13Network-application邮
9、件传输协议SMTP使用SMTP的邮件传输过程:l客户机上的消息传输代理与服务器上的SMTP守护进程(在端口25上监听)建立TCP连接。l服务器发送准备好报文,若服务器未准备好,客户机释放连接。l客户机向服务器通报信件的发送方和接收方。l若接收方信箱在服务器上,服务器通知客户机继续。客户机将信件发给服务器,服务器将信件放入相应的信箱后进行响应。l重复以上过程,将信件全部发完。l服务器交换发送方和接收方的身份,邮件反向流动。l当两个方向的信件均交换完后,释放连接。14Network-application邮件的两阶段交付含有邮箱的计算机必须运行一个邮件守候进程,并且需要连续不断地运行。因此,邮箱一
10、般放在功能强大的运行邮件服务器的计算机系统上,用户代理通过远程访问邮箱来获取邮件。邮件的交付被分成两个阶段:l在具有永久因特网连接的计算机上为每个用户分配一个邮箱,这台计算机上运行一个常规SMTP服务器,一直准备接收邮件。l用户与邮件服务器建立一个连接,运行一个从永久邮箱检索邮件的协议,将邮件传输到本地计算机上阅读或者在线阅读。15Network-application两阶段交付的示意图16Network-application邮件访问邮局协议POP3l用户激活一个POP3客户,该客户与带有永久邮箱的计算机的端口110(POP3守护进程)建立一个TCP连接。l用户发送用户名和口令进行身份鉴别。
11、l身份鉴别成功,用户发送POP3命令,将邮件接收到本地,并可将邮件标记为删除。l当客户发出退出命令时,服务器删除所有标记的邮件,回应客户。l释放连接。17Network-application邮件访问(续)Internet邮件访问协议IMAPlIMAP允许用户将所有邮件无限期地保留在服务器中,在线地阅读邮件,并允许用户动态地在服务器上创建、删除和管理多个信箱,将阅读过的信件放到相应的信箱中保存。lIMAP除了为用户接收邮件以外,还可以为用户发送邮件。Webmaill用户代理为普通浏览器,浏览器和远程邮箱之间的通信使用HTTP协议,但邮件服务器之间仍是SMTP协议。l和IMAP一样,用户可以在远
12、程服务器上用文件夹来组织他们的信件。18Network-application4. 万维网(World Wide Web)从用户的角度来看,Web是由数量巨大且遍布全球的文档组成,这些文档称为Web页(Web page)。每个页除了含有基本的信息之外,还包含格式命令和指向其它页的链接:l格式命令:用于指示如何显示文档中的数据;l链接:用于指示如何获取另一个文件。包含链接信息的文本串或图形称为超级链接(hyperlink),当用户点击一个超级链接时,该超级链接指向的页会被取回,并显示在用户屏幕上。包含超级链接的页称为超文本(hypertext)页或超媒体(hypermedia)页,它们的区别在于
13、文档内容。页需要用称为浏览器的程序阅读,浏览器负责取回指定的页,并按照指定的格式显示在屏幕上。19Network-application一个Web页的例子20Network-application网页获取Web采用客户/服务器模式工作,客户为浏览器软件,服务器是运行在Web服务器上的一个软件程序。服务器平时总在端口80上监听客户的连接请求,当用户点击了一个超级链接后:(图例)l浏览器找到该链接所指的网页的名字l与网页所在的服务器建立一个TCP连接l向服务器发送取网页的请求l服务器将请求的网页发送给浏览器l释放TCP连接两个问题需要解决:l如何命名一个网页l定义客户和服务器之间的传输协议21Ne
14、twork-applicationWeb工作模型22Network-application统一资源定位器URL为在全网范围内确定一个页,页名必须包括:页的存放地址,页在宿主机中的全路径名,页的访问方法。符合这三个条件的名字称为统一资源定位器URL(Uniform Resource Locator )。URL的一般格式为:schemename:/host/pathlSchemename:方法名,指出访问网页的协议名称,如http。lHost:网页所在宿主机的域名lPath:网页在宿主机上的全路径名浏览器从host域得到网页所在服务器的域名,通过DNS获得服务器的IP地址,与服务器的相应端口建立T
15、CP连接,使用schemename域指定的协议同服务器对话,并请求传送path域指定的页。23Network-applicationWeb的客户方当用户点击了某个超级链接http:/后,浏览器按以下步骤工作:l浏览器确定URL(从页及点击位置获取)。l请求DNS解析域名, DNS返回地址156.106.192.32。l浏览器与156.106.192.32的端口80建立一个TCP连接。l浏览器发送一个请求,要求取文件/home/index.html。l服务器发送文件/home/index.html,释放TCP连接。l浏览器显示文件/home/index.html的所有文本内容。l浏览器取回该文件
16、中的所有图像并显示(一次取一个图像显示)。24Network-applicationWeb的服务器方Web服务器的典型工作过程:l服务器在端口80监听,与请求的客户建立TCP连接,接收服务请求。l确定请求的Web页(名字扩展)。l(若需要)认证客户;对客户进行访问控制;对请求的页进行访问控制。l检查请求的页是否在高速缓存中,有直接读取。l若不在高速缓存中,从本地磁盘读取文件。l将文件返回给客户,进行日志记录,释放连接。25Network-application状态信息和cookieWeb本质上是无状态的,当服务器将浏览器请求的文件发回后,服务器上不保留有关用户的任何信息。在两次调用之间程序保存
17、的信息称为状态信息,状态信息可以保存在浏览器或服务器上。服务器传递给浏览器保存的状态信息称为cookie:l服务器完成服务请求时将需要保存的信息存于本地,同时将少量信息(cookie)返回给浏览器,cookie通常被作为这些信息的索引。lCookie是一个小文件,通常保存在浏览器的cookie目录下。l当浏览器要向某个服务器发送请求时,先检查cookie目录,看是否有从那个服务器发来的cookie,如果有就把所有的cookie都包含在请求消息中,发送给服务器。26Network-applicationWeb文档按照文档内容产生的时间,Web文档分为三类:l静态文档:静态文档以文件方式保存在We
18、b服务器上,由文档的作者决定文档的内容,对静态文档的每次请求均产生相同的响应。l动态文档:动态文档是由Web服务器动态创建的。当请求到达时,Web服务器运行一个应用程序创建动态文档,并返回给浏览器,因此每次请求产生的动态文档是不同的。l主动(active)文档:主动文档由一个计算机程序组成,当游览器请求一个主动文档时,服务器返回一个必须在浏览器本地运行的程序的拷贝,程序运行时可以与用户进行交互,并不断访问服务器取回新的信息,因此主动文档的内容是在不断更新的。27Network-application超文本标记语言HTMLHTML是一种标记语言,用于描述文档的显示格式。使用HTML书写的文件是一
19、种ASCII文件,它只规定了显示文档所需的大纲信息,允许浏览器确定文档的显示细节,这使得浏览器能够运行于任何系统平台之上,显示由任何系统产生的Web文档。HTML中的格式命令称为标签,标签必须成对出现,包含在一对标签中的文档内容,其显示格式就由该标签指定。比如:中国科学技术大学主页,表示“中国科学技术大学主页”用一级标题显示。28Network-applicationHTML(续)HTML使用标签在Web页中嵌入图像,如: 。HTML使用标签在Web页中加入超级链接,如: 中国科学技术大学主页 。超级链接也可以是一个图像,如: IMG SRC= http:/ 29Network-applica
20、tionHTML格式命令30Network-application超文本传输协议HTTPHTTP协议:浏览器与Web服务器之间通信使用的协议,规定了客户方与服务器方通信所使用的命令及响应。基本工作模式:浏览器向服务器发送HTTP请求,服务器返回响应,然后释放连接。持久连接:从HTTP/1.1开始使用持久连接方式,一旦客户建立了和特定服务器的TCP连接,该连接就在多个请求和响应过程中一直存在,直到某一方关闭连接。l非流水线方式:客户只能在收到前一个请求的响应后才能发送下一个请求。l流水线方式:客户可以连续发送多个请求而不需要等待响应,服务器也可以进行连续响应。31Network-applicat
21、ion5. 多媒体应用多媒体应用至少必须包含一种连续的媒体,而连续媒体通常就是指音频或视频。多媒体应用的分类:l流式存储音/视频:压缩的音/视频文件已经存储在服务器上,用户下载这些文件进行播放。用户可以暂停、倒退、快进或者检索多媒体内容。l实时实况音/视频:类似于传统的电台广播和电视,只是通过因特网来传输。l实时交互音/视频:允许人们使用音/视频进行实时通信。对端到端延时的要求很高。32Network-application因特网广播(Internet Radio)在实际的因特网广播实现中,每个客户与电台建立一条单独的TCP连接,然后在TCP连接上传输音频数据。33Network-applic
22、ation流式存储音/视频应用基本过程:l客户机请求存储在服务器上的音/视频文件。l服务器将音/视频文件发送到客户指定的一个端口。l客户机使用媒体播放器播放音/视频文件。l通常采用RTP协议传输音/视频文件,采用RTSP(Real-Time Streaming Protocol)协议提供交互性操作。34Network-application使用Web服务器和流式服务器的实现35Network-application实时交互式音/视频需要一个会话控制协议,负责在会话的双方之间建立、管理和终止呼叫连接:l会话开始时,允许呼叫者通知被叫者开始一个呼叫,并协商媒体编码类型。l在呼叫持续阶段允许增加新的
23、媒体流、改变编码、邀请新的参与者、呼叫转移、呼叫保持等。l会话结束时,允许参与者结束呼叫。SIP和H.323是两个典型的会话控制协议,来自两个不同的标准组织。36Network-application6. 主机配置TCP/IP协议软件需要配置的条目包括:l本机IP地址l默认路由器的地址l子网掩码l本地DNS服务器地址l打印机服务器地址l其它服务器地址37Network-application动态主机配置协议DHCP计算机启动时,计算机广播一个DHCP请求。DHCP服务器在它的数据库中查找配置信息,如果数据库中含有对应于该计算机的入口,则服务器返回入口信息,否则从地址池中选择一个IP地址,用DH
24、CP响应分组发回。DHCP分配给主机的地址可以是永久的也可以是临时的(租用的):l服务器一般分配一个永久地址l一般计算机按需分配一个租用地址,在临时地址将到期时必须与DHCP服务器协商延长租期,否则该主机将不能再使用该IP地址。38Network-applicationDHCP(续)DHCP服务器不必和请求的计算机在同一个局域网中,这时每个局域网上要有一个DHCP中继。新启动的工作站广播一个DHCP发现分组,DHCP中继截获所有的DHCP广播,并采用单播方式向DHCP服务器发送。(图例)DHCP服务器不与域名系统交互,因此,当计算机改变地址时不能保留其名称。39Network-applicationDHCP的操作40Network-application练习题1.域名系统的作用是什么?2.电子邮件系统由哪三部分组成?各自的作用是什么?3.SMTP和POP3这两个协议的作用是什么?4.统一资源定位器由哪几部分组成?每一部分的作用是什么?5.浏览器、Web服务器和HTTP协议的作用是什么?41Network-application