写在前面:本笔记根据王道408完成,北航软院不考的内容不在其中。
总之复习期末把王道刷一遍就行了。
个人学习用,如有错误敬请指正。
第一章 概述
计算机网络概念
计算机网络的定义:一些互联的、自治的计算机的集合,主体是多台计算机,媒介为通信媒介, 目的是通信与资源共享。
计算机网络就是一些互联的
,自治的
计算机的集合,它们通过通信设备和线路互相连接,由功能完善的软件实现资源共享和信息传递。
- 广义观点:能实现
远程信息处理
的系统或能进一步达到资源共享的系统 - 资源共享观点:目的——
资源共享
,组成单元——分布在不同地理位置的多台独立的“自治计算机”
,网络中计算机必须遵循的统一规则——网络协议
- 用户透明性观点:网络对用户透明,其描述了一个
分布式系统
计算机网络组成
- 组成:
硬件
,软件
,协议
- 工作方式:
边缘部分
——通信+资源共享,核心部分
——为边缘部分提供连通性和交换服务 - 功能:
通信子网
——传输介质、通信设备和相应网络协议,资源子网
——实现资源共享的设备及其软件的集合
计算机网络的功能
- 数据通信:计算机网络
最基本
和最重要
的功能 - 资源共享:提高硬件资源,软件资源和数据资源的
利用率
- 分布式处理:利用
空闲计算机资源
提高整个系统利用率 - 提高可靠性:计算机网络中各台计算机可以通过网络互为替代机
- 负载均衡:工作任务
均匀分配
给网络中各台计算机
计算机网络分类
分布范围
- 广域网WAN:长距离通信(几十千米到几千千米),
交换技术
- 城域网MAN:5-50km,
以太网技术
- 局域网LAN:几十米到几千米,
广播技术
- 个人区域网PAN:10m左右
传输技术
- 广播式网络:所有联网计算机共享一个
公共通信信道
。局域网,广域网中的无线、通信卫星网络采用广播式通信。 - 点对点网络:每条物理线路连接一对计算机。广域网基本属于点对点网络。
是否采用分组存储转发
与路由选择机制
是点对点式网络与广播式网络的重要区别。
拓扑结构
- 总线形:
单根传输线
,建网容易,增/减结点方便、节省线路。重负载时通信效率不高,对任意一处故障敏感。(局域网) - 星形:
中央设备为交换机或路由器
,便于集中控制和管理。成本高,中央设备对故障敏感。(局域网) - 环形:
所有计算机接口设备连成环
,环中信号单向传输。(令牌环局域网) - 网状网络:
每个结点至少有两条路径与其他结点相连
,可靠性高。控制复杂,线路成本高。(广域网)
使用者
公用网/专用网
交换技术
- 电路交换网络:建立连接,传输数据,断开连接
- 数据直接传送,时延小。
- 线路利用率低、不能充分利用线路容量、不便于进行差错控制。
- 报文交换网络:用户数据+源地址、目的地址、校验码等,封装成报文,传送至相邻结点。
- 无需建立连接,没有建立时延,动态分配线路,线路可靠性高。
- 充分利用线路容量,实现不同链路之间不同数据传输速率的转换,格式转换,一对多/多对一访问,差错控制。
- 增大资源开销,转发时延高;缓冲时延;需要额外控制机制保证多个报文数据不乱序,缓冲区难以管理。
- 分组交换网络:数据分成较短的固定长度数据块,单个分组发送到相邻结点。
- 没有建立时延,线路利用率高,简化了存储管理,加速传输
- 缓冲易于管理,包的平均时延更小,网络占用平均缓冲区更少,更易于标准化,更适合应用
- 存在存储转发时延,需要传输额外的信息量。
传输介质
- 有线网络:双绞线网络,同轴电缆网络等。
- 无线网络:蓝牙,微波,无线电等。
计算机网络性能指标
-
带宽:网络通信线路传送数据的能力(
比特/秒
) -
时延:数据从网络一端发送到另一端的总时间。
总时延=发送时延+传播时延+处理时延+排队时延
-
发送时延:
发送时延=分组长度/信道宽度
-
传播时延:
传播时延=信道长度/电磁波在信道上传播速率
传输时延:路由器将分组推出的时间,是分组长度和链路传输速率的函数
传播时延:一个比特从一台路由器传播至另一台路由器所需的时间,是两台路由器之间的距离的函数
-
处理时延:数据在交换结点为存储转发进行的一些必要的处理花费的时间。
-
排队时延:分组在进入路由器后先在输入队列中排队等待处理,在输出队列中排队等待转发的时间。
处理时延、排队时延常忽略。
-
-
时延带宽积:
单向传播时延 × 信道带宽
-
往返时延:发送端发出一个短分组,到发送端收到来自接收端的确认总共经历的时延。
-
吞吐量:单位时间内通过某个网络(或者信道/接口)的数据量。
-
速率:数据传输速率,最高数据传输速率称为
带宽
-
信道利用率:有数据通过时间/(有+无)数据通过时间
计算机网络体系结构与参考模型
计算机网络分层结构
分层基本原则:
- 每层实现
独立功能
,降低大系统复杂度
- 各层之间界面
自然清晰
,易于理解,相互交流尽可能少
- 各层功能精确定义
独立于
具体实现方法 - 保持
下层对上层
的独立性,上层单向使用
下层服务 - 整个分层结构应能促进
标准化工作
层数过多,功能在不同层中重复出现,产生额外开销,导致运行效率降低
层数过少,会使每层协议太复杂
报文=服务数据单元(SDU)+协议控制信息(PCI)=协议数据单元(PDU)
n-SDU+n-PCI=n-PDU=(n-1)-SDU
计算机网络协议/接口/服务
协议
定义:对等
实体进行通信的规则的集合,由语法
,语义
,同步
三部分组成。
- 语法:规定传输数据的
格式
- 语义:规定索要完成的
功能
- 同步:规定了执行各种操作的
条件
,时序关系
等
完整的协议通常应该具有线路管理
,差错控制
,数据转换
等功能。
实体:活动元素,指任何可以发送或接收信息的硬件或软件进程,通常是某个特定的软件模块。
接口
定义:每层只能为紧邻的层次之间定义接口,不能跨层定义接口。
同一结点相邻两层实体通过服务访问点(SAP)
交互
服务
定义:下层为紧邻的上层提供的功能调用。
OSI参考模型的原语分类:
- 请求:服务用户发往服务提供者,请求完成某项工作
- 指示:服务提供者发往服务用户,指示用户做某件事
- 响应:服务用户发往服务提供者,作为对指示的响应
- 证实:服务提供者发往服务用户,作为对请求的证实
协议,接口,服务相互关系
只有本层协议的实现才能保证向上层提供服务
本层的服务用户只能看到服务而无法看到下面的协议
协议是"水平的",协议是控制对等实体之间通信的规则
服务是"垂直的",服务是由下层通过层间接口向上层提供的
- 面向连接服务:通信前需要
建立连接
,分配资源
,释放连接和占用的资源
- 无连接服务:通信前
不需要建立连接
,需要发送数据可直接发送
,属于不可靠服务
- 可靠服务:网络具有
纠错
,检错
,应答机制
,保证数据正确,可靠地传送到目的地 - 不可靠服务:网络只是尽量正确、可靠地传送,而不能保证数据正确、可靠地传送到目的地,是一种尽力而为的服务。不可靠服务的网络的可靠性由应用和用户来保障。
- 有应答服务:接收方收到数据后向发送方给出相应应答,该应答由传输系统内部自动实现,而不由用户实现。
- 无应答服务:接收方收到数据后不自动给出应答。(www服务)
ISO/OSI 参考模型
7层结构,由国际标准化组织(ISO)提出,称为开放系统互连参考模型(OSI/RM)。
-
物理层:实现比特流在传输介质上的透明传输
- 传输单位是比特,功能是在物理介质上为数据端设备透明地传输原始比特流。
- 物理层主要是定义数据终端设备和数据通信设备的物理与逻辑链接方法。
- 通信链路与通信结点的连接需要一些电路接口,物理层规定了这些接口的一些参数,比如笔记本上的网线接口。
-
链路层:实现点到点的数据传输
-
传输单位是帧。
-
产生/识别帧边界
-
将有差错的物理线路变成无差错的数据链路
-
差错恢复:采用重传(ARQ)方法
-
流量控制
-
广播式信道问题:如何控制对共享信道的访问;
把数据链路层划分为逻辑链路控制(LLC)和介质访问控制(MAC)子层,由MAC子层解决介质访问控制的问题。(如CSMA/CD)。
-
两台主机之间的数据传输是在一段一段的链路上传送的,需要使用专门的链路层协议,典型的数据链路层协议有SDLC、HDLC、PPP等。
-
-
网络层:实现主机到主机的通信
- 传输单位是数据报。
-
关心通信子网的运行控制,主要任务是将网络层的协议数据单元从源节点传输到目的结点,为分组交换网上的不同主机提供通信服务。
- 对分组进行路由选择,并实现流量控制、拥塞控制、差错检测与恢复、网际互连等。
分组:无论是在哪一层传送的数据单元,都可以用“分组”来表示。
-
传输层:实现主机间的进程即端到端的数据传输
-
负责主机中两个进程之间的通信,功能是为端到端连接提供可靠的传输服务。
-
流量控制、差错控制、服务质量、数据传输管理
-
链路层提供的是点到点通信,传输层提供的是端到端通信。
点到点:主机和主机之间的通信,一个点是一个硬件地址或IP地址;
端到端:运行在不同主机中的两个进程之间的通信,一个进程用一个端口来标识。
-
传输层具有复用和分用的功能,协议有TCP、UDP。
-
-
会话层:
- 会话层允许在不同主机上的各个进程之间进行会话。
这种服务主要为表示层实体或用户进程建立连接,并在连接上有序地传输数据,这就是会话。
-
会话层负责管理主机间的会话进程,包括建立、管理和终止。
-
设置
检查点
,当通信失效时可以从检查点恢复通信。
-
表示层:
-
表示层主要处理在两个通信系统中交换信息的表示方式;
-
使用一种通用的数据表示格式在多种数据表示格式之间进行转换
-
数据压缩、加密和解密。
-
-
应用层:
- 用户与网络的接口,应用层为特定类型的网络应用提供访问OSI参考模型环境的手段。
- 最复杂的一层,使用的协议最多,包括文件传输协议FTP、简单邮件传输协议SMTP、邮局协议POP3、域名服务DNS、超文本传输协议HTTP等。
实现流量控制的:数据链路层、网络层、传输层
数据链路层:相邻结点之间的流量控制
网络层:整个网络的流量控制
传输层:端到端的流量控制
服务访问点:
对等通信
每一层必须依靠相邻层提供的服务来与另一台主机的对应层通信,其实质为:
- 对等层实体之间虚拟通信
- 下层向上层提供服务
- 实际通信在最底层完成(物理通信)
OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU),传输层及以下各层的PDU另定的外还有各自特定的名称:
- 传输层——数据段
- 网络层——分组(数据包)
- 数据链路层——数据帧
- 物理层——比特
数据封装
一台计算机要发送数据到另一台计算机,数据必须进行封装。
封装就是在数据前面加上特定的协议头部。
TCP/IP模型
4层结构。
-
应用层协议支持了文件传输、电子邮件、远程登录、网络管理、web浏览等应用
-
传输层的两项主要功能:流量控制、可靠传输
传输层提供了TCP和UDP两种传输协议:
- TCP是面向连接的、可靠的传输协议。它把报文分解为多个段进行运输,在目的站再重新装配这些段,必要时重新发送没有收到的段。
- UDP是无连接的,由于对发送的段不进行校验和确认,因此它是“不可靠”的。
- 网际层的四个主要协议:
- IP:提供无连接的传输服务
- ICMP:提供控制和传递消息的功能
- ARP:为已知的IP地址确定相应的MAC地址
- RARP:根据MAC地址确定相应的IP地址
-
OSI参考模型中,网络层支持无连接和面向连接的通信,
但是传输层只有面向连接的通信;
-
TCP/IP模型的网际层只有一种无连接的通信模式,
但是传输层支持无连接和面向连接两种模式。
IP地址
-
IP网络中,每台主机都必须有一个唯一的IP地址;
-
IP地址是一个逻辑地址,32位,常用点分的十进制标记法。
如 00001010 00000010 00000000 00000001 记为 10.2.0.1
-
IP地址分为5类(A-E类),常用的A、B、C类。