当前位置: 首页 > news >正文

【网络】基础知识1

目录

网络发展

独立模式

网络互联

局域网LAN

广域网WAN

什么是协议

 初识网络协议

协议分层 

OSI七层模型

TCP/IP四层(或五层)模型

 OSI和TCP/IP对比

网络传输流程

什么是报头

局域网通信原理

同网段的主机通讯

跨网段的主机通讯

数据包封装和分用

数据封装的过程

 数据分用的过程

IP地址和MAC地址

IP地址

MAC地址

IP地址和MAC地址的感性理解


网络发展

计算机的出现是要给人们提供计算任务的,人与人之间的生产和工作需要相互协作。比如:数据的获取,数据的整理,数据的分析以及应用,可能需要一大批人协同工作。人与人之需要间协作也就有了计算机之间相互协作的需求,这也能说明计算机网络发展的必然。

独立模式

独立阶段的每个计算机之间是相互独立的。在这种模式下,假如有一项工作需要三个人共同完成,李华对数据进行汇总,小明对数据进行分析和筛选,而老王完成最后的测试和发布工作。在独立模式下,由于计算机之间相互独立,所以它们之间的工作模式就是串行的。如下图:小明在李华处理完工作前始终是等待状态,而老王在李华+小明处理工作期间一直处于等待状态。

网络互联

网络互联的模式下,多台计算机连接在一起,完成数据共享。如下图所示:当多台计算机连接在一起后,每个人虽然使用的是各自的专属计算机,但是业务之间可以随时切换,共享数据由服务器集中管理。

局域网LAN

当计算机数量越来越多的时候,就需要交换机和路由器连接在一起。局域网:是局部地区形成的一个区域网络,分布地区范围有限。

●交换机的主要功能是在局域网内部进行数据包的转发和过滤,以提高网络的传输效率和安全性。

●路由器的主要功能是在不同网络之间进行数据包的转发和路由选择,以实现网络之间的通信。

总的来说,交换机主要用于局域网内部的数据包转发和过滤,而路由器主要用于不同网络之间的数据包转发和路由选择。

 如上图所示,寒假期间你组织高中班上的一批同学开展cs游戏比赛,他们分布在县城的各个地方,但是每个同学都有一个计算机,通过交换机和路由器连接在一起(当然这中间有很多细节,暂时不关心,重点理解什么是局域网),就可以愉快的进行游戏竞技了。

广域网WAN

广域网:是连接不同地区局域网或城域网计算机通信的远程网。比如:将远隔千里的计算机连接在一起。

需要注意的是,所谓“局域网”和“广域网”只是相对的概念。上述场景中描述的广域网,也能将其看做一个较大的局域网。

什么是协议

“协议”是一种约定。

生活中的“约定”很好理解,比如你今天要和网友在公园见面,你们提前约定好了暗号。你先说“¥¥¥¥¥¥¥¥”,它回复“###########”。通过这个暗号,你们就能确定对方的身份。

计算机之间的传输媒介是光信号和电信号,通过“频率”和“强弱”来表示0和1这样的信息。要想传递各种不同的信息,就需要约定好双方的数据格式。

 初识网络协议

计算机生产厂商有很多,操作系统有很多,计算机网络硬件设备也有很多。为了解决不同厂商之间生产的计算机能够相互顺畅的通信,就需要有人站出来,约定一个共同的标准,大家都遵守,这就是网络协议。

一台计算机的内部,也是一个小型的网络结构。计算机的体系结构中有网络,网络中有体系结构。

协议分层 

协议分层,将功能比较集中,耦合度比较高的模块分在一层(高内聚)。层与层之间一个改变不要影响其他层(低耦合)。每一层都要解决特定的问题。每一层都有自己匹配的协议,每一层协议解决当前层的问题。

通过一个例子理解协议分层:

示例场景:小明(A)和小红(B)都讲汉语,他们通过电话机进行通信。这个简单的通话场景,实际上在语言层将所说的汉语(汉语协议)以音频的方式通过听筒传递给电话机,在通讯设备层将音频转换为电信号(电话机协议)传递到对方的电话机,在转换为音频传递给对方。

场景变更1:通讯设备层保持不变,仅在语言层变更。小红(B)和小王(C)都讲英语。只要更改语言层的协议,就能让B和C完成通话。

场景变更2:语言层保持不变,仅在通讯设备层进行变更。小明(A)和小红(B)依然用汉语进行交流,但是通讯设备层改为用无线电。只需要更改通讯设备层。

需要注意的是,上述的例子中的协议只有两层,是为了方便描述。但是在实际的网络通信中会更加复杂,会有更多的层次划分。

OSI七层模型

●OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范。
●OSI 把网络从逻辑上分为了7层. 每一层都有相关、相对应的物理设备,比如路由器,交换机;
●OSI 七层模型是一种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输;
●它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整. 通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。

TCP/IP四层(或五层)模型

●物理层: 负责光/电信号的传递方式. 比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤, 现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等. 集线器(Hub)工作在物理层。

双绞线线序口诀:


●数据链路层: 负责设备之间的数据帧的传送和识别. 例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作. 有以太网、令牌环网, 无线LAN等标准. 交换机(Switch)工作在数据链路层。
●网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)工作在网路层。
●传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机。
●应用层: 负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应用层。

 OSI和TCP/IP对比

网络传输流程

什么是报头

计算机网络报头是指在计算机网络中传输的数据包中的一部分,用于描述数据包的一些基本信息。感性的去理解,就是类似快递单的东西。

局域网通信原理

两台局域网的主机能够直接通信。每一台机器都有网卡,每一张网卡都有自己的地址,MAC地址,能够标识其在局域网中的唯一性。

●在任何一个时刻,只允许一台主机在局域网中发送消息。否则会发生碰撞。

●假设Mac1给Mac7发送消息“我爱你!”,这个信息不仅仅Mac7收到。其余的“吃瓜群众2-6“也都看到了,但是通过分析知道这不是发送给自己的,就将其丢弃了。最后只有Mac7接受这个信息。

同网段的主机通讯

如下图所示,两台计算机通过TCP/IP协议通讯的过程:

 ●报文 = 报头+有效载荷。

跨网段的主机通讯

如下图所示,跨网段的主机传输,数据从一台计算机到另一台计算机传输的过程中要经过一个或多个路由:

数据包封装和分用

●不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)。
●应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装
(Encapsulation)。
●首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息。
●数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议字段" 将数据交给对应的上层协议处。

数据封装的过程

 数据分用的过程

IP地址和MAC地址

IP地址

IP协议有两个版本, IPv4和IPv6。下述的描述指的是IPV4:
●IP地址是在IP协议中, 用来标识网络中不同主机的地址。
●对于IPv4来说, IP地址是一个4字节, 32位的整数;通常使用 "点分十进制" 的字符串表示IP地址, 例如 192.168.1.5 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255

MAC地址

MAC地址用来识别数据链路层中相连的节点:
●长度为48位, 即6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)
●在网卡出厂时就确定了, 不能修改。 mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突; 也有些网卡支持用户配置mac地址)。

IP地址和MAC地址的感性理解

IP地址:从“北京“ 去  “桂林” 旅游。终极目标。为我们未来的每一个阶段要做的选择,提供方向目标,进行路径选择。

MAC地址:上一站从哪来,下一站去哪里。“北京 -- 河南”  “河南 -- 深圳” “深圳 -- 桂林”该类地址一直在变化。

相关文章:

【网络】基础知识1

目录 网络发展 独立模式 网络互联 局域网LAN 广域网WAN 什么是协议 初识网络协议 协议分层 OSI七层模型 TCP/IP四层(或五层)模型 OSI和TCP/IP对比 网络传输流程 什么是报头 局域网通信原理 同网段的主机通讯 跨网段的主机通讯 数据包封装…...

chatgpt赋能python:Python倒序range的完整指南

Python倒序range的完整指南 Python是一种高级编程语言,很多人认为它非常容易学习和使用。其中一个非常有用的功能是range()函数,可以生成数字序列。然而,有时候我们需要以相反的顺序生成这个数字序列,这时候倒序range()函数就派上…...

工作笔记!

搭建tomcat Tomcat详细使用教程 tomcat配置用戶名和密碼 tomcat设置外网能访问_tomcat让别人通过网络访问 如何在windows开端口_windows开放端口命令 tomcat进Manager 403 Access Denied You are not authorized to view this page_tomcat报错you are not_ferry_cai 关于依…...

java设计模式之享元设计模式的前世今生

享元设计模式是什么? 享元设计模式是一种结构型设计模式,它的目的是在大规模重复使用相似对象时提高内存利用率和性能。它通过共享对象的公共部分来减少所需要的内存,从而在系统中同时存在更多的对象。 享元设计模式通过将对象分为可共享的内…...

RESTful:理解REST架构风格、RESTful API

一、REST架构风格 REST(英文Representational State Transfer)是一种基于客户端和服务器的架构风格,用于构建可伸缩、可维护的Web服务。REST的核心思想是,将Web应用程序的功能作为资源来表示,使用统一的标识符&#x…...

网络面试题:什么是 TCP/IP?

目录标题 什么是 TCP/IP?1) 网络接口层:2) 网络层:3) 传输层:4) 应用层: 2.数据包3.网络接口层4.网络层1) IP:2)地址解析协议 ARP3)子网 5 传输层1)UDP:2)TCP: 6 应用层运行在TCP协议上的协议:运行在UDP协议上的协议&…...

毫米波雷达模块在自动驾驶系统中的关键功能

随着自动驾驶技术的快速发展,毫米波雷达模块作为一项关键技术,为自动驾驶系统提供了重要的感知和决策能力。毫米波雷达模块通过实时探测和跟踪周围环境中的车辆、行人和障碍物,提供精确的距离和速度信息,帮助自动驾驶车辆做出准确…...

关于开发中对端口(port)的几点理解

一、服务端的端口是固定的,客户端的端口是随机的 客户端端口是随机的,比如访问百度,系统为浏览器分配了个端口1024。过一会重开电脑,访问了新浪,可能还是用1024端口,我不关浏览器,还要再开一个浏…...

qt 5.14.2 arm 交叉环境搭建过程

主要参考 https://blog.csdn.net/anmo_moan/article/details/126960630 https://blog.csdn.net/a648642694/article/details/89302843 1 下载编译器&设置 1.1 gcc-linaro-12.2.1-2023.01-x86_64_arm-linux-gnueabihf.tar.xz 下载编译器 1.2. /home/zsf/arm linaro 压缩包…...

apt remove purge的区别 删除包的同时删除配置文件

1、apt remove purge的区别 查看 man apt apt remove:删除软件包,不删除配置文件。这么做的目的是将来再次安装这个包时 原来的配置文件会自动加载供使用。也可以避免误删除包,配置文件还在的话,重新安装一次软件包就可以恢复到…...

电商|跨境电商如何选择API接口和ERP

随着跨境电商企业规模升级,平台提供的卖家后台系统往往无法满足有一定规模的店铺和独立站卖家。日常运营中,中大型跨境电商往往面临以下几种挑战: 多店铺、多平台订单管理难 库存数据集成难,经常缺货 物流管理难,手…...

测试人员的启蒙指南

文章目录 一. 了解测试1. 生活中的测试场景2. 什么是软件测试3. 实战练习 二. 软件测试和软件开发的区别三. 软件测试和软件调试的区别四. 软件测试的发展五. 软件测试的岗位六. 一个优秀的软件测试人员具备的素质 本篇中介绍测试人员是干什么的, 起到启蒙和了解的作用, 重点是…...

Linux工具:vim常用快捷键

1、拷贝行(一般模式下) 拷贝当前行 将光标移动到指定行,yy 移动到想要粘贴的行,p 即可把拷贝的行粘贴到该行下方 拷贝n行 将光标移动到指定行,比如拷贝5行,5yy 移动到想要粘贴的行,p 即可把拷贝的几行粘贴到该行下方…...

TA-lib第三方库安装问题

因为学习的需要,用到Talib库做写指标分析,但是百度了好久,说是去要某某网站下载对应版本的文件进行本地安装,但是把…404 Not found 然后通过查找,Ta-lib库的安装已经迁移到这里了 https://github.com/TA-Lib/ta-lib-p…...

接口测试的测试要点

接口测试的测试要点,你知道都有哪些吗? 接口测试是软件测试中的重要组成部分,它的目的是评估接口的质量和可靠性,以保证系统的正常运行。在进行接口测试时,必须要考虑到以下几个方面: 测试用例的编写 测试…...

直流电机 PID 控制系统仿真研究(Simulink实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

第三章 向量与线性方程组

引言 题型总结中推荐例题有蓝皮书的题型较为重要,只有吉米多维奇的题型次之。码字不易,如果这篇文章对您有帮助的话,希望您能点赞、评论、收藏,投币、转发、关注。您的鼓励就是我前进的动力! 知识点思维导图 补充&…...

数组题目总结 -- 花式遍历

目录 一. 反转字符串中的单词思路和代码:I. 博主的做法II. 东哥的做法III. 其他做法1补充知识点: IV. 其他做法2 二. 旋转图像思路和代码:I. 博主的做法II. 东哥的做法 三. 旋转图像(逆时针旋转90)思路和代码&#xff…...

Android 12.0开机过滤部分通知声音(莫名其妙的通知声音)

1.概述 在12.0的开发产品的时候,有时候在开机的时候会有一些通知的声音,但是由于系统模块太多,也搞不清楚到底是哪个模块发出的通知声音,所以就需要从通知的流程来屏蔽这些通知声音 2.开机过滤部分通知声音(莫名其妙的通知声音)核心代码 frameworks/base/core/java/androi…...

LeetCode-0525

102. 二叉树的层序遍历&#xff08;中等&#xff09; 思路&#xff1a;使用hash记录深度 class Solution {public List<List<Integer>> levelOrder(TreeNode root) {if(rootnull)return new ArrayList<>();Map<TreeNode,Integer> deep new HashMap&…...

【Linux 】scp命令

前言 Linux scp 命令用于 Linux 之间复制文件和目录。 scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。 scp 是加密的&#xff0c;rcp 是不加密的&#xff0c;scp 是 rcp 的加强版。 scp命令 前言一、示例1. 从本地复制到远程2. 从…...

Docker部署yolov5

目录 环境下载源码构建Docker镜像运行docker镜像运行目标检测出现partially initialized module cv2 has no attribute _registerMatType错误出现ImportError: libSM.so.6: cannot open shared object file: No such file or directory错误出现AttributeError: Upsample object…...

如何在 Axios 中去控制 Loading?大有学问!

目录 前言 按钮loading 局部loading 全局loading 前言 loading 的展示和取消可以说是每个前端对接口的时候都要关心的一个问题。这篇文章将要帮你解决的就是如何结合axios更加简洁的处理loading展示与取消的逻辑。 首先在我们平时处理业务的时候loading一般分为三种&#x…...

充电桩检测设备厂家TK4860C交流充电桩检定装置

TK4860系列是专门针对现有交流充电桩现场检测过程中接线复杂、负载笨重、现场检测效率低等问题而研制的一系列高效检测仪器&#xff0c;旨在更好的开展充电桩的强制检定工作。 充电桩检测设备是一款在交流充电桩充电过程中实时检测充电电量的标准仪器&#xff0c;仪器以新能源…...

一文3000字实现基于Selenium+Python的web自动化测试框架

一、什么是Selenium&#xff1f; Selenium是一个基于浏览器的自动化测试工具&#xff0c;它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分&#xff1a;Selenium IDE、Selenium WebDriver 和Selenium Grid。 Selenium IDE&#xff1a;Firefo…...

Android 12系统源码_窗口管理(二)WindowManager对窗口的管理过程

前言 上一篇我们具体分析了窗口管理者WindowManagerService的启动流程,对于WindowManagerService有了一个初步的认识。在此基础上,我本打算应该进一步分析WindowManagerService是如何管理系统中的各种窗口的,然而由于Android系统的架构设计,在分析WindowManagerService之前…...

python3.8,torch1.10.2+cu113、torch-geometric 安装

【1】conda create -n name python=3.8 【2】安装 torch 注意先看可适应的最高cuda版本 https://data.pyg.org/whl/ 版本对应 【3】按照顺序安装torch-geometric: torch-sparse、torch-scatter、torch-cluster、 torch-spline-conv \torch-geometric pip install torc…...

堆(heap)、栈(stack)

在程序中&#xff0c;栈和堆是两种非常重要的数据结构。它们都用来存储数据&#xff0c;但是它们的定义略有不同。 栈Stack: 栈是一种线性的数据结构&#xff0c;它以 “后进先出”&#xff08;LIFO&#xff09;的方式存储数据。栈中的内存空间在编译时就已经确定&#xff0c;大…...

企业级API网关之典型应用场景

目 录 01 企业面对API与网关的现状‍‍‍‍‍ 02 APIGW介绍及企业应用场景 03 总结 01 企业面对API与网关的现状‍ 在企业中&#xff0c;进行新的系统/应用/产品开发时&#xff0c;具有周密的流程&#xff1a;从需求分析、设计、开发、测试、发布与验收。所以&#xff0c;一…...

【2023年4月美赛加赛】Z题:The future of Olympics 25页完整论文

【2023年4月美赛加赛】Z题&#xff1a;The future of Olympics 25页完整论文 1 题目 背景 国际奥委会(IOC)正面临着夏季奥运会和冬季奥运会申办数量的减少**[1]**。在过去&#xff0c;举办奥运会的竞争非常激烈&#xff0c;声望也很高。然而&#xff0c;最近&#xff0c;主办…...