一.计算机网络概述
1.计算机网络:是一个将分散的,具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统
2.计算机网络是互联互通的,无主次关系的计算机集合
3.计算机网络是网络的分支,网络还包括铁路网,电话网,人体内神经系统网络等
二.计算机网络的功能
1.数据通信:体现连通性
2.资源共享:硬件/软件/数据
3.分布式处理:多台计算机各自承担同一工作任务的不同部分
4.提高可靠性
5.负载均衡
三.计算机网络的组成
1.组成部分:
(1)硬件:包括主机,电路,通信设备(路由器,交换机等)
(2)软件
(3)协议
2.工作方式:
(1)边缘部分:用户直接使用(通过c/s方式或p2p方式),用来进行通信和资源共享
- c/s方式(客户-服务器方式):客户是服务请求方,服务器是服务提供方
- 客户程序:被用户调用后运行,在通信时主动向服务器发起通信,所以客户程序必须知道服务器程序的地址(不需要很复杂的操作系统)
- 服务器程序:专门用来提供某种服务的程序,可以同时服务多个客户系统启动后即自动调用并一直不断地运行,被动地等待并接收来自各地的客户的通信请求,所以服务器程序不需要知道客户程序的地址(一般需要有强大的硬件和高级的操作系统支持)
- p2p方式(对等连接方式)
- 两台主机在通信时并不区分哪一个是服务请求方哪一个是服务提供方,只要都运行了P2P软件,他们就能镜像平等对等的连接通信
- 对等连接方式可以支持大量对等用户同时工作
(2)核心部分:为边缘部分服务,由大量网络和连接这些网络的路由器组成,提供连通性和交换
- 共有三种交换方式:(交换是指按照某种方式动态分配电路交换的资源)
- 电路交换:使用交换机来使设备间可以两两通信而减少连线复杂度
- 连接建立后会建立一条专用的物理通路用以通信,在通话的全部时间内,这两个用户始终占用端到端的通信资源
- 优点:
- 实时性强,时延小(连接建立后)
- 交换设备成本低
- 缺点
- 线路利用率低(独占物理线路)
- 传输效率低(计算机数据往往是突发式传输,用来传输数据的时间短)
- 电路接续时间长
- 适用于信息量大、长报文、占用时间长、使用频率高的线路
- 特点
- 电路交换必定是面向连接的
- 分三个阶段:建立连接–>通信–>释放连接
- 报文交换:
- 原理:信息以报文(逻辑上完整的信息段)为单位进行存储转发
- 特点
- 线路利用率高
- 要求中间结点(网络通信设备)缓冲大
- 延迟时间长
- 分组交换:(分组指比报文还小的信息段,可定长也可变长,又称为包)
- 原理:信息以分组为单位镜像存储转发。源结点把报文分为几组,中间节点负责存储转发,目的节点把分组合成报文
- 优点:
- 高效
- 灵活
- 迅速
- 可靠
- 缺点:
- 分组在各节点存储转发时需要排队,这就会造成一定的时延
- 分组携带的首部会增加一定的开销
- 电路交换:使用交换机来使设备间可以两两通信而减少连线复杂度
- 三种交换的特点:
- 电路交换——整个报文的比特流连续地从源点直达终点,好像在一个管道中传送
- 报文交换——整个报文先传送到相邻结点,全部存储下来后查找转发表(存储有结点距离及结点地址),转发到下一个节点
- 分组交换——单个分组(只是报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个节点
三种交换的使用结论:
- 传送时间远大于连接建立时间,使用电路交换
- 使用报文和分组交换可以在互联网数据量突发的情况下提高网络的信道利用率
- 分组交换的时延小,灵活性高
3.功能组成:
(1)通信子网:实现数据通信
(2)资源子网:实现资源共享及数据处理四.计算机网络分类
1.按分布范围分类:
(1)广域网WAN(范围:几十到几千km)
(2)城域网MAN(范围:5-50km)
(3)局域网WAN(范围:<1km)
(4)个人区域网PAN(范围:<10m)2.按使用者分类:
(1)公用网:交钱就能用的网络,例如:电信,联通等
(2)专用网:为特殊业务工作需要建造的网络,例如:铁路,政府等3.按交换技术分类:
(1)电路交换
(2)报文交换
(3)分组交换4.按拓扑结构分类:
(1)总线型
(2)星型
(3)环型
(4)网状型5.按传输技术分类:
(1)广播式网络:共享一个公共通信信道
(2)点对点网络:使用分组存储转发和路由选择机制、6.按传输速率分:
(1)低速网络
(2)中速网络
(3)高速网络7.按传输媒体分:
(1)有线
(2)无线五.标准化工作
1.要实现不同厂商的硬件软件之间互相连通,必须遵循统一的标准
2.标准的分类:
(1)法定标准:由权威机构制定的正式的,合法的标准 例如:OSI
(2)事实标准:某些公司的产品在竞争中占据主流,时间长了,这些产品的协议和技术就成了标准 例如TCP/IP3.建立标准要遵循RFC(Request For comments)-因特网标准的形式,流程为:
(1)因特网草案(Internet Draft)—写出草案(此阶段还不算RFC文档)
(2)建议标准(Proposed Standard)—发布参考评论进行修改(此阶段开始成为RFC文档)
(3)因特网标准(Internet Standard)—完成标准的建立4.相关组织:
(1)国际标准化组织ISO 主要贡献:OSI参考模型,HDLC协议
(2)国际电信联盟ITU 主要贡献:制定通信规则
(3)国际电气电子工程师协会IEEE 主要贡献:学术机构,IEEE802系列标准,5G
(4)Internet工程任务组IETF 主要贡献:负责因特网相关标准的制定六.性能指标
1.速率:即数据率或称数据传输率或比特率
(1)比特:计算机中数据量的单位
(2)速率:连接在计算机网络上的主机在数字信道上传送数据位数的速率
单位为:b/s,kb/s,Mb/s,Gb/s,Tb/s
- 1Tb/s = 10^3Gb/s = 10^6Mb/s = 10^9kb/s = 10^12b/s
(3)存储容量单位:比较容易与速率单位混淆
- 存储容量单位用字节表示,1byte(字节) = 8bit(比特)
- 1KB = 2^10B = 1024B = 1024 * 8b
- 1MB = 2^10KB = 1024KB
- 1GB = 2^10MB = 1024MB
-
2.带宽
(1)带宽:原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)
(2)计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的”最高数据率” 单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s
- 带宽可以理解为网络设备所支持的最高速度
3.吞吐量
(1)吞吐量表示单位时间内通过某个网络(或信道,接口)的数据量
- 单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s
4.时延(也叫延迟或迟延)
(1)时延指的是数据(或报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间
- 单位是s
- 时延分为四种,总时延就是四种时延相加
(2)发送时延(传输时延):从发生分组的第一个比特算起,到该组的最后一个比特发生完毕所需的时间
- 发送时延= 数据长度 / 信道宽度(发送速率)
- 高速链路:指提高信道宽度,减少发生时延(并不会影响传播时延)
(3)传播时延:取决于电磁波传播速度和链路长度
- 传播时延 = 信道长度 / 电磁波在信道上的传播速率
(4)排队时延:等待输入/输出链路可用所需的时间
(5)处理时延:检错,找出口所需的时间
5.时延带宽积(以比特为单位的链路长度):表示传播时延和带宽的乘积
(1)公式:时延带宽积 = 传播时延 * 带宽
(2)单位是比特
(3)时延带宽积是一个描述信息量/数据量的属性
6.往返时延RTT
(1)往返时延RTT指从发送方发送数据开始,到发送方收到接收方的确认总共经历的时延
- 接收方接收到数据后立即发送确认
(2)RTT越大,在收到确认前,可以发送的数据越多
(3)RTT包括 往返传播时延 和 末端处理时间
- 计算公式:RTT = 传播时延 * 2 + 末端处理时间
传播时延*2 表示往返一共两次,末端处理时间会自行给出或提示忽略不计
7.利用率
(1)信道利用率 = 有数据通过的时间 / 总时间
(2)网络利用率 = 信道利用率加权平均值七.分层结构
1.分层的基本原则
(1)各层之间相互独立,每层只实现一种相对独立的功能
(2)每层之间界面自然清晰,易于理解,相互交流尽可能少
(3)结构上可分割开。每层都采用最合适的技术来实现
(4)保持下层对上层的独立性,上层单向使用下层提供的服务
(5)整个分层结构应该能促进标准化工作2.实体:第n层中的活动元素称为n层实体
3.协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定成为网络协议(水平方向)
(1)协议三要素:
语法:数据与控制信息的结构或格式
- 语义:需要发出何种控制信息,完成何种动作以及作出何种相应
-
4.接口(访问服务点SAP):上层使用下层服务的入口(也就是下层为上层提供服务的接口)
5.服务:下层为相邻上层提供的功能调用(垂直方向)
6.注意:
(1)网络体系结构是从功能上描述计算机网络结构
(2)计算机网络体系结构简称网络体系结构
(3)每层遵循某个/些网络协议以完成本层功能
(4)计算机网络体系结构是计算机网络的各层及其协议的集合
(5)第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能
(6)仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽
(7)体系结构是抽象的,而实现是指能运行的一些软件和硬件
(8)以小写字母开始的internet(互连网)是通用名词,泛指由多个计算机网络互连而成的网络。这些网络之间的通信协议是任意的
(9)以大写字母开头的Internet(互联网)是专用名词,它指当前全球最大的,由众多网络互连而成的特定互联网,并且采用TCP/IP协议族作为通信规则
(10)互联网现在采用存储转发的分组交换技术,以及三层ISP结构八.OSI参考模型-法定标准
1.来源:
(1)国际标准化组织(ISO)于1984年提出开放系统互连(OSI)参考模型
(2)目的:支持异构网络系统的互联互通
(3)该参考模型理论很成功,值得学习;但是市场失败,原因为: 研发者缺乏实操经验,只在理论上成功
- 协议复杂,实现效率低
- 该标准指定周期太长
- 层次划分不是很合理
2.OSI七层结构(由高到低讲解):
(1)应用层:所有能和用户交互产生流量的程序
- 典型的应用层服务:万维网(HTTP协议),电子邮件(SMTP协议),文件传输(FTP协议)等
(2)表示层:用于处理在两个通信系统中交换信息的表示方式(语法和语义)
- 功能一:数据格式交换
- 功能二:数据加密传输
- 功能三:数据压缩和恢复
- 表示层主要协议:JPEG,ASCII
(3)会话层:向表示层实体/用户进程提供建立连接并在连接上有序地传输数据。这是会话,也是建立同步(SYN)
- 功能一:建立、管理、终止会话
- 功能二:使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步(适用于传输大文件)
- 会话层主要协议:ADSP,ASP
(4)传输层:负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报
- 功能一:可靠传输、不可靠传输
- 功能二:差错控制
- 功能三:流量控制
- 功能四:复用分用
- 复用:多个应用层进程可同时使用下面运输层的服务
- 分用:运输层把收到的信息分别交付给上面应用层中相应的进程
- 传输层主要协议:TCP,UDP
(5)网络层:主要是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务(传输单位是数据报)
- 功能一:路由选择
- 功能二:流量控制
- 功能三:差错控制
- 功能四:拥塞控制
- 网络层主要协议:IP,IPX,ICMP,IGMP,ARP,RARP,OSPF
(6)数据链路层:主要是把网络层传下来的数据报组装成帧(传输单位是帧)
- 功能一:成帧(定义帧的开始和结束)
- 功能二:差错控制 -> 帧错+位错
- 功能三:流量控制
- 功能四:访问(接入) -> 控制控制对信道
- 数据链路层主要协议:SDLC,HDLC,PPP,STP
(7)物理层:主要任务是在物理媒体上实现比特流的透明传输(传输单位是比特),透明传输指不管所传数据是什么样的比特组合,都应当能够在链路上传送
- 功能一:定义接口特性
- 功能二:定义传输模式(单工/半双工/双工)
- 功能三:定义传输速率
- 功能四:比特同步
- 功能五:比特编码
- 物理层主要协议:Rj45,802.3
九.TCP/IP参考模型-事实标准
1.OSI参考模型与TCP/IP参考模型的区别
(1)相同点:
- 都分层
- 基于独立的协议栈的概念
- 可以实现异构网络互联
(2)不同点:
- OSI定义三点:服务、协议、接口
- OSI先出现,参考模型先于协议发明,不偏向特定协议
- TCP/IP设计之初就考虑到异构网互联问题,将IP作为重要层次 | | OSI模型 | TCP/IP模型 | | —- | —- | —- | | 网络层 | 无连接+面向连接 | 无连接 | | 传输层 | 面向连接 | 无连接+面向连接 |
(3)面向连接分为三个阶段,第一阶段 - 建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始第二阶段 - 数据传输。接着,当数据传输完毕,必须第三阶段 - 释放连接
(4)无连接没有这么多阶段,它直接进行数据传输。
十.五层参考模型
1.五层参考模型综合了OSI和TCP/IP的优点,所以使用更加广泛
2.五层结构及主要协议(由高到低讲解):
(1)应用层:
- 任务:通过应用进程间的交互来完成特定网络应用
- 协议:应用进程间通信和交互的规则
(2)传输层:
- 任务:负责向两台主机中进程之间的通信提供通用的数据传输服务
- 协议:
- 传输控制协议TCP:提供面向连接的、可靠地数据传输服务,数据传输单位是报文段
- 用户数据报协议UDP:提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),数据传输单位是用户数据报
(3)网络层:
- 任务:负责为分组交换网上的不同主机提供通信服务,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送
- 协议:互联网使用的网络层协议是无连接的网际协议IP和许多种路由选择协议
(4)数据链路层:
- 任务:将网络层叫下来的IP数据报组装成帧,在两个相邻节点间的链路上传送帧,每一帧包括数据和必要的控制信息
- 协议:通过控制信息可以发现所收到的帧有无差错,错了可直接丢弃以防止网络资源的浪费,但如果需要修改则需要采用可靠传输协议来纠正,这会使数据链路层的协议复杂
(5)物理层:
- 任务:物理层考虑用多大的电压代表0或1,以及接收方如何识别出发送方所发送的比特。除此之外,物理层还需要确定链接电缆的插头应当有多少引脚以及各引脚应如何连接
- 协议:TCP/IP协议族