初识计算机网络 | 计算机网络的发展 | 协议初识

1.计算机网络的发展

“矛盾是普遍存在的,矛盾是事物联系的实质内容和事物发展的根本动力!”

计算机在诞生之初,在军事上用来计算导弹的弹道轨迹!在发展的过程中(商业的推动,国家政策推动),计算机的应用场景被发现!被应用于各种各样的场景当中!

现在,个人计算机、笔记本电脑、手机终端等便携设备持有的人群越来越多,甚至外观上一点也不像电脑的家用电器、汽车等设备中,一般都内置一个小型的芯片,使这些设备具有计算机的控制功能,不经意间,我们的生活和计算机紧密相连!在这些计算机设备,大多数都有联网功能

1.1.从独立模式都网络互连模式

独立模式:计算机之间相互独立。

在这里插入图片描述

现在有三个人,需要用在三台电脑处理业务,张三需要用这三台计算机,那么李四要等张三处理完他才能用;王五也需要,那么他要等待,张三和李四处理完业务!另外张三在处理不同的业务需要跑到不同的电脑之前!很麻烦,而且效率很低!

网络互联:多台计算机连接在一起, 完成数据共享。

在计算机不断地发展当中,人们不局限于单机模式,将一个个计算机连接在一起形成计算机网络,相连的多台计算机之间信息可以共享!同时,在相隔很远的计算机之间也可以即时传递信息。

在这里插入图片描述

局域网LAN:

计算机网络的发展从单机模式,到特定的几台计算机的相连发展成"小"规模的局域网(LAN Local Area Network),和"更大"规模的广域网(WAN Wide Area Network)

随着相连的计算机增多,通过交换机和路由器连接在一起,形成LAN。

在这里插入图片描述

广域网WAN:将远隔千里的计算机相连(将一个一个局域网相连,随着连接的数量增多,距离变长,会变复杂!

在这里插入图片描述

其中局域网和广域网是一对相对的概念;局域网可以是一个公司的网络,那么广域网是多个公司相连形成的网络,有其他的说法还会有城域网,概念只是在表述的时候能划分区域和连接网络的规模的大小。

在同一个公司,同一个学校、同一个实验室持有的计算机相连,形成了私有的网络,在不断的发展当中,将不同的私有网络连接成更大的私有网络,慢慢演化成互联网被公众使用等等,从计算机通信到信息通信不断发展。

2.网络协议初识
2.1.协议如同人和人对话

在计算机网络中,有人会经常提及"协议"一词,如:IP、TCP、HTTP等协议;在计算机中,简单来说,协议(在C语言层面上就是一个struct结构体)就是:计算机与计算机之间通过网络实现通信时,事先达成的一种"约定"!不同的厂家的设备、不同的操作系统,必须遵循相同的协议才能通信!

在我们生活当中,如两个人聊天,我们不知不觉就遵循了某种协议:**将聊天使用的语言当成协议,聊天本身就是通信,聊天的内容当成数据!**只有使用双方都能听得懂的语言,才能畅通无阻的交流!

在这里插入图片描述

关于为什么我说"最近可好"你能听懂的原因,汉字本身就是符号,而符号的意义是人赋予的,之所以"最近可好"是"最近可好"的意思!但如果,对一个刚出生的婴儿所这句话的时候他不能听懂,说明,需要学习!计算机通过特定的光电信号, 通过"频率" 和 “强弱” 来表示 0 和 1 这样的信息,这是人赋予特定的含义!计算机硬件设备也要有特定的最基本的通信程序来分析识别。

2.2.协议分层

在这里插入图片描述

我们通过电话的,进行聊天,在逻辑上认为是两个人在直接聊天,到实际上A说的话通过电话机,在通过一定的设备,在通过电话机,就信息传递到C。

将这样的场景,分为两层,两层之间没有太大的关系,A和C用汉语,B和C用英语聊天都可以通过电话机,也可以通过无线电。这让做分层的好处在于,如果一层改变协议其他层就需要改变,降低耦合;另外分层能将复杂的项目简单化。

在面向对象中,通过继承和多态的方式可以,达到分层的效果,注意分层不一定是上下的关系,还可能是左右的关系。

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

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

相关文章

ChatGLM论文解读

GLM GLM: General Language Model Pretraining with Autoregressive Blank Infilling 论文地址 1. 背景介绍 1)主流预训练框架 模型介绍结构特点训练目标autoregressive自回归模型,代表GPT,本质上是一个从左到右的语言模型,常用于无条件生成任务(unconditional generat…

composer安装hyperf后,nginx配置hyperf

背景 引入hyperf项目用作微服务,使用composer 安装hyperf后,对hyperf进行nginx配置。 配置步骤 因为hyperf监听的是端口,不像其他laravel、lumen直接指向文件即可。所有要监听端口号。 1 配置nginx server {listen 80;//http&#xff1a…

如何使用宝塔面板配置Nginx反向代理WebSocket(wss)

本章教程,主要介绍一下在宝塔面板中如何配置websocket wss的具体过程。 目录 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 2、代理配置内容 三、注意事项 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 map $http_upgrade $connection_…

【算法Hot100系列】不同路径

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

LIMS源码,实验室信息系统源码,后端框架:asp.net

LIMS(laboratory information management system)即实验室信息管理系统是实验室管理科学发展的成果,是实验室管理科学与现代信息技术结合的产物,是利用计算机网络技术、数据存储技术、快速数据处理技术等,对实验室进行全方位管理的计算机软件…

【Linux】糟糕,是心动的感觉——与Linux的初次相遇

初识Linux 导言一、计算机的发展1.1 历史背景1.2 计算机的发明 二、操作系统2.1 什么是操作系统?2.2 操作系统的诞生2.3 操作系统的发展2.3.1 批处理系统的发展2.3.2 分时系统2.3.3 实时系统2.3.4 通用操作系统 2.4 UNIX操作系统2.4.1 UNIX的诞生2.4.2 UNIX的发展 2…

开源 C/C++(DuckX)操作docx文旦

目录 1.详情 2.项目示例 1.详情 创建、读取和写入 Microsoft Office Word docx 文件,可以不使用Microsoft Office组件。目前看操作docx文件绕不开Microsoft Office组件,虽然本项目可以读取docx文档,但是里面排版都消失了,除此之…

BP神经网络需要像深度学习一次次的迭代训练吗?

BP神经网络 答案:是的,BP神经网络需要像深度学习一次次的迭代训练。总结(BP神经网络和深度学习在本质上有以下区别) 答案:是的,BP神经网络需要像深度学习一次次的迭代训练。 BP神经网络(误差反…

2024.1.24 GNSS 学习笔记

1.伪距观测值公式 2.载波相位观测值公式 3.单点定位技术(Single Point Positionin, SPP) 仅使用伪距观测值&#xff0c;不使用其他的辅助信息获得ECEF框架下绝对定位技术。 使用广播星历的轨钟进行定位&#xff0c;考虑到轨钟的米级精度&#xff0c;所以对于<1米的误差&…

Linux:gcc的相关知识

目录 gcc的翻译&#xff08;编译&#xff09;过程&#xff1a; 预处理&#xff1a; 条件编译&#xff1a; 编译&#xff1a; 汇编&链接&#xff1a; 什么是链接&#xff1f; 安装静态库&#xff1a; 静态库的使用&#xff1a; 动态静态的对比&#xff1a; 优缺对比…

IDEA插件(MyBatis Log Free)

引言 在Java开发中&#xff0c;MyBatis 是一款广泛使用的持久层框架&#xff0c;它简化了SQL映射并提供了强大的数据访问能力。为了更好地调试和优化MyBatis应用中的SQL语句执行&#xff0c;一款名为 MyBatis Log Free 的 IntelliJ IDEA 插件应运而生。这款插件旨在帮助开发者…

Oracle、MySQL数据库常规命令语法-简易记录(非常规持续更新)

前言:呈现的是非常基础必备命令以及常规关联语法,因涉及到不同数据库其表达都会有所区别,此篇纯属做个仓库记录更非常规持续更新,专业人士可忽略,且看且珍惜… MySQL: 关系型数据库、重点开源、支持大型规模、标准SQL数据语言、多平台多架构、高可用集群、可定制开发等等、…

Spring Cloud+SkyWalking全链路监控部署及使用分享

先了解 SkyWalking 极简入门 | Apache SkyWalking 版本&#xff1a;apache-skywalking-apm-9.7.0.tar.gz OAP服务和UI服务 apache-skywalking-java-agent-9.1.0.tgz JAVA-AGENT服务 环境&#xff1a;linux 项目&#xff1a;spring cloud 记录下碰到的问题&#xff1a; 1、s…

阿赵UE学习笔记——12、植物系统

阿赵UE学习笔记目录 大家好&#xff0c;我是阿赵。   继续学习虚幻引擎的用法。这次需要使用植物系统在地形上添加一些草和石头的装饰。 一、素材准备 之前介绍过&#xff0c;可以在Quixel上面获取免费的资源&#xff0c;所以我这里就下载了一些资源&#xff0c;有草和石头的…

windbg:设置断点 bp, bu, bm

bp、bu和bm命令设置一个或多个软件断点。您可以组合位置、条件和选项来设置不同类型的软件断点。 本文中的调试代码示例如下&#xff1a; #include <iostream>using namespace std;struct JKGirl{std::string name;int age;friend ostream& operator <<(ostr…

一文分清:Less、Sass、Scss、stylus,看看与css的对比

一、什么是css预处理器&#xff0c;有什么作用 CSS 预处理器是一种将预先定义的语法和功能添加到 CSS 中的工具。它们允许开发人员使用变量、嵌套规则、混合、继承等功能&#xff0c;以更高效和可维护的方式编写样式表。 CSS 预处理器的作用包括&#xff1a; 变量和计算&…

php项目中laravel框架下用postman调用接口实战总结

一.项目接口实战总结: 1.传参赋值错乱问题&#xff0c;如下&#xff1a; SQLSTATE[HY093]: Invalid parameter number (SQL: select count(*) as aggregate from cars where company_id 3345 and status ! 7 and user_id in (2148, 2060, 2061, 2432, 2136, 1970, 1987, 202…

【unity实战】实现实体子弹射击

文章目录 射击脚本新增子弹预制体子弹挂载脚本&#xff0c;实现触碰销毁子弹添加拖尾效果完结 射击脚本 public class Weapon : MonoBehaviour {public GameObject bulletPrefab; // 子弹预制体public Transform bulletSpawn; // 子弹生成位置public float bulletVelocity 30…

重构改善既有代码的设计-学习(三):重新组织数据

1、拆分变量&#xff08;Split Variable&#xff09; 有些变量用于保存一段冗长代码的运算结果&#xff0c;以便稍后使用。这种变量应该只被赋值一次。 如果它们被赋值超过一次&#xff0c;就意味它们在函数中承担了一个以上的责任。如果变量承担多个责任&#xff0c;它就应该被…

mac 修改flutter sdk配置

问题描述&#xff1a;我mac电脑上有高低2个版本的flutter sdk&#xff0c;我需要低版本sdk的项目在setting里设置了sdk版本&#xff0c;可是命令行还是提示我版本过高。 直接上解决办法&#xff1a; 打开mac终端&#xff0c;输入open -e .bash_profile&#xff0c;然后修改下…