概述
基本概念
信道
信道指传输信息的通道
信道的类型
- 物理信道:一般是指依托物理媒介传输信息的通道,如电话线,光纤
- 逻辑信道:人为定义的信息传输信道,是物理信道的一种抽象概念
信道的带宽
带宽指的是某个信道在单位时间内最大能传输多少比特的信息
注意带宽指数字带宽,单位是比特率或字节率
带宽单位
大写‘B’代表【字节】,小写‘b’代表【比特】
为了区分十进制和二进制,国际上对于二进制的数量级要加一个小写字母‘i’
例如:
- 1Kbps表示“1000比特每秒”
- 1KiBps表示“1024字节每秒”
信道工作模式:单工,半双工,全双工
- 单工(simplex):模式的数据传输是单向的
例如广播电台可以发信号给收音机,但收音机不能发信号给电台
- 半双工(half-duplex):数据可以在一个信号载体的两个方向上传输,但不能同时传输
例如火车在铁轨上可以有两种运行方式,但在一瞬间只能选择其中一个方向
- 全双工(full-duplex):允许数据在两个方向同时传输
例如光纤,在同一根光导纤维中可以有多个光束同时相向传输,互相不干扰
单播,多播,广播,选播,地域播
对于网络通讯需要多个端点(n>2)参与才有意义,当n个端点构成网络时,就需要确定网络节点之间的通讯方式(单播,多播,广播,选播)
- 单播(unicast):发送给网络中指定的【单个】端点
- 多播/组播(multicast):发送给网络中指定的【多个】端点
- 广播(broadcast):发送给网络中的【所有】端点
- 选播(anycast):发送给网络中的【随机选择的单个】端点
- 地域播(geocast):发送给网络中【某个地理位置里的一组】收件人,地域播寻址是移动网络路由协议使用的一种特殊形式的组播寻址方法
通讯协议
通讯协议指通信双方对数据传送控制的一种约定,约定包括对数据格式,同步方式,传送速度,传送步骤,检纠错方式以及控制字符定义等问题做出统一规定
通俗来说就是两个人交流需要一种双方都理解的语言,这个语言就是通讯协议
分层
在一个公司中通常会设有不同的岗位来配合,对于网络通讯也是如此,信息的传递任务不太可能使用单个通讯协议,而多个层次的协议在一起协同工作,技术上称作“协议栈”
协议栈原理
对于多层次的协议栈,每个层次都有各自的端点,处于同一层次的两个端点会使用该层次的协议进行通讯(可能会有多个通讯协议)
除最顶层外,每个层次的端点都会向其父类端点提供服务(API)
除最底层外,每个层次的端点会调用子类的API
数据格式原理
大部分协议会把传输的数据分割成N份,每一份就是一个数据包
通常来说数据包有三部分
头部
身体(视作有效载荷)
尾部
举例来说头部或尾部相当于买东西时的包装袋,身体才是里面有效的东西
对于相邻的两层协议来说,下层包含上层,也就是说下层协议的载荷就是上层协议的整体
网络分层的参考模型
上述的分层和协议栈都是较为抽象的概念,具体的分几层,每层做什么,有很多人提出了很多网络分层的参考模型
本系列将基于OSI模型展开进行讨论
下篇详解:OSI七层模型详解——物理层
PS:本系列的所有图片大部分是作者使用UMLet手绘得到,少部分是从互联网上下载的素材
最后
以上就是自觉故事为你收集整理的OSI七层模型详解——信道与协议栈的全部内容,希望文章能够帮你解决OSI七层模型详解——信道与协议栈所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复