热门标签 | 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数据报转交给下一层。

在这里插入图片描述


推荐阅读
  • 探索12个能显著提升iPhone使用体验的隐藏技巧,掌握这些功能后,你会发现生活更加便捷高效。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 雨林木风 GHOST XP SP3 经典珍藏版 V2017.11
    雨林木风 GHOST XP SP3 经典珍藏版 V2017.11 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 三星W799在2011年的表现堪称经典,以其独特的双屏设计和强大的功能引领了双模手机的潮流。本文详细介绍其配置、功能及锁屏设置。 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 网易严选Java开发面试:MySQL索引深度解析
    本文详细记录了网易严选Java开发岗位的面试经验,特别针对MySQL索引相关的技术问题进行了深入探讨。通过本文,读者可以了解面试官常问的索引问题及其背后的原理。 ... [详细]
  • 福克斯新闻数据库配置失误导致1300万条敏感记录泄露
    由于数据库配置错误,福克斯新闻暴露了一个58GB的未受保护数据库,其中包含约1300万条网络内容管理记录。任何互联网用户都可以访问这些数据,引发了严重的安全风险。 ... [详细]
  • 精致小屏灰色风格苹果CMS v10模板,支持DIY主题管理系统
    探索一款专为影视站设计的苹果CMS v10模板,具备强大的主题管理系统和500多个设置项,无需二次开发即可轻松配置。下载地址:https://www.mytheme.cn/maccms/244.html,演示地址:http://demo.mytheme.cn/index.php?id=244。 ... [详细]
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社区 版权所有