计算机网络 期末复习专用(一)
一、计算机网络的分类
1.按照网络的作用范围进行分类
(1)广域网WAN 作用范围:几十到几千公里
(2)城域网MAN 作用范围:一个城市,5~50km
(3)局域网LAN 作用范围:1km左右
(4)个人区域网PAN(无线个人区域网WPAN)范围:10m左右
2.按照网络的使用者进行分类
(1)公用网(公众网)
电信公司(国有或私有)出资建造的大型网络,“公用”指所有愿意按电信公司的规定缴纳费用的人都可以使用这种网络
(2)专用网
某个部门为满足本单位的特殊业务工作的需要而建造的网络,不向外人提供服务
3.用来把用户接入到互联网的网络
这种网络是接入网,又称为本地接入网或居民接入网
二、计算机网络的性能指标
1.速率
比特意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个1或0.
网络技术中的速率指的是数据的传送速率,也称为数据率或比特率,单位是bit/s(比特每秒)或b/s或bps
2.带宽
有两种不同的意义:
- 本来指某个信号具有的频带宽度,信号的带宽是指该信号所包含的各种不同频率成分所占据的频率范围,单位是赫(或千赫、兆赫、吉赫)。表示某信道允许通过的信号频带范围就称为该信道的带宽或通频带
- 在计算机网络中,带宽用来表示网络中某通道传送数据的能力,因此网络带宽表示在单位时间内网络中的某信道所能通过的“最高数据率”。这种意义的带宽单位就是数据率的单位bit/s,是“比特每秒”
前者为频域称谓,后者为时域称谓,带宽越宽,所能传输的最高数据率也越高
3.吞吐量
表示在单位时间内通过某个网络(或信道、接口)的实际数据量,受网络带宽或网络额定速率的限制。吞吐量还可用每秒传送的字节数或帧数来表示,接入到互联网主机的实际吞吐量,取决于互联网的具体情况
4.时延
指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传输到另一端所需的时间。有时也称为延迟或迟延。分为几个不同的部分:
(1)发送时延
是主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间,计算公式
对于一定的网络,发送时延并非固定不变,二十余发送的帧长成正比,与发送速率成反比
(2)传播时延
是电磁波在信道中传播一定距离需要花费的时间,计算公式:
电磁波在自由空间的传播速率是光速,即3.0*e5km/s,在网络传输媒体中的传播速率比在自由空间要略低一些
以上两种时延有本质不同:
发送时延发生在机器内部的发送器中,与传输信道的长度或信号传送的距离没有任何关系
传播时延发生在机器外部的传输信道媒体上,与信号的发送速率无关,信号传送的距离越远,传播时延越大
(3**)处理时延**
主机或路由器在收到分组时要花费一定时间进行处理,例如分析分组的首部、从分组中提取数据部分、进行差错检验或查找转发表等,这就产生了处理时延
(4)排队时延
分组在经过网络传输时,要经过许多路由器,但分组进入路由器后要先在输入队列中排队等待处理,路由器确定了转发接口后,还要在输出队列中排队等待转发。
时延的长短往往取决于网络当时的通信量,通信量很大时会发生队列溢出,使分组丢失,相当于排队时延为无穷大
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
一般来说,小时延的网络要优于大时延的网络,在某些情况下,一个低速率、小时延的网络很可能要优于一个高速率但大时延的网络
5.时延带宽积
以圆柱形管道表示一个链路,管道长度是链路的传播时延(以时间作为单位),管道的截面积是链路的带宽。因此时延带宽积表示这个管道的体积,表示链路可容纳多少比特。
这个值表示在特定时间内该网络上的最大数据量,即已发送但尚未确认的数据。时延带宽积可以形象地表示信道的通讯能力。
时延带宽积 = 20 * e3 * 10 * e6 = 2 * e5,表示若发射端连续发送数据,则在发送的第一个比特即将到达终点时,发送端就已经发送了20万个比特,而这20万个比特都正在链路上向前移动。
管道中巴比特数表示从发射端发出但尚未到达接收端的比特数,对于一条正在传输数据的链路,只有在代表链路的管道都充满比特时,链路才得到最充分的利用。
其中, 带宽表示一次性能够发射的信息 , 传播时延指的是信号从源站到目的站所需要的时间 。
时延带宽积对网络性能的影响如下:
- 发送缓冲区大小不能超过时延带宽积。因为发送缓冲区大小决定了发送窗口的上限,而发送窗口又决定了“已发送未确认”(即正在飞行中)的数据包的上限。如果发送缓冲区超过时延带宽积,超出的部分就没办法有效的网络传输,同时导致网络过载,容易丢包。
- 发送缓冲区大小也不能小于时延带宽积,否则就不能很好的发挥出网络的传输效率。
6.往返时间RTT
往返时间RTT是指从发送端发送数据开始,到发送端收到来自接收端的确认,总共经历的时延。
有效数据率
有效数据率=数据长度/(发送时间+RTT)
在计算机网络中,RTT是一个重要的性能指标,由三个部分决定,包括 链路的传播时间、 末端系统的处理时间 以及 路由器的缓存中的排队和处理时间 。在计算RTT时,使用ping命令可以测量从一个设备到另一个设备的往返时间。RTT的变化在一定程度上反映了网络拥塞程度的变化。
RTT的计算公式为
**RTT = α * old_RTT + (1 - α) ***
new_round_trip_sample,其中α是一个权重系数,用于平均旧的RTT和新的往返延迟样本。选择一个接近1的值使得加权平均值对短时间变化(例如遇到长时间延迟的单个段)免疫。而选择一个接近0的值使得加权平均值对延迟的变化非常敏感。这个公式被Jacobson/Karels算法改进,该算法还考虑了标准差。一旦计算出新的RTT,就将其输入上述公式中,以获得该连接的平均RTT。
RTT与带宽是相互独立的。随着网络可用带宽的增加,往返时间并不会相应地减少,因为它主要取决于常量因素,如物理距离和信号传播速度。同时,带宽和RTT都很高的网络可以在任何给定时间传输大量数据。这样的长时间延迟网络需要特殊的协议设计。
除了计算机网络,RTT还可以用于实时文本(RTT)通信。RTT允许您在电话通话期间使用文本进行通信。RTT与TTY兼容,不需要任何额外的配件。RTT使用通话分钟数,与语音通话一样 。在Google Fi上,RTT不受支持。
7.利用率
在计算机网络中,利用率是指网络或信道在总时间内有多少时间被利用的比例。利用率可以分为信道利用率和网络利用率两种。
- 信道利用率:指在一段时间内,信道被利用的时间占总时间的比例。例如,如果一个信道在总时间内有60%的时间被利用,那么它的信道利用率就是60%。信道利用率的计算公式为:信道利用率 = 有数据通过的时间 / 总时间,其中总时间等于有数据通过的时间加上无数据通过的时间。
- 网络利用率:指全网络中所有信道利用率的加权平均值。例如,如果一个网络中有两个信道A和B,它们的信道利用率分别为60%和80%,那么网络利用率就是(60% + 80%)/ 2 = 70%。网络利用率的计算公式为:网络利用率 = 信道利用率的加权平均值。
需要注意的是,信道利用率并不是越高越好。根据排队论的理论, 当某信道的利用率增大时,该信道引起的时延也就迅速增加 。这可以类比成公路上车流量很大时,某些地方就会出现拥堵,因此行车需要的时间就会增加。
信道利用率或网络利用率过高就会产生非常大的时延。
令D0表示网络空闲时的时延,D表示网络当前的时延,设现在的网络利用率为U,则:D=D0/(1-U)
三、计算机网络分层模型
1.计算机网络分层模型的分层思想
主要遵循以下原则:
- 功能分工的原则:将网络通信划分为多个层次,每一层次都有自己的功能和任务,层次之间通过接口进行交互,从而实现网络通信的目的。
- 接口分离的原则:每一层次之间的接口都是独立的,上一层次的接口只与下一层次的接口相连,上下层次之间没有直接联系。
- 标准化的原则:每一层次的标准都是独立的,不会因为其他层次的变化而受到影响。
- 开放式的原则:每一层次的实现都是开放的,可以有不同的实现方式和技术,只要满足标准规范即可。这种开放性保证了网络的灵活性和可扩展性。
计算机网络分层模型主要有三种:
- OSI模型:由国际标准化组织制定,共有七层,从下至上分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
- TCP/IP模型:由美国国防部制定,共有四层,从下至上分别是网络接口层、网络层、传输层和应用层。
- 5层参考模型:是在TCP/IP模型的基础上,将网络接口层和网络层合并为一层,形成的一个五层模型。这个模型在计算机网络学习和考研中常用。
2.协议和服务
计算机网络协议和服务是计算机网络技术中的重要内容。网络体系结构由层、协议和服务构成的集合。它的目的是使各种不同的计算机能够相互通信,将所有需要完成的工作进行分类,划分为明确的层次,并规定出相同层次进程之间的通信协议和上下层之间的接口服务。在计算机网络中,第n层中的活动元素称为n层实体,同一层的实体叫对等实体。网络协议为网络中的对等实体数据交换而建立的规则、标准或约定(语法、语义、同步)称为网络协议。协议是规则、约定,而服务是功能、本领。网络协议是由于网络节点之间联系的复杂性,在制定协议时,通常把复杂成分分解成一些简单成分。
网络通信协议应该包含三要素:语法(如何讲)、语义(讲什么)和时序。网络体系结构是一种分层结构,每一层不必知道下面一层是如何实现的。体系结构的层次化使得不同层次之间的协议相互独立,也方便了不同层次之间的协作。
计算机网络中的协议和服务有以下关系:
- 协议的实现保证了能够向上一层提供服务,要实现本层协议还需使用下层提供的服务。
- PDU(协议数据单元)是对等实体之间传送的数据单位。
- SDU(服务数据单元)是层与层之间交换的数据的单位,可以是多个SDU合成一个PDU,也可以是一个SDU划分为几个PDU。
3.OSI七层模型
OSI七层模型是一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。它是一个七层的、抽象的模型体,不仅包括一系列抽象的层,还规定了每一层的服务和功能,并且定义了每一层之间的接口和协议。OSI模型主要用于指导网络协议的设计和实现,以及不同厂家开发的网络设备的互联互通。以下是OSI七层模型的具体介绍:
- 物理层:物理层是OSI模型的最底层,它主要定义了传输介质、电器特性、物理连接等方面的规范。它负责将比特流转换成电信号或光信号,并将其传输到相邻的节点。例如,网线、光纤、中继器等都属于物理层。
- 数据链路层:数据链路层位于物理层之上,它主要定义了数据的传输方式和传输格式,以及如何处理传输中的错误。数据链路层通常会将数据分成一个个的帧(frame)进行传输,每个帧包含了数据和一些控制信息,例如校验和、序列号等。数据链路层还包括了两个子层:逻辑链路控制子层和介质访问控制子层。
- 网络层:网络层主要负责数据的路由和转发,它将数据包从源节点传输到目的节点。网络层的主要协议是IP协议,它定义了如何将数据包传输到目标网络,并且还能够实现分组交换和拥塞控制等功能。例如,路由器就是工作在网络层的设备。
- 传输层:传输层主要负责数据的可靠传输,它将数据分割成若干个数据段(segment)进行传输,并且能够对传输过程中的错误进行纠正和控制。传输层的主要协议是TCP和UDP,其中TCP提供的是可靠性传输,UDP则提供的是不可靠性传输。运输层有复用和分用功能,复用就是多个应用层进程可同时使用下面运输层的服务,分用是运输层把收到的信息分别交付上面应用层中的相应进程。传输控制协议TCP:提供面向连接的、可靠的数据传输服务,数据传输单位是数据段。用户数据报协议UDP:提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),传输单位是用户数据报。
- 会话层:会话层主要负责建立、管理和终止会话(session),以及进行会话控制。会话层的主要功能是保证数据的顺序和完整性,并且能够恢复中断的会话。
- 表示层:表示层主要负责数据的格式转换、加密解密、压缩解压缩等功能,它保证了数据在传输过程中的安全性和完整性。例如,SSL和TLS协议就是工作在表示层的安全协议。
- 应用层:应用层是OSI模型的最高层,它主要负责为应用程序提供各种服务和接口,例如域名系统DNS、电子邮件、HTTP等。应用层协议通常基于其他层的协议实现,例如HTTP协议基于TCP协议实现,SMTP协议基于TCP和DNS协议实现。应用层交互的数据单元称为报文。
4.TCP/IP四层模型
TCP/IP是一组用于实现网络互连的通信协议,其参考模型将协议分成四个层次,从下往上依次是网络接口层、网际层、传输层和应用层。TCP/IP四层模型和OSI七层模型对应关系如下:
- OSI七层模型:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
- TCP/IP四层模型:网络接口层、网际层、传输层、应用层
下面是TCP/IP四层模型的详细介绍:
- 网络接口层(Network Access):负责监视数据在主机和网络媒体之间的交换,以及处理与物理媒体的接口细节,例如物理寻址、数据帧的传输和数据的差错校验等。网络接口层的协议有Ethernet、Token Ring、FDDI等。
- 网际层(Internet):主要解决主机到主机的通信问题,负责将数据包从源主机传输到目标主机,实现了不同网络之间的互连。网际层的协议有IP、ARP、ICMP等。
- 传输层(Transport):为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。传输层的协议有TCP、UDP等。
- 应用层(Application):为用户提供所需要的各种服务,例如FTP、HTTP、SMTP等。应用层协议直接面向用户,为用户提供特定的服务。
重要概念:
- 以小写字母i开始的internet(互连网)是通用名词,泛指由多个计算机网络连成的网络。在这些网络之间的通信协议可以是任意的
- 以大写字母I开头的Internet(互联网)是专用名词,指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,并采用TCP/IP协议族作为通信规则
- 互联网按工作方式可划分为边缘部分与核心部分。主机在网络的边缘部分,其作用是进行信息处理,路由器在网络的核心部分,其作用是按存储转发方式进行分组交换
- 计算机通信是计算机中的进程(即运行着的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式和对等连接方式(P2P方式)。
- 按作用范围的不同。计算机网络分为广域网 WAN、城域网MAN、局域网 LAN 和个人区城网PAN
- 五层协议的体系结构由应用层、运输层、网络层(或网际层)、数据链路层和物理层组成。运输层最重要的协议是 TCP和UDP 协议,而网络层最重要的协议是 IP协议