热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

计算机网络计算机网络分层结构

为了解决计算机网络复杂的问题,提出了计算机网络分层结构。计算机网络分层结构主要有OSI7层参考模型,TCPIP4层参考模型两种。为什么要分层不同产商

为了解决计算机网络复杂的问题,提出了计算机网络分层结构。
计算机网络分层结构主要有OSI 7层参考模型,TCP/IP 4层参考模型两种。


为什么要分层


  • 不同产商生产的产品都可以通过统一标准实现通信。
  • 不同层面发生变化,不会影响到别的层面,只需要改变该层面即可。
  • 方便网路通信,因为计算机网络是一个非常复杂的事情,当对其进行划分时,方便我们进行管理与通信。

OSI参考模型

在这里插入图片描述
通信子网:物理层、数据链路层、网络层,只要是负责数据的通信。
资源子网:会话层、表示层、应用层,主要是负责数据的处理。
传输层:主要是将通信子网与资源子网链接起来。

应用层
所有能和用户产生网络流量的程序都属于应用层。

表示层
用于处理在两个通信系统中交换信息的表示方式(语法与语义)


  • 功能一:数据格式变化。
  • 功能二:数据加密与解密。
  • 功能三:数据压缩与解压缩。
    例如:我们在访问网页时,如果网络不稳定,有时我们会看到一些乱码,这就是表示层对数据格式进行的处理。
    我们在使用微信聊天的时候,给对方发送的消息,都先要进行加密处理,同时当对方收到消息后,先对加密的消息进行解密。如果我们给对方发送视频或者图片时,由于视频或图片过大,对网络带宽要求比较高,所以表示层会对其先进行压缩处理。

会话层
向表示层实体建立连接,并在连接上有序地传输数据。


  • 功能一:建立、管理、终止会话。
  • 功能二:使用校验点可使的会话在通信失效传输失败的时候,恢复通信重新在校验点处重传数据 ,实现数据的同步。
    在这里插入图片描述
    我们可以查看会话层,查看我们电脑是否存在木马病毒。因为木马程序一直是在系统后台运行,需要一直与外部建立联系,所以一定会存在于会话层中,netstat -n命令可以查看。netstat -nb命令可以查看会话层中程序名称。

传输层

主要是负责两个进程之间的通信,传输单位是报文或者是用户数据报。


  • 功能一:可靠传输、不可靠传输。
  • 功能二:流量控制。控制两个进程之间接收与传输的速度匹配。
  • 功能三:数据纠错。
  • 复用与分用。
    例如:我们在使用微信聊天时,当我们给对方发送的消息非常短,只需要一个数据包就可以发送完,则称为不可靠传输。当消息非常多,一个数据包发送不了时,会对该消息进行分割,将该消息分为多个数据包发送,给每个数据包进行编号,当发送完一个后,等待对方确认收到(RTT),接着发送下一个数据包,我们称其为可靠传输。
    当发送端发送的数据过快,接收端接收不过来时,会通过传输层告诉发送端发送的慢一点,这就是流量控制。
    当一个数据包帧发生错误了,负责对数据帧进行纠错。

网络层


  • 负责选择最佳的路径
  • 规划IP地址。

数据链路层


  • 封装帧的开始与结尾。
  • 差错检验。
    数据在网络中传输是使用数据帧的形式传输,数据链路层就是负责给数据帧加上其开始与结尾的标志信息。同时也可以判断数据帧在传输的过程中是否发生错误,但是对错误不进行纠错,只负责检验。

物理层


  • 提供接口标准。
  • 电器标准。统一定义网卡上的信息。

各个层面之间的联系

在这里插入图片描述
每一层都是为上一层提供服务。如果这一层出现问题,则其上面所有的层都不能正常工作。


TCP/IP 协议的分层结构

TCP/IP协议为 4层结构就相当于对OSI 7层结构的一个简化。
在这里插入图片描述
在这里插入图片描述
应用层
应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。

传输层
提供结点之间的数据传送,应用程序之间的通信服务。主要功能有数据格式化、数据重传、传输确认。传输控制协议TCP,用户数据报协议UDP。主要是负责数据的传输以及确认数据已经被接收。

互连网络层
负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机,但是不检查是否被成功接收。

网络接口层
接收IP数据报并进行传输,从网络上接收物理帧,抽取IP数据报转交给下一层。

在这里插入图片描述


推荐阅读
  • 深入解析OSI七层架构与TCP/IP协议体系
    本文详细探讨了OSI七层模型(Open System Interconnection,开放系统互连)及其与TCP/IP协议体系的关系。OSI模型将网络通信过程划分为七个层次,每个层次负责不同的功能,从物理层到应用层逐步实现数据传输和处理。通过对比分析,本文揭示了OSI模型与TCP/IP协议在结构和功能上的异同,为理解现代网络通信提供了全面的视角。 ... [详细]
  • 夸克网盘电脑版上线,实现三端同步备份与高效编辑播放功能 ... [详细]
  • 我们身边的网络知识
    我们身边的网络常识今天咱们交流的主题是网络基础,这块东西对于咱们计算机或者通讯专业的人来说应该是很熟悉的,今天拿出来再说一说,是因为这块知识在咱们工作和生活中时刻都在使用,并且非常 ... [详细]
  • 计算机网络概述计算机网络基本概念计算机网络计算机网络是互连的、自治的计算机集合。协议计算机网络中的实体在进行数据交换的过程中必须遵循的规定或约定,称为网络协议。协议的三个要素:语法 ... [详细]
  • 在重新安装Ubuntu并配置Django和PyCharm后,忘记测试MySQL连接,导致在后续配置过程中遇到错误:ERROR 2003 (HY000) - 无法连接到本地服务器 ‘127.0.0.1’ (111)。本文将详细介绍该错误的原因及解决步骤,帮助用户快速恢复MySQL服务的正常运行。我们将从检查网络配置、验证MySQL服务状态、配置防火墙规则等方面入手,提供全面的故障排除指南。 ... [详细]
  • 如何在 Node.js 环境中将 CSV 数据转换为标准的 JSON 文件格式? ... [详细]
  • 本文介绍了如何在 PyCharm 中高效利用 Anaconda 管理项目环境配置。首先,确保已安装必要的软件。以 Windows 10 64位专业版为例,建议使用 PyCharm 2018.2 或更高版本。通过 Anaconda 创建和管理虚拟环境,可以显著提升开发效率,确保项目依赖的一致性和隔离性。文章详细阐述了从安装到配置的每一步操作,帮助开发者快速上手并充分利用这些工具的优势。 ... [详细]
  • 在 Windows 10 系统下配置 Python 3 和 OpenCV 3 的环境时,建议使用 Anaconda 分发版以简化安装过程。Anaconda 可以从其官方网站(https://www.anaconda.com/download)下载。此外,本文还推荐了几本关于 Python 和 OpenCV 的专业书籍,帮助读者深入理解和应用相关技术。 ... [详细]
  • voc生成xml 代码
    目录 lxmlwindows安装 读取示例 可视化 生成示例 上面是代码,下面有调用示例 api调用代码,其实只有几行:这个生成代码也很简 ... [详细]
  • 本文深入探讨了IO复用技术的原理与实现,重点分析了其在解决C10K问题中的关键作用。IO复用技术允许单个进程同时管理多个IO对象,如文件、套接字和管道等,通过系统调用如`select`、`poll`和`epoll`,高效地处理大量并发连接。文章详细介绍了这些技术的工作机制,并结合实际案例,展示了它们在高并发场景下的应用效果。 ... [详细]
  • Python 数据分析领域不仅拥有高质量的开发环境,还提供了众多功能强大的第三方库。本文将介绍六个关键步骤,帮助读者掌握 Python 数据分析的核心技能,并深入探讨六款虽不广为人知但却极具潜力的数据处理库,如 Pandas 的替代品和新兴的可视化工具,助力数据科学家和分析师提升工作效率。 ... [详细]
  • 最近在看GitHub上的一个很火的项目是:ImageSharp。这是一个纯.netcore的图像处理库,没有使用其他的任何依赖。在看这个项目过程中激发了我对图像文件编码解码的兴趣。 ... [详细]
  • Visualizing and Understanding Convolutional Networks(ZFNet网络)论文阅读笔记
    VisualizingandUnderstandingConvolutionalNetworksZFNet网络架构论文阅读笔记2022.4.4论文地址https:arxiv ... [详细]
  • 大数据环境下的存储系统构建:挑战、方法和趋势
    大数据环境下的存储系统构建:挑战、方法和趋势陈游旻,李飞,舒继武清华大学计算机科学与技术系,北京100084摘要:互联网规模的迅速扩展促使 ... [详细]
  • 【图解HTTP】第一章 了解web及网络基础
    [图解HTTP]了解Web及网络基础Web页面是如何呈现的?根据Web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resour ... [详细]
author-avatar
手机用户2602928363_688
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有