网络基础 - 预备知识(协议、网络协议、网络传输流程、地址管理)

news2024/9/28 9:30:11

文章目录

  • 1. 认识 协议
  • 2. 了解 网络协议
    • 2.1 引入 协议分层
    • 2.2 OSI 七层模型 与 TCP/IP 四层模型
  • 3. 网络传输 流程!!!
    • 3.1 网络传输流程图
    • 3.2 关于报头
    • 3.3 实例解释 传输过程(封装与解包)
  • 4. 网络中的地址管理
    • 4.1 认识 ip地址
    • 4.2 认识 mac 地址
    • 4.3 ip地址 与 mac地址 的区别?


1. 认识 协议

协议可以被看作是一种约定

计算机间通过多种方式进行互相传输,以 光、电信号 等为传输媒介进行传输,想要传递各种不同的信息, 就需要约定好双方的数据格式(如编码方式、数据结构、协议规范等)。

在这里插入图片描述


2. 了解 网络协议

网络协议可以被看作是一种约定,它定义了参与通信的设备应该如何进行通信以及如何解释接收到的数据。

2.1 引入 协议分层

为什么要有 协议分层?

比如:我们要设计一个简单的文件传输应用程序,可以通过网络将文件从一台计算机传输到另一台计算机。将这些工作作为一个模块进行完成是很复杂的。可以通过分层进行:

在这里插入图片描述

从上面的例子,可以总结出 协议分层的好处:

  1. 模块化设计:将整个通信系统分解为多个独立的层次,每个层次负责特定的功能和任务。这种模块化设计使得网络结构更加清晰,易于管理和维护。
  2. 提高可扩展性:如果需要新增功能或改进某一层的协议,可以在不影响其他层次的情况下进行修改。这样可以灵活地扩展系统的功能和性能。

2.2 OSI 七层模型 与 TCP/IP 四层模型

OSI(开放系统互连)七层模型 TCP/IP 四(五)层模型 是计算机网络领域中常用的两种网络协议模型,它们分别用于描述和规范网络通信中不同层次的功能和协议。

我们要知道:

  1. 这两种模型都是 在逻辑上对网络通信进行划分和定义的。它们并不代表实际的硬件设备或软件实现,而是提供了一种框架和指导原则,帮助理解和组织网络通信的过程。
  2. 无论是OSI七层模型还是TCP/IP四层模型,都是为了简化和规范网络通信的复杂性,实现互操作性和通用性。

OSI 七层模型

层级名称功能
7应用层提供用户接口、网络服务和应用程序支持
6表示层数据格式化、加密和压缩
5会话层管理用户会话和建立连接
4传输层提供端到端的数据传输和可靠性
3网络层路由选择和逻辑寻址
2数据链路层帧同步、物理地址寻址和错误检测
1物理层数据传输介质和比特流动控制

TCP / IP 五层模型

TCP/IP五层模型功能
应用层(Application Layer)提供应用程序间的通信服务,定义应用层协议(如HTTP、FTP)
传输层(Transport Layer)负责端到端的数据传输和连接管理,提供可靠的数据传输(如TCP、UDP)
网络层(Network Layer)处理数据包的路由和转发,实现不同网络之间的通信,提供IP协议支持
数据链路层(Data Link Layer)管理物理设备之间的数据传输,处理帧的封装和解封装,提供MAC地址支持
物理层(Physical Layer)管理物理介质的传输方式和电气特性,提供比特流的传输

TCP/IP是 一组协议的代名词,它由多个协议组成,形成了 TCP/IP协议簇。这些协议共同工作,提供了互联网上数据通信的基础。

TCP/IP协议簇包括以下主要协议(了解):

  1. IP(Internet Protocol):负责网络层的功能,定义了在互联网上传输数据的基本单位,即IP数据包。
  2. TCP(Transmission Control Protocol):负责传输层的功能,提供可靠的、面向连接的数据传输服务,确保数据的完整性和可靠性。
  3. UDP(User Datagram Protocol):也是传输层的协议,与TCP相比更加简单,不提供可靠性保证,适用于对传输速度较高要求的应用。
  4. HTTP(Hypertext Transfer Protocol):应用层的协议,用于在Web浏览器和Web服务器之间传输超文本数据,是万维网的基础协议。
  5. FTP(File Transfer Protocol):应用层的协议,用于在客户端和服务器之间进行文件传输。
  6. DNS(Domain Name System):应用层的协议,用于将域名转换为对应的IP地址,实现域名解析功能。
    除了以上列举的协议外,TCP/IP协议簇还包括其他许多协议,如SMTP(邮件传输协议)、POP3(邮局协议)、ICMP(Internet控制消息协议)等,它们共同构成了互联网上数据通信的基础架构。

PS:

由于大多情况下不考虑物理层,所以一般我们称其为 TCP/IP四层协议


3. 网络传输 流程!!!

3.1 网络传输流程图

我们知道:

同一个局域网的两台主机可以进行通信。

  • 下图是同一个局域网的两台主机可以进行通信。
    在这里插入图片描述

  • 逻辑上 我们认为: 同一层次的协议之间可以直接进行传输
    例如:在这里插入图片描述

  • 而对于 实际的数据传输过程 :需要进行 封装和解包(报头)的操作,以便在不同的网络层次之间传递数据。

  • 关于报头。我们有:

    • 每层都有自己的协议定制方案
    • 每层协议都有自己的协议报头
    • 从上到下 交付数据时,要添加/ 报头

3.2 关于报头

从上面我们知道了,实际的数据传输过程,需要有添加报头以及解包的操作,那么

报头是什么?

  1. 报头通常指 :计算机网络通信中 数据包的首部分;网络通信中数据被分割成 称为数据包的小块进行传输,每个数据包都包含 用于控制和管理传输的信息,即报头。
  2. 报头包含了一些 重要字段 :如源地址 与 目的地址、以及一些控制信息(如数据包优先级、序列号、校验等)。
  3. 通过 解析报头中的数据信息 ,网络设备可以正确地将数据包发送到目标地址,并在网络传输过程中进行适当的控制与管理。

3.3 实例解释 传输过程(封装与解包)

  • 这里对这一过程(封装 与 解包)进行解释:
    • 我们以 TCP / IP 四层模型为例:

在这里插入图片描述

简单对上图进行解释:主机A向主机B发送信息“你好”

  1. 首先从上至下经过四个层,依次添加报头,即封装的过程
  2. 后由主机B接收,从下向上层进行解包,即解包的过程
  3. 可以保证每层的报头一致,即协议一致

4. 网络中的地址管理

4.1 认识 ip地址

  1. IP地址是指互联网协议地址,用于识别网络上的设备。它是一个在网络上唯一标识一个设备的地址。
  2. IP协议有两个版本: IPv4和IPv6
    • 其中 IPv4地址 由32位二进制数表示,通常以点分十进制 的形式显示,如192.168.1.1
    • IPv6地址 地址由128位二进制数表示,通常以冒号分隔的八组十六进制数 显示。
  3. IP地址的作用是在网络中唯一标识设备的位置,使数据能够正确地路由到目标设备所在的网络。

4.2 认识 mac 地址

  1. MAC地址 通常由 48位二进制数 表示,通常以十六进制表示,例如00:1A:2B:3C:4D:5E。
  2. MAC地址 的作用是在局域网内唯一标识一个设备,(对于一张网卡,其mac地址是唯一的、虚拟机中的mac地址并非真实的mac地址、可能发生冲突)
  3. MAC地址 用来识别数据链路层中相连的节点。

4.3 ip地址 与 mac地址 的区别?

  • IP地址是基于地理区域划分的逻辑地址,用于在网络中识别和定位设备。即使同一台硬件设备在不同地方,它们被分配的IP地址也会因所处网络环境的不同而变化。IP地址的变化类似于人类居住地的变化,需要根据所在网络环境重新分配。

  • MAC地址是硬件设备固定的物理地址,与设备的网卡硬件关联,并且通常在制造时就确定下来,不会因设备所处的网络环境而改变。无论设备在何处,只要是同一台硬件设备,其MAC地址都是唯一且不会改变。MAC地址的稳定性类似于人类的身份证号码,与个体设备紧密相关且唯一不变。

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

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

相关文章

力扣串题:字符串中的第二大数字

此题的精妙之处在于char类型到int类型的转化&#xff0c;需要运算来解决 int secondHighest(char * s) {int max1-1;int max2-1;int szstrlen(s);int i 0 ;for(i0;i<sz;i){if(s[i]>0&&s[i]<9){if((s[i]-0)>max1){max2max1;max1s[i]-0;}else if((s[i]-0)&l…

Linux I2C调试分享

I2C简介 I2C&#xff08;Inter-Integrated Circuit&#xff09;是一种多主机、两线制、串行计算机总线&#xff0c;用于连接低速外围设备到处理器或微控制器。这种通信协议由Philips Semiconductor&#xff08;现在的NXP Semiconductors&#xff09;在1980年代初期开发。 I2C…

英语四六级有线调频听力广播-厦门华厦学院有线调频听力广播系统建设深度解析

英语四六级有线调频听力广播-厦门华厦学院有线调频听力广播系统建设深度解析 由北京海特伟业任洪卓发布于2024年3月14日 随着社会的快速发展和国际交流的日益频繁&#xff0c;英语已成为我们日常生活中不可或缺的一部分。作为衡量大学生英语水平的重要标准之一&#xff0c;大学…

javaweb数据传参类型(2)

前言 友友们好呀&#xff0c;今天来分享一下对于各种数据类型传参的问题&#xff0c;今天陪伴我们的云海 目录 前言 数组集合传参 补充 日期参数 补充 Json格式数据传参 补充 路径参数 补充 今日分享 ​​​​​​​数组集合传参 类似于我们之前进行的简单的参数传递…

深度学习模型部署(五)onnx模型以及相应工具

ONNX概念 onnx不仅仅一种模型参数存储的格式&#xff0c;还是一套完整的用于描述计算函数的编程语言&#xff0c;它的作用就是定义计算图&#xff0c;他本身无法进行。 这个概念和Verilog有点像&#xff0c;一个是硬件描述语言&#xff0c;一个是模型描述语言。 onnx模型或者说…

Learn OpenGL 10 Assimp+网格+模型

Assimp 一个非常流行的模型导入库是Assimp&#xff0c;它是Open Asset Import Library&#xff08;开放的资产导入库&#xff09;的缩写。Assimp能够导入很多种不同的模型文件格式&#xff08;并也能够导出部分的格式&#xff09;&#xff0c;它会将所有的模型数据加载至Assim…

git基础命令(一)

目录 基础概念git statusgit addgit diffgit loggit commit文件可以处于以下三种状态之一远程存储库与本地存储库参考 用于知识记录。后续有新的的内容&#xff0c;例子&#xff0c;将持续更新本文档。 基础概念 工作树&#xff1a;git add 之前&#xff0c;变动内容的文件列表…

经典数组和指针笔试题解析——C语言

【本节内容】 1. 数组和指针笔试题解析 2. 指针运算笔试题解析 1. 数组和指针笔试题解析 1.1 一维数组 #include <stdio.h> int main() {int a[] { 1,2,3,4 };printf("%zd\n", sizeof(a));printf("%zd\n", sizeof(a 0));printf("%zd\n&qu…

【金三银四】掌趣科技24.3.7 H项目 服务端开发笔试题

考试题型&#xff1a; 不定项选择题 10 道 &#xff0c; 填空题 10 道 &#xff0c; 问答题 2 道 &#xff0c; 编程题 4 道 目录 不定项选择题 10 道填空题 10 道问答题 2 道编程题 4 道 不定项选择题 10 道 在TCP协议中&#xff0c;发送方的窗口大小是由两个关键因素共同决定…

三个表联合查询的场景分析-场景1:a表关联了b表和c表

本场景对应情景如下&#xff1a; 三个数据表&#xff0c;一个表的两个字段分别关联了另外两个表各自的id数据&#xff0c;可能包含多个id&#xff08;两个1对多关联&#xff09;。 目录 数据表准备 需求1、查询c表的列表数据&#xff0c;要求获得关联的b表中的name&#xf…

工业界真实的推荐系统(小红书)-涨指标的方法:召回、排序、多样性、特殊人群、利用交互行为

课程特点&#xff1a;系统、清晰、实用&#xff0c;原理和落地经验兼具 b站&#xff1a;https://www.bilibili.com/video/BV1HZ421U77y/?spm_id_from333.337.search-card.all.click&vd_sourceb60d8ab7e659b10ea6ea743ede0c5b48 讲义&#xff1a;https://github.com/wangsh…

CSDN 编辑器设置图片缩放和居中

CSDN 编辑器设置图片缩放和居中 文章目录 CSDN 编辑器设置图片缩放和居中对齐方式比例缩放 对齐方式 Markdown 编辑器插入图片的代码格式为 ![图片描述](图片路径)CSDN 的 Markdown 编辑器中插入图片&#xff0c;默认都是左对齐&#xff0c;需要设置居中对齐的话&#xff0c;…

项目性能优化—性能优化的指标、目标

项目性能优化—性能优化的指标、目标 性能优化的终极目标是什么 性能优化的目标实际上是为了更好的用户体验&#xff1a; 一般我们认为用户体验是下面的公式&#xff1a; 用户体验 产品设计&#xff08;非技术&#xff09; 系统性能 ≈ 系统性能 快 那什么样的体验叫快呢…

STM32第九节(中级篇):RCC——时钟树讲解(第一节)

目录 前言 STM32第九节&#xff08;中级篇&#xff09;&#xff1a;RCC——时钟树讲解 时钟树主系统时钟讲解 HSE时钟 HSI时钟 锁相环时钟 系统时钟 SW位控制 HCLK时钟 PCLKI时钟 PCLK2时钟 RTC时钟 MCO时钟输出 6.2.7时钟安全系统(CSS&#xff09; 小结 前言 从…

基于HarmonyOS ArkTS中秋国庆祝福程序、以代码之名,写阖家团圆祝福

中秋、国庆双节将至&#xff0c;作为程序员&#xff0c;以代码之名&#xff0c;表达对于阖家团圆的祝福。本节将演示如何在基于HarmonyOS ArkUI的SwiperController、Image、Swiper等组件来实现节日祝福轮播程序。 规则要求具体要求如下&#xff1a; 1、根据主题&#xff0c;用…

遗嘱消息(Will Message)介绍与示例 _ MQTT 5.0 特性详解

什么是 MQTT 遗嘱消息&#xff1f; 在现实世界中&#xff0c;一个人可以制定一份遗嘱&#xff0c;声明在他去世后应该如何分配他的财产以及应该采取什么行动。在他去世后&#xff0c;遗嘱执行人会将这份遗嘱公开&#xff0c;并执行遗嘱中的指示。 在 MQTT 中&#xff0c;客户端…

honle电源维修UV电源控制器维修EVG EPS60

好乐UV电源控制器维修&#xff1b;honle控制器维修&#xff1b;UV电源维修MUC-Steuermodul 2 LΛmpen D-82166 主要维修型号&#xff1a; EVG EPS 60/120、EVG EPS 100、EVG EPS200、EVG EPS 220、EVG EPS 340、EVG EPS40C-HMI、EVG EPS60 HONLE好乐uv电源维修故障包括&#…

Python实时追踪关键点组成人体模型

项目背景 最近遇到这样一个需求&#xff1a; 1&#xff1a;实时追踪关键点组成人体模型&#xff08;手臂包括三个点&#xff1a;手腕&#xff0c;肘关节&#xff0c;双肩&#xff1b;腿部包括胯骨&#xff0c;膝盖&#xff0c;脚踝&#xff09; 2&#xff1a;运用追踪到的关键…

【c++】string类的使用及模拟实现

1.我们为什么要学习string类&#xff1f; 1.1 c语言中的字符串 我们先了解一下什么是OOP思想 OOP思想&#xff0c;即面向对象编程&#xff08;Object-Oriented Programming&#xff09;的核心思想&#xff0c;主要包括“抽象”、“封装”、“继承”和“多态”四个方面。 抽象…

Day16 面向对象进阶——接Day15

Day16 面向对象进阶——接Day15 文章目录 Day16 面向对象进阶——接Day15一、抽象类及抽象方法二、接口三、多态四、对象转型五、内部类 一、抽象类及抽象方法 //抽象类 public abstract class 类名{//抽象方法public abstract void method(); }1、抽象方法交给非抽象的子类去…