应用层概述
在internet,几乎所有的应用层系统都有相应协议支持,如HTTP支持Web应用,Telnet协议支持远程登陆应用,SMTP协议支持电子邮件应用,FTP协议支持文件传输应用,DNS支持域名系统。
在网络应用层每个协议都是为了解决相应问题而设计的,而这些问题的解决又往往是通过位于不同主机中的多个进程之间的通信和协同工作来完成的。这些为了解决具体应用问题彼此通信的进程就称为"应用进程"。而应用进程的具体内容就是规定应用进程在通信时所遵循的协议。
应用层协议
应用层协议的定义包括如下内容:
- 交换的报文类型,如请求报文和响应报文。
- 各种报文类型的语法,如报文中的各个字段详细描述。
- 字段的语义,即包含在报文中字段含义。
- 进程何时,如何发送报文及对报文进行响应。
目前应用层协议主要又以下几种:
- 域名系统(DNS):用于实现网络用户名到ip地址映射的网络服务。
- 文件传输协议(FTP):用于实现交互式文件传输功能。
- 简单邮件传输协议(SMTP):用于实现电子邮件传送功能。
- 简单网络管理协议(SNMP):用于管理和监视网咯设备。
- 超文本传输协议(HTTP):用于实现WWW服务。
- 远程登陆协议(Telnet):用于实现远程登录功能。
域名系统DNS
DNS简介
DNS域名系统是一个在TCP/IP网络中将计算机名字和IP地址相互转换的系统,它是由解析器以及域名服务器组成的。域名服务器保存该网络中所有主机的域名和对应IP地址,主要功能将域名转换为IP地址。DNS主要使用UDP协议,DNS服务器之间备份使用TCP,使用的端口号为53。其中域名必须对应一个IP地址,而IP地址不一定只对应一个DNS域名。域名系统采用类似
目录树的等级结构,域名服务器为客户机/服务器模式中的服务期方,它主要有两种形式:
主服务器和转发服务器。在Internet上域名与IP地址之间是一对一的,域名方便人们记住服务器名称,而服务器之间都是通过IP地址进行通信,它们之间的转换工作称为域名解析。
DNS注册查询需要由专门的郁闷解析服务器来完成,DNS就是进行域名解析的服务器,为用户提供域名查询和解析服务。DNS解析呈现树形结构,当前请求的服务器查询不到就把它提交给它的上级服务器,一直到成功解析。
域名服务器的层次结构
域名系统的一个主要特点是允许
区域自治。域名系统允许组织使用特定后缀来帮助完成自治功能。
域名服务器的基本工作原理
从本质上看来,域名系统,是以一个大型的分布式数据库的方式工作的。大多数具有internet连接的组织都有一个域名服务器。每个服务器包含连向其他域名服务器的消息,这些服务器形成一个大的协同工作的域名数据库。
域名服务器按层次结构组成,通过分布在各地的域名服务器来实现域名解析功能。每级的域名都有一个响应的域名服务器,可以使整个域名服务器呈现树状结构。
一个服务器所管割的范围叫做区。一个区中的所有节点必须是能够连通的,去可能等于或小于域,但绝不可能大于域。
域名解析过程
域名解析 :将域名转换为对应的IP地址的过程。
迭代查询 :客户端向某个DNS服务器发出查询请求,该DNS服务器根据其缓存中的内容或其区域数据库查找并返回一个最佳解析结果。如果该服务器不能解析请求,则返回一个指针,该指针指向域名空间中另一层的权威服务器,由客户端向这一服务器提出查询请求。
递归查询 :客户向某个DNS服务器发出查询请求后,该DNS服务器即承担此后的全部工作,当该DNS服务不能解析该请求时,则由该服务器向其他DNS服务器提交解析请求直到解析成功或返回一个错误。