OSI七层模型、TCP/IP五层模型理解(个人解读,如何理解网络模型)

2024-04-23 07:36

本文主要是介绍OSI七层模型、TCP/IP五层模型理解(个人解读,如何理解网络模型),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

OSI七层模型

七层模型,亦称OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。

  1. 应用层:网络服务与用户的接口
  2. 表示层:数据的表示、安全、压缩
  3. 会话层:会话的建立、管理、断开
  4. 传输层:通过协议端口号定义对方上层服务,流量控制、差错校验
  5. 网络层:通过IP地址进行逻辑寻址
  6. 数据链路层:通过物理地址(MAC)进行寻址,差错校验
  7. 物理层:通过物理信号传输比特流,维护物理连接

TCP/IP五层模型

TCP/IP通讯协议采用了5层的层级结构,每一层都传输到它的下一层所提供的网络来完成自己的需求。

  1. 应用层
  2. 传输层
  3. 网络层
  4. 数据链路层
  5. 物理层 

我们可以理解为TCP/IP模型把OSI的前三层(应用层、表示层、会话层)统一归为应用层。

大致过程(个人解读)

发送端

0. 用户

       用户通过应用程序发送完整数据

1. 应用层 

        应用层接收数据,将数据分组,各分组数据加上报文头AH,组成应用层报文,将数据交给传输层

2. 传输层

        传输层接收到应用层报文数据,在该报文基础上再加上TH报文头(数据发送和目的地端口信息),组成传输层报文,将数据交给网络层

3. 网络层

        网络层接收到传输层报文,在该报文基础上加上IP报文头(发送方和接收方IP等信息),组成网络层报文

4. 数据链路层

        数据链路层接收到网络层数据,在该报文基础上加上FH报文头和FCS报文尾(网卡MAC地址等信息),组成帧数据

5. 物理层

        帧数据根据报文的相关信息IP、MAC地址等信息,选择适合自己的路线,在路由器、交换机、光纤/双绞线 等介质中传输

接收方

5. 物理层

        帧数据根据报文的相关信息IP、MAC地址等信息,在路由器、交换机、光纤/双绞线 等介质中传输,根据MAC地址,交给接收方的数据链路层

4. 数据链路层

        接收方数据链路层获取数据,去除帧数据的报文头FH和报文尾FCS,就是网络层能解读的数据,交给网络层

3. 网络层

        网络层接收数据,去除报文的的头IH,就是传输层数据,交给传输层

2. 传输层

        传输层接收数据,去除报文头TH,就是分组的应用层数据,交给应用层

1. 应用层

        应用层接收到数据,进行数据的校验和差错控制等,对数据进行重组,就是用户能理解的完整的用户数据

0. 用户

        用户读取数据。

理解为寄快递的过程

0 用户寄快递交给快递员  (用户)

1 快递员根据用户寄东西的数量,选择适当的包裹数量分组寄 (快递员——应用层)

2 快递员将包裹交给服务网点,并写上包裹发件方和寄件方地址(街道网点——传输层)

3 服务网点对包裹初步分拣打包,按市区划分(分拨中心——网络层)

4 服务网点将打包好的包裹交给中转中心继续打包,中转中心继续按省划分(中转中心——数据链路层)

5 中转中心交按目的区将或交给货运(铁路、公路、航空),选择合适路线派发送货(发往上海——物理层)

5 货物在根据包裹发送到目的地(到达上海),货运司机将或交给上海中转中心(物理层)

4 中转中心收到货对货物按市区进行拆包(如浦东新区包裹),发往浦东分拨中心(数据链路层)

3 浦东分拨中心将货物再次拆包(XX街道包裹),根据地址,交给指定街道网点(网络层)

2 街道网点将快递继续拆包(单个包裹),交给快递员 (传输层)

1 快递员将包裹派发给用户 (应用层)

0 用户收件

这篇关于OSI七层模型、TCP/IP五层模型理解(个人解读,如何理解网络模型)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/928171

相关文章

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringBoot中配置文件的加载顺序解读

《SpringBoot中配置文件的加载顺序解读》:本文主要介绍SpringBoot中配置文件的加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot配置文件的加载顺序1、命令⾏参数2、Java系统属性3、操作系统环境变量5、项目【外部】的ap

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

python3 gunicorn配置文件的用法解读

《python3gunicorn配置文件的用法解读》:本文主要介绍python3gunicorn配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python3 gunicorn配置文件配置文件服务启动、重启、关闭启动重启关闭总结python3 gun

深入理解Apache Kafka(分布式流处理平台)

《深入理解ApacheKafka(分布式流处理平台)》ApacheKafka作为现代分布式系统中的核心中间件,为构建高吞吐量、低延迟的数据管道提供了强大支持,本文将深入探讨Kafka的核心概念、架构... 目录引言一、Apache Kafka概述1.1 什么是Kafka?1.2 Kafka的核心概念二、Ka

关于pandas的read_csv方法使用解读

《关于pandas的read_csv方法使用解读》:本文主要介绍关于pandas的read_csv方法使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录pandas的read_csv方法解读read_csv中的参数基本参数通用解析参数空值处理相关参数时间处理相关

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子