应用层(三)
目录
2.5 DNS:因特网的目录服务
- DNS提供的服务
- DNS工作机理概述
- DNS记录和报文
2.6 P2P应用
- P2P文件分发
- 分布式散列表
2.7 TCP套接字编程
- UDP套接字编程
- TCP套接字编程
2.5 DNS:因特网的目录服务
因特网上的主机跟人类一样,可以使用多种方法进行标识。主机的一种标识方法是用它的主机名,如afra。但主机名几乎没有提供关于主机在因特网中位置的信息,况且,主机名可能由不定长的字母数字组成,路由器难以处理。由于这些原因,主机也可以使用所谓的IP地址进行标识。
一个IP地址由4个字节组成,并有着严格的层次结构。当我们从左到右扫描它时,我们会得到越来越具体的关于主机位于因特网何处的信息。类似地,当我们从下向上查看邮政地址时,我们能够获得该地址位于何处的越来越具体的信息。
2.5.1 DNS提供的服务
我们用域名系统来进行主机名到IP地址转换的目录服务。
DNS是:
- 一个由分层的DNS服务器实现的分布式数据库
- 一个使得主机能够查询分布式数据库的应用层协议
DNS通常是由其他应用层协议所使用的,包括HTTP、SMTP和FTP,将用户提供的主机名解析为IP地址。
DNS还提供了一些重要的服务:
- 主机别名(host aliasing)。
- 邮件服务器别名(mail server aliasing)。
- 负载均衡(load distribution)
2.5.2 DNS工作机理概述
下面给出一个DNS工作过程的总体概括,我们的讨论将集中在主机名到IP地址转换服务方面。
假设运行在用户主机上的某些应用程序(如Web浏览器或邮件阅读器)需要将主机名转换为IP地址。这些应用程序将调用DNS的客户端,并指明需要被转换的主机名。影虎主机上的DNS接收到后,向网络中发送一个DNS查询报文,所有的DNS请求和回答报文使用UDP数据报经端口53发送。经过若干毫秒到若干秒的时延后,用户主机上的DNS接收到一个提供所希望映射的DNS回答报文。这个映射结果则被传输到调用DNS的应用程序。因此,从用户主机上调用应用程序的角度看,DNS是一个提供简单,直接的转换服务的黑盒子。但事实上,实现这个服务的黑盒子非常复杂,它由分布于全球的大量DNS服务器以及定义了DNS服务器与查询主机通信方式的应用层协议组成。

- 分布式,层次数据库