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

在这里插入图片描述


推荐阅读
  • 三小时掌握计算机网络基础(通俗易懂)
    目录1.网络层次划分2.OSI七层网络模型3.IP地址4.子网掩码及网络划分5.ARPRARP协议6.路由选择协议7.TCPIP协议8.UDP协议 9.DNS协议 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 突破MIUI14限制,自定义胶囊图标、大图标样式,支持任意APP
    本文介绍了如何突破MIUI14的限制,实现自定义胶囊图标和大图标样式,并支持任意APP。需要一定的动手能力和主题设计师账号权限或者会主题pojie。详细步骤包括应用包名获取、素材制作和封包获取等。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 如何压缩网站页面以减少页面加载时间
    本文介绍了影响网站打开时间的两个因素,即网页加载速度和网站页面大小。重点讲解了如何通过压缩网站页面来减少页面加载时间。具体包括图片压缩、Javascript压缩、CSS压缩和HTML压缩等方法,并推荐了相应的压缩工具。此外,还提到了一款Google Chrome插件——网页加载速度分析工具Speed Tracer。 ... [详细]
  • 我们身边的网络知识
    我们身边的网络常识今天咱们交流的主题是网络基础,这块东西对于咱们计算机或者通讯专业的人来说应该是很熟悉的,今天拿出来再说一说,是因为这块知识在咱们工作和生活中时刻都在使用,并且非常 ... [详细]
  • 计算机网络概述计算机网络基本概念计算机网络计算机网络是互连的、自治的计算机集合。协议计算机网络中的实体在进行数据交换的过程中必须遵循的规定或约定,称为网络协议。协议的三个要素:语法 ... [详细]
  • 负载均衡 LVS vs Nginx 对比
    前言今天总结一下负载均衡中LVS与Nginx的区别,之前看过好几篇博文一开始就说LVS是单向的,Nginx是双向的,我个人认为这是不准确的,LVS三种模式中,虽然DR模式以及TU ... [详细]
  • 【图解HTTP】第一章 了解web及网络基础
    [图解HTTP]了解Web及网络基础Web页面是如何呈现的?根据Web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resour ... [详细]
  • SmartMesh WireLess HART 资料总结
    SmartMeshWireLessHART资料总结--刘振君2017.01.0923:00:00IEEE802.15是一个工作组98年成立,专门从事 ... [详细]
  • TCP实现之:套接字
    TCP实现之:套接字套接字的数据结构按照域的不同可以分为三种:用户态套接字、socket和sock,其中socket结构体是内核中的与用 ... [详细]
  • 本文介绍了在交换型网络环境下使用嗅探器ARPSniffer的方法,包括检测嗅探环境、设置嗅探的网卡和启动自动路由功能等步骤。同时指出ARPSniffer也可以在非交换型网络环境下使用来嗅探各种网络信息。 ... [详细]
  • 在目前流行的互联网架构中,对一个应用来说,Tomcat是首,SSM是中,JVM是尾,我们通常对于SSM是比较了 ... [详细]
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社区 版权所有