[toc]
-
面向连接
-
必须经过三个步骤
-
建立连接(占用通信资源)
-
通话(一直占用通信资源)
-
释放连接(归还通信资源)
-
流水线级报文交换
-
发送端
- 长报文划分为较短的/固定长度的数据段
- 每一个数据段添加首部(header)构成分组(packet)
- 首部包括地址等控制信息
- 分组是互联网中传送数据单元
- 依次发送各分组。
-
中间节点
- 即分组交换机(如路由器(三层交换机)和二层交换机)
- 以存储转发形式根据首部信息将分组逐跳转发至目的地
- 经历的分组交换机和通信链路成为网络的路径(path || route)
-
接收端
- 剥去首部,恢复报文
- 可能有丢失/乱序/重复/篡改/冒充
-
优点(理解即可)
-
高效(动态分配带宽,逐段占用链路)
-
灵活(分组为单位)
-
迅速(不必先建立连接)
-
可靠(自适应路由选择)
-
-
问题
- 时延
- 处理时延:逐跳决策的路由查找
- 时延
-
排队延时:存储转发的排队
- 附加开销(如首部的开销)
- 直连链路
- 所有节点均直连
- 包括点对点、多路访问
- 交换网络
- 结点(node)+链路(link)
- 包括主机(host)和交换结点(switch)
- 互联网
- 路由器互联网络,网络可以嵌套网络
- 客户-服务器方式(C/S)
- 客户(client)是服务请求方,必须知道服务器程序地址
- 服务器(server)是服务提供方,自动调用,不需知道客户地址
- 客户和服务器都是网络边缘,网络核心只负责传输
- 对等方式(P2P)
- 每个主机既是客户又是服务器
- 性能瓶颈低,单点故障影响小
- 将端系统连接到边缘路由器(edge router)的物理链路。
- 分组交换机和链路构成的网络,提供连通性而非具体业务
- 包括2类分组交换机,二层转发/三层转发
- 由ISP组成
- 数字信道上传送数据的速率
- 又称数据率/比特率
- 单位是 bps
- 数字信道所能传送的最高数据率
- 即在一段特定时间内网络所能传送的比特数
- 单位时间内通过某个网络(信道/接口)的数据量
- 表示测量性能
- Throughput = Tansfersize / Transfertime
- 其中 Transfertime 包括
- RTT(发请求并返回数据的往返时间)
- 把数据传到网上的时间
- 即 Transfertime = RTT + Transfersize / Bandwidth
- 其中 Transfertime 包括
- 大量数据传输有助于提高吞吐量
- 测量时关注小包吞吐量
- 数据在网络两端传送花费的时间
- 总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
- 发送时延 = 数据块长度(b) / 发送速率(b/s)
- 传播时延 = 信道长度(m) / 信号在信道上传播速率(m/s)
- 处理时延包括分析首部、查错校验、查找路由等
- 排队时延即节点缓存队列中分组排队经历时延,取决于网络当时通信量
- 传输速率即发送速率,和传播速率不同
- 时延带宽积 = 传播时延 * 带宽
- 又称以比特为单位的链路长度
- 连续发送数据时,第一个 bit 到达终点时后续已发送bit的值
- 仅当代表链路的管道充满 bit 时,链路才充分利用
- 推论:时延固定时,带宽增长很重要
- 信道利用率
- 信道有百分之几的时间是被利用的(有数据通过)
- 利用率增大时,引起的时延急剧增加
- 令
$D_0$ 表示网络空闲时的时延,$D$ 表示网络当前的时延,$U \in [0, 1]$ 表示信道利用率,则在适当的假定条件下,$D$ 和$D_0$ 之间的关系为:$D=\frac{D_0}{1-U}$
- 网络利用率
- 全网络信道利用率的加权平均值
- 计算机网络的基本组成部分
- 未进行网络中的数据交换而建立的规则/标准/约定
- 组成要素
- 语法
- 语义
- 同步(事件实现顺序)
- 模块化
- 模块化协议栈+良定义模块接口
- 独立性强,功能简单,易于实现
- 适应性差,难以维护
- 两层结构
- 应用层+物理层,一一适配
- 结构清晰,易于维护
- 新应用需要与每种物理层类型匹配
- 三层结构
- 中间层实现对物理层的抽象,对应用层提供统一接口
- 降低适配工作量
- 增加设计难度
- TCP/IP 就是现在的适配层
- 各层互相独立
- 灵活性好
- 结构上可分割
- 易于实现维护
- 促进标准化工作
- 开放系统互连(OSI)参考模型(7层协议)
- 低两层面向媒介
- 高三层面向应用
- 网络层和传输层提供端到端的通信服务,但有所区别
- 网络层机器下层技术实现:主机到主机的通信(尽力而为的交付)
- TCP / IP 架构
- 体系结构可分为 4 层,但不严格划分,以支持跨层使用网络
- 包含 OSI 模型的低两层:物理层、数据链路层
- 物理层:处理链路上原始比特的传输。传输物理信号、接口、信号编码调制、速率
- 数据链路层:可靠的点对点数据帧传输
- 支持多种网络协议
- 由硬件(适配器)和软件(驱动程序)共同实现
- 可分多个子层
- 即 OSI 模型的网络层
- 网络的关键部分,支持多种网络互联为一个逻辑网络
- 实现主机到主机的通信,分组交换网内分组的路由,确定分组转发路径
- 即 OSI 模型的传输层
- 为应用程序提供可选择的逻辑信道,实现端到端的数据传输
- TCP
- 面向连接的协议
- 提供可靠的字节流传输
- UDP
- 提供不可靠的、无连接的传输
- 包含 OSI 模型的高三层:会话层、表示层、应用层
- 会话层: 进程管理、双工、半双工、单工、断点续发
- 表示层:加解密、数据格式化
- 应用层:包括应用协议 HTTP / FTP
- 功能
- 数据表示
- 数据加密
- 会话控制
多路复用、多路分解
- 基本过程
- 从发送端系统的协议栈向下
- 向上和向下经过中间交换节点
- 向上到达接收端系统协议栈
- 封装
- 数据分段,加数据包头
- 数据包交换
- 数据包路由
- 解封
- 重组原始数据