1.协议的分层

     ISO在制定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论, 终于提出了作为通信协议设计指标的OSI參考模型。这一模型将通信协议中必要 的功能分成了7层。通过这些分层,使得那些比較复杂的网络协议更加简单化。

在这一模型中,每一个分层都接收由它下一层所提供的特定服务,而且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的约定叫做“接口。同一层之间的交互所遵循的约定叫做协议”。

协议分层就如同计算机软件中的模块化开发。OSI參考模型的建议是比較理想化的。它希望实现从第一层到第七层的全部模块,并将它们组合起来实现网络 通信。分层能够将每一个分层独立使用,即使系统中某些分层发生变化,也不会波及整个系统。因此,能够构造一个扩展性和灵活性都较强的系统。此外,通过分层能够细分通信功能,更易于单独实现每一个分层的协议,并界定各个分层的详细责任和义务。这些都属于分层的长处。而分层的劣势,可能就在于过分模块化、使处理变得更加沉重以及每一个模块都不得不实现相似的处理逻辑等问题。

(原文链接:http://blog.csdn.net/yelangjueqi/article/details/38269947 ,欢迎转载,转载时请注明出处!!)
2.通过对话理解分层

关于协议的分层,我们再以AC的对话(见上一节)为例简单说明一下。在此,我们仅仅考虑语言层和通信设备层这两个分层的情况。首先,以电话聊天为例,见下图,上半部分中的AC两个人正在通过电话 (通信设备)用汉语(语言协议)聊天。我们具体分析一下这张图。

表面上看AC是在用汉语直接对话,但实际上AC都是在通过电话机的听筒听取声音,都在对着麦克风说话。想象一下假设有一个素未见过电话机的人见到这个场景会怎么想?恐怕他一定会以为AC在跟电话机聊天吧。事实上在这个图中,他们所用的语言协议作为麦克风的音频输入,在通信设备层被转换为电波信号传送出去了。传送到对方的电话机后,又被通信设备层转换为音频输出,传递给了对方。因此,AC事实上是利用电话机之间通过音频转化声音的接口实现了对话。

通常人们会认为拿起电话与人通话,事实上就好像是直接在跟对方对话,然而假设细致分析,在整个过程中实际上是电话机在做中介,这是不可否认的。假设A的电话 机所传出的电子信号并未能转换成与C的电话机同样频率的声音,那会怎样?这就如 同A的电话机与C的电话机的协议互不同样。C听到声音后可能会认为自己不是在跟 A而是在跟其它人说话。频率若是相去甚远,C更有可能会认为自己听到的不是汉语。

那么假设我们假定语言层同样而改变了通信设备层,情况会怎样?比如,将 电话机改为无线电。通信设备层假设改用无线电,那么就得学会使用无线电的方 法。因为语言层仍然在使用汉语协议,因此使用者能够全然和以往打电话时一样 正常通话(上图左下部分)。

那么,假设通信设备层使用电话机,而语言层改为英语的话情况又会怎样? 非常显然,电话机本身不会受限于使用者使用的语言。因此,这样的情况与使用汉语 通话时全然一样,依旧能够实现通话(上图右下部分)。

到此为止,读者可能会认为这些都是再简单只是的、理所当然的事。在此仅举出简单的样例,权作对协议分层及其便利性的一个解释,以加深对分层协议的理解。

3.OSI參考模型
  前面仅仅是将协议简单地分为了两层进行了举例说明。然而,实际的分组通信协议 会相当复杂。OSI參考模型将这样一个复杂的协议整理并分为了易于理解的7个分层。
osi參考模型对通信中必要的功能做了非常好的归纳。网络project师在讨论协议 相关问题时也常常以osi參考模型的分层为原型。对于计算机网络的刚開始学习的人,学 习osi參考模型能够说是通往成功的第一步。只是,osi參考模型终究是一个“模型”,它也仅仅是对各层的作用做了一系列 粗略的界定,并没有对协议和接口进行具体的定义。它对学习和设计协议仅仅能起 到一个引导的作用。因此,若想要了解协议的很多其它细节,还是有必要參考每一个协 议本身的详细规范。很多通信协议,都相应了 OSI參考模型7个分层中的某层。通过这一点,可 以大致了解该协议在整个通信功能中的位置和作用。
4.OSI參考模型中各个分层的作用
    在此,下面图为例简单说明OSI參考模型中各个分层的主要作用。
  • 应用层

为应用程序提供服务并规定应用程序中通信相关的细节。包含文件传输、电 子邮件、远程登录(虚拟终端)等协议。

  • 表示层

将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换 为上层可以处理的格式。因此它主要负责数据格式的转换。
详细来说,就是将设备固有的数据格式转换为网络标准传输格式。不同设备 对同一比特流解释的结果可能会不同。因此,使它们保持一致是这一层的主要 作用。

  • 会话层

负责建立和断开通信连接(数据流动的逻辑通路),以及数据的切割等数据 传输相关的管理。

  • 传输层

起着可靠传输的作用。仅仅在通信两方节点上进行处理,而无需在路由器上 处理。

  • 网络层

将传输数据到目标地址。目标地址能够是多个网络通过路由器连接而成的某 一个地址。因此这一层主要负责寻址和路由选择。

  • 数据链路层

负责物理层面上互连的、节点之间的通信传输。比如与1个以太网相连的2 个节点之间的通信。
将0、1序列划分为具有意义的数据帧传送给对端(数据帧的生成与接收)。

  • 物理层

负责0、1比特流(0、1序列)与电压的髙低、光的闪灭之间的互换。

转载于:https://www.cnblogs.com/bhlsheji/p/4292067.html

学习笔记之TCP/IP协议分层与OSI參考模型相关推荐

  1. Python Web学习笔记之TCP/IP协议原理与介绍

    HTTP.FTP.SMTP.Telnet等等协议,哦!那个HTTP协议啊就是访问网页用的那个协议啊然后那个······其实······你懂得,我们应该从实际来了解他,理解网络协议的作用与功能,然后再从 ...

  2. 【JavaWeb学习笔记】TCP/IP 协议(三)

    TCP/IP 协议(一) TCP/IP 协议(二) TCP八大特性 TCP/IP 协议(三) 3.2 网段划分 IP地址分为两个部分, 网络号和主机号 网络号: 保证相互连接的两个网段具有不同的标识; ...

  3. TCP/IP协议分层模型详解

    文章目录 不同分类模型对应关系 不同人员关注的模型不一样 每层的简述 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 数据包传输过程 数据包传输调用关系 数据包发送 数据包接收 各层协议 ...

  4. (chap2 TCP/IP基础知识) TCP/IP协议分层模型

    1. TCP ( Transmission Control Protocol)和IP( lnternet Proto-col )通信协议群 1.1 Internet互联网 互联网中的每个网络都是由骨干 ...

  5. TCP/IP协议分层

    TCP/IP协议分层 应用层协议 FTP文件传送协议 TFTP简单文件传送协议 TELNET远程终端协议 SMTP简单邮件传送协议 传输层协议 端口号 源端口号和目的端口号 TCP传输控制协议 协议段 ...

  6. TCP/IP协议分层图 2021-04-02

    1. TCP/IP协议分层 https://www.bilibili.com/video/BV1gV411h7r7?p=16&spm_id_from=pageDriver 1.1 报文-> ...

  7. 【计算机网络】TCP/IP四层模型和OSI七层模型

    文章目录 一.TCP/IP四层模型和OSI七层模型关系 二.TCP/IP四层模型 三.OSI七层模型 四.GET和POST的区别 五.从输入网址到页面展示的过程 六.详细过程 一.TCP/IP四层模型 ...

  8. TCP/IP四层模型和OSI七层模型

    TCP/IP四层模型和OSI七层模型对应表.我们把OSI七层网络模型和Linux TCP/IP四层概念模型对应,然后将各种网络协议归类.     表1-1  TCP/IP四层模型和OSI七层模型对应表 ...

  9. cdt规约报文用程序解析_程序员必备的学习笔记《TCP/IP详解(二)》

    把这三个协议放到一起学习是因为这三个协议处于同一层,ARP 协议用来找到目标主机的 Ethernet 网卡 Mac 地址,IP 则承载要发 送的消息.数据链路层可以从 ARP 得到数据的传送信息,而从 ...

  10. 网络学习笔记:TCP/IP连网和Internet

    1.网关 由硬件和软件组成,实现不同网段间的数据传送. 常用路由器充当网关. 网关通常维护一份路由表,但只有少量的编址信息.它用这些信息把数据转发到知道更多信息的网关. 组成互联网骨干的网关称为核心网 ...

最新文章

  1. OleDbCommand使用参数应该注意的地方
  2. mysql matlab for循环嵌套循环语句吗_C++: for_each 和 基于范围的for循环
  3. AtCoder AGC029F Construction of a Tree (二分图匹配)
  4. 【转】Django 数据库的操作
  5. IE6下Png透明最佳解决方案(推荐) Unit PNG Fix
  6. webpack4.0配置记录(2) 1
  7. 发工资条软件如何使用?
  8. 单循环比赛赛程 java
  9. 酒店旅业治安管理系统接口开发
  10. 小程序从云服务器获取视频,小程序从云服务器获取视频代码
  11. 开源项目 ——API接口管理平台数据库原型设计(三)
  12. 怎么提取伴奏?有什么实用的提取软件?
  13. 吴恩达 tensorflow
  14. 销量“掉队”,零跑汽车火力全开
  15. MuleSoft知识总结-1.MuleSoft的简要介绍
  16. xslt 标签取集合第一条数据_用 Asp.Net 建立一个在线 RSS 新闻聚合器
  17. SpringCloud 笔记
  18. 我们文本分析了贾跃亭2017年全部公开信,发现他近期喜欢用“责任”“致歉”...
  19. 求助!编写 sql 语句,输出符合条件的查询结果。
  20. java 堆中的永久代_JVM中的堆的新生代、老年代、永久代详解

热门文章

  1. Sphinx 2.2.3 安装和配置,英文数字中文搜索
  2. 电子书下载:[FBI教你破解身体语言].(美)乔·纳瓦罗.(美)马文·卡尔林斯.文字版...
  3. Java数据类型分类 1
  4. oracle常用操作命令总结
  5. 考勤系统之计算工作小时数
  6. Podfile使用说明
  7. Android开发之网络
  8. 那些年,备胎一起追的女神
  9. DDM:剪贴板处理处罚及截取屏幕
  10. Python Class System