计算机网络的发展历程
计算机网络的历史可以追溯到20世纪60年代。那个时候,计算机还非常昂贵,只有少数大型机可以被用于处理重要任务。这些大型机通常被安装在大型企业、政府机构和大学中。由于这些机器非常昂贵,许多企业、机构和大学只能通过终端连接来访问它们。因此,当时的计算机网络主要是为了实现计算机之间的信息交换和资源共享而诞生的。
- 面向批处理的计算机网络(1960-1970年代)
最初的计算机网络是由美国国防部高级研究计划署(ARPA)资助的ARPA网。该网络的目的是在分布式计算环境中实现资源共享,并为防御部门提供通信能力。ARPA网采用分组交换技术,即将数据分成多个数据包进行传输,从而提高了网络的传输效率。
在计算机网络发展的早期阶段,主要面向批处理的应用。这个时期的计算机网络主要用于远程批处理操作,即将一些任务提交给远程计算机进行处理,然后将处理结果返回给本地计算机。这种模式主要适用于需要处理大量数据、需要长时间运行的任务,例如科学计算和数据处理等。
为了支持这种应用模式,当时的计算机网络主要采用点对点的拨号方式进行连接,通信协议使用的是二进制同步通信协议(BSC)或者是传真协议(Fax),传输速率比较低。
- 二进制同步通信协议(Binary Synchronous Communication,BSC):它是一种面向字节的协议,用于在计算机和终端设备之间进行数据通信。BSC协议通过定义控制字符和数据字符的特定序列来进行同步和错误检测,确保数据传输的可靠性和准确性。
BSC协议在当时非常流行,被广泛用于IBM的主机和终端设备之间的通信,以及IBM的分时系统中。虽然现在BSC已经过时,但它为后来的通信协议提供了很好的基础,如后来的SDLC(Synchronous Data Link Control)和HDLC(High-Level Data Link Control)协议。- 传真协议(Fax)是一种用于传输图像或文本的协议,通常用于传真机或计算机之间的通信。传真协议最初是通过电话线路传输黑白图像的,后来也出现了彩色传真。传真协议包括了多个子协议,如调制解调器协议(Modem Protocol)和图像压缩协议(Image Compression Protocol)。传真协议的主要优点是传输速度快、易于使用、传输质量较好,而缺点是传输的文件大小受限制,且需要专门的传真设备进行传输。随着互联网的普及,传真协议的使用逐渐减少,但在某些行业和领域仍然有一定的应用。
然而,在这个时期也出现了一些重要的技术,例如分组交换技术和X.25协议。分组交换技术将数据分成较小的数据包进行传输,可以在多个应用之间共享网络资源。X.25协议是一种广泛使用的计算机网络协议,用于在公共数据网上建立虚拟电路连接,并提供可靠的数据传输服务。X.25协议为后来的计算机网络技术奠定了基础。
- 面向分时操作的计算机网络(1970-1980年代)
20世纪70年代,随着计算机技术的不断发展,出现了更多的计算机网络。最著名的网络之一是Xerox公司的以太网,它采用广播式通信模式,使得许多计算机可以同时共享相同的传输介质。此外,TCP/IP协议也于1970年代被开发出来,它成为互联网的核心协议,并被广泛应用于计算机网络中。面向分时操作的计算机网络是指计算机网络中的各个节点通过时分共享的方式来完成对计算机资源的共享。这种网络模型在1970年代至1980年代非常流行,是早期的计算机网络之一。
在这种网络模型中,各个节点通过时分复用的方式来共享计算机资源,例如 CPU、存储器、打印机等。由于计算机资源的共享需要进行复杂的时间分配和调度,因此这种网络模型需要进行严格的时间同步和调度,以确保计算机资源的有效共享。
为了支持分时操作,这种网络模型还需要具备快速的数据传输和高效的数据交换能力。因此,在这种网络模型中,常常采用高速数据传输和数据交换技术,例如 X.25 协议、ATM(Asynchronous Transfer Mode)技术和分组交换技术等。
- X.25协议:是一种面向分组交换网络的数据链路层协议,提供了可靠的数据传输、流量控制和错误校验等功能,被广泛用于公共数据网络和数据包交换网络。
- ATM技术:是一种基于分组交换的高速数据传输技术,具有高带宽、低时延、低误码率等优点,被广泛用于局域网、城域网和广域网等高速网络中。
- 分组交换技术:是一种将数据分成若干个数据包进行传输的技术,与电路交换技术相比,具有更好的灵活性和可靠性,被广泛用于数据通信和互联网中。
- 面向异构网络的计算机网络(1980-1990年代)
到了20世纪80年代,异构网络是指由不同的计算机、网络设备和操作系统等构成的网络,它们之间存在着协议、数据格式和通信方式等方面的差异。面向异构网络的计算机网络就是为了解决这些差异而设计的。计算机网络技术得到了更加广泛的应用,如局域网、城域网和广域网等。局域网(LAN)是一种覆盖范围较小的网络,通常用于办公室、学校和家庭中,使得计算机之间可以快速共享资源和信息。城域网(MAN)则是一种覆盖范围较大的网络,通常覆盖整个城市或地理位置相邻的几个城市,提供更大的带宽和更高的数据传输速度。广域网(WAN)是一种连接跨越不同地理区域的计算机和网络设备的网络,通常由多个局域网和城域网组成,用于远程通信和资源共享。
在这个时期,TCP/IP协议成为了面向异构网络的标准协议。它允许不同类型的计算机和网络设备之间进行通信,而不必考虑它们的硬件、操作系统和软件等方面的差异。同时,为了支持异构网络,还出现了一些新的技术,例如SNMP(Simple Network Management Protocol)、RIP(Routing Information Protocol)和OSPF(Open Shortest Path First)等。
- 简单网络管理协议(SNMP)是一种用于管理和监控网络设备的协议,它可以获取和修改网络设备的状态信息,如流量、错误和连接等。
SNMP协议有三个主要的组成部分:
— 管理站(Management Station):管理站是指用于管理和监视网络设备的计算机或软件系统.
— 代理(Agent):代理是指运行在被管理设备上的软件,它负责收集设备的状态信息并将其提供给管理站.
— MIB(Management Information Base):MIB则是管理站和代理之间共享的数据库,用于存储设备的状态信息和配置参数等。- 路由信息协议(RIP):是一种用于路由选择的动态路由协议,最初于20世纪80年代出现。RIP协议使用距离向量算法(Distance Vector Algorithm)来计算到达目的网络的最短路径,并使用基于距离的度量(如跳数)来衡量距离。RIP协议会将其路由表中的路由信息周期性地广播给相邻路由器,同时也会接收和处理来自相邻路由器的路由信息,以更新本地路由表。RIP协议通常用于中小型企业或组织内的内部网络,而在大型网络中,则通常使用OSPF等更为先进的协议来实现路由选择。
- 开放式最短路径优先(OSPF):是一种用于路由选择的内部网关协议(IGP)。它是一种链路状态协议,用于计算网络拓扑并选择最短路径。相比于RIP等距离向量协议,OSPF可以更好地处理大型网络的路由选择,并且支持更高的可扩展性和更快的收敛时间。OSPF通过交换链路状态更新信息来维护网络拓扑,并使用Dijkstra算法计算最短路径。同时,OSPF还提供了一些高级功能,例如路由聚合和路由汇总,以进一步优化网络性能。
另外,由于面向异构网络的计算机网络涉及到不同的计算机和网络设备之间的通信,因此网络管理和安全等方面的问题也变得更加重要。为了解决这些问题,出现了许多新的网络管理和安全技术,如远程管理、身份验证、防火墙和加密等技术。这些技术为异构网络的安全和管理提供了更好的支持,促进了计算机网络的发展。
- 面向万维网的计算机网络(1990年代至今)
20世纪90年代,随着万维网的诞生,计算机网络进入了一个全新的发展阶段。这个时期的计算机网络主要面向分布式计算、信息检索、电子商务等应用,同时也诞生了一些新的协议和技术,例如HTTP、HTML、XML和Web服务等。
HTTP(Hypertext Transfer Protocol)是一种应用层协议,用于在Web浏览器和Web服务器之间传输数据。它使用TCP作为传输协议,可以支持不同的数据类型(如HTML、图片、音频和视频等)。
HTML(Hypertext Markup Language)是一种用于创建Web页面的标记语言。它可以描述文本、图像、链接和其他元素的外观和行为。HTML使用标签和属性来定义元素,浏览器可以使用这些定义来解释和显示页面内容。
XML(Extensible Markup Language)是一种与HTML类似的标记语言,但它的主要目的是在Web应用程序和Web服务之间传输数据。XML可以描述和组织数据,从而使其易于在不同的计算机和应用程序之间共享和处理。
Web服务是一种基于Web技术的分布式应用程序架构,它使用XML、SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language)等协议来支持应用程序之间的通信。Web服务允许不同的应用程序在Internet上相互通信,并共享数据和服务。
除了HTTP、HTML、XML和Web服务等技术,20世纪90年代还出现了其他一些重要的计算机网络技术,如SSL(Secure Sockets Layer)和TLS(Transport Layer Security)协议、VPN(Virtual Private Network)技术和P2P(Peer-to-Peer)网络等。这些技术为计算机网络的安全、隐私和效率等方面提供了更好的支持,同时也为计算机网络的发展开辟了新的方向和前景。
- SSL最初由网景公司开发,现在已经被TLS协议所取代。TLS协议和SSL类似,但是更加安全,使用更强的加密算法,可以保护通信双方之间的数据安全性和完整性。
- VPN技术则是通过在公共网络上创建一条虚拟的专用网络,实现对数据传输的加密和隧道技术,以达到保护数据安全和隐私的目的。它可以通过使用加密技术来确保通信安全,同时也可以用于绕过网络审查和限制,保护用户的隐私和匿名性。
- P2P网络则是一种分布式的网络模型,它没有中央服务器来管理网络和资源,而是由网络中的所有节点相互连接并共享资源。每个节点都可以充当服务器和客户端,可以分享和获取其他节点的资源,如文件、音乐、视频等。这种网络模型的优点在于它的可扩展性和可靠性,它可以快速传输大量的数据,而且不需要过多的网络资源。P2P网络广泛应用于文件共享、流媒体传输、在线游戏等领域。
总的来说,随着时间的推移,计算机网络技术得到了不断的发展和完善,从最初的分组交换网到现代的云计算和物联网技术,计算机网络的应用范围和形态也在不断扩大和变化。
相关文章:
计算机网络的发展历程
计算机网络的历史可以追溯到20世纪60年代。那个时候,计算机还非常昂贵,只有少数大型机可以被用于处理重要任务。这些大型机通常被安装在大型企业、政府机构和大学中。由于这些机器非常昂贵,许多企业、机构和大学只能通过终端连接来访问它们。…...

【华为OD机试模拟题】用 C++ 实现 - 不含 101 的数(2023.Q1)
最近更新的博客 华为OD机试 - 入栈出栈(C++) | 附带编码思路 【2023】 华为OD机试 - 箱子之形摆放(C++) | 附带编码思路 【2023】 华为OD机试 - 简易内存池 2(C++) | 附带编码思路 【2023】 华为OD机试 - 第 N 个排列(C++) | 附带编码思路 【2023】 华为OD机试 - 考古…...
面试题-下单后位置信息上报的方案
面试题:外卖下单后每10min上报位置事件的具体实现方案。需要考虑哪些点。存储方案:考虑到数据量很大,需要快速响应查询请求,建议使用分布式存储方案,如 HBase、MongoDB 等。这些分布式存储系统可以水平扩展,…...

视觉人培训团队把它称之为,工业领域人类最伟大的软件创造,它的名字叫Halcon
目前为止,世界上综合能力强大的机器视觉软件,,它的名字叫Halcon。 视觉人培训团队把它称之为,工业领域人类最伟大的软件创造,它的名字叫Halcon。 持续不断更新最新的图像技术,软件综合能力持续提升。 综…...

干了2年的手工点点点,感觉每天浑浑噩噩,我的自动化测试之路...
作为一个测试人员,从业年期从事手工测试的工作是没有太多坏处的,当然,如果一直点来点去那么确实自身得不到提高,这时候选择学习自动化测试是一件很有必要的事情,一来将自己从繁重的重复工作中解放出来,从事…...

嵌入式系统硬件设计与实践(学习方法)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 刚读书的时候,对什么是嵌入式,其实并不太清楚。等到自己知道的时候,已经毕业很多年了。另外对于计算机毕业的学…...

如何拥有自己的Gitee代码仓库
本教程适用码云代码托管平台 https://gitee.com/ 首先在电脑上安装Git(哔站有安装Git教程)和注册gitee账号后再来阅读此教程 1、在设置页面中点击 SSH公钥 2、点击 怎样生成公钥 3、点击公钥管理 4、点击 生成\添加SSH公钥 5、打开终端 输入如图红框中的…...

通用信息抽取技术UIE产业案例解析,Prompt 范式落地经验分享!
想了解用户的评价究竟是“真心夸赞”还是“阴阳怪气”?想快速从多角色多事件的繁杂信息中剥茧抽丝提取核心内容?想通过聚合相似事件准确地归纳出特征标签?……想了解UIE技术在产业中的实战落地经验?通用信息抽取技术 UIE 产业案例…...

integrationobjects/OPC AE Client ActiveX Crack
使用 OPC AE 客户端 ActiveX 进行快速 OPC 警报和事件客户端编程! OPC AE Client ActiveX包括多个 OPC ActiveX 控件,可以轻松嵌入到最流行的 OLE 容器中。这允许用户与任何 OPC AE 服务器连接并实时检索警报和事件。 这种易于使用的 OPC AE ActiveX 简化…...

JavaScript HTML DOM 简介
文章目录JavaScript HTML DOM 简介HTML DOM (文档对象模型)HTML DOM 树查找 HTML 元素通过 id 查找 HTML 元素通过标签名查找 HTML 元素通过类名找到 HTML 元素下面我们将学到如下内容JavaScript HTML DOM 简介 通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素…...

interrupt多线程设计模式
1. 两阶段终止-interrupt Two Phase Termination 在一个线程T1中如何“优雅”终止线程T2?这里的【优雅】指的是给T2一个料理后事的机会。 错误思路 ● 使用线程对象的stop()方法停止线程(强制杀死) —— stop()方法…...

Spring IoC 和 Spring AOP
Spring IoC Ioc(Inversion of control:即控制反转)是一种设计思想,而不是一种具体的技术实现。IoC的思想就是将原本在程序中手动创建对象的控制权交给Spring框架来管理。 不过, IoC 并非 Spring 特有,在其…...

taobao.top.oaid.merge( OAID订单合并 )
¥开放平台免费API必须用户授权 基于OAID(收件人ID, Open Addressee ID)做订单合并,确保相同收件人信息的订单合并到相同组。 公共参数 请求地址: HTTP地址 http://gw.api.taobao.com/router/rest 公共请求参数: 公共响应参数: 请…...

Python自动获取海量ip,再也不用愁被封啦~
前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 本次网站: 本文所有模块\环境\源码\教程皆可点击文章下方名片获取此处跳转 开发环境: python 3.8 运行代码 pycharm 2022.3 辅助敲代码 模块使用: import parsel >>> pip install parsel…...
XLua学习笔记 { }
Lua调用C# 通过生成的适配代码进行调用 把在白名单上和打上[LuaCallCSharp]标签的C#类转换成Lua的table,然后注册C#类的方法和属性到table中。性能好,但占用安装包的内存大 通过反射机制进行调用 性能差,在运行的时候才去查找C#的方法&#…...
推荐程序员收藏的几个技术社区以及工具网站
常用技术社区 1、GitHub 网站地址:https://github.com/ 全球最大的开源社区,这点我想大家都清楚。但是今年被微软收购,之前很多的人在那说可能以后GitHub就会变样,但是事实并非如此,目前还没有收到什么信息,…...

StopWatch计时器
前言 开发中,为了评估性能,我们通常会使用System.currentTimeMillis() 去计算程序运行耗时 long startTimeSystem.currentTimeMillis();//业务代码... long endTimeSystem.currentTimeMillis(); System.out.println("耗时:" (endTime-startT…...

常见web安全漏洞-暴力破解,xss,SQL注入,csrf
1,暴力破解 原理: 使用大量的认证信息在认证接口进行登录认证,知道正确为止。为提高效率一般使用带有字典的工具自动化操作 基于表单的暴力破解 --- 若用户没有安全认证,直接进行抓包破解。 验证码绕过 on server ---验证码校验在…...
11个案例讲透 Python 函数参数
大家好,今天给大家分享一下明哥整理的一篇 Python 参数的内容,内容非常的干,全文通过案例的形式来理解知识点,自认为比网上 80% 的文章讲的都要明白,如果你是入门不久的 python 新手,相信本篇文章应该对你会…...

《分布式技术原理与算法解析》学习笔记Day21
分布式数据存储三要素 什么是分布式数据存储系统? 分布式存储系统的核心逻辑,就是将用户需要存储的数据根据某种规则存储到不同的机器上,当用户想要获取指定数据时,再按照规则到存储数据的机器中获取。 分布式存储系统的三要素…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...

IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...

Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...