网络基础 - TCP/IP 五层模型

news2025/2/27 20:59:04

文章目录

  • 一、OSI 参考模型中各个分层的作用
    • 1、应用层
    • 2、表示层
    • 3、会话层
    • 4、传输层
    • 5、网络层
    • 6、数据链路层
    • 7、物理层
  • 二、OSI 参考模型通信处理示例
  • 三、TCP/IP
    • 1、定义
    • 2、规范 - RFC(Request For Comment)

在这里插入图片描述

一、OSI 参考模型中各个分层的作用

1、应用层

在这里插入图片描述

2、表示层

在这里插入图片描述
负责设备固有数据格式和网络标准数据格式间的转换

实际生活中,收到邮件后打开显示乱码的情况并不罕见,这通常都是由于表示层未能按照预期的编码格式运行或编码格式设置有误导致的

3、会话层

在这里插入图片描述

以发送邮件为例,假设用户 A 新建了 5 封电子邮件准备发送给用户 B,发送方案如下:

  • 建立连接,发送,断开连接,执行 5 次
  • 建立连接,全部发送,断开连接
  • 建立 5 个连接,分别发送,断开连接

会话层负责决定采用上述哪种发送方案

4、传输层

负责连接的建立和断开,以及可靠传输(TCP)

5、网络层

负责路由,另外,IP 是面向无连接,为了提高可靠性,上一层的 TCP 采用面向有连接

6、数据链路层

在这里插入图片描述

7、物理层

物理层我们考虑的比较少,因此很多时候也可以称 TCP/IP 五层模型为 TCP/IP 四层模型

二、OSI 参考模型通信处理示例

在这里插入图片描述
以用户 A 发送一封内容为 “早上好” 的电子邮件给用户 B 为例
在这里插入图片描述

三、TCP/IP

1、定义

TCP/IP 是利用 IP 进行通信时所必须用到的协议群的统称,因此,有时也称其为网际协议族
在这里插入图片描述

2、规范 - RFC(Request For Comment)

协议STDRFC状态
IP(v4)STD5RFC791、RFC919、RFC922标准
IP(v6)RFC2460草案标准
ICMPSTD5RFC792、RFC950标准
ICMPv6RFC4443草案标准
ND for IPv6RFC4861草案标准
ARPSTD37RFC826标准
RARPSTD38RFC903标准
TCPSTD7RFC793、RFC3168标准
UDPSTD6RFC768标准
IGMP(v3)RFC3376提议标准
DNSSTD13RFC1034、RFC1035标准
DHCPRFC2131、RFC2132、RFC3315草案标准
HTTP(v1.1)RFC2616草案标准
SMTPRFC5321草案标准
SMTPSTD10RFC821、RFC1869、RFC1870标准
POP(v3)STD53RFC1939标准
FTPSTD9RFC959、RFC2228标准
TELNETSTD8RFC854、RFC855标准
SNMPSTD15RFC1157历史性
SNMP(v3)STD62RFC3411、RFC3418标准
MIB-IISTD17RFC1213标准
RMONSTD59RFC2819标准
RIP(v2)STD34RFC1058历史性
RIP(v2)STD56RFC2453标准
OSPF(v2)STD54RFC2328标准
EGPSTD18RFC904历史性
BGP(v4)RFC4271草案标准
PPPSTD51RFC1661、RFC1662标准
PPPoERFC2516信息性
MPLSRFC3031提议标准
RTPSTD64RFC3550标准
主机实现要求STD3RFC1122、RFC1123标准
路由器实现要求RFC1812、RFC2644提议标准

表格中记录的是 2012/01 为止,具有代表性的 RFC,每个 RFC 的最新消息请参考 http://www.rfc-editor.org/rfc/rfcxxx.txt,其中,xxx 为 RFC 编号

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

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

相关文章

探索Web3:从去中心化应用到全球数字化未来

Web3 是互联网发展的下一步,它通过去中心化的理念重新定义了数字世界。与传统的Web2相比,Web3将数据主权交还给用户,让每个人都可以在没有中介的情况下安全地交换信息和价值。本文将探索Web3的基本概念,去中心化应用(D…

pydub AudioSegment实现音频重采样 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。 需要更多数据资源和技术解决方案,知识星球: “DataBall - X 数据球(free)” -------------------------------------------------------------…

uniapp/HBuilder X引入weex报错weex is not defined

出现错误: ‍[⁠ReferenceError⁠]‍ {message: "weex is not defined"} 在www.iconfont.cn把想要的图标放进个人项目中并且下载css文件: 进入HBuilder自己创建的项目中添加一个目录common,添加一个文件free-icon.css 把刚才下载…

音频进阶学习八——傅里叶变换的介绍

文章目录 前言一、傅里叶变换1.傅里叶变换的发展2.常见的傅里叶变换3.频域 二、欧拉公式1.实数、虚数、复数2.对虚数和复数的理解3.复平面4.复数和三角函数5.复数的运算6.欧拉公式 三、积分运算1.定积分2.不定积分3.基本的积分公式4.积分规则线性替换法分部积分法 5.定积分计算…

ActiveMQ 反序列化漏洞CVE-2015-5254复现

文章目录 一、产生原因二、利用条件三、利用过程四、PoC(概念验证)五、poc环境验证使用find搜索vulhub已安装目录打开activeMQ组件查看配置文件端口启动镜像-文件配置好后对于Docker 镜像下载问题及解决办法设置好镜像源地址,进行重启docker查…

主成分分析法大全(包括stata+matlab)

数据简介:主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。在实际课题中,为了…

qt中tr的使用

在 Qt 中使用 tr 函数对字符串进行翻译时,通常会通过 Qt Linguist 工具来处理翻译。以下是一个基本的步骤说明,展示如何将 QPushButton *btnnew QPushButton(tr("Hello World"),this); 翻译成其他语言,比如中文: 1.创建…

【Unity3D】报错libil2cpp.so找不到问题

mainTemplate.gradle文件末尾添加: **IL_CPP_BUILD_SETUP** 此报错发生在低版本的Unity升级到高版本后,例如Unity2019升级到Unity2021,而Unity2019默认创建的mainTemplate.gradle文件是不包含**IL_CPP_BUILD_SETUP** 因此会导致libil2cpp.so…

GLM4模型详解 - 智谱AI开源大模型全面解析

📚 2024年6月5日,智谱AI在开发者大会上正式开源GLM-4-9B系列大模型。本文将全面解析GLM4的技术特点、部署方案和应用场景。 GLM-4-9B 模型具备了更强大的推理性能、更长的上下文处理能力、多语言、多模态和 All Tools 等突出能力。 “All Tools” 一、模型概述 1.…

嵌入式驱动开发详解17(CAN驱动开发)

文章目录 前言CAN简介CAN收发器CAN协议讲解电气特性传输协议数据帧遥控帧错误帧过载帧帧间隔 同步矫正 CAN控制器CAN控制器模式CAN接收器CAN波特率 CAN设备树分析CAN测试后续参考文献 前言 该专栏主要是讲解嵌入式相关的驱动开发,但是由于部分模块的驱动框架过于复…

【Qt】qt安装

在工作一年之后,还是想做一个Qt的教程,遥想研一刚刚接触Qt,从0到1学习,没有什么参考书籍,网上的资料也不多,幸好Qt官方文档写得好,加上自己肯研究,才堪堪入门。 现在我想自己写一个…

Scala学习记录

dao --------> 数据访问 mode ------> 模型 service ---->业务逻辑 Main -------> UI:用户直接操作,调用Service 改造UI层:

FPGA 17 ,FPGA 与 SR-IOV虚拟化技术,高性能计算与虚拟化技术的结合(FPGA 与 SR-IOV 和 PCI,高性能计算与虚拟化的完美融合)

目录 前言 一. SR-IOV 的起源与发展 1. SR-IOV 的起源与时间线 2. SR-IOV 的诞生原因 3. SR-IOV 的详细介绍 二. SR-IOV 和 PCI 之间的关系 三. PCI 的起源与演进 1. PCI 的起源与时间线 2. PCI 的关键特性 四. FPGA 的独特魅力 1. FPGA 的定义与特性 2. FPGA 的内…

Spring Security 6 系列之二 - 基于数据库的用户认证和认证原理

之所以想写这一系列,是因为之前工作过程中使用Spring Security,但当时基于spring-boot 2.3.x,其默认的Spring Security是5.3.x。之后新项目升级到了spring-boot 3.3.0,结果一看Spring Security也升级为6.3.0,关键是其风…

ubuntu下anconda装pytorch

1、禁用nouveau sudo vim /etc/modprobe.d/blacklist.conf 在文件最后部分插入以下两行内容 blacklist nouveau options nouveau modeset0 更新系统 sudo update-initramfs -u 重启系统 2、装nvidia驱动 卸载原来驱动 sudo apt-get remove nvidia-* (若安装…

Pytest-Bdd-Playwright 系列教程(17):标签管理(Tags)

Pytest-Bdd-Playwright 系列教程(17):标签管理(Tags) 前言一、创建Feature文件二、创建步骤定义文件三、pytest.ini 配置文件四、conftest.py文件五、运行测试5.1 运行带有特定标签的测试5.2 运行带有多个标签的测试5.…

基于深度学习的猫狗识别系统【深度学习课设】

🏆 作者简介:席万里 ⚡ 个人网站:https://dahua.bloggo.chat/ ✍️ 一名后端开发小趴菜,同时略懂Vue与React前端技术,也了解一点微信小程序开发。 🍻 对计算机充满兴趣,愿意并且希望学习更多的技…

java常见的集合框架

常见的集合框架 JAVA的集合框架可以分成两类。 Collection,主要有List、vector、set、queue List代表有序,可重复的集合,像动态数组ArrayList和链表LinkedList Set代表无序不可重复的集合。像HashSet、TreeSet Queue代表队列,像…

期末速成C++【类和对象】

目录 1.面向对象的编程思想 2.面向对象的三大特征 3.封装 4.类的定义 5.成员函数 6.对象的创建和使用 7.字符串string的使用 8.this指针 9.构造函数VS析构函数 9.1🎇构造函数 9.1.1无参构造函数&有参构造函数​ 9.1.2构造函数的初始化表 9.1.3重…

牛客周赛 Round 72 <字符串>

<1>小红的01串&#xff08;一&#xff09; #include<stdio.h> #include<string.h> char ch[100]; int main() {scanf("%s",ch);int count0;int lenstrlen(ch);for(int i0;i<len-1;i){if(ch[i]!ch[i1]){count;} }printf("%d",count);…