网络层次结构
一、网络分层的原因
1.网络通信面临的一些问题:
硬件故障、网络拥塞、包延迟、包丢失、数据损坏、数据重复、数据乱序
2.假设:将所有工作分成面向应用与面向传输两部分
-----------------------------------
应用程序:QQ、微信、浏览器、播放器
-----------------------------------
物理连接:网卡等
-----------------------------------
这种方式的特点:* 应用程序完全了解本机网络连接的内部细节
*应用程序直接通过网络连接与其它应用程序通信
缺点:* 会造成大量的重复劳动
* 扩展性太差
3.现在:将面向传输功能进一步细分为通信软件和物理连接
------------------------------------
应用程序:QQ、微信、浏览器、播放器
------------------------------------
通信软件: 起到“承上启下”的作用
------------------------------------
物理连接:网卡等
------------------------------------
采用包交换机制在系统中增加若干中间层(主要是网络层),使应用程序不直接处理硬件连接
这种设计的好处是:* 开发新应用只要遵守通信软件提供的接口即可实现通信功能
*出现新网卡时只需扩展通信软件上层应用即可使用新网卡
4.网络之所以使用层次结构的原因:
(1)出于复杂问题的解决需要
(2)系统功能的扩展性需要
二、网络的层次结构
1.层次结构的两大特点:
*层次性:发送方—(由高到低)单向依赖
接收方—(由低到高)单向依赖
*结构性:上层起着隐藏下层细节和统一下层差异的作用
2.网络体系结构:网络通信功能的层次构成、各层的通信协议规范和相邻层的接口协议规范的集合。
层次 协议 接口
每一层的目的都是向它上一层提供一定服务而把如何实现这一服务的细节对
上层加以屏蔽。
3.协议
* 协议就是一组规则和约定。
* 计算机网络协议
系统:包括一个/多个实体、在物理上明显区分的主体
例如:主机、路由器、交换机、AP等
实体:系统中能够收发信息和处理信息的任何东西
例如:Email、ftp、www
*计算机网络协议:网络中两个实体之间控制数据通信的规则和约定的集合。
4.计算机网络协议的要素
*语法(数据结构、编码和信号电平等):1.消息格式、编码2.HTML网页表示
3.TCP报文格式
* 语义(用于协调和差错处理的控制信息):1.双方“握手”控制信息
2.TCP一方主动发出建立请求
3.TCP另一方表态是否同意或拒绝连接
* 时序(传输速率匹配和事件先后顺序):1.双方握手过程规定 2.先和服务器
建立TCP连接3.在请求某个HTML网页
5.层次结构的有关概念
*第n层协议:一台机器的第n层与另一台机器的的第n层进行通话采用的规则和约定。
*对等实体:不同机器中组成相同协议层的实体
*接口:位于相邻层间,定义下层向上层提供的原语操作和服务
*协议栈:特定系统使用的一组协议
6.计算机网络体系结构分层原则
*协议分层原则:目标机器第n层收到的对象应与源机器第n层发出的“对象”完全一致
*协议栈 :1.上层隐藏下层的细节 2.上层统一下层的差异 3.上层弥补下层的不足
7.层次划分设计的问题
*标识接收方/发送方机制:机器上的进程需要某种手段标识它想和哪个进程通话
*数据传输规则:传输形式、数据的顺序、收发双方的同步。。。
*差错控制:确定错误检测和错误纠正方法
*多路复用:下层可决定为多个上层通信使用同一个连接
*路由选择:在多条可能的路径中选定一条
三、网络协议与服务
1.服务提供者与服务使用者
* 服务提供者:使用下层服务的实体
服务使用者:为上层提供服务的实体
* 第N层实体:1.实现的功能为N+1层使用 2.利用第N-1层来实现本层的功能
3.既是第N+1层的服务提供者又是第N-1层服务用户
2.服务分类
(1)面向连接
* 有连接服务/面向连接服务:1.类似于电话服务 2.本质上数据结构是一个管道
* 其发送的形式有两种:1.报文序列:保持发送数据的边界 2.不保次发送数据的边界
(2)无连接
* 无连接服务:1.类似于邮政服务 2.每次发送一个报文 3.每个报文都给出详细的目标地址信息
* 其根据服务质量可划分为两种:1.无确认:不能确定接收方是否收到 2.有确认:能确认发送是否成功
3.如何使用下层服务
* 服务:形式上由一组原语(操作)来描述
* 原语:上下两层通信形式
* 参数:用来传递数据和控制信息
* 国际上定义的4个原语:
1.Request:由服务使用者发出/要求服务做某种工作
2.Indication:由服务提供者发出/通知发生了某事件
3.Respone:由服务使用者发出/表示对某个事件的响应
4.Confirm:由服务提供者发出/报告事件的响应
* 服务原语的时序性
4.服务与协议是完全分离的
* 服务(上下关系):1.服务是各层向它的上层提供的一组原语(操作)
2.服务定义了该层能为它的用户完成的操作
3.服务只与两层之间的接口有关
* 协议(水平关系):1.协议是一组规则
2.决定同层对等实体交换帧、包和报文的格式和意义
3.实体用协议来实现他们向上层提供的服务
四、网络标准与标准化组织
* 标准化是规模化的基础
优点:1.能保证设备/软件有一个大市场
2.允许来自多个厂商产品的互通
3.使用户在设备选择和使用中有更多的灵活性
* 标准及其分类
标准:标准是一组规定的规则、条件或要求
* 一些有关的标准化组织
ITU ISO ANSI IEEE(制定通信和信息系统领域的标准)
因特网标准:IRTF IETF RFC
五、TCP-IP模型及因特网
* TCP是传输层的协议 IP是网络层的协议
* TCP/IP设计目标:1.互联网络 2.保护子网硬件 3.体系结构灵活 4.网络故障不能影响两端之间连接
* 应用层
传输层
网络层
主机-网络层————>交换机、集线器、接入点
( 802.3/802.11)
* 主机-网络层
(1)主要功能:1.端系统与其所接网络之间的数据交换 2.特定软件取决于所用的网络类型
(2)设计优点:1.将网络访问功能隔离成一个单独层次 2.网络访问层之上的通信软件不必关心所用的网络类型
(3)又分为两层:* 物理层:1.设备与介质/网络之间的物理接口
2.规范传输介质特性,信号、数据率及相关方面
* 网络访问层:1.主机与网络之间的数据交换
2.发送主机必须向网络提供目的主机的地址
* 网络互联层(互联协议:IP、ICMP、IGMP、ARP/RAPP、BGP/OSPF)
基本任务:1.采用存储-转发技术
2.提供Best-effort服务
3.处理来自传输层的报文发送请求(主机)
4.处理入境数据包的转发(路由器)
5.处理ICMP报文
* 传输层(TCP/UDP)
(1)主要功能:1.提供端-端的数据传送服务
2.为应用层隐藏底层网络的细节
(2)TCP/IP在无连接的基本传送服务IP之上既提供了无连接服务,也提供了可靠的有连接服务
* 应用层
应用层服务:1.虚拟终端(TELNET)协议
2.文件传输协议(FTP)
3.简单邮件传输协议(SMTP)
4.域名服务(DNS)
5.超文本传输协议(HTTP)