小明学c++系列之第一篇:网络篇

胡适先生曾说:“发表是吸收的利器”,于是我写下这篇文章。我看了一些计算机基础,我感觉里面的知识都没有活力,于是,我希望用我的方式将计算机的工作机制正确地、简洁地、有趣地讲明白。这篇文章适用于没有计算机基础但希望了解计算机的人以及有一些计算机基础但是对计算机缺乏一个整体认知的人。

背景

小明学c++其实讲得是一个故事。话说有一天小明心血来潮,突然自学计算机。他听说C++是一个不错的计算机语言,于是他打开了电脑的浏览器,输入了一个网址:http://www.runoob.com/cplusplus/cpp-tutorial.html,然后浏览器出现了以下界面:这里写图片描述
其实这跟我们平时用浏览器浏览资讯、看看视频没有什么区别;那么,从小明在浏览器上输入网址,到最终显示菜鸟网站的C++教程,这期间到底发生了什么?

基础知识

我们先来看看这个网址吧:
这里写图片描述
原来网址的专业术语叫做统一资源定位符URL(Uniform Resource Locator),在互联网上就是通过这个东西来区分不同的文档和资源的。
那么这个URL就包含了三个部分:
(1)所使用的协议:这里使用超文本传送协议(Hypertext Transfer Protocol),它是一种应用层协议。

这里有两个名词(协议和应用层)可能需要解释一下,协议就是规则的集合,因为如果计算机跟计算机之间通信时用不同的语言是不能交流的,所以必须统一用一种语言,那么这个语言就是HTTP协议。这个协议大家都知道怎么用,于是就能够交流了。而应用层是计算机网络分层思想产生的一个层次。分层思想是一个很重要的思想,因为互联网非常庞大,因此通信时很复杂的一件事情,为了使得分工更加明确,人们把网络网络组网分为好几个层次,其中应用层是最高层,这一层主要负责实现具体的网络应用的,包括邮箱啊、上网啊、看视频啊、传文件啊等等。

(2)主机域名:www.runoob.com,这是菜鸟网站的域名。通俗地说就是网站的名字,让人更加容易记住。比如说www.baidu.com就是百度网站的名字一样。跟域名相对的,是IP地址,我们知道IP地址是标识某一台具体的计算机的。一般情况下,IP地址跟域名具有对应关系,我们在windows系统的cmd用ping命令就可以查到某域名对应的IP地址:
这里写图片描述
上图表明,www.runoob.com 对应的ip地址是183.61.180.185。
那么为什么要域名呢?因为域名好记啊。
为什么要有IP地址呢?因为域名往往是不规则的,长短不一的。有的域名很长,有的域名很短,到了计算机网络的路由部分,很不容易找到通往目的计算机的一条道路,于是就用IP来找路。后面我们还会详细地讲解如何根据IP来找路。
(3)路径名:cplusplus/cpp-tutorial.html,这里表示在菜鸟网站主机的哪个地方获取资源。这里的资源就是cpp-tutorial.html。通过后缀名html就可以知道这是一个用超文本标记语言html写出来的文件。html是一种标记语言,比如说我要显示一篇文章,就直接用不同的标记直接说明我要在这里显示标题,在标题下面显示主体,然后在主体的某个部分插入图片。
这里写图片描述
上图的左边是html代码,右边是浏览器的现实结果;这里头的head/p/img都是不同的标记。

第一步:找到这个域名对应的IP地址

小明很懒,只留下了一个网址,剩下的所有工作都交给计算机自己去搞了。
计算机也不辞劳苦,尽心尽力。它知道,要想联系菜鸟网站,让它把c++的教程发过来,就首先需要找到它的IP地址。那么怎么找呢?
在网络上有一个专门的部门(由计算机组成)来做这件事,那就是域名系统DNS。
DNS专门负责从域名到IP地址的转换。在这个系统里面,是由服务器组成的。服务器可以理解为专门提供某种服务的计算机,比如DNS服务器就是提供域名到IP转换服务的计算机。
在这个系统里面分为不同的角色,根域名服务器是最高级的域名服务器,它知道所有顶级域名服务器的域名和IP;顶级域名服务器负责管理该顶级域名服务器下的所有二级域名;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值