
1.1.2 找到主机
互联网上的服务器成千上万,我们要访问的服务器是互联网上数千万台服务器中的一台,很可能远在地球的另一边。浏览器要找到服务器,需要提供服务器的网络地址。
在当前的TCP/IP协议下,所谓服务器的网络地址,就是一个IP地址,目前我们使用IPv4的地址,即IP协议的第4版规定的地址,每个地址由四个字节共32位组成。理论上讲,可以表示4G个网络地址。通常我们使用圆点分隔的四个数字来表示一个地址,每个数字对应地址的一个字节,例如,微软的IP地址为:207.46.19.254,直接在地址栏中输入http://207.46.19.254 也可以看到如图1-1所示的网页。
但是,这些数字实在很难让人记忆,人们更愿意通过一个有意义的名字来找到一台主机。在经历了短暂的互联网初期阶段之后,1983年,保罗·莫卡派乔斯(Paul Mockapetris)发明了域名系统,这样,在互联网上,我们可以为IP地址起一个有意义的名字以方便寻找主机,这个名字称为域名。比如,微软 Web服务器的域名为www.microsoft.com,这个名字对应实际IP地址207.46.19.254。
虽然这个名字很好记,但是只有这个名字并不能直接找到微软的Web服务器,必须建立名字和地址之间的对应关系。这个工作由域名服务器 DNS(即 Domain Name Server)完成。DNS服务器提供一个类似于分层的通讯录,允许用户通过域名来查找对应的地址,或者通过地址来查找对应的域名。通常情况下,互联网服务商已经帮我们自动设置了DNS服务器,因此可以简单地通过www.microsoft.com 域名找到微软的Web服务器。
找到服务器之后,需要将请求从我们的客户端传输到服务器,那么,两台计算机是如何通信的呢?它们如何才能理解彼此发送的数据呢?这就需要提到协议。