type
status
date
slug
summary
tags
comment
category
icon
password
photos
💻计算机网络
第一章:概述
1.1 信息时代的计算机网络
21 世纪的一些重要特征就是数字化、网络化和信息化,它是一个以网络为核心的信息时代。
网络现已成为信息社会的命脉和发展知识经济的重要基础。
网络是指“三网”,即电信网络、有线电视网络和计算机网络。
发展最快的并起到核心作用的是计算机网络。
因特网(Internet)的发展
- 进入 20 世纪 90 年代以后,以因特网为代表的计算机网络得到了飞速的发展。
- 已从最初的教育科研网络逐步发展成为商业网络。
- 已成为仅次于全球电话网的世界第二大网络。
因特网的意义
- 因特网是自印刷术以来人类通信方面最大的变革。
- 现在人们的生活、工作、学习和交往都已离不开因特网。
1.2 因特网概述
网络的网络
- 起源于美国的因特网现已发展成为世界上最大的国际性计算机互联网
- 网络(network)由若干结点(node)和连接这些结点的链路(link)组成。
- 互联网是“网络的网络”(network of networks)。
- 连接在因特网上的计算机都称为主机(host)。
- 网络与因特网
- 若干节点和链路互联形成网络
- 若干网络通过路由器互联形成互连网(互联网)
因特网发展的三个阶段
- 第一阶段:ARPANET向互连网发展 1969年,第一个分组交换网ARPANET由美国国防部创立,70年代中期,研究多种网络的互连;1983年,TCP/IP协议成为ARPANET的标准协议(因特网诞生时间)
- 第二阶段:三级结构因特网 1985年,NSFNET(主干网、地区网和校园网) 1990年,ARPANET任务完成,正式关闭 1991年,因特网初步开始商业化,开始收费
- 第三阶段:多层次ISP结构的因特网 1993年,NSFNET被替代,由各种ISP运营 1994年,WWW技术推动因特网迅速发展 1995年,NSFNET停止运作,因特网彻底商业化
因特网已发展成为基于ISP的多层次结构的互联网络:
- 因特网服务提供者(Internet Servidce Provider, ISP)
- 国际级—>区域或国家级—>本地级—>…
因特网的标准化工作:
- 因特网的标准化工作是面向公众的,其任何一个意见标准在称为因特网标准之前都以RFC技术文档的形式在因特网上发表,RFC的意思是“请求评论”。任何人都可以从因特网上免费下载RFC文档,并随时对某个RFC文档发表意见和建议
- 制订因特网的正式标准要经过以下的四个阶段
- 因特网草案(Internet Draft) ——在这个阶段还不是 RFC 文档。
- 建议标准(Proposed Standard) ——从这个阶段开始就成为 RFC 文档。
- 草案标准(Draft Standard)
- 因特网标准(Internet Standard)
- 从2011.10起,取消了草案标准阶段,简化了制定过程
因特网的管理机构:
- 因特网协会(ISOC)全面管理
- 因特网体系结构委员会(IAB)管理相关协议的开发
- 因特网工程部(IETF)研究中短期工程问题主要针对协议的开发和标准化
- 因特网研究部(IRTF)理论方面的研究开发一些需要长期考虑的问题
1.3 电路交换、分组交换和报文交换
电路交换的主要特点
- 交换就是按照某种方式动态地分配传输线路的资源。 在电路交互中,必须先拨号请求建立连接,当被叫用户听到交换机的振铃音并摘机后,从主叫端到被叫端就建立了一条连接,也就是一条专用的物理线路;通话完毕后,交换机释放刚刚使用的这条专用的物理通路。这种必须经过“建立连接(占用通信资源)—>通话(一直占用通信资源)—>释放连接(归还通信资源)”三个步骤的交换方式称为电路交换
- 电路交换的一个重要特点是:在通话的全部时间内,通话的两个用户始终占用端到端的通信资源;当使用电路交换来传送计算机数据时,线路传输效率往往很低,这是因为数据往往是突发地出现在线路上的,而真正用来传输的时间往往占很少时间,这导致了通信资源的浪费
分组交换的主要特点
- 分组交换采用存储转发技术,把一个报文划分成几个分组后再进行传送,在发送报文之前,把较长的报文划分成一个个更小的等长数据段。在每个数据段前面添加上首部,组成分组(包)
- 分组是在互联网中的数据传输单元,首部包含了诸如目的地址和源地址等重要控制信息,才能独立的选择传输路径并正确地交付到分组传输的终点
- 分组交换的优点:
高效 动态分配传输带宽,对通信链路是逐段占用。
灵活 以分组为传送单位和查找路由。
迅速 不必先建立连接就能向其他主机发送分组。
可靠 保证可靠性的网络协议;分布式的路由选择协议使网络有很好的生存性。
- 分组交换带来的问题:
分组在各结点存储转发时需要排队,这就会造成一定的时延。
分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。整个分组交换网还需要专门的管理和控制机制
报文交换的特点
- 报文交换是分组交换的前身。在报文交换中,报文交换也采用基于存储转发的原理,但报文被整个地发送,而不是拆分成若干个分组进行发送。
- 交换节点要将报文整体接收完成后才能查找转发表,将整个报文转发到下个节点
- 报文交换的时延较长,从几分钟到几小时不等,需要交换节点的缓存空间也很大
总结:
电路交换:整个报文的比特流连续地从源点直达终点,好像在一个管道中传送
报文交换:整个报文先传送到相邻节点,全部存储下来后查找转发表,转发到下一个节点
分组交换:单个分组(这只是整个报文的一部分)传送到相邻节点,存储后查找转发表,转发到下一个节点
1.4 计算机网络的定义和分类
计算机网络的定义:
- 最简单的定义:计算机网络是一些互相连接的、自治的计算机的集合
- 现阶段的较好的定义:计算机网络主要是由一些通用的,可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(如传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用
- 因特网(Internet)是“网络的网络”
计算机网络的分类:
- 按交换方式分类:
- 电路交换
- 报文交换
- 分组交换
- 按使用者分类:
- 公用网(因特网)
- 专用网(军队、铁路、电力、银行…)
- 按传输介质分类:
- 有线网络
- 无线网络
- 按覆盖范围分类:
- 广域网 WAN (Wide Area Network) 几十到几千千米
- 城域网 MAN (Metropolitan Area Network) 5-50千米
- 局域网 LAN (Local Area Network) 1千米左右
- 个域网 PAN (Personal Area Network) 10米
- 按拓扑结构分类:
- 总线型
- 星型
- 环型
- 网状型
1.5 计算机网络的性能指标
计算机网络的性能指标被用来从不同方面度量计算机网络的性能
常用的八个计算机网络性能指标:
- 速率 速率是指数据的传送速率(即每秒传送多少个比特),也称为数据率或比特率 速率的基本单位是比特/秒。速率的常用单位有千比特/秒,兆比特/秒,吉比特/秒以及太比特/秒 比特(bit,记为小写b)是计算机内数据量的基本单位,一个比特就是二进制数字中的一个1或0 数据量的常用单位有字节(byte,记为大写B)、千字节(KB)、兆字节(MB)、吉字节(GB)以及太字节(TB)
- 带宽 在模拟信号系统中的意义是指某个信号所包含的各种不同频率成分所占据的频率范围;单位:Hz 在计算机网络中的意义是指用来表示网络的通信线路所能传送数据的能力,即在单位时间内从网络中的某一点到另一点所能通过的最高数据率;单位:b/s 数据传送速率 = min[主机接口速率,线路贷款,交换机或路由器的接口速率](木桶效应) 自由空间: m/s 铜线: m/s 光纤: m/s
- 吞吐量 吞吐量是指在单位时间内通过某个网络或接口的实际数据量。吞吐量常被用于对实际网络的测量,以便获知到底有多少数据量通过了网络 吞吐量受网络带宽的限制
- 时延 时延是指数据从网络的一段传送到另一端所耗费的时间,也成为延迟或迟延。数据可由一个或多个分组、甚至是一个比特构成 发送时延 = 分组长度(b)/发送速率(b/s) 传播时延 = 信道长度(m)/信号传播速率(m/s) 排队时延 不方便计算 处理时延 不方便计算
- 时延带宽积 时延带宽积是传播时延和带宽的乘积 链路的时延带宽积又称为以比特为单位的链路长度
- 往返时间 往返时间(Round-Trip Time, RTT)是指从发送端发送数据分组开始,到发送端接受接收端发来的相应确认分组为止,总共耗费的时间
- 利用率
- 链路利用率:
- 网络利用率:
链路利用率是指某条链路有百分之几的时间是被利用的(即有数据通过)完全空闲的链路利用率为零
网络利用率是指网络中所有链路的链路利用率的加权平均
根据排队论可知,当某链路的利用率增大时,该链路引起的时延就会迅速增加
当网络的通信量较少时,产生的时延并不大,但在网络通信量不断增大时,分组在交换节点(交换机或路由器)中的排队时延会随之增大,因此网络引起的时延就会增大
若令 D0 表示网络空闲时的时延,D 表示网络当前的时延,则在适当的假定条件下,可以用下面的简单公式表示 D 和 D0之间的关系:
P.S. U是网络的利用率,数值在 0 到 1 之间
- 丢包率:
丢包率是指在一定的时间范围内,传输过程中丢失的分组数量与总分组数量的比率
分组丢失的主要情况:
1.分组在传输过程中出现误码,被传输路径中的节点交换机或目的主机检测出误码而丢弃
2.节点交换机根据丢弃策略主动丢弃分组
丢包率可以反应网络的拥塞情况:
无拥塞时路径丢包率为0
轻度拥塞时路径丢包率为1%-4%
严重拥塞时路径丢包率为5%-15%
1.6 计算机网络的体系结构
常见的三种计算机网络体系结构
- OSI参考模型(开放系统互连基本参考模型) 由国际标准化组织ISO于1977年成立专门机构,为解使不同体系结构的计算机网络能够互连,提出了OSI,其有七层结构,自下而上为: 物理层、数据链路层、网络层、运输层、会话层、表示层、应用层 OSI体系结构是法律上的国际标准
- OSI 的专家们在完成 OSI 标准时没有商业驱动力;
- OSI 的协议实现起来过分复杂,且运行效率很低;
- OSI 标准的制定周期太长,因而使得按 OSI 标准生产的设备无法及时进入市场;
- OSI 的层次划分并也不太合理,有些功能在多个层次中重复出现。
在市场化方面 OSI 失败的原因
- TCP/IP参考模型 因特网已抢先在全世界覆盖率相当大的范围,从1983年开始使用TCP/IP协议族,并逐渐演变成TCP/IP参考模型,其有四层结构,自下而上为: 网络接口层、网际层、运输层、应用层 TCP/IP参考模型是事实上的国际标准
- 原理参考模型 讲述原理的五层协议,自下而上为: 物理层、数据链路层、网络层、运输层、应用层

计算机网络体系结构分层的必要性
- 应用层:解决通过应用进程的交互来实现特定网络应用的问题
- 运输层:解决进程之间基于网络的通信问题
- 网络层:解决数据包在多个网络之间传输和路由的问题
- 数据链路层:解决数据包在一个网络或一段链路上传输的问题
- 物理层:解决使用何种信号来表示比特0和1的问题
计算机网络体系结构分层思想举例
- 主机中的应用层根据HTTP协议的规定构建一个HTTP请求报文,用来请求Web服务器执行相应操作;
- 向下交给运输层给HTTP请求报文添加一个TCP首部,将其封装称为TCP报文段,TCP首部的主要作用是区分应用程序,实现可靠传输
- 网络层给TCP报文段添加一个IP首部,将其封装成为IP数据段,IP首部的主要作用是IP寻址和路由,网络层将封装好的IP数据报向下交给数据链路层
- 数据链路层给IP数据报添加一个首部和一个尾部,将其封装为以太网帧,帧首部和尾部的作用是MAC寻址和帧校验,数据链路层将封装好的帧向下交付给物理层
- 物理层不认识帧的结构,仅仅将其看作比特流,以便将比特流转换成相应的电信号进行发送,对于以太网,物理层会在比特流前添加前导码,目的是使接收方的时钟同步并做好接受准备,然后发送出去
- 路由器收到后,其物理层将电信号转化成比特流,物理层将前导码去掉后向上交付给数据链路层
- 数据链路层将帧首部和尾部去掉后将IP数据段向上交付给网络层
- 网络层从IP数据报的首部中提取出目的IP地址,根据目的IP地址查找自己的转发表,决定从哪个接口转发该IP数据报,同时对首部中的某些字段,如生存时间TTL的值进行修改,然后将IP数据报向下交给数据链路层
- 数据链路层给IP数据报添加一个首部和一个尾部,将其封装为帧,帧首部和尾部的作用是MAC寻址和帧校验,数据链路层将封装好的帧向下交付给物理层
- 物理层将其看作比特流,将比特流转换成相应的电信号进行发送
- Web服务器收到数据包后按网络数据体系结构自下而上的顺序逐层解封,直到应用层收到HTTP请求报文后执行相应操作,然后向主机发送含有浏览器请求内容的HTTP响应报文,响应过程如下图,于主机发送请求报文类似
计算机网络体系结构中的专业术语
- 实体 实体是指任何可发送或接受信息的硬件或软件进程 对等实体是指通信双方相同层次中的实体
- 协议 协议是控制两个对等实体在“水平方向“进行”逻辑通信“的规则的集合 协议的三要素:
- 语法定义所交换信息的格式
- 语义定义通信双方所要完成的操作
- 同步定义通信双方的时序关系
- 要实现本层协议,还需要使用下面一层所提供的服务
- 协议是”水平“的,而服务是”垂直“的
- 实体看得见下层提供的服务,但并不知道实现该服务的具体协议。下层的协议对上层的实体是“透明”的
在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务
- 在同一系统中相邻两层实体交换信息的逻辑接口称为服务访问点SAP,它被用于区分不同的服务类型
- 帧的“类型”字段、IP数据报的“协议”字段,TCP报文段或UDP用户数据报的“端口号”字段都是SAP
- 上层要使用下层所提供的服务,必须通过与下层交换一些命令,这些命令称为服务原语
- 对等层次之间传送的数据包称为该层的协议数据单元(Protocol Data Unit, PDU)
- 同一系统内层与层之间交换的数据包称为服务数据单元(Service Data Unit, SDU)
第二章:物理层
2.1 物理层概述
物理层要实现的功能
- 物理层要实现的功能就是在各种传输媒体上传输比特0和1,进而给其上面的数据链路层‘透明’传输比特流,数据链路层“看不见”(也无需看见)物理层究竟使用的是什么方法来传输比特流。数据链路层只管“享受”物理层提供的比特流传输服务即可
物理层接口特性
- 机械特性
- 形状和尺寸
- 引脚数目和排列
- 固定和锁定装置
- 电气特性
- 信号电压的范围
- 抗阻匹配的情况
- 传输速率
- 距离限制
- 功能特性
- 规定接口电缆的各条信号线的作用
- 过程特性
- 规定在信号线上传输比特流的一组操作过程,包括各信号间的时序关系
