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

1.1 计算机网络的概念、功能、组成和分类

文章目录

  • 1.1 计算机网络的概念、功能、组成和分类
    • (一)计算机网络的概念
    • (二)计算机网络的功能
    • (三)计算机网络的组成
          • 1.组成部分
          • 2.工作方式
          • 3.功能组成
    • (四)计算机网络的分类
  • 总结

1.1 计算机网络的概念、功能、组成和分类

(一)计算机网络的概念

  计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备线路连接起来,由功能完善的软件实现资源共享信息传递的系统。

  计算机网络是互连的、自治的计算机集合。

  互连——通过通信链路互联互通。

  自治——(各个终端/节点之间)无主从关系。

(二)计算机网络的功能

1.数据通信

  例如,有两台主机,其中一台主机给另一台主机发送pdf文件……

2.资源共享

  同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据

  例1,打印机就是一个网络内可共享的硬件资源。(至于打印机如何处理网络内发来的各个打印请求,就是操作系统中需要学习的了)

  例2,我在网络中用电脑A远程访问电脑B中的一些软件(办公软件、画图软件……),就是实现了软件的资源共享。

  例3,在百度网盘中上传/下载一些数据文件,就是数据资源的共享。

注意:上面两个功能十分重要。

3.分布式处理

  多台计算机各自承担同一工作任务的不同部分。这样一来,既可以提高工作效率,又可以避免某台计算机的负载过大。

4.提高可靠性

  由于使用了分布式处理,那么网络中的一台服务器如果坏掉了,我们可以用另一台机器(替代机)来接班。

5.负载均衡

  也是分布式处理衍生出的一种特点。各计算机之间的工作效率提高,更合理的安排和分布资源。

……(还有很多其他的功能)

  计算机网络的发展阶段:略。

image-20240222153004131

(三)计算机网络的组成

1.组成部分

  硬件、软件、协议(一系列规则和约定的集合)。

image-20240222153334179

2.工作方式

  边缘部分、核心部分。

  1)边缘部分——端和端之间的通信:两个系统之间的进程通信。

    有两种方式:

    C/S方式(Client/Server,客户/服务器),是服务与被服务的关系。例如:用户A使用微信发消息,该消息会先发送到腾讯的服务器,再由服务器发到用户B的微信上。其中,发出请求的就叫“客户”,承接请求的就叫“服务器”。同一时刻会有很多访问服务器的请求,同一时刻的请求越多,则服务器的响应越慢。

  补充对比:B/S方式。

  C/S方式通常要求用户下载一些软件、客户端,例如QQ、微信等。B/S方式中的“B”指的就是“Browser,浏览器”。B/S方式与C/S方式基本类似,只是把C/S要求下载的一些软件、客户端变成了浏览器而已。除此之外的一些访问请求是完全类似的。

    P2P方式(Peer-to-Peer),是对等的关系。没有哪台服务器永远都是服务器,也没有哪台服务器永远都是客户。在这种方式下,所有的主机都有两个身份——一面是提供服务的服务者,另一面是使用服务的客户。这种方式下的每一个端系统既是客户,又是服务器。

  P2P方式下,就是一个“我为人人,人人为我”的局面。

image-20240222154427720

  如图,A中有一个500M大小的电影,B从A中请求下载了250M,此时,C又可以从B中请求下载,下载了200M。

  这时,D可以从A、B、C同时请求下载,即同时有三个主机向它传送文件,可想而知它获取这个文件的速度就会变快。

  所以,在P2P方式下,主机越多,人们下载的速度就会越快。这个特点,刚好和C/S方式是相反的(因为C/S方式是请求的越多,响应的越慢)。

  2)核心部分

  核心部分是用来为边缘部分提供服务的。

  包括一些路由器、中间设备、网络等等。

image-20240222154837235

3.功能组成

  上文提到,计算机网络有两个最重要的功能——数据通信、资源共享。

  那么,根据这两点功能,就可以把计算机网络分成通信子网(实现数据通信)资源子网(实现资源共享/数据处理)

image-20240222155203347

  最下面三层相当于把一条公路给铺好。

  最上面三层相当于把一些需要运输的东西给封装整理好,然后送上公路。

  中间的传输层也是非常重要的,起着一个承接上下的作用。

  类比网购:我在京东/淘宝上买了一件商品。

  资源子网——相当于商家把这件商品打包、整理好。至于这个商品是怎样被送到用户手中(是卡车、货车、摩托车、轮船?),不是它需要考虑的。

  传输层——承上启下,负责把打包好的商品送到物流公司手上。

  通信子网——相当于这件商品就发货上路了。

(四)计算机网络的分类

1.按分布范围分

  1)广域网WAN(交换技术)

  2)城域网MAN

  3)局域网LAN(广播技术)

  4)个人区域网PAN

  注意:判断一个网络是哪种类型,不应该只看它的范围大小,更重要的是看它使用的是什么技术。例如,我就住在你家隔壁,但是我们都是使用拨号上网,那么也应该称之为广域网,而并非局域网。

  交换技术,是使用路由器等中间设备,把数据一点一点的转发、存储,并交换出去。

  广播技术,类似于在一个村子里,村长用大喇叭进行广播,只适用于较小范围。

2.按使用者分

  1)公用网(比如中国电信)。

  2)专用网(比如政府、军队、公司的内网)。

3.按交换技术分

  1)电路交换。

  首先,建立连接;然后,通话(一直占用着这条资源线路);最后,释放连接,归还通信资源。

  特点:通话的过程中一直占用着这条资源,不能被别人使用。

  2)报文交换

  3)分组交换

  报文交换、分组交换,与电路交换相比而言,它们就温和一点(不是一直霸占着资源)。

  它们的技术特点是存储、转发。

  它们两者之间的主要区别是,它们的主体不一样,看这个数据是报文,还是分组的形式。

  报文——就是一个完整的文件,例如一个媒体文件。

  分组——其实就是把报文切开了,切成一组一组的。

  存储、转发——我们将要发送的数据,无论它是报文还是分组,我们都要把它放到网络上进行传输。可能这个数据交给了一个路由器R1,那么这个路由器就会先存下来我的报文/分组,然后看往哪发。此时,还有两个路由器R2R3,而它发现,如果走R2,发送的速度会更快一点,那它就会把这个数据转发R2这条路。

  特点:只是一段一段地占用通信链路,并不是独享占用整条线路资源。此外,即使是同一小段链路,也可以让多个数据在上面传输发送。总之,相比于电路交换方式,是非常友好的。

4.按拓扑结构分

  拓扑结构,其实就是把网络中的节点(节点:可以是路由器、交换机这些中间设备,也可以是端系统当中的主机)变成如图所示的一个个小支点(小圆圈),然后把通信链路抽象成一条线。把“圆圈”和“线”组织在一起的结构就称之为“拓扑结构”。

image-20240222161614297

  在考试中可能的考察方式:“星型”中,节点数和链路数的关系。例:6个节点,需要5条链路。

5.按传输技术分

  1)广播式网络。

  是应用在局域网当中的一种网络。

  共享公共通信信道。——通常使用的是“总线型”的拓扑结构,所有联网的计算机都可以共享使用这条信道,而且当一台计算机发送某个报文/分组时,其他所有计算机都会收到这个报文/分组。(就像我在大喇叭中说了一句话,整个村子的人都能听见)

  2)点对点网络。

  通常对应于广域网。在广域网中,通常都是点对点网络。

  使用分组存储转发路由选择机制。——在网络中两台主机如果想要通信,但是没有直接连接的话,它就需要很多中间节点来实现分组的存储、转发和路由的选择。(也就是刚刚“报文交换、分组交换”当中所讲的机制)

  点对点网络,与广播式网络所不同的是:点对点网络中,我发送的信息并不是所有人都听得到,只有你才听得到。而这个信息如何传到你那里,就需要分组存储转发以及路由选择机制。

总结

image-20240222162429932

相关文章:

1.1 计算机网络的概念、功能、组成和分类

文章目录 1.1 计算机网络的概念、功能、组成和分类(一)计算机网络的概念(二)计算机网络的功能(三)计算机网络的组成1.组成部分2.工作方式3.功能组成 (四)计算机网络的分类 总结 1.1 …...

排序算法整理

排序种类排序特性代码背景 基于插入的排序直接插入排序原理代码 折半查找排序2路查找排序希尔排序(shell) 缩小增量排序原理代码 基于交换的排序冒泡排序原理代码 快速排序(重要!)原理我的思考 代码 基于选择的排序(简单)选择排序…...

ONLYOFFICE 桌面应用程序 v8.0 发布:全新 RTL 界面、本地主题、Moodle 集成等你期待的功能来了!

目录 📘 前言 📟 一、什么是 ONLYOFFICE 桌面编辑器? 📟 二、ONLYOFFICE 8.0版本新增了那些特别的实用模块? 2.1. 可填写的 PDF 表单 2.2. 双向文本 2.3. 电子表格中的新增功能 单变量求解:…...

c语言---数组(超级详细)

数组 一.数组的概念二. 一维数组的创建和初始化2.1数组的创建2.2数组的初始化错误的初始化 2.3 数组的类型 三. 一维数组的使用3.1数组的下标3.2数组元素的打印3.2数组元素的输入 四. 一维数组在内存中的存储五. 二维数组的创建5.1二维数组的概念5.2如何创建二维数组 六.二维数…...

神经网络权重初始化

诸神缄默不语-个人CSDN博文目录 (如果只想看代码,请直接跳到“方法”一节,开头我介绍我的常用方法,后面介绍具体的各种方案) 神经网络通过多层神经元相互连接构成,而这些连接的强度就是通过权重&#xff…...

代码随想录训练营第三十九天|62.不同路径63. 不同路径 II

62.不同路径 1确定dp数组&#xff08;dp table&#xff09;以及下标的含义 从&#xff08;0&#xff0c;0&#xff09;出发到&#xff08;i&#xff0c;j&#xff09;有 dp[i][j]种路径 2确定递推公式 dp[i][j]dp[i-1][j]dp[i][j-1] 3dp数组如何初始化 for(int i0;i<m…...

学习大数据所需的java基础(5)

文章目录 集合框架Collection接口迭代器迭代器基本使用迭代器底层原理并发修改异常 数据结构栈队列数组链表 List接口底层源码分析 LinkList集合LinkedList底层成员解释说明LinkedList中get方法的源码分析LinkedList中add方法的源码分析 增强for增强for的介绍以及基本使用发2.使…...

Python 光速入门课程

首先说一下&#xff0c;为啥小编在即PHP和Golang之后&#xff0c;为啥又要整Python&#xff0c;那是因为小编最近又拿起了 " 阿里天池 " 的东西&#xff0c;所以小编又不得不捡起来大概五年前学习的Python&#xff0c;本篇文章主要讲的是最基础版本&#xff0c;所以比…...

解决vite打包出现 “default“ is not exported by “node_modules/...问题

项目场景&#xff1a; vue3tsvite项目打包 问题描述 // codemirror 编辑器的相关资源 import Codemirror from codemirror;error during build: RollupError: "default" is not exported by "node_modules/vue/dist/vue.runtime.esm-bundler.js", impor…...

c语言strtok的使用

strtok函数的作用为以指定字符分割字符串&#xff0c;含有两个参数&#xff0c;第一个函数为待分割的字符串或者空指针NULL&#xff0c;第二个参数为分割字符集。 对一个字符串首次使用strtok时第一个参数应该是待分割字符串&#xff0c;strtok以指定字符完成第一次分割后&…...

hash,以及数据结构——map容器

1.hash是什么&#xff1f; 定义&#xff1a;hash,一般翻译做散列、杂凑&#xff0c;或音译为哈希&#xff0c;是把任意长度的输入&#xff08;又叫做预映射pre-image&#xff09;通过散列算法变换成固定长度的输出&#xff0c; 该输出就是散列值。这种转换是一种压缩映射&…...

AIoT网关 人工智能物联网网关

AIoT(人工智能物联网)作为新一代技术的代表&#xff0c;正以前所未有的速度改变着我们的生活方式。在这个智能时代&#xff0c;AIoT网关的重要性日益凸显。它不仅是连接智能设备和应用的关键&#xff0c;同时也是实现智能化家居、智慧城市和工业自动化的必备技术。      一…...

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的鸟类识别系统(Python+PySide6界面+训练代码)

摘要&#xff1a;本文详细阐述了一个利用深度学习进行鸟类识别的系统&#xff0c;该系统集成了最新的YOLOv8算法&#xff0c;并与YOLOv7、YOLOv6、YOLOv5等先前版本进行了性能比较。该系统能够在图像、视频、实时视频流和批量文件中精确地识别和分类鸟类。文中不仅深入讲解了YO…...

核密度分析

一.算法介绍 核密度估计&#xff08;Kernel Density Estimation&#xff09;是一种用于估计数据分布的非参数统计方法。它可以用于多种目的和应用&#xff0c;包括&#xff1a; 数据可视化&#xff1a;核密度估计可以用来绘制平滑的密度曲线或热力图&#xff0c;从而直观地表…...

先进语言模型带来的变革与潜力

用户可以通过询问或交互方式与GPT-4这样的先进语言模型互动&#xff0c;开启通往知识宝库的大门&#xff0c;即时访问人类历史积累的知识、经验与智慧。像GPT-4这样的先进语言模型&#xff0c;能够将人类历史上积累的海量知识和经验整合并加以利用。通过深度学习和大规模数据训…...

重铸安卓荣光——上传图片组件

痛点&#xff1a; 公司打算做安卓软件&#xff0c;最近在研究安卓&#xff0c;打算先绘制样式 研究发现安卓并不像前端有那么多组件库&#xff0c;甚至有些基础的组件都需要自己实现&#xff0c;记录一下自己实现的组件 成品展示 一个上传图片的组件 可以选择拍照或者从相册中…...

Bert基础(四)--解码器(上)

1 理解解码器 假设我们想把英语句子I am good&#xff08;原句&#xff09;翻译成法语句子Je vais bien&#xff08;目标句&#xff09;。首先&#xff0c;将原句I am good送入编码器&#xff0c;使编码器学习原句&#xff0c;并计算特征值。在前文中&#xff0c;我们学习了编…...

Visual Studio快捷键记录

日常使用Visual Studio进行开发&#xff0c;记录一下常用的快捷键&#xff1a; 复制&#xff1a;CtrlC剪切&#xff1a;CtrlX粘贴&#xff1a;CtrlV删除&#xff1a;CtrlL撤销&#xff1a;CtrlZ反撤销&#xff1a;CtrlY查找&#xff1a;CtrlF/CtrlI替换&#xff1a;CtrlH框式选…...

分享84个Html个人模板,总有一款适合您

分享84个Html个人模板&#xff0c;总有一款适合您 84个Html个人模板下载链接&#xff1a;https://pan.baidu.com/s/1GXUZlKPzmHvxtO0sm3gHLg?pwd8888 提取码&#xff1a;8888 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集…...

vue使用.sync和update实现父组件与子组件数据绑定的案例

在 Vue 中&#xff0c;.sync 是一个用于实现双向数据绑定的特殊修饰符。它允许父组件通过一种简洁的方式向子组件传递一个 prop&#xff0c;并在子组件中修改这个 prop 的值&#xff0c;然后将修改后的值反馈回父组件&#xff0c;实现双向数据绑定。 使用 .sync 修饰符的基本语…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发&#xff0c;后来由Pivotal Software Inc.&#xff08;现为VMware子公司&#xff09;接管。RabbitMQ 是一个开源的消息代理和队列服务器&#xff0c;用 Erlang 语言编写。广泛应用于各种分布…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

wpf在image控件上快速显示内存图像

wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像&#xff08;比如分辨率3000*3000的图像&#xff09;的办法&#xff0c;尤其是想把内存中的裸数据&#xff08;只有图像的数据&#xff0c;不包…...

深入浅出WebGL:在浏览器中解锁3D世界的魔法钥匙

WebGL&#xff1a;在浏览器中解锁3D世界的魔法钥匙 引言&#xff1a;网页的边界正在消失 在数字化浪潮的推动下&#xff0c;网页早已不再是静态信息的展示窗口。如今&#xff0c;我们可以在浏览器中体验逼真的3D游戏、交互式数据可视化、虚拟实验室&#xff0c;甚至沉浸式的V…...