【windows|010】OSI七层模型和TCP/IP五层模型详解

news2024/11/19 10:36:01

🍁博主简介

🏅云计算领域优质创作者

🏅2022年CSDN新星计划python赛道第一名

🏅2022年CSDN原力计划优质作者 ​

🏅阿里云ACE认证高级工程师 ​

🏅阿里云开发者社区专家博主

💊交流社区:CSDN云计算交流社区欢迎您的加入!

目录

1、OSI七层模型

1.1 各层位置及功能

1.2 七层模型注意事项

2、TCP/IP五层模型

2.1 各层功能及协议简述

3、TCP和UDP比较

4、数据封装和解封装

4.1 数据封装过程

4.2 数据解封装过程


OSI模型,即开放式系统互连(Open System Interconnection)模型,是由国际标准化组织(ISO)在1984年提出的一种网络互连参考模型。该模型定义了网络互连的七层框架,为各种计算机互连构成网络提供了标准框架。

1、OSI七层模型

1.1 各层位置及功能

1、物理层

  • 地位:OSI模型中的最低层,是整个OSI协议的基础。

  • 功能:负责为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。具体任务包括比特流的传输、同步、差错检测等。

2、数据链路层

  • 位置:位于物理层和网络层之间。

  • 功能:定义了在单个链路上如何传输数据,包括数据链路的建立、维护和拆除,帧的封装与解封,差错控制等。

3、网络层

  • 位置:位于传输层和数据链路层之间。

  • 功能:将数据设法从源端经过若干个中间节点传送到另一端,向传输层提供最基本的端到端的数据传送服务。网络层的主要任务是路由选择和拥塞控制。

4、传输层

  • 功能:涉及到两个节点之间的数据传输,向上层提供可靠的数据传输服务。传输层的服务一般要经历传输连接建立阶段,数据传输阶段,传输连接释放阶段3个阶段才算完成一个完整的服务过程。

5、会话层

  • 位置:位于传输层之上。

  • 功能:负责建立、管理和终止会话,以及同步不同设备上的应用程序之间的对话。

6、表示层

  • 功能:将设备的固有数据格式转换为网络标准传输格式,确保不同系统之间的互操作性。此外,表示层还负责数据的加密和解密,提供数据的安全性和保密性。

7、应用层

  • 地位:OSI模型的最顶层。

  • 功能:直接为应用进程提供服务,如文件传输、电子邮件远程登录和远端接口调用等协议。应用层是用户与网络之间的接口,用户通过应用层来访问网络提供的服务。

1.2 七层模型注意事项

  • 上三层是为用户提供服务的,下四层负责实际数据传输

  • 下四层的传输单位:

位置单位
传输层数据段(报文)(数据拆分)
网络层数据包(报文分组)
数据链路层数据帧
物理层比特(位)
  • 越是上层的设备越智能,可以识别所有当前层以下的数据,越贴近用户;越是下层的设备越傻瓜,越贴近硬件

  • 数据发送时,数据从上层向下层传输; 数据接收时,数据从下层向上层传输

  • 数据不能跨层传递,每层之间通过逻辑的接口传递

  • 物理层负责实际数据传递,其它层只是逻辑对应

  • OSI模型只是理论模型,不能对应实际协议或硬件。

真正的互联网用的是TCP/IP模型,TCP模型是依赖于OSI模型诞生的,没有OSI模型就没有TCP/IP模型

2、TCP/IP五层模型

TCP/IP五层模型使得网络通信更加灵活、可靠和可管理。每一层都通过特定的协议和机制来实现其功能,并通过接口与相邻层次进行交互。这种层次结构的设计使得网络通信更加清晰和易于理解,同时也为网络设备的开发和维护提供了便利

2.1 各层功能及协议简述

1、应用层

  • 功能:应用层是网络通信的最高层,它定义了应用程序和网络之间的接口。在这一层,用户可以直接与应用程序进行交互。

  • 协议:常见的应用层协议有HTTP(用于Web浏览)、FTP(用于文件传输)、SMTP(用于电子邮件发送)等。

  • 作用:应用层负责处理网络应用相关的细节,如电子邮件的发送和接收、文件的上传和下载等。

2、传输层

  • 功能:传输层负责在源主机和目标主机之间建立数据传输通道,提供可靠的数据传输服务。

  • 协议:主要的传输层协议有TCP(传输控制协议)和UDP(用户数据报协议)。TCP提供可靠、面向连接的数据传输服务,而UDP则提供无连接、不可靠的数据传输服务。

  • 作用:传输层确保数据的正确传输顺序和可靠性,以及处理数据的分段和重新组装。

3、网络层

  • 功能:网络层负责在网络上寻址和路由数据包,定义数据在网络中的传输路径。

  • 协议:主要的网络层协议是IP(互联网协议),它定义了数据包的格式和地址方式,使得不同应用类型的数据在Internet上通畅地传输。

  • 作用:网络层通过IP地址来标识网络中的设备,并通过路由算法选择最佳的数据传输路径。

4、数据链路层

  • 功能:数据链路层负责在物理网络上传输数据帧,包括数据的分段和重新组装,以及物理介质的访问控制。

  • 协议:常见的数据链路层协议有以太网协议(Ethernet)等。

  • 作用:数据链路层将数据封装成帧,并在物理介质上传输这些帧。同时,它还负责处理帧的同步、差错控制和流量控制等问题。

5、物理层

  • 功能:物理层是网络通信的最底层,它负责在物理介质上传输比特流。

  • 协议:物理层定义了物理连接的特性,如电压、频率、电缆规格、集线器、中继器、网卡等。

  • 作用:物理层为数据链路层提供传输数据的通路,确保比特流能够在物理介质上正确传输。

3、TCP和UDP比较

TCP(传输控制协议)和UDP(用户数据报协议)是网络通信中两种常用的传输层协议,它们各自具有不同的特点和适用场景。

通过下方图解想必是非常生动形象的展示tdp和udp的区别了吧!

可靠性

  • TCP提供可靠的数据传输服务。它通过序列号、确认机制和重传机制来确保数据的完整性和有序性。如果数据在传输过程中出现丢失或错误,TCP会自动重传丢失的数据,保证数据的可靠传输。

  • UDP则不提供可靠的数据传输服务。它无连接、不保证可靠交付,因此主机不维持复杂的连接状态。UDP发送数据之后不会确认是否到达,也不会重传丢失的数据。因此,UDP更适用于一些对可靠性要求相对较低的应用场景,如音频和视频传输。

速度

  • 由于TCP需要确保数据的可靠传输,它需要额外的控制信息来维护连接状态和数据的传输控制。这使得TCP相对UDP更加复杂,在传输效率上稍低一些。

  • UDP没有连接建立和断开的开销,只需要很少的控制信息,因此传输速度较快。UDP适用于一些实时性要求较高的应用,如在线游戏和实时视频传输。

连接性

  • TCP是面向连接的协议。在数据发送和接收前,必须先建立连接,建立连接后才能发送数据。这种连接性使得TCP能够保证数据传输的可靠性。

  • UDP是无连接的协议。它可以直接发送数据,不需要先建立连接。这使得UDP的开销较小,并且发送数据的实时性较高。但缺点是无法保证数据传输的可靠性。

数据包大小

  • TCP在传输数据时,将数据分割成较小的数据块,并根据网络状况调整数据块的大小。这使得TCP可以适应不同网络环境下的数据传输。

  • UDP的数据包大小没有限制,它可以发送任何大小的数据。但在实际使用中,通常会将数据包大小限制在网络传输的最大MTU(最大传输单元)以内。

应用场景

  • TCP适用于需要可靠传输的场景,如文件传输、电子邮件发送等。在这些场景中,数据的完整性和有序性至关重要。

  • UDP适用于对实时性要求较高、对可靠性要求相对较低的场景,如在线游戏、实时视频传输等。在这些场景中,数据的传输速度更为重要,而数据的丢失或错误可能不会对应用产生严重影响。

TCP和UDP在可靠性、速度、连接性和数据包大小等方面存在差异。选择使用哪种协议要根据具体的应用场景和需求来决定。

4、数据封装和解封装

数据封装和解封装是网络通信中两个关键的过程,它们确保了数据能够在不同的网络层次之间正确、有效地传输。以下是按照TCP/IP五层模型进行数据封装和解封装的过程说明:

4.1 数据封装过程

应用层

  • 原始数据(如文本、图片等)首先被转换为应用层可以理解的格式,如HTTP请求或SMTP邮件。

  • 应用层添加自己的报头信息,如端口号、协议类型等。

传输层

  • 在TCP协议中,应用层数据被分割成较小的数据段(segments)。

  • 每个数据段都被添加上TCP头部,包含源端口、目标端口、序列号、确认号等信息。

  • UDP协议则直接添加UDP头部,包括源端口、目标端口和长度信息,不进行数据分割。

网络层

  • 传输层的数据段或UDP数据包被封装上IP头部,形成IP数据包(packets)。

  • IP头部包含源IP地址、目标IP地址、TTL(生存时间)等信息。

数据链路层

  • IP数据包被封装上数据链路层头部(如以太网头部),形成数据帧(frames)。

  • 数据链路层头部包含源MAC地址、目标MAC地址等信息。

物理层

  • 数据帧在物理层被转换为比特流(bit streams),并通过物理介质(如光纤、电缆等)进行传输。

4.2 数据解封装过程

物理层

  • 接收端从物理介质上接收到比特流,并将其转换为数据帧。

数据链路层

  • 接收端检查数据帧的MAC地址,如果与自己的MAC地址匹配,则去掉MAC头部,继续处理;否则,丢弃该数据帧。

网络层

  • 接收端检查IP数据包的IP地址,如果与自己的IP地址匹配,则去掉IP头部,继续处理;否则,根据路由表进行转发或丢弃。

传输层

  • 如果是TCP协议,接收端根据TCP头部中的序列号、确认号等信息进行数据的重组和排序,确保数据的完整性和有序性。

  • 如果是UDP协议,接收端直接去掉UDP头部,将数据传递给应用层。

应用层

  • 接收端根据应用层协议解析数据,还原为原始数据格式,如HTTP响应、SMTP邮件等。

通过数据封装和解封装的过程,数据能够在不同的网络层次之间正确、有效地传输,确保了网络通信的可靠性和高效性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1855550.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

植物大战僵尸杂交版2024最新官方原版iOS手机+mac电脑版下载

🌱 绿意盎然的游戏体验,《植物大战僵尸杂交版》带你开启全新战斗模式 亲爱的小伙伴们,今天我要和大家分享一款让人眼前一亮的游戏——《植物大战僵尸杂交版》!这款游戏在经典的基础上进行了大胆创新,给玩家带来了前所未…

手把手带你从零构建一个用于讲故事的 LLM

教程 LLM101:创建能讲故事的 LLM LLM101n 是 llm.c 作者开的新坑,一个系列教程,手把手带你从零构建一个用于讲故事的 LLM,目前只写了目录已经斩获 5.8k star。

户外龙头边城体育签约实在智能,打造财务数字化转型标杆!

财务工作在企业中是一项极其重要且复杂的任务,需要具备高度的准确性和及时性。尽管应用财务软件,企业实现了财务数据的电子化和数字化,但仍然面临着数据采集与处理的实时性和全面性问题,以及由此带来的风险控制和决策支持的不足。…

运动蓝牙耳机哪个口碑最好?五大高口碑顶尖单品推荐

在这个快节奏时代,智能手机的普及使得运动开放式耳机逐渐成为我们日常出行的必备单品。运动开放式耳机凭借独特的外形设计,赢得了众多消费者的喜爱。它们不同于传统的入耳式设计,以舒适佩戴为核心,有效缓解了长时间佩戴对耳部造成…

【机器学习】自然语言处理的新前沿:GPT-4与Beyond

📝个人主页:哈__ 期待您的关注 目录 🔥引言 背景介绍 文章目的 一、GPT-4简介 GPT-4概述 主要特性 局限性和挑战 二、自监督学习的新进展 自监督学习的原理 代表性模型和技术 三、少样本学习和零样本学习 少样本学习的挑战 先…

zkWASM:ZK+zkVM的下一站?

1. 引言 ZK技术具备极大通用性,也帮助以太坊从去中心化投资走向去信任化的价值观。“Don’t trust, Verify it!”,是ZK技术的最佳实践。ZK技术能够重构链桥、预言机、链上查询、链下计算、虚拟机等等一系列应用场景,而通用型的ZK协处理器就是…

Adaptive Server Connection Failed on Windows

最近在使用pymssql (版本2.3.0)连接SQL Server2012遇到如下问题: pymssql._mssql.MSSQLDatabaseException: (20002, bDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (localhost)\nDB-Lib error message 2000…

前端也需要知道的一些常用linux命令

前端也需要知道的一些常用linux命令 1.问题背景2.连接工具(SecureCRT_Portable)a.下载工具b.连接服务器c.登录到root账户 3.基本命令a.cd命令和cd ..b.ll命令和ls命令c:cp命令d.rm命令e:rz命令f.unzip命令g.mv命令h.pwd命令(这里没有用到&…

Linux基础二

目录 一,tail查看文件尾部指令 二,date显示日期指令 三,cal查看日历指令 四,find搜索指令 五,grep 查找指令 六,> 和>> 重定向输出指令 七, | 管道指令 八,&&逻辑控…

如何发现Redis热Key,有哪些解决方案?

什么是 hotkey? 如果一个 key 的访问次数比较多且明显多于其他 key 的话,那这个 key 就可以看作是 hotkey(热 Key)。例如在 Redis 实例的每秒处理请求达到 5000 次,而其中某个 key 的每秒访问量就高达 2000 次&#x…

【AI大模型】驱动的未来:穿戴设备如何革新血液、皮肤检测与营养健康管理

文章目录 1. 引言2. 现状与挑战3. AI大模型与穿戴设备概述4. 数据采集与预处理4.1 数据集成与增强4.2 数据清洗与异常检测 5. 模型架构与训练5.1 高级模型架构5.2 模型训练与调优 6. 个性化营养建议系统6.1 营养建议生成优化6.2 用户反馈与系统优化 7. 关键血液成分与健康状况评…

grpc教程——proto文件转go

【1】编写一个proto文件 syntax "proto3"; package myproto;service NC{rpc SayStatus (NCRequest) returns (NCResponse){} }message NCRequest{ string name 1; } message NCResponse{string status 1; } 【2】转换:protoc --go_out. myservice.pro…

LLM Agent提效进阶:反思工作流——91%精度大超GPT-4 24%

1. 相关研究 反思依赖于LLM对自己之前提出的工作进行反思并提出改进的方法,有三篇典型论文详细描述了这种模式,我们先来看一下。 2. Self-Refine 顾名思义,它是一种自我精炼的LLM优化技术,使用单一的LLM作为生成器、改进器和反…

go语言day4 引入第三方依赖 整型和字符串转换 进制间转换 浮点数 字符串

Golang依赖下载安装失败解决方法_安装go依赖超时怎么解决-CSDN博客 go安装依赖包(go get, go module)_go 安装依赖-CSDN博客 目录 go语言项目中如何使用第三方依赖:(前两步可以忽略) 一、安装git,安装程序…

Python编程技巧:如何正确使用with语句(Python中with用法详解)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 基本语法📝 处理文件📝 处理网络连接📝 管理线程锁📝 管理数据库连接📝 管理临时目录和文件📝 使用上下文装饰器📝 自定义上下文管理器🎯 示例1🎯 示例2📝 使用多个上下文管理器📝 上下…

格雷码计数器

目录 描述 输入描述: 输出描述: 参考代码 描述 实现4bit位宽的格雷码计数器。 电路的接口如下图所示。 输入描述: input clk, input rst_n 输出描述: output reg [3:0] gray_out 参考代码 timescale 1ns/1nsmod…

Apple创始人斯蒂夫乔布斯2005年在斯坦福大学的毕业典礼演讲:Steve Jobs‘ 2005 Stanford Commencement Address

Steve Jobs’ 2005 Stanford Commencement Address Link: https://www.youtube.com/watch?vUF8uR6Z6KLc and https://www.youtube.com/watch?vHd_ptbiPoXM 文章目录 Steve Jobs 2005 Stanford Commencement AddressSummaryVocabularyTranscriptConnecting the dotsLove and …

LeetCode35.搜索插入位置

LeetCode刷题记录 文章目录 📜题目描述💡解题思路⌨C代码 📜题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。 如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须…

ALOS 12.5m DEM下载

1、下载地址 阿拉斯加遥感数据下载地址:https://search.asf.alaska.edu/ ; 数据详情描述见地址:https://asf.alaska.edu/datasets/daac/alos-palsar-radiometric-terrain-correction/ ; 2、下载步骤 2.1、勾绘研究区 在网站中…

第10章 启动过程组 (识别干系人)

第10章 启动过程组 10.2识别干系人,在第三版教材第361~362页; 文字图片音频方式 视频13 第一个知识点:主要工具与技术 1、数据收集 问卷调查 包括一对一调查、焦点小组讨论,或其他大规模信息收集技术 头脑风暴 头脑风暴&#xff…