17计算机网络2014~2015第一学期应用层(1)主讲:刘宏月E-mail:hautxxxylhy@126.com2/722019/12/20学习目标了解域名系统的基本知识,掌握域名解析的工作原理,了解因特网的域名结构。了解FTP、HTTP、HTML、等概念,并掌握其工作原理。3/722019/12/20应用层协议的特点每个应用层协议都是为了解决某一类应用问题,而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。应用层的具体内容就是规定应用进程在通信时所遵循的协议。应用层的许多协议都是基于客户服务器方式。客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。4/722019/12/20目录1域名系统DNS2文件传送协议3远程终端协议TELNET4万维网5/722019/12/20域名系统概述许多应用层软件经常直接使用域名系统DNS(DomainNameSystem),但计算机的用户只是间接而不是直接使用域名系统。因特网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统DNS。名字到IP地址的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器。6/722019/12/20因特网采用了层次树状结构的命名方法。任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。域名的结构由标号序列组成,各标号之间用点隔开:….三级域名.二级域名.顶级域名各标号分别代表不同级别的域名。因特网的域名结构7/722019/12/20域名只是个逻辑概念域名只是个逻辑概念,并不代表计算机所在的物理地点。变长的域名和使用有助记忆的字符串,是为了便于人来使用。而IP地址是定长的3位二进制数字则非常便于机器进行处理。域名中的“点”和点分十进制IP地址中的“点”并无一一对应的关系。点分十进制IP地址中一定是包含三个“点”,但每一个域名中“点”的数目则不一定正好是三个。8/722019/12/20顶级域名TLD(TopLevelDomain)(1)国家顶级域名nTLD:如:.cn表示中国,.us表示美国,.uk表示英国,等等。(2)通用顶级域名gTLD:最早的顶级域名是:.com(公司和企业).net(网络服务机构).edu(美国专用的教育机构).gov(美国专用的政府部门).mil(美国专用的军事部门).int(国际组织)(3)基础结构域名(infrastructuredomain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此又称为反向域名。9/722019/12/20新增加了下列的通用顶级域名.aero(航空运输企业).biz(公司和企业).cat(加泰隆人的语言和文化团体).coop(合作团体).info(各种情况).jobs(人力资源管理者).mobi(移动产品与服务的用户和提供者).museum(博物馆).name(个人).pro(有证书的专业人员).travel(旅游业)10/722019/12/20因特网的域名空间根四级域名mail……bjeducom…cctvibmhp二级域名pkutsinghua…三级域名mail…comnetorgedugovaerocnuk…顶级域名……清华大学的web服务器网站是:域名服务器一个服务器所负责管辖的(或有权限的)范围叫做区(zone)。各单位根据具体情况来划分自己管辖范围的区。但在一个区中的所有节点必须是能够连通的。每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。DNS服务器的管辖范围不是以“域”为单位,而是以“区”为单位。12/722019/12/20区的不同划分方法举例域abc.com区abc.comabcxuvwty(a)区=域(b)区域域abc.com区abc.com区y.abc.comabcxuvwtycomeduorg根comeduorg根13/722019/12/20树状结构的DNS域名服务器根域名服务器org域名服务器com域名服务器edu域名服务器…y.abc.com域名服务器abc公司有两个权限域名服务器权限域名服务器根域名服务器顶级域名服务器abc.com域名服务器14/722019/12/20本地域名服务器当一个主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。每一个因特网服务提供者ISP,或一个大学,甚至一个大学里的系,都可以拥有一个本地域名服务器。这种域名服务器有时也称为默认域名服务器。15/722019/12/20提高域名服务器的可靠性主域名服务器:DNS域名服务器都把数据复制到几个域名服务器来保存,其中的一个是主域名服务器,其他的是辅助域名服务器。当主域名服务器出故障时,辅助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅助域名服务器中,而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性。16/722019/12/20域名的解析过程递归查询:主机向本地域名服务器的查询。如果主机所询问的本地域名服务器不知道被查询域名的IP地址,那么本地域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文。迭代查询:本地域名服务器向根域名服务器的查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。17/722019/12/20本地域名服务器采用迭代查询顶级域名服务器dns.com权限域名服务dns.abc.com本地域名服务器dns.xyz.com根域名服务器迭代查询y.abc.com的IP地址m.xyz.com递归查询需要查找y.abc.com的IP地址18/722019/12/20本地域名服务器采用递归查询(比较少用)顶级域名服务器dns.com权限域名服务dns.abc.com本地域名服务器dns.xyz.comm.xyz.com根域名服务器递归查询递归查询y.abc.com的IP地址需要查找y.abc.com的IP地址19/722019/12/20名字的高速缓存高速缓存:存放最近用过的名字以及从何处获得名字映射信息的记录。为保持高速缓存中的内容正确,域名服务器应为每项内容设置计时器,并处理超过合理时间的项(例如,每个项目只存放两天)。20/722019/12/20目录1域名系统DNS2文件传送协议3远程终端协议TELNET4万维网21/722019/12/20文件传送协议文件传送协议FTP(FileTransferProtocol)是因特网上使用得最广泛的文件传送协议。FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限。22/722019/12/20FTP特点文件传送协议FTP使用TCP的运输服务。FTP的主要功能是减少或消除在不同操作系统下处理文件的不兼容性。FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。23/722019/12/20主进程的工作步骤如下打开熟知端口(端口号为21),使客户进程能够连接上。等待客户进程发出连接请求。启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。24/722019/12/20两个连接控制连接在整个会话期间一直保持打开,FTP客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。熟知端口(21)实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到FTP客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程。熟知端口(20)数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。25/722019/12/20FTP使用的两个TCP连接控制进程FTP客户端FTP服务器端因特网TCP控制连接TCP数据连接用户界面控制进程数据传送进程数据传送进程26/722019/12/20目录1域名系统DNS2文件传送协议3远程终端协议TELNET4万维网27/722019/12/20远程终端协议TELNETTELNET是一个简单的远程终端协议,也是因特网的正式标准。用户用TELNET就可在其所在地通过TCP连接注册(即登录)到远地的另一个主机上(使用主机名或IP地址)。TELNET能将用户的击键传到远地主机,同时也能将远地主机的输出通过TCP连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。28/722019/12/20客户服务器方式现在由于PC机的功能越来越强,用户已较少使用TELNET了。TELNET也使用客户服务器方式。在本地系统运行TELNET客户进程,而在远地主机则运行TELNET服务器进程。和FTP的情况相似,服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接。29/722019/12/20目录1域名系统DNS2文件传送协议3远程终端协议TELNET4万维网30/722019/12/20万维网万维网(WorldWideWeb)并非某种特殊的计算机网络。万维网是一个大规模的、联机式的信息储藏所。万维网用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息。这种访问方式称为“链接”。31/722019/12/20万维网提供分布式服务万维网站点A万维网站点C万维网站点E万维网站点D万维网站点B32/722019/12/20超媒体与超文本超文本:一个超文本由多个信息源链接成。利用一个链接可使用户找到另一个文档。这些文档可以位于世界上任何一个接在因特网上的超文本系统中。超文本是万维网的基础。超媒体:与超文本的区别是文档内容不同。超文本文档仅包含文本信息,而超媒体文档还包含其他表示方式的信息,如图形、图像、声音、动画,甚至活动视频图像。33/722019/12/20万维网的工作方式万维网以客户服务器方式工作。浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器。客户程序向服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档。在一个客户程序主窗口上显示出的万维网文档称为页面(page)。34/722019/12/20万维网必须解决的问题(1)怎样标志分布在整个因特网上的万维网文档?使用统一资源定位符URL(UniformResourceLocator)来标志万维网上的各种文档。使每一个文档在整个因特网的范围内具有唯一的标识符URL。35/722019/12/20万维网必须解决的问题(2)用何协议实现万维网上各种超链的链接?在万维网客户程序与万维网服务器程序之间进行交互所使用的协议,是超文本传送协议HTTP(HyperTextTransferProtocol)。HTTP是一个应用层协议,它使用TCP连接进行可靠的传送。36/722019/12/20万维网必须解决的问题(3)怎样使各种万维网文档都能在因特网上的各种计算机上显示出来,同时使用户清楚地知道在什么地方存在着超链?超文本标记语言HTML(HyperTextMarkupLanguage)使得万维网页面的设计者可以很方便地用一个超链从本页面的某处