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

【计算机网络】计算机网络的定义和分类

🚩本文已收录至专栏:计算机网络学习之旅

一.定义

计算机网络并没有一个精确和统一的定义,在计算机网络发展的不同阶段,人们对计算机网络给出了不同的定义,这些定义反映了当时计算机网络技术的发展水平。

例如计算机网络早期的一个最简单定义:计算机网络是一些互连的、自治的计算机集合

  • 互连:计算机之间可以通过有线或无线的方式进行数据通信。

  • 自治:有自己硬件和软件可以独立运行的计算机。

  • 计算机的集合:至少两台以上计算机。
    在这里插入图片描述

现阶段计算机网络的一个较好的定义:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。

  • 可编程的硬件:计算机网络所连接的硬件不限于计算机,而是包括了智能手机、具有网络功能的传感器以及智能家电等智能硬件,这些硬件一定包含有中央处理单元(CPU)。
  • 各类应用:计算机网络并非只用来传送数据,而是能够基于数据传送进而实现各种各样的应用,包括今后可能出现的各种应用。

二.分类

可以从不同的角度对计算机网络进行分类,例如交换方式、使用者、传输介质、覆盖范围、拓扑结构

(1) 交换方式

按交换方式可以分为电路交换、报文交换、分组交换

(1.1) 电路交换

在早期专为电话通信服务的电信网络中,需要使用很多相互连接起来的电话交换机来完成全网的交换任务,电话交换机接通电话线的方式就是电路交换

使用电路交换进行通信需要经历建立连接、通话、释放连接三个步骤

建立连接:在使用电路交换打电话之前,主叫方必须先进行拨号以请求建立连接,当被叫方听到电话交换机送来的振铃音并接听后,从主叫方到被叫方之间就建立了一条专用的物理通路。这条连接为通话双方提供了通信资源。

通话:主叫方和被叫方可以基于已建立的连接进行通话,在整个通话期间,通话双方始终占用着连接。该物理通路的通信资源不会被其他用户再占用。

释放连接:通话完毕挂机后,将释放从主叫方到被叫方之间的物理通路。

在这里插入图片描述

计算机之间的交换方式适合采用电路交换吗?

通常我们的计算机都运行着即时通信工具,例如QQ、微信。为了能够随时接收和发送消息,我们会让其一直处于上线状态,如果使用电路交换,这将导致长时间占用物理通路而不使用进而浪费通信资源

通常情况下,计算机之间的数据传送是突发式的,由于电路交换会一直占用连接,当使用电路交换来传送计算机数据时,其线路的传输效率一般都会很低,线路上真正用来传送数据的时间往往不到10%甚至1%,因此计算机网络通常采用分组交换。

(1.2) 分组交换

假设主机H1要给主机H3的用户发送一条消息,通常,我们把表示消息的整块数据称为一个报文,较长的报文一般不适宜直接传输,需要将较长的报文划分成若干个较小的等长数据段,在每个数据段前面添加一些由必要的控制信息(例如目的地址)组成的首部,这样就构造出了一个个分组

在这里插入图片描述

源主机H1将所构造的分组依次发送到分组交换网中,分组交换网中的交换节点收到一个分组后,先将其缓存下来,然后从首部中提取出目的地址,按照目的地址查找自己的转发表,将分组交给下一个交换节点,经过多个交换节点的存储转发,分组最终被转发到目的主机,主机H3收到这些分组后,去掉它们各自的首部,将个数据段组合还原出原始消息。

在这里插入图片描述

优点

  • 没有建立连接和释放连接的过程。
  • 分组传输过程中逐段占用通信链路,有较高的通信线路利用率。
  • 交换节点可以为每一个分组独立选择转发路由,使得网络有很好的生存性。

缺点

  • 分组首部带来了额外的传输开销。
  • 交换节点存储转发分组会造成一定的时延。
  • 无法确保通信时端到端通信资源全部可用,在通信量较大时可能造成网络拥塞。
  • 分组可能会出现失序和丢失等问题。
(1.3) 报文交换

报文交换是分组交换的前身。在报文交换中,报文(消息)被整个地发送而不是拆分成若干个分组进行发送。交换节点将报文整体接收完成后才能查找转发表,将整个报文转发到下一个节点。因此,报文交换比分组交换带来的转发时延要长很多,而且需要交换节点具有的缓存空间也大很多,否则无法完整接收报文。

(1.4) 方式对比

在这里插入图片描述

  • 若要连续传送大量的数据,并且数据传送时间远大于建立连接的时间,则使用电路交换可以有较高的传输效率。然而计算机的数据传送往往是突发式的,采用电路交换时通信线路的利用率会很低。
  • 报文交换和分组交换都不需要建立连接(即预先分配通信资源),在传送计算机的突发数据时可以提高通信线路的利用率
  • 将报文构造成若干个更小的分组进行分组交换比将整个报文进行报文交换的时延要小,并且还可以避免太长的报文长时间占用链路,有利于差错控制同时具有更好的灵活性。

(2) 使用者

按使用者可以分为公用网、专用网

公用网:通常是由电信公司出资建造的大型网络,公众只要按照电信公司的规定缴纳费用即可使用这种网络。

专用网:通常是由某个部门为满足本单位特殊业务的需要而建造的网络,例如军队、铁路、银行等部门的专用网,这种网络不向本单位以外的人提供服务。

在这里插入图片描述

(3) 传输介质

按传输介质可以分为有线网络、无线网络

有线网络:包括双绞线网络、光纤网络等。

无线网络:包括WIFI技术等。

在这里插入图片描述

(4) 覆盖范围

按覆盖范围可以分为广域网(WAN)、城域网(MAN)、局域网(LAN)、个域网(PAN)

  1. 广域网 (WAN):

    • 覆盖范围:覆盖范围较大的网络,通常为几十到几千千米,跨越城市、国家甚至跨越大洲。
    • 连接方式:通过公共或专用的线路和设备连接远距离地理位置的计算机和网络设备。
    • 功能:广域网是因特网的核心部分,它提供高速、可靠的数据传输和互联互通功能,使得远距离地理位置的组织机构和用户能够进行远程访问、数据共享和通信。
  2. 城域网 (MAN):

    • 覆盖范围:覆盖范围较小的网络,通常为5~50km,覆盖一个城市或一个城市的几个区域。
    • 连接方式:通过光纤、无线电或其他通信介质连接具有高带宽要求的区域网络。
    • 功能:通常作为城市骨干网,互连大量机构、企业以及校园局域网。
  3. 局域网 (LAN):

    • 覆盖范围:覆盖范围相对较小的网络,通常在1km左右,局限在一个建物、办公室、校园等小范围内。
    • 连接方式:通过以太网等局域网技术将计机、服务器、打印机等设备连接在一起。
    • 功能:局域网为内部用户提供高速数据传输、文件共享、打印共享等功能,用于组织内部的信息交流和资源共享。
  4. 个域网 (PAN):

    • 覆盖范围:覆盖范围最小的网络,通常在10米左右,仅限于个人用户的工作区域。
    • 连接方式:个域网通常使用无线技术,如蓝牙或红外线,将个人设备(如手机、平板电脑、智能手表等)连接在一起。
    • 功能:个域网用于个人设备之间的数据传输、文件共享、个人助手功能等。

在这里插入图片描述

(5) 拓扑结构

按拓扑结构可以分为总线型、星型、环形、网状型等

总线型:使用单根传输线把计算机连接起来。

  • 优点:建网容易、增减节点方便、节省线路。
  • 缺点:重负载时通信效率不高、总线任意一处出现故障则全网瘫痪。

在这里插入图片描述

星型:每个计算机都以单独的线路与中央设备相连。

  • 优点:便于网络的集中控制和管理。
  • 缺点:成本高、中央设备对故障敏感。

在这里插入图片描述

环型:所有计算机的网络接口都连接形成一个环,环可以是单环也可以是双环,环中信号是单向传输的。

在这里插入图片描述

网状型:一般情况下,每个节点至少有两条路径与其他节点相连,多用在广域网中。

  • 优点:可靠性高。
  • 缺点:控制复杂、线路成本高

在这里插入图片描述

相关文章:

【计算机网络】计算机网络的定义和分类

🚩本文已收录至专栏:计算机网络学习之旅 一.定义 计算机网络并没有一个精确和统一的定义,在计算机网络发展的不同阶段,人们对计算机网络给出了不同的定义,这些定义反映了当时计算机网络技术的发展水平。 例如计算机…...

天机学堂—学习辅助功能(含场景问答和作业)

我的课表 需求分析 原型图 管理后台 用户端 流程图 数据设计 接口设计 支付成功报名课程后, 加入到我的课表(MQ)分页查询我的课表查询我正在学习的课程根据id查询指定课程的学习状态删除课表中的某课程 代码实现 数据表设计 添加课程到课表(非标准接口&#x…...

Stable Diffusion AI绘画

我们今天来了解一下最近很火的SD模型 ✨在人工智能领域,生成模型一直是研究的热点之一。随着深度学习技术的飞速发展,一种名为Stable Diffusion的新型生成模型引起了广泛关注。Stable Diffusion是一种基于概率的生成模型,它可以学习数据的潜…...

linux性能监控之sar

1.sar命令介绍 sar是一个非常全面的分析工具,可以对文件的读写,系统调用的使用情况,磁盘IO,CPU相关使用情况,内存使用情况,进程活动等都可以进行有效的分析。 sar工具将对系统当前的状态进行取样&am…...

react框架对Excel文件进行上传和导出

1.首先需要安装xlsx第三方的库库 引入插件 npm install xlsx在react引入 import * as XLSX from xlsx;1,首先设置jsx部分的 以下代码包含有导入excel文件和导出excel文件,读着可以根据需要,自己选择想要实现的功能 代码如下&#xff0…...

【前端】-【前端文件操作与文件上传】-【前端接受后端传输文件指南】

目录 前端文件操作与文件上传前端接受后端传输文件指南 前端文件操作与文件上传 一、前端文件上传有两种思路: 二进制blob传输:典型案例是formData传输,相当于用formData搭载二进制的blob传给后端base64传输:转为base64传输&…...

【IC前端虚拟项目】验证环境env与base_teat思路与编写

【IC前端虚拟项目】数据搬运指令处理模块前端实现虚拟项目说明-CSDN博客 上一篇里解决了最难搞的axi_ram_model,接下来呢就会简单又常规一些了,比如这一篇要说的env和base_test的搭建。在这里我用了gen_uvm_tb脚本: 【前端验证】验证自动化脚本的最后一块拼图补全——gen_t…...

使用Remix部署智能合约到币安链(Remix的操作介绍 币安链合约的部署) 点赞收藏哦

大家好,我是程序员大猩猩呀。 据我所知,很多人进入币圈之后,想要通过炒币一夜暴富!另一部分人呢他们希望自己能创建一个项目,然后发行自己的数字货币然后暴富。 不管是什么方式吧,只要不违法,…...

为什么Redis6.0引入了多线程

Redis 6.0引入了多线程,主要原因有以下几点: 提高网络I/O的吞吐量:多线程可以更有效地处理大量的并发连接和请求,特别是在多核心服务器上。通过使用多线程来处理读写网络套接字,Redis能够更充分地利用系统资源&#x…...

速盾:高防ip和高防cdn有什么相同点?

高防IP(Dedicated IP)和高防CDN(Content Delivery Network)都是用来保护网站免受各种网络攻击的技术手段,它们在一定程度上具有相同的作用和效果。下面将详细介绍它们的相同点。 首先,高防IP和高防CDN都能…...

设计模式之拦截过滤器模式

想象一下,在你的Java应用里,每个请求就像一场冒险旅程,途中需要经过层层安检和特殊处理。这时候,拦截过滤器模式就化身为你最可靠的特工团队,悄无声息地为每一个请求保驾护航,确保它们安全、高效地到达目的…...

【联通支付注册/登录安全分析报告】

联通支付注册/登录安全分析报告 前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨…...

c++ - 在循环中使用迭代器删除 unordered_set 中的元素

标签 c unordered-set 请考虑以下代码: Class MyClass 为自定义类:class MyClass { public:MyClass(int v) : Val(v) {}int Val; };然后下面的代码将在调用 it T.erase(it); 之后在循环中导致 Debug Assertion Failed: unordered_set<MyClass*> T; unordered_set<…...

深入了解哈希映射(HashMap)

一、哈希映射&#xff08;HashMap&#xff09;简介 在计算机科学中&#xff0c;哈希映射&#xff08;HashMap&#xff09;是一种基于键值对&#xff08;Key-Value pair&#xff09;存储数据的数据结构&#xff0c;它提供了高效的数据查找、插入和删除操作。哈希映射的核心思想…...

Public Key Retrieval is not allowed

Public Key Retrieval is not allowed 最近使用 JDBC 连接 MySQL 频繁出现如下报错&#xff1a; java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowe 这段代码是一个 Java 异常错误信息&#xff0c;其中包含了以下关键信息&#xff1a; 错误类…...

iphone进入恢复模式怎么退出?分享2种退出办法!

iPhone手机莫名其妙的进入到了恢复模式&#xff0c;或者是某些原因需要手机进入恢复模式&#xff0c;但是之后我们不知道如何退出恢复模式怎么办&#xff1f; 通常iPhone进入恢复模式的常见原因主要是软件问题、系统升级失败、误操作问题等导致。那iphone进入恢复模式怎么退出&…...

Leetcode 107:二叉树的层次遍历II

给你二叉树的根节点 root &#xff0c;返回其节点值 自底向上的层序遍历 。 &#xff08;即按从叶子节点所在层到根节点所在的层&#xff0c;逐层从左向右遍历&#xff09;。 思路&#xff1a;翻转title102的结果即可。 //层次遍历二叉树public static List<List<Integ…...

LNMP一键安装包

LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Alibaba/Amazon/Mint/Oracle/Rocky/Alma/Kali/UOS/银河麒麟/openEuler/Anolis OS Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQ…...

[机器学习-05] Scikit-Learn机器学习工具包进阶指南:协方差估计和交叉分解功能实战【2024最新】

&#x1f3a9; 欢迎来到技术探索的奇幻世界&#x1f468;‍&#x1f4bb; &#x1f4dc; 个人主页&#xff1a;一伦明悦-CSDN博客 ✍&#x1f3fb; 作者简介&#xff1a; C软件开发、Python机器学习爱好者 &#x1f5e3;️ 互动与支持&#xff1a;&#x1f4ac;评论 &…...

多线程的情况下 AopContext.currentProxy()切面代理失效问题

多线程的情况下 AopContext.currentProxy()切面代理失效问题 在多线程环境下&#xff0c;AopContext.currentProxy() 可能会遇到问题&#xff0c;特别是在某些情况下&#xff0c;它无法正确地获取到当前线程的代理对象。这通常发生在以下几种情况&#xff1a; 线程不是由Spri…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

IT供电系统绝缘监测及故障定位解决方案

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

多种风格导航菜单 HTML 实现(附源码)

下面我将为您展示 6 种不同风格的导航菜单实现&#xff0c;每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...