【网络】网络通识

112 阅读10分钟

网络的初衷和本质是计算设备连接在一起,共享资源(数据)

连接方式

计算设备的主要连接方式有直连和星型两种:

连接方式特点
直连* 速度快、简单
* 链路成本、维护成本极高
* 目前网线的最长大约 100m,一旦过长就会有传输质量、信号衰减的问题。需要中继
* 多方互联的时候,每一方都需要和其它方构建链路
* 新加入一台设备,需要与所有其它设备进行链接
* 多用于局域网测试网络
星型* 每加入一台设备时,只需要将它链接到中心设备
* 把不同网络的中心设备相互链接,就可以实现了两个较远距离网络的通信

网络通常是一个混合结构:

  • 中心设备称为交换结点,通常是路由器或交换机
  • 交换结点构成交换网络,交换网络连接着计算设备,这里的计算设备指一切可接入网络的设备
  • 交换网络的作用是将源主机发送的数据正确的转发到目的主机,称为数据交换。主要由交换结点完成

计算机网络

进一步对网络进行划分:

名称设备
网络边缘主机、网络应用
接入网络,物理介质有线或无线通信链路
网络核心(核心网络)互联的路由器(或分组转发设备)

网络边缘

网络边缘从硬件和软件可分别定义为:

  1. 主机(端系统):手机、电脑、平板、IoT...
  2. 运行网络应用程序:Web、Email……

网络应用程序可以提供不同的应用模型(不同的服务方式)

客户端/服务器(client/server)应用模型

客户发送请求,接收服务响应:Web、FTP……

  • 服务器拥有所有资源
  • 服务器如果不能承受大量客户端请求,需要扩容,比较困难
  • 服务器随着客户端的增加,服务器的性能断崖式下降(非线性)—— 可扩展性问题
  • 服务器宕机 —— 稳定性问题
  • 服务器或许能承受,网络带宽不能

对等(peer-peer,P2P)应用模型

无(或不仅依赖)专用服务器,主机既是 Client 也是 Server,是对等的。通信在对等的实体之间直接进行:QQ、BT……

接入网络

网络边缘接入网络核心的方式称为接入网络:住宅(家庭)接入网络、机构(学校、企业等)接入网络、移动接入网络。对于网络用户,关心的主要内容有:

  1. 带宽(bandwidth)(bps)
  2. 是共享还是独占?

目前接入网路的方式有很多种,部分如下:

名称接入方式速率特点
数字用户线路DSL利用已有的电话线连接中心局的 DSLAM 。数据通信通过 DSL 电话线接入 Internet;语音(电话)通过 DSL 电话线接入电话网< 2.5 Mpbs 上行传输速率,典型速率 < 1 Mbps> 24 Mpbs 下行传输速率,典型速率 < 10 MbpsFDM(频分多路复用):在不同频带(载波)上传输不同频道。> 50 kHz - 1 MHz 用于下行; 4 kHz - 50 KHz 用于上行; 0 kHz - 4 KHz 用于传统电话独占到中心局的接入
混合光纤同轴电缆HFC各家庭(设备)通过电缆网络 --> 光纤接入因特网服务提供商(ISP,如电信、移动、联通)的路由器下行高达 300 Mbps 传输速率,上行为 2 Mbps 传输速率各家庭共享家庭到电缆头端的接入网络
机构(企业)接入网络端系统通常直接连接以太网交换机(switch)典型传输速率:10 Mbps、100 Mbps、1 Gbps、10 Gbps主要用于公司、高校、企业等组织机构
无线接入网络通过共享的无线接入网络连接端系统与路由器,如基站

网络核心

网络核心是互联的路由器网络,关键功能是路由+转发

  • 路由(routing):确定分组从源到目的传输的路径,由路由算法管理
    • 属于全局的控制层面:表现为对从源到目的整条链路的控制
  • 转发(forwarding):将分组从路由器的输入端口交换至正确的输出端口
    • 属于局部的数据层面:表现为对完整链路中某个路由器的输入口转发到输出口

网络核心解决的基本问题是:如何实现数据从源主机通过网络核心送达目的主机?—— 即数据交换

Internet

我们说的 Internet 是全球最大的互联网络。它一方面为网络应用如 Web、email、网络游戏、社交网络提供着通信服务,另一方面为网络应用提供着 API,比如发送、接收文件数据的 API

Internet 组成

  1. 数以百万计的互连的计算设备(电脑、手机、智能手表、摄像头....)的集合,运行着各种网络应用,如 http/https 网站、ftp 服务器、邮件系统等。一般使用【主机】或者【端系统】指代。
  2. 通信链路:光纤、铜缆、无线电、卫星等等一切接入网络的方式
  3. 分组交换:数据交换的一种方式,用于转发分组(数据包),由路由器(routers)和交换机(switches)(交换结点)实现

总的来说,就是主机通过通信链路接入数据交换网络完成通信

数据交换

数据交换除了可以解决主机两两互联的 N2N^2 链路问题:N 台主机要两两互连,需要 N(N1)2\frac{N(N−1)}{2} 条链路,规模大的时候不切实际,还可以动态分配传输资源

数据交换有以下几种类型:

  1. 电路交换
  2. 报文交换
  3. 分组交换

电路交换

最典型的电路交换网络:电话网络。电路交换的三个阶段:

  1. 建立连接(呼叫/电路建立)
  2. 通信
  3. 释放连接(拆除电路)

电路交换是独占资源的,但也存在共享的中继线。电路交换由于线路建立时间长、不可靠,不适合突发式(burst)的计算机之间的通信

报文交换(message switching)

  • 报文:源(应用)发送的信息整体,如:一个文件
  • 报文交换直接发送信息整体,如果发送信息过大,会占用链路较长时间,阻碍其它用户发送信息

分组交换(package switching)

  • 分组:报文分拆出来的一系列相对较小的数据包(packet),每个分组需要额外的分组头
  • 分组交换需要报文的拆分重组,会产生额外的开销(分组头、拆分、重组)
  • 可能会排队:增加时延,如果中间的交换节点 buffer 满了还会丢包。这个时延和丢包是不确定的
  • 统计多路复用:A & B 在通信链路中的分组序列不确定,按需共享链路

按照有没有连接继续区分,分组交换可分为:

  • 虚电路网路
  • 数据报网络,互联网为数据报网络

虚电路(VC)

在每个小单元都建立连接,先趟一遍找到路径,做好标记(虚电路号,VC号),结合路由器的转发表,之后一直延该路径进行转发

报文交换和分组交换的对比

均采用 存储-转发 的交换方式:

  • 报文交换以完整报文进行存储-转发
  • 分组交换以较小分组进行存储- 转发

对于以下拓扑:

有 M(如 7.5Mb) bits 的报文,链路的传输速率即带宽为 R bits/sec(如 1.5Mbps),路由器数为 n(2,跳步数 h = n + 1 = 3):

报文交换

直接发送 M bits 报文:

  1. 第一段 M / R = 7.5 / 1.5 = 5 s
  2. 第二段 M / R = 7.5 / 1.5 = 5 s
  3. 第三段 M / R = 7.5 / 1.5 = 5 s

共计:15 s,交换结点需要 M bits = 7.5 Mbits 的缓存大小

分组交换

每个分组(packets):L bits,如 1500 bits,分组传输延迟(时延)delay = L / R

7.5 Mb 数据将分为 5000 组,每组 1500 bits:

  1. 第 1 个分组,第一段 L/R=15001.5×106=1 msL / R = \frac{1500}{1.5×10^6} = 1\ ms
  2. 第 1 个分组,第二段 1 ms,此时第 2 个分组处于第一段
  3. 第 1 个分组,第三段 1 ms,此时第 2 个分组处于第二段,第 3 个分组处于第一段
  4. 当第 4998 个到达时,第 5000 个分组在第一段
  5. 还需 2 × 1 ms 的时间到达

共计:5002 ms = 5.002 s,交换结点需要 L bits = 1500 bits 的缓存大小

分组交换的报文交付时间: T=MR+(h1)LR=MR+nLRT=\frac{M}{R}+(h−1)\frac{L}R= \frac{M}R+n\frac{L}R

分组交换一定优于电路交换吗?

  • 分组交换允许更多的用户同时使用网络
  • 分组交换适用于突发数据传输网络
    • 资源充分共享
    • 简单、无需呼叫建立
  • 分组交换可能产生拥塞(congestion):分组延迟和丢失
    • 需要协议处理可靠数据传输和拥塞控制

哪怕是电路交换,交换结点之间的链路也需要为多个不同的用户传输数据,但是链路只有一条,交换节点通过多路复用区分这些数据

多路复用

简称复用,是通信技术中的基本概念,为网络提供基础功能支持,作用是将不同用户的数据经过同一信道传输出去。使用数据链路层的多路访问控制协议控制

  • 将链路/网络资源(如带宽)划分为 “资源片”
  • 将资源片分配给各路 “呼叫”
  • 每路呼叫独占分配到的资源片进行通信
  • 资源片可能 “闲置”(无共享)

多路复用有很多种方式,典型的多路复用方法有:

  • 频分多路复用
  • 时分多路复用
  • 波分多路复用
  • 码分多路复用

频分多路复用(FDM)

各用户占用不同的带宽资源(带宽指频率带宽,Hz,区分于数据发送速率) 每个用户分配到一定的频带后,在通信过程中自始至终都占用这个频带

时分多路复用(TDM)

将时间划分为一段段等长的时分复用帧(TDM 帧),每个用户在每个 TDM 帧中占用固定序号的时隙 每个用户所占用的时隙是周期性出现的(周期就是 TDM 帧的长度) 所有用户是在不同的时间占用相同的频带宽度

波分多路复用(WDM)

光的频分复用,分的是光波的波长

利用光调制器和光解调器来复用和分用

码分多路复用(CDM)

广泛应用于无限链路共享(蜂窝网、卫星通信等)

每个用户分配一个唯一的 m bit 的码片序列,“0” 用 “-1” 表示,“1” 用 “+1” 表示,如(-1 -1 -1 +1 +1 -1 +1 +1)。各用户使用 相同频率载波,利用各自码片序列编码数据。

编码信号 =(原始数据)X(码片序列)

解码:码片序列与编码信号的内积各用户码片序列相互正交,这样非自身码片序列与自身编码信号的内积为:

  • 发送比特 1(+1),则发送自己的 m bit 码片序列
  • 发送比特 0(-1),则发送该码片序列的 m bit 码片序列的反码