电脑出现扫盲什么意思,电脑出现电脑标志什么意思

首页 > 上门服务 > 作者:YD1662023-11-17 20:04:06

文章目录 (本着学习至上的原则分享本文)

★本文的目标读者
★基本概念
★从“分层”到“参考模型”
★OSI 概述
★物理层:概述
★物理层:具体实例
★链路层:概述
★链路层:具体实例
★网络层:概述
★网络层:具体实例
★传输层:概述
★传输层:具体实例
★业务层(OSI 上三层):概述
★业务层(OSI 上三层):具体实例
★杂项
★参考书目

★本文的目标读者


  今天这篇的标题是“扫盲”,也就是说:即使那些完全不懂 IT 领域,也不懂通讯领域的读者,依然能看懂(至少能看懂一部分)。为了做到这点,俺会尽量使用通俗的比喻,并适当加一些示意图。
  另外,就算你已经比较了解网络通讯领域,本文中提到的某些部分,也可能是你所不知道的。也就是说:懂行的同学,看看此文,也会有帮助。
  本文的标题特地强调了【系统性】——俺希望这篇教程能帮助读者对“计算机网络”这个领域进行系统性学习。
  为了做到【系统性】这个目的,这篇教程很长。建议大伙儿慢慢看,不要着急。
★基本概念


  为了足够通俗,俺先要介绍一些基本概念。

◇信道(channel)


  这是通讯领域非常基本的概念,肯定要先聊聊它。
  通俗地说,信道就是“传送信息的通道”。

◇信道的类型


  首先,信道可以从广义上分为“物理信道 & 逻辑信道”。
  顾名思义,“物理信道”就是直接使用某种【物理介质】来传送信息;至于“逻辑信道”——是基于“物理信道”之上抽象出来的玩意儿(待会儿讲到“协议栈”的时候再聊)。

◇信道的带宽


  “带宽”指的是:某个信道在单位时间内最大能传输多少比特的信息。
  请注意:
  电气领域 & 计算机领域都有“带宽”这个概念,但两者的定义不太一样。电气领域所说的“带宽”指的是“模拟带宽”,单位是“赫兹/Hz”;计算机领域所说的“带宽”指“数字带宽”,单位是“比特率”或“字节率”。
  后续章节提到“带宽”,都是指计算机领域的术语。

◇带宽的单位——容易把外行绕晕


  “比特率”或“字节率”很容易搞混淆。用英文表示的话——大写字母B表示【字节】;小写字母b表示【比特】。
  由于带宽的数字通常很大,要引入“K、M、G”之类的字母表示数量级,于是又引出一个很扯蛋的差异——“10进制”与“2进制”的差异。
  【10进制】的K表示 1000;M表示 1000x1000(1百万)
  【2进制】的K表示 1024(2的10次方);M表示 1024x1024(2的20次方)
  为了避免扯皮,后来国际上约定了一个规矩:对【2进制】的数量级要加一个小写字母i。比如说:Ki表示 1024;Mi表示 1024x1024 ...... 以此类推。
  举例:
  1Kbps 表示“1000比特每秒”
  1KiBps 表示“1024字节每秒”

◇信道的工作模式:单工 VS 半双工 VS 全双工


  再来说说信道的工作模式。大致可以分为如下三种。为了让大伙儿比较好理解,俺对每一种都举相应的例子。
  单工(simplex)
  比如“电台广播”就是典型的【单工】。“电台”可以发信号给“收音机”,但“收音机”【不能】发信号给“电台”。
  半双工(half-duplex)
  比如“单条铁路轨道”,就是典型的【半双工】。火车在单条铁轨上,可以有两种运行方向;但对于同一个瞬间,只能选其中一个方向(否则就撞车了)。
  全双工(full-duplex)
  比如“光纤”就是典型的【全双工】。在同一根光导纤维中,可以有多个光束【同时相向】传播,互相不会干扰对方。

◇端点


  为了叙述方便,俺把参与通讯的对象(主体)称作“通讯端点”,简称“端点”。
  这里的“端点”是广义的,可以是硬件(比如某个网卡),也可以是软件(比如某个应用程序)。

◇单播、组播/多播、广播、选播


  对于“网络通讯”,至少得有 N 个端点参与,并且【N ≥ 2】才有意义。
  当 N 个端点构成一个网络,这时候就会涉及到“单播、组播、广播”这几个概念。
  通俗地说:
单播(unicast)——发送给网络中的指定的【单个】端点
组播/多播(multicast)——发送给网络中的指定的【多个】端点
广播(broadcast)——发送给网络中的【所有】端点
选播(anycast)——发送给网络中随机选择的【单个】端点

◇通讯协议(protocol)


  所谓的“通讯协议”就是:参与通讯的各方所采用的某种【约定】。只有大家都遵守这个约定,才有可能相互传递信息。
  打个比方:如果两个人要用自然语言交流,前提是:双方使用相同(或相互兼容)的自然语言。
  “通讯协议”就类似某种自然语言,参与通讯的多个端点,都必须能理解这个语言。

★从“分层”到“参考模型”◇分层


  在聊“分层”之前,先说说“分工”。比如在一个公司中,通常设有不同的工种/岗位,这就【分工】。
  对于网络通讯也是如此,不太可能用一种通讯协议完成所有的信息传递任务(注:对于特别简单的网络,或许有可能只用单一协议;但如今的网络通讯已经很复杂,用【单个】通讯协议包办所有事情,已经不太可能)
  一旦采用了多种通讯协议,这几种协议之间,该如何配合捏?
  在网络通讯领域,采用的是【分层】的设计思路。多个层次的协议在一起协同工作,技术上称作“协议栈”(洋文叫做“protocol stack”)。

◇协议栈的原理


  对于多层次的协议栈。每个层次都有各自的“端点”(进行通讯的主体)。处于【同一层次】的两个端点会使用该层次的协议进行通讯(注:同一个层次的协议,可能只有一个,也可能有多个)。
  除了最顶层,每个层次的端点会向其【直接】上层提供“服务”;除了最底层,每个层次的端点会调用【直接】下层提供的“服务”(这里所说的“服务”指某种“编程接口”,技术行话叫 API)。


(“协议栈”的示意图)

电脑出现扫盲什么意思,电脑出现电脑标志什么意思(1)

电脑出现扫盲什么意思,电脑出现电脑标志什么意思(2)


(“服务”与“协议”之间的关系)

◇逻辑信道

电脑出现扫盲什么意思,电脑出现电脑标志什么意思(3)


  (前一个小节说了)每个层次会向上一个层次提供服务(API 调用)。对上层而言,调用下层提供的 API 发送信息,其效果相当于在使用某种【信道】进行通讯,这也就是俺在★基本概念那个章节所说的“逻辑信道”。


(“逻辑信道”示意图)

◇数据格式的原理


  大部分协议会把要传送的数据切割为 N 份,每一份就是一个数据包。
  通常来说,数据包的格式有如下三部分:

头部
身体(也称作“有效载荷”)
尾部(注:很多协议没有尾部)

  如果你收过快递,可以把“网络数据包”与“快递包裹”作一个对照——
数据包的“头/尾”,就类似于快递包裹的【包装袋】。数据包的“身体”,就类似于快递包裹里面的东西。
  对于【相邻】两层的协议,【下】层包含【上】层。也就是说:下层协议的【载荷】就是上层协议的【整体】。
  还是以快递举例:
  假设你从网上买了一台笔记本电脑。电脑出厂时,电脑厂商肯定会提供一个包装盒。快递公司在寄送这台笔记本的时候,又会在笔记本的盒子外面再加一个包装袋。对应到网络协议——“快递公司的包装袋”相当于【下层】协议;“电脑厂商的包装盒”,相当于【上层】协议。

电脑出现扫盲什么意思,电脑出现电脑标志什么意思(4)

首页 12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.