计算机网络体系结构
一、协议与划分层次
1、网络协议
网络协议(协议):为进行网络中的数据交换而建立的规则、标准、约定
规定:交换数据的格式以及有关的同步问题
同步:在一定的条件下应当发生什么事件,含有时序的意思
-
网络协议三要素:
含义 语法 数据与控制信息的结构或格式 语义 需要发出何种控制信息,完成何种动作以及做出何种响应 同步 事件实现顺序的详细说明 网络协议:计算机网络不可缺少的组成部分
-
协议形式
- 使用便于人来阅读和理解的文字描述
- 使用让计算机能够理解的程序代码
- 都必须做出精准的解释
2、分层
-
好处
原因 (1)各层之间是独立的 仅知道该层通过层间的接口(界面)所提供的服务,只实现相对独立的功能 (2)灵活性好 任何一层变化,只要层间接口不变,上层或下层都不受影响,服务可取消 (3)结构上可分割开 各层采用最合适的技术实现 (4)易于实现和维护 系统被分割为若干个相对独立的子系统,实现与调试系统变得容易 (5)能促进标准化工作 每一层的功能有精确的说明 -
各层所要完成的功能
含义 差错控制 使相对层次对等方的通信更加可靠 流量控制 发送端的发送速率必须使接收端来得及接收 分段和重装 发送端将要发送的数据块划分为更下的单位,在接收端还原 复用和分用 发送端几个高层会话复用一条底层的连接,在接收端分用 连接建立和释放 交换数据前先建立一条逻辑连接,数据传送结束后释放连接 分层缺点:产生开销,存在有些功能在不同层次中重复出现
3. 网络体系结构
- 计算机网络的各层及其协议的集合
- 或者,计算机网络及其构件所应完成的功能的精准定义
- 体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件、软件
二、具有五层协议的体系结构
层数 | ||
---|---|---|
OSI | 七层协议体系结构 | 概念清楚、但是复杂不实用 |
TCP/IP | 四层 | 得到广泛的应用 |
1. 应用层
含义 | |
---|---|
应用层 | 体系结构的最高层 |
应用层任务 | 通过应用进程间的交互来完成特定网络应用 |
应用层协议定义 | 应用进程间通信和交互的规则 |
进程 | 主机中正在运行的程序 |
不同的网络应用有不同的应用层协议 | 域名系统DNS,HTTP协议、SMTP协议 |
应用层交互的数据单元 | 报文 |
2. 运输层
任务:负责向 两台主机中进程之间的通信 提供 通用的数据传输任务
应用进程利用 该服务传送应用层报文
-
特点
含义 通用 多种应用可以使用同一个运输层服务 复用 多个应用层进程可同时使用下面运输层的服务 分用 运输层把收到的信息分别交付上面应用层中的相应进程 -
运输层协议
含义 传输控制协议 TCP 提供面向连接、可靠的数据传输服务,其数据传输的单位是 报文段 用户数据报协议 UDP 提供无连接、尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户 数据报
3. 网络层
- 任务一:负责为分组交换网上的不同主机提供通信服务
- 发送数据:把运输层产生的报文段或用户数据报封装成 分组或包进行传送
- 任务二:选择合适的路由,让分组找到目的主机
- 互联网组成:大量的异构网络通过路由器相互连接
- 互联网使用的网络层协议:无连接的网际协议IP 和 许多种路由选择协议
4. 数据链路层
- 任务:将网络层交下来的 IP 数据报组装成帧,在两个相邻结点间的链路上传送栈
- 帧:包括数据、必要的控制信息(同步、地址信息,差错控制)
- 控制信息的作用
- 使接收端知道帧的开始位与结束位
- 使接收端能够检测帧有无差错
5. 物理层
物理层传数据的单位:比特
-
任务:
三个考虑 多大电压代表 "1" 或 "0" 接收方如何识别发送方发送的比特 确定连接电缆的插头上的引脚数量以及引脚如何连接 解释比特代表意思不是物理层任务
传递信息的物理媒体(双绞线、同轴电缆、光缆、无线信道),不在物理层协议之内,在物理层协议下面
TCP/IP:往往指互联网所使用的整个 TCP/IP 协议族
三、实体、协议、服务和服务访问点
实体:表示任何可发送或接收信息的硬件或软件进程
协议:控制两个对等实体(或多个实体)进行通信的规则的集合
协议的语法:定义所交换的信息的格式
协议的语义:定义发送者或接收者所要完成的操作
在协议控制下,对等实体间的通信使得本层能够向上一层提供服务
实现本层协议,还要使用下面一层所提供的服务
-
协议与服务的区别
协议 服务 控制对等实体之间通信的规则 由下层向上层通过层间接口提供服务 水平的 垂直的 -
协议与服务的联系
- 协议的实现 保证了能够向上一层提供服务
- 使用本层服务的实体 只能看见服务 而无法看见下面的协议
服务访问点:在同一系统中相邻两层的实体进行交互(交换信息)的地方
协议另一特点:估计好所有的不利事件
确定计算机网络协议的正确:既要看正常情况下是否正确,还要仔细检查这个协议能否应付各种异常情况