计算机网络: 入门

《计算机网络: 入门》

这学期修了一门叫 Network Lab 的课,主要还是讲计算机网络部分的,对于学习前端的我来说还是很有帮助。这个文集将记录这门课的核心内容。

分层

对于怎么有效地去组织整个网络系统是十分重要的,毕竟不能说我发一个包到另一个地方那么简单。我们可以参考一下机场的组织形式,因为它跟计算机网络是十分相像的,大家都是负责传递东西的。

《计算机网络: 入门》 机场结构

从上图可以看到,机场的管理分了好几层:

  1. 先买票
  2. 去托运行李
  3. 过安检
  4. 起飞
  5. 飞行中,根据 GPS 来导航到目的地
  6. 到达
  7. 出关
  8. 拿行李

类比一下,计算机里网络也是这样分发包的:

《计算机网络: 入门》 计算机里的“机场”

上面可以简化成这样的分层形式:

《计算机网络: 入门》 网络分层

注意:这里的分层是对于每台计算机都是这样的,但是路由器或者特殊的机器可能只有 Link 和 Physical 两层。

传递信息

一般来说,信息的传递是在一台机器里从 Application 开始先传到 Pyhsical,然后通过网线再传递到加一台机器的 Physical,最后从下往上传回第二台机器的 Application。如图:

《计算机网络: 入门》

你可能想问这个 Ht, Hn, Hi 是什么,这就是这个信息的头部,有点像请求头。但是这里是每下到一层(除了 Physical)都会加一个 Header,所以在 Source 那我们可以看到有 3 个 Header。然后每往上一层又会去掉一个 Header,所以在 Destination 的 Application 可以看到只有一个 M。

Header 一般用来存每一层和该包的信息。

IP 地址

先说说网络中的接口,简单来说接口(Interface)就是指连接两个机器的口,通常来说路由器是有多个接口而主机 (Host) 就只有一两个。

IP 地址通常是由 32 Bits来构成的,也就是 4 个 Bytes,每个 Byte = 8 个Bits。我就不想说位和字节了,因为以前学中文的计网的时候总容易弄错。

《计算机网络: 入门》

IP 地址和这个网络接口又有什么关系呢?IP 是这个网络接口对应网络的唯一编号。它有两个组件部分:

  1. Network Prefix,相当于地址里的街道号
  2. Host Number,相当于家里的门牌号

这里你可能会问,这 IP 是怎么去区分哪个是 Prefix,哪个又是 Host 呢?这里就要说到 Network Mask 了。在传递信息的时候,上面的 IP 一般在后面加一个数字,如 128.143.137.144/16。这个 16 就表示前 16 个 Bits 是 Prefix,是已经固定好了,后 16 Bits (32-16) 就是 Host。所以,上面的 IP 可以写成这样:

  1. Network Prefix: 128.143.0.0
  2. Host Number: 0.0.137.144

那当然上面十进制也可以写成 16 进制的,不过大家一般看的都是十进制啦。

    原文作者:严海翔
    原文地址: https://www.jianshu.com/p/4e5bcc05bae9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞