计算机网络学习笔记——概论

一.互联网的组成

对互联网的理解:网络的网络,互联网是一个由无数网络组合而成的网络。

互联网整体可以划分为两大块:

  1. 边缘部分:由所有的连接在互联网上的主机组成(这里的边缘指的是互联网的边缘,例如日常使用中的家用电脑等)
  2. 核心部分:由大量网络和连接网络的路由器组成

 计算机网络学习笔记——概论_第1张图片

 通过这个图可以更好地理解什么是核心与边缘。 

 1.1互联网的边缘部分 

 一.客户/服务器方式(C/S)

简单理解就是一台机器为服务器提供服务,另一台为客户机接受服务。

以下图为例,机器A为客户端,机器B为服务端,即A为客户B为服务器。主机A向服务器B发出请求,主机B响应该请求并向A提供服务。

计算机网络学习笔记——概论_第2张图片

C/S方式的特点

  1. 服务器可以同时向多个端系统提供服务,同时处理多个客户机的请求。
  2. 客户机程序需要知道服务器程序的地址,服务器程序不需要知道客户机程序的地址。
  3. 客户机与服务器关系建立后,通信可以是双向的。二者都可以发送与接收数据。

C/S方式大家应该了解的更多,在日常的网络生活中接触的也更多。

 二.对等连接方式(p2p)

上述C/S方式最显著的特点便是一台机器提供服务,另一台接受服务。p2p方式与之不同,两台机器之间没有客户机与服务器之间的划分。他们可以平等的下载双方电脑中的共享文档,以对等的方式进行连接。可以理解为,两台机器之间既是客户机,又是服务器。

 计算机网络学习笔记——概论_第3张图片

 1.2互联网的核心部分  

 网络的核心部分需要向网络边缘中分布的大量主机提供服务以保持连通性,使边缘部分中的每一台主机都可以与其他主机相互通信。在这部分中路由器起到了非常特殊的作用,是实现分组交换的关键构件,其作用是接受转发分组,是网络中非常重要的功能。下面通过两个交换方式引出我们的分组交换。

1.电路交换

为了两台电话设备可以进行沟通,在两台电话之间需要一根电话线连接。只有几台电话的时候我们可以将所有的电话之间都连上电话线,但是不可能为了打电话,要连接所有的n*(n-1)/2条电话线(组合中的Cn2),于是交换机就出现了。

计算机网络学习笔记——概论_第4张图片

 在使用交换机后,打电话的方式就不在是两台电话之间的直接通讯了(是不是很像对等连接),需要先判断对方有没有占线打不进去电话啊,有没有在忙线啊。最后才能和对方打电话,在打完电话后挂掉电话,让其他客户可以向对方拨打电话。计算机网络学习笔记——概论_第5张图片

这种必须经历建立连接(占线)——>通话(打电话)——>释放连接(挂电话)的方式称为电路交换,它最大的特点就是在通话的时间内,通话的两个客户需要占用端到端通信资源。

2.报文交换

报文交换与电路交换有很大的区别,电路交换需要三个建立连接——>通话——>释放连接的过程,报文则是将内容发送到相邻的节点,全部储存下来之后,再将报文转发给下一个节点,最后达到目的地。采用了存储转发的技术进行信息的传递。

3.分组交换 

分组交换也采用了类似报文交换的存储转发技术,但是像它的名字一样,分组交换将一个完整的大报文分成了多个小的组,在每一个组的前面加上一点小小的数据段“段首”,一个分组就形成了。它的头部非常重要,包含了该分组从哪里来,到哪里去等等的重要信息。在报文交换中起到存储转发作用的是相邻的节点,在分组交换中起到相同作用的是路由器,它在这一过程中接受收到的分组,检查首部后,查找自己的转发表,再转发给下一个路由,最后到达目的主机。(这里很像数据结构中图的单源节点至另一节点的最短路径问题,但在分组交换中并不完全按照最短路径的形式发送)

计算机网络学习笔记——概论_第6张图片

 我们以上图为例进行分析,主机H1首先将分组发往与它直接相连的路由器A,路由器A接受存储收到的分组后,转发至其他路由B,C,最后到达主机H5。但我们可以在图中发现,链路H1-A只是当分组正在此链路上传送时才被占用,即该链路在传送白色分组时,当白色分组全部传送至路由A,存储转发至路由B时,链路H1-A仍然可以继续被其他主机正常使用,这和电路交换在进行沟通时要占据端对端的全部资源是不同的。

 在上图中我们可以看到分组在传输到达路由A后,出现了道路的“分叉”,这是因为当某一条链路的通信量太大时,为了减少排队时延,那么路由器可以把分组沿另一个路由进行转发。这也是我在上说这与图的单源最短路径问题不一样的地方,保证了较高的交换速率。

分组交换有很多优点,首先它不必要占用一条端到端的通信资源,哪一段链路上的分组进行传送时才会占用该链路的资源,同时,通过路由器的存储转发,这样逐段的占用通信资源,还省去了建立连接和断开连接的开销,传输效率更高。但也不是所有的情形下分组交换都是优于电路交换与报文交换的,例如分组的包头就产生了额外的开销,同时将报文分组后也有可能会导致分组丢失的问题,前面的两者在丢失之后只需要重新发送即可,分组交换再一次进行报文的重新发送也会新产生额外的包头开销,以及之前的分组报废的问题,或者是分组交换最后到达产生的报文失序问题。总而言之,技术进步也会随之带来新的问题,新的技术也不是一定在任何场合下优于旧技术。

4.三者的比较

电路交换

电路交换需要建立一条专用的数据通信路径,这条路径上可能包含许多中间节点。这条通信路径在整个通信过程中将被独占,直到通信结束才会释放资源。电路交换适合实时性要求较高的大量数据传输的情况。

电路交换的优点:

  • 通信时延小。通信双方通过专用线路进行通信,数据可以直达。当数据传输量较大时,优点将十分显著。
  • 线路独占,没有冲突。
  • 实时性强。一旦通信线路建立,双方可以实时通信。不会出现分组交换的丢失现象。

电路交换的缺点:

  • 线路独占,利用率太低。
  • 连接建立时间过长。

报文交换

报文交换以报文作为数据传输单位,携带有源地址和目的地址等信息。

报文交换的优点:

  • 无需建立连接。
  • 动态分配线路。
  • 线路利用率高。

报文交换的缺点:

  • 报文交换对报文的大小没有限制,需要网络节点有足够的缓存空间。
  • 报文交换在节点处要经历存储、转发等操作,从而引起一定时延。

分组交换

分组交换是将大的数据块分割成小的分组,并添加源地址、目的地址和分组编号等信息。

分组交换的优点:

  • 无需建立连接。
  • 线路利用率高。
  • 相对报文交换,分组长度固定,缓冲区容易管理。
  • 分组比报文小,因此传输时间更短。

分组交换的缺点:

  • 仍然存在时延。
  • 需要传输包括源地址、目的地址、分组编号等额外信息。
  • 分组可能遇到失序、丢失、重复等问题。
  • 产生了包头的额外开销

二.计算机网络的类别

按照使用范围来划分

1.个域网PAN( Personal Area Network )

能在便携式消费电器与通信设备之间进行短距离通信的网络
覆盖范围一般在10米半径以内,如蓝牙耳机等
2.局域网LAN(Local Area Network)

局部地区形成的区域网络,如企业网络
分布地区范围有限,可大可小,大到一栋建筑、小到办公室内的组网
电脑WLAN接入,打印机共享等等
3.城域网MAN(Metropolitan Area Network )

范围覆盖一个城市的网络
4.广域网WAN(Wide Area Network)

覆盖很大地理区域,乃至覆盖地区和国家

按照使用者进行划分

1.公网

公众大众使用的计算机网络。

2.专用网

国家某些特殊部门的网络,例如军方部队的网络等。不向本单位以外的人提供服务。

3.接入网

 通过一些接入网技术,使用户能够与互联网相连接。例如曾经的拨号上网技术。

三.计算机网络的性能 

计算机网络常用七个性能指标来对互联网的质量进行衡量和判断。

大家说到判断网络的性能指标,第一个肯定想到的是网速吧hh。

1.速率

速率指的是数据的传送速率,它也称为数据率或比特率。单位是 bit/s(比特每秒)。但是这里的速率和我们平时的网速是不一样的,这里的速率往往指的是额定速率,并不是实际运行的速率。(理想速率)

 2.带宽

在计算机网络中带宽用来表示网络中某通道传送数据的能力,网络带宽指在单位时间内网络中的某信道所能通过的“最高数据率”,单位也是bit/s。

在这里可能会有人有疑惑,带宽这不和速率一样嘛,单位是一样的,也都表示的是额定速率和最高数据率。别急,看了下面的例子或许会有别的理解。带宽和速率虽然单位一样,说的目的物却不一样。 带宽说的是水管,某个水管单位时间内最多允许流过的水的量,相当于描述水管的粗细。速率说的是水流,也就是水流的速度。  也就是带宽说的是数据传输的载体,而速率说的是数据本身。这也是大家家庭办理宽带时候的百兆宽带啊,千兆宽带的带宽。诶,是不是发现自己家网速根本达不到那么高突然觉得运营商是在欺诈了?计算机网络学习笔记——概论_第7张图片

3.吞吐量

吞吐量表示在单位时间内通过某个网络(或信道、接口)的实际的数据量。吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。显然,吞吐量受网络的带宽或网络的额定速率的限制。看到这里,大家才知道自己家庭的实际网速到底是用什么来衡量的了吧。

4.时延

时延是指数据(一个报文或分组,甚至是比特)从网络(或链路)的一端传送到另一端所需的时间。

网络中的时延是由以下几个不同的部分组成的:

发送时延

发送时延是主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到改帧的最后一个比特发送完毕所需的时间。发送时延发生在机器内部的发送器中。

发送时延=数据帧长度(b) /信道带宽(b/s) [信道带宽就是数据率]

传播时延

传播时延是电磁波在信道中传播一定的距离需要花费的时间。传播时延发生在机器外部的传输信道媒体上。信号传送的距离越远,传播时延就越大。即不可以避免的物理延迟。

处理时延

主机或路由器在收到分组时要花费一定的时间进行处理,例如分析分组的首部、从分组中提取数据部分、进行差错检验或者查找适当的路由等,这就产生了处理时延。

排队时延

分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。在路由器确定了转发接口后,还要在输出队列中排队等待转发,这就产生了排队时延。排队时延的长短往往取决于网络当时的通信量。当网络的通信量很大时会发生队列溢出,使分组丢失,这相当于排队时延为无穷大。

总的时延就是上述的四种时延之和

时延带宽积

在第一次见到这个指标的时候我其实没有看懂什么是时延带宽积,时延和带宽相乘能得到什么呢?现在我们回头看看时延的定义:发送数据帧所需要的时间,是不是有所顿悟了呢?
计算机网络学习笔记——概论_第8张图片

传播时延和带宽相乘,就得到另一个很有用的度量:传播时延带宽积。课本上的这个圆柱,下面的带宽,有没有想到上面举例时候提到的的水管呢?管道的长度是链路的传播时延,而管道的截面积是链路的带宽在上面我说带宽是水管,是某个水管单位时间内最多允许流过的水的量,乘上时间,因此时延带宽积就表示这个管道最多装水的体积,也就是表示这样的链路可容纳多少个比特。

往返时间 RTT

在许多情况下,互联网上的信息不仅仅单向传输而是双向交互的。因此,我们有时很需要知道双向交互一次所需的时间。在互联网中,往返时间还包括各中间结点的处理时延、排队时延以及转发数据时的发送时延。当使用卫星通信时,往返时间 RTT 相对较长,是很重要的一个性能指标。

这个就很好理解啦,用户A咣咣咣只管给用户B发消息,结果用户B一条消息都没收到,用户A觉得自己遭受冷落是现实中的舔狗,于是AB两者的美好爱情故事就消失了,甚至B可能还要挨一顿打,为了预防这样悲惨的事情发生,用户B在接收到A的信息后要向用户A发送确认,用户A才会继续向B发送消息。

在这里得知有效数据率=数据长度/(发送时间+RTT) 

利用率

利用率有信道利用率和网络利用率两种。信道利用率 指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是零。网络利用率则是全网络的信道利用率的加权平均值。信道利用率并非越高越好。信道或网络的利用率过高会产生非常大的时延。因此一些拥有较大主干网的 ISP 通常控制信道利用率不超过 50%。

可能会有同学在这里产生疑惑,诶,我建了信道,我当然想让他百分百利用率呀,为什么甚至利用率都不能超过百分之五十呢?说得好!很有当资本家的潜力,小伙子好好努力~
开个玩笑,大家当然都想降低成本,让信道能发挥更好地利用。但是当利用率过高的时候,就像马路上的汽车,完全占满就没法发挥它告诉的优势了。这也是同样的道理,当利用率过高时,链路一直不停的在传送分组,产生的排队延迟也就变的奇高无比。甚至无穷大,因此带宽并不是越高越高的。

 

你可能感兴趣的:(计算机网络,学习,网络)