目录
一、域名系统DNS
域名系统(domain name system)实际就是因特网使用的命名系统。我们知道,因特网上每个主机都有唯一的标识号,而这些标识号则是由32位二进制数组成,而DNS则是把这些二进制数码转化成了例如www.baidu.com的域名。
DNS工作机理
若用户主机上的应用程序需将主机域名转化为IP地址时,这些应用将调用DNS客户端,即向网络中发送一个使用UDP数据报经端口53发送的DNS请求报文;当DNS服务器收到该请求后,在自己的层次结构中进行递归式的查询,然后做出应答返回对应的IP地址。
DNS服务器也有自己的层次划分:
- 根DNS服务器:主要用来管理互联网的主目录。
- 顶级域DNS服务器:负责顶级域名,诸如我们熟悉的com,org,net,edu,gov以及各个国家的顶级域名的转换。
- 权威DNS服务器:具有公共可访问主机的每个组织机构必须公共可访问的DNS记录,这些记录将主机名映射为IP地址。一个组织的权威DNS服务器收藏了这些DNS记录。
DNS缓存
实际上,如果一个地区请求DNS服务过多,那么将会占用较多的带宽和较大的时延,所以为了在一定程度上减少DNS报文数量,这里引入了DNS缓存技术。实际就是在DNS层次结构中的请求链上,当本地DNS服务器接收到一个DNS回答,它将该回答的信息缓存在本地存储器中;当在该局域网中第二次发送相同的DNS请求时,则该本地DNS服务器将直接返回存储在本地存储器中的IP地址,而不是要经历根DNS-顶级域DNS-权威DNS的遍历查询。
二、客户-服务器体系结构
在客户-服务体系结构(client-server architecture)中,有一个总是打开的主机称为服务器,它服务于来自许多其他称为客户的主机的请求。
HTTP协议
HTTP超文本传输协议(HyperText Transfer Protocol)是Web的核心,其由一个客户程序和一个服务器程序组成,具体体现为Web客户端向Web服务器请求Web页面的方式及服务器向客户端传送Web页面的方式。
在一个Web页面中,客户向服务器将发送不止一个HTTP请求,服务器也将向客户端应答不止一个HTTP报文;而且,这种客户-服务器交互是经TCP连接发送的,。所以这里有一个问题,如果所有的HTTP请求/相应对是经单一的TCP连接发送,则该应用是持续连接的;如果每个HTTP请求/相应对经单独的TCP连接发送,则该应用是非持续连接的。