网络通信——OSI七层模型和TCP/IP模型

OSI模型

一.OSI七层模型

OSI(Open System Interconnect)七层模型是一种将计算机网络通信协议划分为七个不同层次的标准化框架。每一层都负责不同的功能,从物理连接到应用程序的处理。这种模型有助于不同的系统之间进行通信时,更好地理解和管理网络通信的过程。

7.应用层——提供可视化界面,提供人机交互,网络服务

6.表示层——区分你所发的数据(图片),对数据进行格式化,加密,解密

5.会话层—— 建立,维护,管理连接(进程)

4.传输层——区分上层应用(通过不同应用对应不同的端口号来区分),建立端到端连接。

3.网络层——ip寻址和路由选择

2.数据链路层——mac寻址

1.物理层——比特流的传输(高低电平)

二.OSI为什么要分成/优点

1.促进标准化

2.各层结构相互独立,将网路操作低复杂化

3.灵活性,某层的变化不会影响到其他层

4.各层之间相互连接,实现上下层通信

5.易于维护和实现

三.缺点

1.各层之间的某些功能重复,冗余感。

2.各层之间的功能分配不均。

3.功能和服务定义复杂,不好实现

这就是为什么会有TCP4层或5层模型的说法,因为OSI在实际应用中不便于实现。

TCP/IP模型

一.TCP/IP

下面是OSI七层对应TCP/IP模型的,以及在TCP/IP模型中对数据的封装过程

我喜欢TCP/IP的五层模型

5.应用层——提供可视化界面,提供人机交互,网络服务。区分你所发的数据(图片),对数据进行格式化,加密,解密。 建立,维护,管理连接(进程)

4.传输层——区分上层应用(通过不同应用对应不同的端口号来区分),建立端到端连接。

3.网络层——ip寻址和路由选择

2.数据链路层——mac寻址

1.物理层——比特流的传输(高低电平)

功能进行了一些整合,并且有了相对应的协议。 

 二.应用层协议和对应的端口号(常见的)

(1)HTTP(HyperText Transfer Protocol/超文本传输协议):用于在客户端和服务器之间传输超文本数据,通常用于 Web 浏览器和 Web 服务器之间的通信。(TCP 80端口)

(2)HTTPS(HyperText Transfer Protocol Secure/超文本传输安全协议):是 HTTP 的安全版本,通过 SSL/TLS 加密传输数据,保证通信过程中的安全性。(TCP 443端口)

(3)FTP(File Transfer Protocol/文本传输协议):用于在客户端和服务器之间传输文件,支持上传和下载文件的功能。(TCP 20传输端/21控制端)

(4)TFTP(Trivial File Transfer Protocol/简单文件传输协议):在计算机网络中传输文件。它设计上相对简单,通常用于在不需要复杂控制的情况下进行文件传输(UDP 69端口)

(5)SMTP(Simple Mail Transfer Protocol/简单邮件传输协议):用于在邮件服务器之间传输电子邮件,负责发送邮件。(TCP 25端口)

(6)POP3(Post Office Protocol version 3/邮局协议版本3):用于从邮件服务器上下载邮件到本地计算机,负责接收邮件。(TCP 110端口)

(7)IMAP(Internet Message Access Protocol/互联网消息访问协议):也是用于接收邮件的协议,与 POP3 类似,但提供了更丰富的功能,如在服务器上管理邮件等。(TCP 143端口)

(8)Telnet:用于远程登录和执行命令,类似于 SSH,但不提供加密功能,通信数据不安全。(TCP 23 端口)

(9)SSH(Secure Shell/安全外壳协议):用于远程登录和执行命令,提供了加密的网络连接,保证了通信的安全性。(TCP 22端口)

(10)RDP(远程桌面协议):是一种由微软开发的协议,用于通过网络远程访问Windows桌面和应用程序。

(11)SNMP(Simple Network Management Protocol/简单网络管理协议):用于网络设备之间的管理和监控,可以实现对网络设备的远程配置和监控。(UDP161主要通信,包括请求和响应/UDP162为网络设备向管理系统发送重要事件通知提供通道,比如故障)

(12)DNS:用于将域名解析为对应的 IP 地址,从而实现域名和 IP 地址之间的映射。( udp/TCP 53)(域名解析协议)企业里  114.114.114.114(电信)   8.8.8.8(谷歌)

              注:将域名转换为ip地址 

                 域名给人看

                 IP给机器识别

                 eg:www.baidu.com 对应的 ip

(13)DHCP(Dynamic Host Configuration Protocol/动态地址分配协议):用于自动分配IP地址和其他网络配置参数给网络中的设备(   67(UDP)用于DHCP服务器接收客户端请求/ 68(UDP)用于DHCP客户端接收服务器的响应。)

三.传输层协议

(1)TCP(Transmission Control Protocol/传输控制协议):提供可靠的、面向连接的数据传输服务,确保数据的可靠性、顺序性和完整性。TCP适用于对数据传输质量要求较高的场景,如文件传输、网页浏览等。

(2)UDP(User Datagram Protocol/用户数据报协议):提供无连接的数据传输服务,不保证数据的可靠性,也不保证数据的顺序性和完整性。UDP适用于实时性要求较高、对数据传输质量要求不那么严格的场景,如音视频传输、在线游戏等。

四.网络层协议 

(1)IP(Internet Protocol/互联网协议):用于在网络中定位和传输数据包。它负责将数据从源地址传送到目标地址。

(2)IPv6(Internet Protocol version 6):互联网协议的第六版,旨在替代IPv4,提供更大的地址空间和改进的路由效率。它使用128位地址,能够支持更多的设备和用户。

(3)ICMP(Internet Control Message Protocol/互联网控制消息协议):用于网络设备之间发送控制消息的协议,主要用于错误报告和诊断。

(4)ARP(Address Resolution Protocol/地址解析协议):将网络层地址(如IPv4地址)转换为数据链路层地址(如MAC地址)的协议。它允许设备在局域网内找到其他设备的物理地址,从而能够进行数据包的发送和接收。

(5)RARP(Reverse Address Resolution Protocol/反向地址解析协议:是一种用于将数据链路层地址(如MAC地址)转换为网络层地址(如IPv4地址)的协议。它的主要用途是在设备启动时,特别是那些没有本地存储的设备(如网络终端或无盘工作站),以获取其IP地址。

五.数据链路层协议

 TYPE字段:

0x0800             IP

0x0806             ARP

0x08DD            IPV6

以太网(Ethernet)最广泛使用的数据链路层协议,支持局域网中的设备连接,特性:基于CSMA/CD(载波监听多路访问/碰撞检测)机制,使用MAC地址进行设备识别。

注意:Ethernet II和IEEE 802.3是两种不同的以太网协议,主要区别在于帧结构和处理方式:

(1)帧格式

Ethernet II:帧头包括目的MAC地址、源MAC地址和类型字段(用于指示上层协议,如IP)。

IEEE 802.3:帧头也包括目的和源MAC地址,但使用长度字段来指示数据字段的长度,而不是类型。

(2)协议支持

Ethernet II:广泛用于IP协议及其他网络层协议,主要在现代网络中使用。

IEEE 802.3:最初是为了标准化以太网的物理层和数据链路层,后续也支持了以太网的各种扩展。

(3)兼容性

Ethernet II可以被视为较新的标准,广泛兼容现代网络,而IEEE 802.3是早期的标准,后续演变为多个版本,适应不同的应用。

这两者的共同点是都用于局域网传输,但在具体实现上有所不同

六.物理层 

传媒介质

双绞线:如以太网(CAT5、CAT6),用于局域网传输。

同轴电缆:用于有线电视和某些网络。

光纤:用于高速数据传输,具有较低的信号衰减。

无线传输:通过电磁波(如Wi-Fi、蓝牙)实现无线通信。

数据传输速率

物理层定义了设备之间的传输速率,如10 Mbps、100 Mbps、1 Gbps等

等等

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

分享课程:VUE数据可视化教程

在当今这个数据驱动的世界中,数据可视化已经成为了一种至关重要的工具,它帮助我们理解复杂的数据集,发现模式、趋势和异常。数据可视化不仅仅是将数字转换成图表,它是一种将数据转化为洞察力的艺术。 1.什么是数据可视化&#xf…

DNS协议解析

DNS协议解析 什么是DNS协议 IP地址:一长串唯一标识网络上的计算机的数字 域名:一串由点分割的字符串名字 网址包含了域名 DNS:域名解析协议 IP>域名 --反向解析 域名>IP --正向解析 域名 由ICANN管理,有级别&#xf…

CVE-2024-46101

前言 自己挖的第一个CVE~ 喜提critical 这里简单说一下。 漏洞简介 GDidees CMS < 3.9.1 的版本&#xff0c;存在一个任意文件上传漏洞。允许登录后的攻击者上传webshell获得网站的权限。 影响版本&#xff1a; GDidees CMS < 3.9.1 &#xff08;其它的我没测。。&am…

二叉树之堆树

堆树是一种完全二叉树&#xff0c;完全二叉树特点&#xff1a;除了最后一层所有层都填满&#xff0c;最后一层节点从左到右排列。堆树分为两种类型&#xff1a;大顶堆和小顶堆。 大顶堆&#xff1a;每个节点的值都大于或等于其子节点的值&#xff0c;根节点是最大值。 小顶堆…

降准降息一揽子措施点燃 A 股激情,4% 大涨之后趋势深度剖析

文章目录 牛回速归原因分析引爆点情绪和信心一根大阳线&#xff0c;千军万马来相见阴霾是否一扫而空还未可知 流动性和增量 潜在隐患等待经济复苏配套政策期待中美关系进展 短期内趋势分析空军短期内仍有余力如何看待第2日的回撤外围 趋势分析结论短期内可能仍有波折中长期会是…

Flink Task 日志文件隔离

Flink Task 日志文件隔离 任务在启动时会先通过 MdcUtils 启动一个 slf4j 的 MDC 环境&#xff0c;然后将 jobId 添加到 slf4j 的 MDC 容器中&#xff0c;随后任务输出的日志都将附带 joid。 MDC 介绍如下&#xff1a; MDC ( Mapped Diagnostic Contexts )&#xff0c;它是一个…

C/C++逆向:循环语句逆向分析

在逆向分析中&#xff0c;循环语句通常会以特定的汇编模式或结构体现出来。常见的循环语句包括 for 循环、while 循环和 do-while 循环。由于不同的编译器会根据代码优化的级别生成不同的汇编代码&#xff0c;分析循环的模式也可能会有所不同。以下是三种常见循环语句的汇编分析…

【C++ Primer Plus习题】17.7

问题: 解答: #include <iostream> #include <vector> #include <string> #include <fstream> #include <algorithm>using namespace std;const int LIMIT 50;void ShowStr(const string& str); void GetStrs(ifstream& fin, vector<…

ShardingSphere 分库分表

中间件 常用中间件 MyCat 是基于 Proxy&#xff0c;它复写了 MySQL 协议&#xff0c;将 Mycat Server 伪装成⼀个 MySQL 数据库客户端所有的jdbc请求都必须要先交给MyCat&#xff0c;再有 MyCat转发到具体的真实服务器缺点是效率偏低&#xff0c;中间包装了⼀层代码⽆侵⼊性…

【刷题3】找到字符串中所有字母异位词、串联所有单词的子串

目录 一、找到字符串中所有字母异位词二、串联所有单词的子串 一、找到字符串中所有字母异位词 题目&#xff1a; 思路&#xff1a; 用一个变量count来统计有效字符的个数。哈希表2统计字符串p的每个字符出现的个数&#xff0c;然后遍历字符串s&#xff0c;先进窗口&#xf…

Unity-物理系统-碰撞检测-物理材质

物理材质的作用&#xff1a;改变碰撞效果 因为碰撞的过程是相互的&#xff0c;所以在碰撞双方都要加相同的物理材质才能实现效果 物理材质创建 参数

微软宣布弃用WSUS,企业用户尽早准备替换方案

微软最近宣布将逐步弃用Windows Server Update Services (WSUS)&#xff0c;不再为其开发新功能&#xff0c;但会继续支持现有的更新和功能。这一决定对企业客户来说影响深远&#xff0c;尤其是那些依赖WSUS来管理大规模Windows设备更新的组织。 对企业客户的影响 安全性与合规…

模型Alignment之RLHF与DPO

1. RLHF (Reinforcement Learning from Human Feedback) RLHF 是一种通过人类反馈来强化学习的训练方法&#xff0c;它能够让语言模型更好地理解和执行人类指令。 RLHF 的三个阶段 RLHF 的训练过程一般分为三个阶段&#xff1a; 监督微调&#xff08;Supervised Fine-Tuning,…

Apache ZooKeeper 及 Curator 使用总结

1. 下载 官网地址&#xff1a;Apache ZooKeeper 点击下载按钮 选择对应的版本进行下载 2. 使用 1、解压 tar -zxf apache-zookeeper-3.9.2-bin.tar.gz2、复制配置文件&#xff0c;有一个示例配置文件 conf/zoo_sample.cfg&#xff0c;此文件不能生效&#xff0c;需要名称为…

Docker Registry API best practice 【Docker Registry API 最佳实践】

文章目录 1. 安装 docker2. 配置 docker4. 配置域名解析5. 部署 registry6. Registry API 管理7. 批量清理镜像8. 其他 &#x1f44b; 这篇文章内容&#xff1a;实现shell 脚本批量清理docker registry的镜像。 &#x1f514;&#xff1a;你可以在这里阅读&#xff1a;https:/…

安卓13设置动态显示隐藏第一页的某一项 动态显示隐藏无障碍 android13设置动态显示隐藏第一页的某一项

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改4.1修改方法14.2修改方法25.编译6.彩蛋1.前言 有时候,我们的设置里面显示的信息,需要根据不同的情况显示不同的信息,例如,动态的显示或者隐藏 “无障碍” 这一项。 2.问题分析 像这个问题…

基于 K8S kubernetes 搭建 安装 EFK日志收集平台

目录 1、在k8s中安装EFK组件 1.1 安装elasticsearch组件 1.2 安装kibana组件 1.3 安装fluentd组件 文档中的YAML文件配置直接复制粘贴可能存在格式错误&#xff0c;故实验中所需要的YAML文件以及本地包均打包至网盘 链接&#xff1a;https://pan.baidu.com/s/15Ryaoa0_…

Leetcode面试经典150题-39.组合总数进阶:40.组合总和II

本题是扩展题&#xff0c;真实考过&#xff0c;看这个题之前先看一下39题 Leetcode面试经典150题-39.组合总数-CSDN博客 给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数…

Java查找算法——(四)分块查找(完整详解,附有代码+案例)

文章目录 分块查找1.1普通分块查找 分块查找 1.1普通分块查找 分块原则&#xff1a; 块内无序&#xff0c;块间有序:前一块中的最大数据&#xff0c;小于后一块中所有的数据&#xff0c;块与块之间不能有数据重复的交集。块的数量一般等于数字个数开根号 核心思路&#xff…

CentOS Linux教程(6)--CentOS目录

文章目录 1. 根目录2. cd目录切换命令3. CentOS目录介绍4. pwd命令介绍5. ls命令介绍5.1 ls5.2 ls -a5.3 ls -l 1. 根目录 Windows电脑的根目录是计算机(我的电脑)&#xff0c;然后C盘、D盘。 Linux系统的根目录是/&#xff0c;我们可以使用cd /进入根目录&#xff0c;然后使…