1.5 计算机网络体系结构
复杂系统的分层结构
类比航空旅行
每层完成一种(类)特定服务/功能,每层依赖底层提供的服务,通过层内动作完成相应功能。
网络体系结构是从功能上描述计算机网络结构。
OSI参考模型
数据封装与通信过程
为什么需要数据封装
增加控制信息(构造协议数据单元 (PDU))。
控制信息主要包括:
- 地址(Address): 标识发送端/接收端
- 差错检测编码(Error-detectingcode): 用于差错检测或纠正
- 协议控制(Protocol control): 实现协议功能的附加信 息,如: 优先级(priority)、服务质量(QoS)、 和安全控制等
物理层功能
- 接口特性
- 机械特性、电气特性、功能特性、规程特性
- 比特编码
- 数据率
- 比特同步
- 时钟同步
- 传输模式
- 单工(Simplex)
- 半双工(half-duplex)
- 全双工(full-duplex)
数据链路层功能
- 负责结点-结点(node-to-node)数据传输
- 组帧(Framing)
-
物理寻址(Physical addressing)
- 在帧头中增加发送端(和/或)接收端的物理地址,标识数据帧的发送端(和/或)接收端。
-
流量控制(Flow control)
- 避免淹没接收端
- 差错控制(Error control)
- 检测并重传损坏或丢失帧,并避免重复帧
- 访问(接入)控制(Access control)
- 在任一给定时刻决定哪个设备拥有链路(物理介质)控制使用权
网络层功能
- 负责源主机到目的主机数据分组(packet)交付
- 可能穿越多个网络
-
逻辑寻址(Logical addressing)
- 全局唯一逻辑地址,确保数据分组被送达目的主机,如IP地址
- 路由(Routing)
- 路由器(或网关)互连网络,并路由分组至最终目的主机
- 路径选择
- 分组转发
举个例子,如下图。图中绿色为物理地址,红色为逻辑地址。
网络层封装:[Data][S(源主机逻辑地址)][D目的主机逻辑地址]
数据链路层封装:[DT][Data][S][D][02物理地址][46物理地址]
路由器不断解析到网络层,根据逻辑地址(不变),不断路由变换物理地址,最终到达目的地。
传输层功能
负责源-目的((端-端) (进程间)) 完整报文传输
- 分段与重组
- SAP(Service Access Point)寻址
- 确保将完整报文提交给正确进程,如端口号
- 连接控制
- 流量控制
- 差错控制
会话层功能
- 对话控制(dialog controlling)
- 建立、维护
- 同步(synchronization)
- 在数据流中插入“同步点”
- 最“薄”的一层
表示层功能
处理两个系统间交换信息的语法与语义(syntax and semantics )问题
- 数据表示转化
- 转换为主机独立的编码
- 加密/解密
- 压缩/解压缩
应用层功能
支持用户通过用户代理(如浏览器)或网络接口使用网络(服务)
典型应用层服务:
- 文件传输(FTP)
- 电子邮件(SMTP)
- Web(HTTP)
- ……
TCP/IP参考模型
应用层:应用层、表示层、会话层
运输层:传输层
网际层:网络层
网络接口层:数据链路层、物理层
5层参考模型
综合 OSI 和 TCP/IP 的优点
- 应用层: 支持各种网络应用
- FTP, SMTP, HTTP
- 传输层: 进程-进程的数据传输
- TCP, UDP
- 网络层: 源主机到目的主机的数据分 组路由与转发
- IP协议、路由协议等
- 链路层: 相邻网络元素(主机、交换 机、路由器等)的数据传输
- 以太网(Ethernet)、802.11 (WiFi)、 PPP
- 物理层: 比特传输