OSI 7层模型 TCP/IP四层模型 5层模型都是什么,作用是什么【每层的协议没整理完】

news2024/11/18 13:51:59

7层模型 && 4层TCP/IP 模型对照关系

7层&&5层&&4层模型对照:

我们的教科书为了更好地表示数据包在网络传输上的封装和解封装,抽象出了5层模型

 


7层模型:

 各层的用途:

应用层:为计算机上用户提供服务

表示层:传输数据的处理:加密解密,转换翻译、压缩解压缩

会话层:使得不同主机间的用户可以建立并管理会话(完成 建立、维护、重连 应用程序之间的会话)

传输层:接受会话层的数据,必要的时候将数据进行拆分,将数据交给网络层,【保证数据段有效到达对端】TCP、UDP协议就是控制协议

网络层:路由和寻址(如逻辑地址的选择、分组传输、路由选择),决定数据在网络上的游走路径

数据链路层:将数据编码为帧的格式,并实现误差纠正控制

物理层:实现透明的在 各种硬件线路上 传输 比特流

【记不住顺序就是:应用层(一声四声)、表示层(三声四声)、会话层(四声四声)】


四层模型:

4层模型:应用层、传输层、网络层、网络接口层

1. 应用层:(交互的数据单元称为报文

主要提供两个终端设备上的  应用程序之间信息交换的服务,

应用层 定义了信息交换的格式,即,定义了网络通信规则 对于不同的网络应用需要不同的应用层协议(支持 Web 应用的 HTTP 协议,)

在互联网中应用层协议很多:

如支持 Web 应用的 HTTP 协议(基于 TCP 协议);

只负责邮件的发送,而不是接收的SMTP 协议(基于 TCP 协议);

邮件接收协议 POP3/IMAP(基于 TCP 协议);

在计算机之间传输文件的协议,可以屏蔽操作系统和文件存储方式 FTP(基于 TCP 协议)[FTP 是一种不安全的协议,因为它在传输过程中不会对数据进行加密。建议在传输敏感数据时使用更安全的协议,如 SFTP];

通过加密和认证机制实现安全的访问和文件传输等业务的协议SSH(基于 TCP 协议);

解决域名和 IP 地址的映射问题的DNS协议(基于 UDP 协议)

 2. 传输层:

传输层的主要任务就是 负责向两台终端设备进程之间的通信提供 通用的 数据传输服务,应用进程利用该服务传送应用层报文。“通用的”是指并不针对某一个特定的网络应用,而是多种应用可以使用同一个运输层服务。

传输层协议:

TCP(Transmisson Control Protocol,传输控制协议 ):提供 面向连接 的,可靠 的数据传输服务。【生成一个个报文段】

UDP(User Datagram Protocol,用户数据协议):提供 无连接 的,尽最大努力 的数据传输服务(不保证数据传输的可靠性),简单高效。【生成一个个用户数据报】

3. 网络层:

网络层  把  传输层  产生的报文段或用户数据报   封装成分组和包   进行传送。

网络层 还负责 为分组和包  找到在网络上传递到目的地址的 路由

⚠️ 注意:传输层  通过UDP协议封装成的“用户数据报   和  网络层  通过IP协议封装成的 “IP 数据报”  不是一个东西奥!

网络层协议:

(1)IP(Internet Protocol,网际协议):TCP/IP 协议中最重要的协议之一

主要作用是定义数据包的格式、对数据包进行路由和寻址,以便它们可以跨网络传播并到达正确的目的地。目前 IP 协议主要分为两种,一种是过去的 IPv4,另一种是较新的 IPv6,目前这两种协议都在使用,但后者已经被提议来取代前者。

(2)ARP(Address Resolution Protocol,地址解析协议):

ARP 协议解决的是网络层地址和链路层地址之间的转换问题。因为一个 IP 数据报在物理上传输的过程中,总是需要知道下一跳(物理上的下一个目的地)该去往何处,但 IP 地址属于逻辑地址,而 MAC 地址才是物理地址,ARP 协议解决了 IP 地址转 MAC 地址的一些问题。

(3)ICMP(Internet Control Message Protocol,互联网控制报文协议):一种用于传输网络状态和错误消息的协议,常用于网络诊断和故障排除。

例如,Ping 工具就使用了 ICMP 协议来测试网络连通性。

(4)NAT(Network Address Translation,网络地址转换协议):

NAT 协议的应用场景如同它的名称——网络地址转换,应用于内部网到外部网的地址转换过程中。具体地说,在一个小的子网(局域网,LAN)内,各主机使用的是同一个 LAN 下的 IP 地址,但在该 LAN 以外,在广域网(WAN)中,需要一个统一的 IP 地址来标识该 LAN 在整个 Internet 上的位置。

(5)SPF(Open Shortest Path First,开放式最短路径优先) ):

一种内部网关协议(Interior Gateway Protocol,IGP),也是广泛使用的一种动态路由协议,基于链路状态算法,考虑了链路的带宽、延迟等因素来选择最佳路径。

(6)RIP(Routing Information Protocol,路由信息协议):

一种内部网关协议(Interior Gateway Protocol,IGP),也是一种动态路由协议,基于距离向量算法,使用固定的跳数作为度量标准,选择跳数最少的路径作为最佳路径。

(7)BGP(Border Gateway Protocol,边界网关协议):一种用来在路由选择域之间交换网络层可达性信息(Network Layer Reachability Information,NLRI)的路由选择协议,具有高度的灵活性和可扩展性。

4. 网络接口层

网络接口层=数据链路层+物理层

数据链路层:将网络层交下来的 IP数据报 组装成 ,在两个相邻节点间的链路上传送帧。每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)。

物理层:实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异

网络接口层的协议 和一些功能 :

MAC协议:

CSMA\CD 协议:

多路访问协议:

差错检测技术


为什么网络要分层:

(1)使复杂的问题变简单,拆分问题:

        分层可以将复杂的 网络数据传输操作 分解为许多比较小的、界线比较清晰简单的小问题 来处理和解决。更小更简单的问题意味着更好更准确的的边界(目标和接口)定义,从而 使 复杂的计算机网络系统 变得易于设计,实现和标准化。

        同时由于将复杂模型分解为每个层解决的问题,各层之间可以保持相互独立:各层之间不需要关心其他层是如何实现的,只需要知道自己如何调用下层提供好的功能就可以了,也减轻了网络系统每层的设计压力。


(2)提高了整体灵活性:

        每一层都可以使用最适合的技术来实现,无论每一层的技术发生什么改变,只需要保证 提供的功能 以及 暴露的接口的规则 没有改变就行了。体现了开发时的思想 :高内聚、低耦合的原则。

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

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

相关文章

Qt 2. QSerialPortInfo显示串口信息

在ex2.pro 添加&#xff1a; QT serialport//main.cpp #include "ex2.h" #include <QtSerialPort/QtSerialPort> #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Ex2 w;w.show();QList<QSerialPortInfo>…

(二)利用Streamlit创建第一个app——单页面、多页面

1 单页面app Step1&#xff1a;创建一个新的Python脚本。我们称之为uber_pickups.py。 Step2&#xff1a;在您喜爱的IDE或文本编辑器中打开uber_pickups.py&#xff0c;然后添加以下行&#xff1a; import streamlit as st import pandas as pd import numpy as npStep3&…

计算机视觉(五)深度学习基础

文章目录 深度学习基础卷积神经网络与传统神经网络区别深度学习与神经网络的区别 目标函数选择合适的目标函数Softmax层 改进的梯度下降梯度消失的直观解释激活函数学习步长SGD的问题Momentum动量Nesterov MomentumAdagradRMSpropAdam 各种梯度下降算法比较关于算法选择的建议B…

1、Hadoop3.x 从入门到放弃,第一章:概念

Hadoop3.x从入门到放弃&#xff0c;第一章&#xff1a;概念 一、什么是大数据 1、主要解决什么 大数据主要解决&#xff1a;海量数据的“采集”、“存储” 和 "分析计算" 问题2、大数据特点 1> Volume 大量 2> velocity 高速 3> variety 多样性数据分为…

高通死机分析-工具

为了方便高通稳定性领域分析9008以及死机问题&#xff0c;特此写此工具&#xff0c;方便大家分析死机问题&#xff0c;此工具还待完善&#xff0c;后续将发布&#xff0c;有兴趣请联系2251858097qq.com

matlab进阶:求解在约束条件下的多元目标函数最值(fmincon函数详解)

&#x1f305;*&#x1f539;** φ(゜▽゜*)♪ **&#x1f539;*&#x1f305; 欢迎来到馒头侠的博客&#xff0c;该类目主要讲数学建模的知识&#xff0c;大家一起学习&#xff0c;联系最后的横幅&#xff01; 喜欢的朋友可以关注下&#xff0c;私信下次更新不迷路&#xff0…

【C#教程】零基础从入门到精通

今天给大家分享一套零基础从入门到精通&#xff1a;.NetCore/C#视频教程&#xff1b;这是2022年最新整理的、590G的开发教程资料。课程涵盖了.Net各方面的知识&#xff0c;跟着这个教程学习&#xff0c;就足够了。 课程分类 1、C#从基础到精通教程&#xff1b; 2、Winform从…

6.生成随机数、猜数字游戏(rand函数、srand函数、time函数)

猜数字游戏 1.生成随机数1.1 rand函数1.2 srand函数1.3 time函数1.4 设置随机数的范围 2.猜数字游戏 1.生成随机数 1.1 rand函数 函数原型如下&#xff1a; int rand(void); 所需头文件&#xff1a;stdlib.h 作用&#xff1a;调用后随机返回一个伪随机数&#xff0c;随机数范…

QtXlsx: no such file or directory

Qt项目&#xff0c;引用了QtXlsx&#xff0c;准备运行&#xff0c;提示报错&#xff1a; QtXlsx: No such file or directory 奇怪。按理说&#xff0c;安装QtXlsx的三个步骤都已经执行成功了&#xff1a; qmake make make install 把生成的so库文件拷贝到相关目录也是无效。…

解决PicGo上传图片失败错误信息和上传图片失败包404错误以及Typora怎么一键导入本地图片到PicGo

&#x1f600;前言 解决PicGo上传图片失败错误信息和上传图片失败包404错误以及Typora怎么一键导入本地图片到PicGo &#x1f3e0;个人主页&#xff1a;尘觉主页 &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是尘觉&#xff0c;希望我的文章可以帮助到大家&#x…

c++ 的reinterpret_cast 与const_cast 类型转换举例

&#xff08;1&#xff09;const_cast 转换&#xff0c;可以使得给常量赋值。reinterpret_cast 转换&#xff0c;可以把一种类型转换为无关的另一种类型。 图中给出了一个例子。成功给指针 p 写进去了内容。先去除指针p 的常量属性&#xff0c;再把p这个变量当成 B 类型的变量…

C语言之#define以及预处理详讲解

目录 #define #define的使用方法 #define 替换规则 #和##的作用 带副作用的宏参数 宏和函数对比 #undef 文件包含 头文件被包含的方式&#xff1a; 嵌套文件包含 在C语言中&#xff0c;一段程序运行时会执行四个步骤&#xff1a;预编译、编译、汇编、链接。在程序预编…

初学者如何选择自己的第一种编程语言?

听人劝、吃饱饭,奉劝各位小伙伴,不要订阅该文所属专栏。 作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 跨域学习者,从事过全栈研发、产品经理等工作,现任研发部门 CTO 。荣誉:2022年度博客之星Top4、博客专家认证、全栈领域优质创作者、新星计划导师,“星荐官共赢计…

Just Mask and Sum 手搓 自然语言模型

背景 在这个每天都能看到&#xff0c;各种新LLM论文&#xff0c;出现的今天&#xff0c;大家讨论的都是如何将transformer &#xff0c;或者说是将attention 进行线性化。 很少有人讨论&#xff0c;注意力机制是必要的吗&#xff08;attention is must&#xff09;&#xff1f;…

CentOS 7.6使用yum安装stress,源码安装stree-ng 0.15.06,源码安装sysstat 12.7.2

cat /etc/redhat-release看到操作系统的版本是CentOS Linux release 7.6.1810 (Core)&#xff0c;uname -r可以看到内核版本是3.10.0-957.21.3.el7.x86_64 yum install stress sysstat -y安装stress和sysstat。 使用pidstat -u 5 1没有%wait项&#xff1a; 原因是CentOS 7仓…

数电模电基础知识学习笔记汇总

文章目录&#xff1a; 数电和模电的关系 一&#xff1a;模电学习笔记 二&#xff1a;数电学习笔记 三&#xff1a;福利 1.NI Multisim14.0电路仿真软件的下载安装 2.进制转换 3.电路常用公式 4.好的参考笔记 4.1 笔记 3.1.1 模电 3.1.1 数电 4.2 网站 5.八股文 …

LeetCode130.Surrounded-Regions<被围绕的区域>

题目&#xff1a;被围绕的区域 思路&#xff1a; 好吧&#xff0c;这题不会。 bfs递归 dfs非递归 dfs并查集 - 被围绕的区域 - 力扣&#xff08;LeetCode&#xff09; 将问题转化为与边界O相连的O。有点像岛屿问题了。 代码是&#xff1a; //codeclass Solution { public:vo…

【ARM】内核驱动之设备树的学习-长文

❤️作者主页:凉开水白菜 ❤️作者简介:共同学习,互相监督,热于分享,多加讨论,一起进步! ❤️点赞 👍 收藏 ⭐再看,养成习惯 订阅的粉丝可通过PC端文末加我微信,可对文章的内容进行一对一答疑! 文章目录 一、什么是设备树,为什么叫设备树?二、如何编译设备树?三、…

妙用指针实现qsort

妙用指针实现qsort qsort是什么qsort代码使用例子冒泡排序引言冒泡排序模拟qsort函数 qsort是什么 是一个可以对任意类型进行排序的函数 函数为&#xff1a; void qsort(void *base,size_t nmemb,size_t size,int (*compar)(const void *, const void *));参数解释 参数base …

【数据结构与算法】基数排序

基数排序 基数排序&#xff08;Radix Sort&#xff09;属于“分配式排序”&#xff0c;又称“桶子法”或 bin sort&#xff0c;顾名思义&#xff0c;它是通过键值的各个位的值&#xff0c;将要排序的元素分配至某些“桶”中&#xff0c;达到排序的作用。基数排序法是属于稳定性…