计算机网络读书笔记--绪论
1.5 几种不同类别的网络
计算机网络有多种类别。典型包括:
按照网络的拓扑结构进行分类
计算机网络拓扑结构是指网络中各个站点相互连接的形式。
星型、环型、总线型、树型、网状型、无线蜂窝型。
按照网络的作用范围进行分类
个人区域网PAN(Personal Area Network):范围很小,大约在10米左右。
局域网LAN(Local Area Network):局限在较小的范围(如1公里左右)
定义:一种覆盖一座或几座大楼、一个校园或者一个厂区等地理区域的小范围的计算机网络。
局域网包括:以太网、令牌环网等。
当前的局域网主流是以太网。
城域网MAN(Metropolitan Area Network):作用距离约为5~50公里。
一种介于局域网与广域网之间,覆盖一个城市的地理范围,用来将同一区域内的多个局域网互联起来的中等范围的计算机网络。
广域网WAN(Wide Area Network):作用范围通常为几十到几千公里。
若中央处理机之间的距离非常接近(如仅1米的数量级甚至更小些),则一般就称之为多处理机系统,为不是称它为计算机网络。
按照网络的使用者进行分类
- 公用网(public network)
按照规定交纳费用的人都可以使用的网络。因此也可以称之为公众网。
- 专用网(private network)
为特殊业务工作的需要而建造的网络。(如企业内部专用网、保密内网)
公用网和专用网都可以提供多种服务。如转送的是计算机数据,则分别是公用计算机网络和专用计算机网络。
1.6.1 计算机网络的性能指标
计算机网络的性能一般是指它的几个重要的性能指标,主要包括:
速率、带宽、吞吐率、时延、时延带宽积、往返时间RTT、利用率
速率
-
速率是计算机网络中最重的一个性能指标,值得是数据的传送速率,它也称为数据率(data rate)或者比特率(bit rate)。
-
速率的单位是bit/s,或者kbit/s、Mbit/s、Gbit/s等。例如4*10^10 bit/s的数据率就记为40Gbit/s。
-
速率往往是指额定速率或者标称速率,非实际运行速率。
带宽
-
在计算机网络中,带宽用来表示网络中某通道传送数据的能力。表示在单位时间内网络中的某信道能通过的“最高数据率”。单位是bit/s,即“比特每秒”。
-
一个网络的带宽是该网络所有链路的最小值。
-
单位说明:网络带宽单位:1Mb/s = 10^3kb/s = 10^6 b/s. 计算机储存单位:1M =
1024k = 2^20 Btye = 8*2^20 bit
吞吐量
-
量(thoughput)位时间内通过某个网络(或信道、接口)的数据量。
-
吞吐量更经常地用于对现实世界地网络地一种测量,以便知道实际上到底有多少数据量能够通过网络。
-
吞吐量受网络地带宽或者网络地额定速率地限制。
吞吐量是网络实际的带宽,宽是网络最高的吞吐量
传播速度
- 信号(即电磁波)在传播介质上地传播速率,单位m/s(米/秒)或者千米/小时
时延
时延(delay或latency)指数据(一个报文或者分组,甚至比特)从网络(或者链路)的一端传送到另一端所需的时间。
数据在网络中经历的总时延就是发送时延、传播时延、处理时延和排队时延之和。(接收时延一般不考虑)
总时延 = 发送时延+传播时延+处理时延+排队时延
必须指出,在总时延中,究竟是哪一种时延占主导地位,必须具体分析。
-
传输时延(发送时延)
-
传播时延
-
结点处理时延+排队时延
时延带宽积
链路的时延带宽积又称为以比特为单位的链路长度。
时延带宽积 = 传播时延*带宽
往返时间
-
互联网上的信息不仅仅单方向传输,卫视双向交互的。因此,有时很需要知道双向交互一次所需的时间。
-
往返时间RTT(round-trip-time)表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间。
-
在互联网中,往返时间还包括各中间结点的处理时延、排队时延以及转发数据的发送时延。
-
当使用卫星通信时,往返时间RTT相对较长,是很重要的一个性能指示。
利用率
-
分为信道利用率合网络利用率。
-
信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。
-
完全空闲的信道的利用率是零。
-
网络利用率则是全网络的信道利用率的加权平均值。
-
信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也就迅速增加。
时延与网络利用率的关系
-
根据排队的理论,当某信道的利用率增加时,该信道引起的时延也就迅速增加。
-
若令D0表示网络空闲的时延,D表示网络当前的时延,则在适当的额假定条件下,可以用下面的简单公式表示D和D0之间的关系:
1.6.2 计算机网络的非性能特征
一些非性能特征也很重要。它们与前面介绍的性能指标有很大的关系。
主要包括:费用、可靠性、质量、可扩展性和可升级性、标准化、易于管理和维护
例题演示:
例题一:
假设有Q段链路,每段链路的带宽为R b/s, 若需要发送F bit大小的文件,分成M个分组,每个分组增加H bit 的部首,若采用分组交换技术,忽略所有的传播时延和结点处理时延,问从发送方发送数据开始到接收方完全收到所有数据一共需要多少时间?
例题二:
例题三:
阶段小结:
相关概念:
- 带宽、吞吐量与传播速度。
网络时延:
-
传输时延(发送时延)
-
传播时延
-
结点处理时延
往返时延RTT:
- 网络可测量的总的时延指标
1.7.1 协议与划分层次
计算机网络要解决的问题:
-
物理信号如何传输到对方?
-
数据如何编码成电子信号或光信号?
-
数据如何保证正确按序的到达对方?
-
中间设备(路由器、交换机)如何决定护具的转发路径?
-
如何唯一的标识网络上的某台主机?
-
浏览器访问网站用什么规则?
-
如何保证多个站点同一个站点通信时如何避免信号的冲突?
-
图和区分不同的网络应用?
大部分问题都是规则的问题,及网络协议设计问题
1.网络协议(network protocol)
简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
网络协议的三个组成要素
-
语法:数据与控制信息的结构或者格式
-
语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
-
同步:事件实现顺序的详细说明
为什么分层处理?
-
复杂问题按照模块分层思想便于学习和研究
-
每个层次提供一种服务
-
本层次依赖于下一层次提供的服务
-
层与层之间必须提供接口
分层的好处与缺点
好处:
-
各层之间是独立的。
-
灵活性好
-
结构上可以分割开。
-
易于实现和维护。
-
能促进标准化工作
缺点:
-
降低效率
-
有些功能会在不同的层次中重复出现,因而产生了额外开销。
层次数多少要适当:
-
层次太少,就会使每一层的协议太复杂。
-
层次太多,又会在描述和各层功能的系统工程任务时遇到较多的困难
1.7.2 计算机网络体系结构
-
计算机网络体系结构是指计算机划分的各个层次及相应协议的集合
-
网络体系结构的核心是分层模型。
参考模型
-
为各类型协议和服务之间保持一致性提供通用的参考
-
如OSI体系结构-官方标准
协议模型
-
提供与特定协议簇结构精确匹配的模型
-
如TCP/IP体系结构-商业标准
教学用5层网络体系结构
应用层:
-
提供进程之间的通信服务,实现网络各种具体应用;
-
实例:dns, http, ftp, smtp, pop
传输层:
-
提供端到端(主机到主机)的传输服务
-
实例:TCP(可靠的服务),UDP(提供不可靠的服务)
网络层:
-
提供不同网络之间的选路服务;
-
实例:IP协议,ICMP,路由协议
数据链路层:
-
提供一段链路相邻结点的传输服务;
-
实例:Ethernet, PPP, PPPoE
物理层:
- 提供网络通信的物理规范;
-
应用层:进程与进程的通信服务,直接为用户的应用进程(例如电子邮件、文件传输和终端仿真)提供服务。
-
传输层:端到端的传输服务,即面向连接的通信、端到端的流量控制、差错控制。
-
网络层:网络的选路服务,选择经过哪些路由,以及拥塞控制、数据报的分片与重组。
-
数据链路层:一段链路相邻结点的传输服务,无差错地传送以帧(frame)为单位的数据以及流量控制信息,即差错控制、流量控制、帧同步。
-
物理层:网络设备接口的物理通信规范,定义信号传输的编码,光学、电子和机械特性。
TCP/IP体系结构的另一种表示方法
分层后数据发送接收的思考
- 发送方某层装完如何知道该交给哪个下层封装?
- 应用层选择传输层由应用程序决定,传输层选择网络层有固定的搭配,例如因特网只有IP协议,网络层选择数据链路层由网卡的类型(驱动程序)决定。
- 接收方某层解封后如何知道该交给上层哪个协议处理?
- 每个协议都应该有个上层协议的标识,让接收方处理本层之后交给正确的上层协议
- 每一层协议的首部有何作用?
-
实现本层的特定功能,提供相邻层次协议的接口等
-
例如网络层IP协议中包含IP地址等信息
1.7.3 实体、协议、服务和服务访问点
协议是对等的
- 收发双方某层协议必须相同
服务是垂直的
- 下层为上层提供服务
层次实现是透明的
- 某层的实现细节对其他层次透明
层与层之间必须提供接口
- 某层只需知道相邻层次的接口
**实体(entity)**表示任何可发送或接收信息的硬件或软件进程。
通信双方同样的层次称为“对等层”(peer layers)。
协议是控制两个对等实体进行通信的规则的集合。
各层协议实际上就是在各个对等层之间传递数据时的各项规定。
在协议的控制下,两个对等实体间的通信使得下层所提供的服务。
同一系统相邻两层交互的地方,称为服务访问点SAP(Service Access Point)。