1. 计算机网络概述
1.1 概念和功能
概念
计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
- 计算机系统:
- Windows
- MacOS
- Linux
- …
- 通信设备
- 路由器
- 集线器
- 中继器
- 交换机
- …
- 线路
- 有线
- …
- 无线
- …
- 有线
- 软件:
计算机网络是互连的、自治的计算机集合。
- 数据通信
- 资源共享
同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据。
- 分布式处理
- 提高可靠性
- 负载均衡
- …
因特网发展阶段
- 第一阶段
- 产生:美国国防部高级研究计划局(ARPA)设计一个分散的指挥系统→阿帕网
- 发展:希望实现不同网络互连→互联网
- 发展:1983年阿帕网接受TCP/IP,选定 Internet为主要的计算机通信系统→因特网
网络把许多计算机连接在一起,而互联网则把许多网络连接在一起。因特网是世界上最大的互联网。
- 第二阶段:三级结构
- 主干网
- 地区网
- 企业网/校园网/…
第三阶段:多层次ISP结构
硬件
- 端系统
- 路由器、交换机..
- 软件
- (部署在) 端系统
- (部署在) 中间设备
协议
边缘部分:用户直接使用
- C/S 方式:Client/Server
- B/S 方式:Browser/Server
- P2P 方式:peer-to-peer
-
功能组成
通信子网:实现数据通信
- 资源子网:实现资源共享/数据处理
分类
- 按分布范围分
- 广域网WAN:交换技术
- 城域网MAN
- 局域网UAN:广播技术
- 个人区域网PAN
- 按使用者分
- 公用网:中国电信、中国联通之类
- 专用网:政府、军队
- 按交换技术分
- 电路交换
- 报文交换
- 分组交换
- 按拓扑结构分
- 总线型
- 星型
- 环型
- 网状型
- 按传输技术分
- 广播式网络:共享公共通信信道
- 点对点网络:使用分组存储转发和路由选择机制
1.3 标准化工作及相关组织
- 标准的分类
- 法定标准:由权威机构制定的正式的、合法的标准
- OSI
- 事实标准:某些公司的产品在竞争中占据了主流,时间长了,这些产品中的协议和技术就成了标准
- TCP/IP
- 法定标准:由权威机构制定的正式的、合法的标准
- RFC (Request For Comments, 因特网标准的形式) 发展为因特网标准的四个阶段
- 因特网草案 (Internet Draft) 这个阶段还不是RFC文档。
- 建议标准 (Proposed Standard) 从这个阶段开始成为RFC文档。
- 草案标准 (Draft Standard)
- 因特网标准 (Internet Standard)
- 标准化工作的相关组织
- 国际标准化细织ISO:OSI模型、HDLC协议
- 国际电信联盟ITU:制定通信规则
- 电气和电子工程师协会IEEE:学术机构、IEEE802系列标准、5G
- Internet工程任务组IETF:负责因特网相关标准的制定RFC xxxx
1.4 性能指标
速率
速率即数据率或称数据传输率或比特率。即连接在计算机网络上的主机在数字信道上传送数据位数的速率。
- 单位是b/s,kb/s,Mb/s,Gb/s,Tb/s
带宽
- 带宽原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz).
- 计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。单位是“比特每秒”,b/s, kb/s, Mb/s, Gb/s。指网络设备所支持的最高速度
吞吐量
- 表示在单位时间内通过某个网络(或信道、接口)的数据量。单位b/s,kb/s,Mb/s等。
-
时延
指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟延。单位是s。
时延
- 发送时延 (传输时延):从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需的时间。
高速链路提高信号带宽,降低发送时延。
- 传播时延:取决于电磁波传播速度和链路长度
- 排队时延:等待输出/入链路可用
- 处理时延:检错、找出口
时延带宽积
时延带宽积 (bit) =传播时延(s) X 带宽(b/s)
时延带宽积又称为以比特为单位的链路长度。即“某段链路现在有多少比特”,也就是链路的容量
往返时间RTT
- 从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认),总共经历的时延。
- RTT越大,在收到确认之前,可以发送的数据越多。
RTT包括
信道利用率
- 网络利用率:信道利用率加权平均值
2. 体系结构与参考模型
2.1 分层结构、协议、接口、服务
概念总结
- 网络体系结构是从功能上描述计算机网络结构。
- 计算机网络体系结构简称网络体系结构是分层结构。
- 每层遵循某个/些网络协议以完成本层功能。
- 计算机网络体系结构是计算机网络的各层及其协议的集合。
- 第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能
- 仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽。
- 体系结构是抽象的,而实现是指能运行的一些软件和硬件。
为什么要分层(分而治之)?
复杂的程序都要分层,这是程序设计的要求。网络每一层协议负责的工作都是不一样的,也就对应了有不同设备来处理。
只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。
**
发送文件前要完成的工作:
- 发起通信的计算机必须将数据通信的通路进行激活。
- 要告诉网络如何识别目的主机。
- 发起通信的计算机要查明目的主机是否开机,并且与网络连接正常。
- 发起通信的计算机要弄清楚,对方计算机中文件管理程序是否己经做好准备工作。
- 确保差错和意外可以解决。
怎么分层
- 分层的基本原则
- 各层之间相互独立,每层只实现一种相对独立的功能。
- 每层之间界面自然清晰,易于理解,相互交流尽可能少。
- 结构上可分割开。每层都采用最合适的技术来实现。
- 保持下层对上层的独立性,上层单向使用下层提供的服务。
- 整个分层结构应该能促进标准化工作。
分层结构
实体
协议(对等实体才有协议)
为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。【水平】
- 语法:这一段内容要符合一定的规则和格式(例如,括号要成对,结束要使用分号等)。
- 语义:这一段内容要代表某种意义(例如数字减去数字是有意义的,数字减去文本一般来说就没有意义)。
-
接口(访问服务点SAP)
服务(下层为上层提供服务)
协议与数据单元
SDU 服务数据单元:为完成用户所要求的功能而应传送的数据。
- PCI 协议控制信息:控制协议操作的信息。
- PDU 协议数据单元:对等层次之间传送的数据单位。
2.2 计算机网络分层结构
- 7层OSl参考模型 法定标准
- 4层TCP/IP参考模型 事实标准
-
2.3 OSI(Open System Interconnection Reference Model) 参考模型
ISO/OSI参考模型一怎么来的?
网络体系结构繁杂
- IBM -> SNA
- DEC -> DNA
- 美国国防部 -> TCP/IP
- 目的:支持异构网络系统的互联互通。
国际标准化组织(ISO)于1984年提出开放系统互连(OSI)参考模型
理论成果,市场失败
ISO/OSI参考模型
ISO/OSI参考模型解释通信过程
ISO/OSI参考模型解释通信过程
各层功能与协议
- 应用层:所有能和用户交互产生网络流量的程序
- 文件传输(FTP)
- 电子邮件(SMTP)
- 万维网(HTTP)
- 表示层:用于处理在两个通信系统中交换信息的表示方式(语法和语义)
- 功能
- 数据格式变换
- 数据加密解密
- 数据压缩和恢复
主要协议:JPEG、 ASCII
- 功能
- 会话层:向表示层实体/用户进程提供建立连接并在连接上有序地传输数据。这是会话,也是建立同步(SYN)
- 功能
- 建立、管理、终止会话
- 使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步。
主要协议:ADSP、ASP
- 功能
- 传输层:负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报。
- 功能
- 可靠传输(TCP)、不可靠传输(UDP)
- 差错控制
- 流量控制
- 复用分用
- 复用:多个应用层进程可同时使用下面运输层的服务。
- 分用:运输层把收到的信息分别交付给上面应用层中相应的进程。
- 主要协议:TCP、UDP
- 功能
- 网络层:主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务网络层传输单位是数据报。
- 功能
- 路由选择最佳
- 流量控制
- 差错控制
- 拥塞控制
- 若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态、因此要采取一定措施,缓解这种拥塞。
- 主要协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF
- 功能
- 数据链路层:主要任务是把网络层传下来的数据报组装成帧 (数据链路层/链路层的传输单位是帧)。
- 功能
- 成帧(定义帧的开始和结束)
- 差错控制 帧错+位错
- 流量控制
- 访问(接入)控制 控制对信道的访问
- 主要协议:SDLC、HDLC、PPP、STP
- 功能
- 物理层:主要任务是在物理媒体上实现比特流的透明传输。物理层传输单位是比特。
- 功能
- 定义接口特性
- 定义传输模式(单工、半双工、双工)
- 定义传输速率
- 比特同步
- 比特编码
- 主要协议:Ri45、802.3
- 功能
2.4 TCP/IP 参考模型
OSI 参考模型与TCP/IP参考模型
OSI 参考模型与TCP/IP参考模型相同点
- 都分层
- 基于独立的协议栈的概念
-
OSI 参考模型与TCP/IP参考模型不同点
OSI定义三点:服务、协议、接口
- OSI先出现,参考模型先于协议发明,不偏向特定协议
- TCP/IP设计之初就考虑到异构网互联问题,将IP作为重要层次
- 面向连接分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始数据传输,这是第二阶段。接着,当数据传输完毕,必须释放连接。即所谓的面向连接就是,TCP 会保证这个包能够到达目的地。如果不能到达,就会重新发送,直至到达。
- 面向无连接没有这么多阶段,它直接进行数据传输。
5层参考模型
综合了OSl和TCP/IP的优点