第一章:计算机网络与英特网

什么是Internet

计算机网络:通过通信信道,将地理上分布的多个计算机系统连接起来,在相应网络协议的支持下,实现信息传送、资源共享和网络计算功能的系统

分类依据

1、根据覆盖范围(Coverage)

2、根据节点移动性(Node Mobility)

网络边缘

端系统(End System):与因特网相连的计算机和其它设备,往往处于网络的边缘,因此称为端系统,也被称为主机(host),主机有时可以进一步被划分为客户(client)服务器(server)

两种模型

1、client/server model

2、peer-peer model

接入网

接入网:是指将端系统连入到边缘路由器的物理链路

边缘路由器:是指端系统到任何其他远程端系统路径上的第一台路由器

网络核心

网络核心即由网端系统的分组交换机(主要有路由器(router)和链路层交换机(link-layer switch))链路构成的网状网络

网络核心两个主要功能

  1. 路由(Routing)决定包的路径,包括路由算法等

  2. 转发(Forwarding)将数据包从路由器的输入转移到输出

网络核心的数据传输模式

电路交换(circuit switching)

在电路交换网络中,在端系统通信会话期间,交换机会预留端系统间通信路径上的相关资源(缓存,链路传输速率),即先建立连接,然后通信;而在分组交换网络中,这些资源没有被预留;也就是说,在端系统进行通信时,其所需要的资源是被保持的,其他通信是无法使用这一部分资源的;也就说,端系统间真正建立了一条“连接”;而这一连接,用电话的术语被称为“电路”。传统的电话网络就是电路交换网络的例子。

分组交换(packet switching)

从源端系统向目的端系统发送一个报文(message),要先将长报文划分为较小的数据块,称为分组(packet)。在传输过程中,每个分组都通过链路和分组交换机传送

存储转发

存储转发是指交换机在收到一个完成的分组,才会向链路输出转发分组,否则就将收到的部分分组缓存起来(因为需要缓存分组,所以分组交换机需要一个缓冲队列);因为缓存等待一个分组的全部数据而导致的时间开销被称为存储转发时延

排队时延与分组丢失

发生在缓冲队列满的情况,具体见下一节

转发表与路由选择协议

实际上,分组交换机之所以能够知道往哪去是因为其内部有一个转发表,这个表维护了一个IP地址和链路的对应关系,所以处理流程为:

  1. 通过分组的必要信息,获得目的端系统的IP地址
  2. 通过IP地址索引转发表,从而确定输出链路

分组交换和电路交换的对比

分组交换的优点

提供了比电路交换更好的带宽共享;

比电路交换更简单、更有效、实现成本更低;

分组交换的缺点

分组交换不适合实时服务,因为端到端的时延是可变、不可预测的,这和整个网络的情况相关

电路交换的优点

提供了端对端传输数据的速率保证

电路交换的缺点

电路交换存在静默期,这是指专用电路空闲时,其占用的资源并没有得到充分的利用

建立连接的过程比较复杂

总体上来说,分组交换的性能要好于电路交换的性能,但是不同类型的分组交换方式有不同的应用场景;比如一些对最低速率有着严格要求的应用,比如实时服务等,为了获得速率保证,牺牲网络的效率也是可以接受的。趋势向着分组交换发展

分组交换中的时延、丢包、吞吐量

时延(delay)

一个分组在沿途每个节点承受不同类型的时延,这些时延中最为重要有四个的是:结点处理时延、排队时延、传输时延和传播时延.这些时延总体累加起来是结点总时延

处理时延

处理时延是由于节点需要解析分组的必要信息然后决定其出链路而产生的,通常在微秒或者更低数量级。

常用耗时在查找比特错误、索引转发表等操作

排队时延

排队时延是因为分组所对应的出链路前面有其他分组正在传输,所以分组需要该链路的缓冲队列里等待其他分组传输完毕而产生的(即在分组交换机中等待其他分组处理发送完成造成的时延);一般来说,排队时延是到达该队列的流量强度和性质的函数,通常可以达到毫秒级到微秒级。

R:带宽

L:数据报长

a:平均到达速率

传输时延

传输时延是将所有分组的比特推向链路所有需要的时间(即向外推的动作),实际的传输时延通常在毫秒到微秒数量级。用L(bit)表示分组的长度,用R(bps,b/s)表示从路由器A到B的链路传输速率。传输时延是L/R。影响因素也就是L与R的大小了

传播时延

传播时延是指比特进入链路后,从该链路的起点到下一个结点所用的时间(即在向外推之后,借链路速度到答下一个节点的事件);一旦分组中的最后一个比特到达路由器就意味着该分组的所有比特都已到达路由器;广域网中,传播时延一般是毫秒级的。传播时延是d/s。d是路由器A到B的距离。s是链路的传播速率。

影响因素也就是物理链路的长度以及使用的介质的传播速度了

端到端时延

假设源主机与目的地主机之间有N-1台路由器,且无拥塞(排队时延微不足道),则节点累计起来,得到端到端时延D=N(d)

丢包(loss)

到达的分组发现一个满的队列。由于没有地方存储这个分组,路由器将丢弃该分组,该分组将会丢失(即当分组交换机缓存满的情况

排队时延和丢包与网络的状况和结点的缓冲空间大小、处理速度相关;如果分组到达的速度高于结点的处理速度,那么分组就会在缓冲队列里排队等待。当缓冲空间用完后,如果还有到的分组,那么该分组将被迫丢弃,产生丢包

流量强度 = 分组到达的速度 / 结点的处理速度,当流量强度大于1时,会出现丢包现象

为降低丢包率,使用决定每个节点buffer的大小也需要进行考量

吞吐量(throughput)

计算机网络的吞吐量实际上是一个速度指标,它描述了比特经过某个节点的速度(单位时间传输的文件bit/time)。网络的吞吐量可以衡量网络的性能。通常有瞬时吞吐量平均吞吐量两个指标进行评价,在今天,因特网对吞吐率的限制因素通常是接入网。

对于某条路径上的结点来说,和该结点有关的速度有两个:接收数据的速度和发送数据的速度,而该结点的吞吐量是这两个速度中较小的一个;

对于某条路径来说,该路径的吞吐量可以近似是所有节点的吞吐量的最小值(瓶颈),该最小传输速率的链路为瓶颈链路

协议层次及服务模型

分层体系结构

计算机网络中的协议可以简单理解为两个端系统交流的语法与语义,即交流的规范。

总体来说,将各层的所有协议组合起来,称为协议栈。因特网的协议栈有5个层次组成:物理层、链路层、网络成、传输层、应用层(OSI七层模型相比之下还在应用层下添加了表示层、会话层两层)

同时,网络传输过程中,对等层间使用协议关系(Protocol),上下层间使用接口关系(Interface)

应用层(进程-进程process)

应用层协议分布在多个端系统,端系统中的应用程序使用该协议与另一个端系统中的应用程序通信。处于应用层的分组称为报文(message)

  • FTP、SMTP、HTTP

传输层(端-端end)

传输层在应用程序端点之间传输应用层报文,因特网中有两个传输层协议:TCP和UDP。处于传输层的分组称为报文段(segment)。TCP提供确保传递、流量控制、拥塞控制机制。UDP提供无连接服务,即不提供不必要服务的服务。没有可靠性、没有流量和拥塞控制。

  • TCP、UDP

网络层(主机-主机host)

网络层将称为数据报的网络层分组从一台主机移动到另一台主机(任意两台机器)。网络层协议包含著名的IP协议以及其他一些路由选择协议。数据报

  • IP、routing protocols

数据链路层(节点-节点point)

链路层将称为帧(frame)的链路层分组从一个节点移动到路径上的下一个节点(两个节点要相邻)。一个帧可能被沿途不同链路上的不同链路层协议处理。

  • PPP

物理层(比特流)

物理层的任务是将帧中的比特从一个结点移动到下一个节点,它提供了传输信息的实际物理通道;

封装

一个分组,在不同的层次有不同的称谓,是因为它们经过每一层的时候就被该层封装上了属于该层的相关信息,也就是前面提到的必要信息;于是,每一分层的分组有两种类型的字段:首部字段有效负载;其中有效负载即为来自上一层的分组数据,而首部字段就是该层加上的必要信息;分组不断被封装以实现各层协议规定的相关功能

参考

《计算机网络——自顶向下方法》

https://blog.csdn.net/qq_39326472/article/details/88089747

Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2019-2021 子夜
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信