Linux网络:初识网络

文章目录

      • 1. 网络发展
        • 1.1 独立模式
        • 1.2 网络互联
        • 1.3 局域网LAN
        • 1.4 广域网WAN
      • 2. 认识 “协议”
        • 2.1 什么是协议?
        • 2.2 为什么要有协议?
        • 2.3 深入了解协议

  • 序:开网络之篇章,建网络之基础,将近2月过去,暑假期间不曾有按时更新,所以,现在开学了,当有新气象,新态度,从今日起恢复更新,今天让我们来走进Linux下的网络世界,去探寻网络中原理与逻辑!!!

1. 网络发展

1.1 独立模式

独立模式:计算机之间相互独立
在这里插入图片描述

例如:a,b,c三个程序员每个人敢不同的事务,只有当a程序员处理完数据,然后拿着这个数据给(物理传递)b程序员,b程序员才能处理数据,而c程序员也是需要b程序员将处理好的数据拿给c程序员才能进行他的工作,这样的模式就叫做独立模式

1.2 网络互联

网络互联:多台计算机连接在一起, 完成数据共享
在这里插入图片描述

单例模式这样的信息传递效率显然是不高效的,页必然被取代,所以将多台电脑连接在一起来实现数据的共享和交互是历史的必然!!!这时候,数据就被放在了一个公共的服务器上,当与该服务器连接的计算机需要对应的数据时,直接从服务器上获取就行了!!!(计算机互联的雏形)

1.3 局域网LAN

局域网LAN:计算机数量更多了, 通过交换机和路由器连接在一起
在这里插入图片描述

上述的网络互联只能在一定范围内进行互联,但如果我们要进行远距离数据的共享呢?如果说网络互联是实现了一个公司或者工作室内部的数据共享,那如何让工作室和工作室之间,公司与公司之间进行数据的共享呢?而为了能够实现远距离的数据传输,我们就需要知道向哪台机器发送数据,所以ip地址,mac地址也就出现了,又由于数据的传输是有衰减的,所以交换机、路由器等硬件设备就孕育而生,从而实现了数据的远距离传输。

1.4 广域网WAN

广域网WAN:将远隔千里的计算机都连在一起
在这里插入图片描述

所谓 “局域网” 和 “广域网” 只是一个相对的概念.。比如, 我们有 “天朝特色” 的广域网, 也可以看做一个比较大的局域网

2. 认识 “协议”

2.1 什么是协议?

协议是一种约定,计算机之间的传输媒介是光信号和电信号. 通过 “频率” 和 “强弱” 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式,而这样的数据格式就是协议,而且不同的场景,协议的内容也会有区别!!!比如翻译摩斯密码,不同的密码的翻译规则是不同的!!!

2.2 为什么要有协议?

当我们将数据进行远距离传输时,可能会遇到一下4个问题:

1、如何处理发来的数据
2、长距离传输的丢失问题
3、如何定位主机的问题
4、怎么保证数据能够准确的到达下一个设备

在这里插入图片描述

那么问题来了,在日常生活中,我们都会有购物的习惯,我们只管我们拿到货物后怎么去使用,而不会去管货物是怎样送过来的!!!所以计算机也是这样,不同的层次只关心自己需要关心,而且这样的问题是双方的,接收端和发送端都会有这样的问题,在双方的机器上,每一层都要把自己层的问题解决,所以每一层都要设置自己的协议!!!各自解决各自当前层的问题,像上面的四个问题中,应用层只关心第一个问题(应用问题),第二个问题是由传输层来解决的,比如说tcp协议,udp协议等,第三个问题就是由网络层用ip协议来解决的,这也就是我们熟悉的ip地址了,第四个问题就是由数据链路层来解决的,该层的协议种有各种各样的字段来表示发送对象的精确信息(如mac地址)

网络的传输的问题本质上就是远距离传输的问题!!!

2.3 深入了解协议

在日常生活中,我们都会要购物,而购物就会有快递发给我们,快递发给我们,不是直接发一个物品而是用一个快递盒将物品包裹,并且快递包裹上面还会有一个快递单,这个快递单就是用来识别信息的,里面有收件方的信息,寄件方的信息,物品内容…,而这些信息就相当于网络传输当中的协议,每一个快递都有对应的快递单,而类似于这样的快递单在网络的传输当中就叫做报头!!!

在这里插入图片描述

我们知道网络的传输是分层的,每一层都有不同的协议,而每个协议都有对应的报头,一个报头中有很多数据要来管理,而在早期的网络的底层代码当中是用c语言来实现的,我们怎么用代码来管理报头的数据呢?答案就是使用结构体来管理!!!,而这样结构体加上去所要传输的数据一起就叫做报文!!!

总的来说:协议是双方的约定,其最终的表现形式是结构体对象

总结:

今天我们并未对网络的知识进行学习,但这篇文章却是学习网络的基础,在这个基础上,有了对网络的发展的认识,有了对协议,报头,报文的概念的了解,在未来的网络的文章中,我们对网络的学习就会事半功倍!!!

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

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

相关文章

文件检查与拷贝-简化版

本篇继续来学习shell脚本,对上一篇的文件检查与拷贝脚本进行简化修改。 1 功能说明 在Linux系统中,通过一个shell脚本,实现将一个目录中的所有文件(包括子目录中的),拷贝到顶一个指定的目录,要求…

DCA1000 AWR1843 环境安装

mmWaveStudio GUI设计用于表征和评估TI Radar器械。mmWaveStudio通过SPI向mmWave设备发送命令来配置和控制mmWave设备。使用DCA 1000 EVM或TSW 1400 EVM板捕获ADC数据,并在Matlab中处理数据,结果显示在GUI中。mmWaveStudio GUI利用C DLL和一组API通过FTD…

机器学习实操项目01——Numpy入门(基本操作、数组形状操作、复制与试图、多种索引技巧、线性代数)

上一章:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备 下一章: 机器学习核心知识点目录:机器学习核心知识点目录 机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目…

【vscode】如何离线下载vsxi插件,且在无网环境下离线安装插件-2026最新实验教程

文章目录插件市场也可以从APP进入无网环境下安装插件插件市场 https://marketplace.visualstudio.com/vscode 也可以从APP进入 这里以下载python插件为例 选择版本 无网环境下安装插件

vue2 侦听器watch

一、watch 核心作用监测数据变化:当被监听的数据发生改变时,自动执行指定的处理函数处理副作用:适合执行异步操作(如接口请求)、复杂逻辑处理等 “副作用” 代码二、基础语法(3 种写法)简单写法…

今天继续学习Linux系统中shell脚本

首先继续上次的内容看一下另一个案例案例:持续检查服务器负载uptime查看负载情况(也可以用top命令)[rootlocalhost ~]# uptime22:11:26 up 7:05, 3 users, load average: 0.00, 0.00, 0.00#!/bin/bash #Function:持续检查服务器负载,如果负…

Win系统下配置PCL库第一步之下载Visual Studio和Qt 5.15.2(超详细)

之前在上篇文章Win系统下配置PCL库_windows pcl库 下载-CSDN博客中提到配置PCL库的教程是下载Visual Studio和Qt 5.15.2,后续在测试中我发现前面这两步很重要,一般Qt在线下载器选项选不好的话Qt是装的Qt6,在VTK编译的时候Qt6往往需要C17编译&…

openCV3.0 C++ 学习笔记补充(自用 代码+注释)---持续更新 四(91-)

环境:OpenCV3.2.0 VS201791、合并Y方向重叠的轮廓以轮廓的最小垂直外接矩形框的y为依据,合并y重叠的轮廓。数学逻辑:几何合并的数学表达坐标系统:假设矩形由左上角坐标(x, y)和宽高(width, height)定义。合并公式:合并…

numpy数组的升维和降维的方法集锦

为适配计算包对numpy数组的维度要求,对numpy数组进行升维或降维转化,是非常常见的操作。这里尝试通过多种方式对numpy数组进行升维或降维。1 数组升维1.1 np.expand_dims在0维升维,示例如下a np.array([1,2,3,4,5]) np.expand_dims(a, axis0…

介绍 Python Elasticsearch Client 的 ES|QL 查询构建器

作者:来自 Elastic Miguel Grinberg 学习如何使用 ES|QL 查询构建器,这是一个新的 Python Elasticsearch client 功能,可以更轻松地使用熟悉的 Python 语法构建 ES|QL 查询。 想要获得 Elastic 认证吗?快来了解下一期 Elasticsear…

三坐标测量仪:高精度测量内径检测手段及其实际运用

在工业制造领域中,内径尺寸的精准度直接关系到产品的装配性能、运行稳定性乃至使用寿命。传统检测方法如卡尺、内径千分尺等难以满足高精度、复杂结构件的需求。三坐标测量仪技术的出现,打破了这一困境,成为当前工业领域实现高精度内径检测的…

DIPMARK:一种隐蔽、高效且具备鲁棒性的大语言模型水印技术

摘要水印技术为通过在数据中嵌入隐蔽信息来保障数据安全提供了一种很有前景的方法。该领域的一个首要挑战在于,在水印嵌入过程中保持原始数据的分布。我们的研究拓展并优化了现有的水印框架,着重强调了保持分布(DiP)水印的重要性。…

IMU传感器价格与高精度惯性导航系统供应商分析

本段将对IMU传感器价格及高精度惯性导航系统的市场情况进行概览。IMU传感器作为惯性导航的重要组成部分,其价格水平受到技术、需求和供应商竞争等多重因素的影响。随着无人机、自动驾驶车辆等新兴应用场景的兴起,IMU传感器的市场需求逐渐攀升。这不仅带动…

3-9〔OSCP ◈ 研记〕❘ WEB应用攻击▸利用REST API提权

郑重声明: 本文所有安全知识与技术,仅用于探讨、研究及学习,严禁用于违反国家法律法规的非法活动。对于因不当使用相关内容造成的任何损失或法律责任,本人不承担任何责任。 如需转载,请注明出处且不得用于商业盈利。 …

UE5 基础应用 —— 07 - 角色蓝图 简单使用

目录 一、角色蓝图 1.1 Pawn / Character 1.2 角色基类 1.3 角色基类设置 1.3.1 基础设置 1.3.2 角色移动和相机旋转 1.3.3 角色移动 —— 锁定视角 1.3.4 角色跳跃 1.4 角色派生类设置 1.4.1 添加动画蓝图 一、角色蓝图 1.1 Pawn / Character Pawn / Character 有什…

流畅的Python(二) 丰富的序列

流畅的Python 第二章:丰富的序列 摘要:在日常Python开发中,我们频繁与各种数据结构打交道,其中序列类型(如列表、元组、字符串)是基石。然而,你是否曾因对它们理解不深,而在性能优化…

嵌入式 - ARM6

一、按键1. 初始化key.c手册C32 - IOMUXC1. 复用功能配置IOMUXC_SW_MUX_CTL_PAD_UART1_CTS_B: 低四位(0101) IOMUXC_SetPinMux(IOMUXC_UART1_CTS_B_GPIO1_IO18, 0);SION(信号监控)1: 0 //0 DISABLED — Input Path is determined by functionality MUX_…

菊水PBZ电源在蓄电池充放电测试中的应用探讨

通过高速双极性电源PBZ系列进行蓄电池恒流,恒压充电的方法 对于仪器厂商来说,要求“请按照使用说明书使用”是产品的使用方针,或者说是正确用法。但是,作为具有代表性的通用产品,直流电源的实际使用方法可谓五花八门&…

Zephyr嵌入式实时操作系统安装配置

Zephyr简介 Zephyr 是一款由 Linux 基金会 托管的开源实时操作系统(RTOS),专为资源受限的嵌入式设备(从微控制器到小型边缘计算节点)设计,广泛应用于物联网(IoT)、工业自动化、消费电子、医疗设备、汽车电子等领域。其核心优势在于轻量级、高可配置性和对多架构硬件的广…

Linux系统 SELinux 安全管理与故障排查

一、SELinux 安全上下文管理1. SELinux 简介SELinux(Security-Enhanced Linux)是 Linux 内核的强制访问控制(MAC)安全子系统,通过基于标签的访问控制实现细粒度权限管理,遵循最小权限原则。SELinux 有三种工…