1.1 计算机网络的概念、功能、组成和分类
文章目录
- 1.1 计算机网络的概念、功能、组成和分类
- (一)计算机网络的概念
- (二)计算机网络的功能
- (三)计算机网络的组成
- 1.组成部分
- 2.工作方式
- 3.功能组成
- (四)计算机网络的分类
- 总结
1.1 计算机网络的概念、功能、组成和分类
(一)计算机网络的概念
计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
计算机网络是互连的、自治的计算机集合。
互连——通过通信链路互联互通。
自治——(各个终端/节点之间)无主从关系。
(二)计算机网络的功能
1.数据通信
例如,有两台主机,其中一台主机给另一台主机发送pdf文件……
2.资源共享
同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据。
例1,打印机就是一个网络内可共享的硬件资源。(至于打印机如何处理网络内发来的各个打印请求,就是操作系统中需要学习的了)
例2,我在网络中用电脑A远程访问电脑B中的一些软件(办公软件、画图软件……),就是实现了软件的资源共享。
例3,在百度网盘中上传/下载一些数据文件,就是数据资源的共享。
注意:上面两个功能十分重要。
3.分布式处理
多台计算机各自承担同一工作任务的不同部分。这样一来,既可以提高工作效率,又可以避免某台计算机的负载过大。
4.提高可靠性
由于使用了分布式处理,那么网络中的一台服务器如果坏掉了,我们可以用另一台机器(替代机)来接班。
5.负载均衡
也是分布式处理衍生出的一种特点。各计算机之间的工作效率提高,更合理的安排和分布资源。
……(还有很多其他的功能)
计算机网络的发展阶段
:略。
(三)计算机网络的组成
1.组成部分
硬件、软件、协议(一系列规则和约定的集合)。
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方式下,就是一个“我为人人,人人为我”的局面。
如图,A中有一个500M大小的电影,B从A中请求下载了250M,此时,C又可以从B中请求下载,下载了200M。
这时,D可以从A、B、C同时请求下载,即同时有三个主机向它传送文件,可想而知它获取这个文件的速度就会变快。
所以,在P2P方式下,主机越多,人们下载的速度就会越快。这个特点,刚好和C/S方式是相反的(因为C/S方式是请求的越多,响应的越慢)。
2)核心部分
核心部分是用来为边缘部分提供服务的。
包括一些路由器、中间设备、网络等等。
3.功能组成
上文提到,计算机网络有两个最重要的功能——数据通信、资源共享。
那么,根据这两点功能,就可以把计算机网络分成通信子网(实现数据通信)、资源子网(实现资源共享/数据处理)。
最下面三层相当于把一条公路给铺好。
最上面三层相当于把一些需要运输的东西给封装整理好,然后送上公路。
中间的传输层也是非常重要的,起着一个承接上下的作用。
类比网购:我在京东/淘宝上买了一件商品。
资源子网——相当于商家把这件商品打包、整理好。至于这个商品是怎样被送到用户手中(是卡车、货车、摩托车、轮船?),不是它需要考虑的。
传输层——承上启下,负责把打包好的商品送到物流公司手上。
通信子网——相当于这件商品就发货上路了。
(四)计算机网络的分类
1.按分布范围分
1)广域网WAN(交换技术)
2)城域网MAN
3)局域网LAN(广播技术)
4)个人区域网PAN
注意:判断一个网络是哪种类型,不应该只看它的范围大小,更重要的是看它使用的是什么技术。例如,我就住在你家隔壁,但是我们都是使用拨号上网,那么也应该称之为广域网,而并非局域网。
交换技术,是使用路由器等中间设备,把数据一点一点的转发、存储,并交换出去。
广播技术,类似于在一个村子里,村长用大喇叭进行广播,只适用于较小范围。
2.按使用者分
1)公用网(比如中国电信)。
2)专用网(比如政府、军队、公司的内网)。
3.按交换技术分
1)电路交换。
首先,建立连接;然后,通话(一直占用着这条资源线路);最后,释放连接,归还通信资源。
特点:通话的过程中一直占用着这条资源,不能被别人使用。
2)报文交换
3)分组交换
报文交换、分组交换,与电路交换相比而言,它们就温和一点(不是一直霸占着资源)。
它们的技术特点是存储、转发。
它们两者之间的主要区别是,它们的主体不一样,看这个数据是报文,还是分组的形式。
报文——就是一个完整的文件,例如一个媒体文件。
分组——其实就是把报文切开了,切成一组一组的。
存储、转发——我们将要发送的数据,无论它是报文还是分组,我们都要把它放到网络上进行传输。可能这个数据交给了一个路由器R1
,那么这个路由器就会先存下来
我的报文/分组,然后看往哪发。此时,还有两个路由器R2
、R3
,而它发现,如果走R2
,发送的速度会更快一点,那它就会把这个数据转发
给R2
这条路。
特点:只是一段一段地占用通信链路,并不是独享占用整条线路资源。此外,即使是同一小段链路,也可以让多个数据在上面传输发送。总之,相比于电路交换方式,是非常友好的。
4.按拓扑结构分
拓扑结构,其实就是把网络中的节点(节点:可以是路由器、交换机这些中间设备,也可以是端系统当中的主机)变成如图所示的一个个小支点(小圆圈),然后把通信链路抽象成一条线。把“圆圈”和“线”组织在一起的结构就称之为“拓扑结构”。
在考试中可能的考察方式:“星型”中,节点数和链路数的关系。例:6个节点,需要5条链路。
5.按传输技术分
1)广播式网络。
是应用在局域网当中的一种网络。
共享公共通信信道。——通常使用的是“总线型”的拓扑结构,所有联网的计算机都可以共享使用这条信道,而且当一台计算机发送某个报文/分组时,其他所有计算机都会收到这个报文/分组。(就像我在大喇叭中说了一句话,整个村子的人都能听见)
2)点对点网络。
通常对应于广域网。在广域网中,通常都是点对点网络。
使用分组存储转发和路由选择机制。——在网络中两台主机如果想要通信,但是没有直接连接的话,它就需要很多中间节点来实现分组的存储、转发和路由的选择。(也就是刚刚“报文交换、分组交换”当中所讲的机制)
点对点网络,与广播式网络所不同的是:点对点网络中,我发送的信息并不是所有人都听得到,只有你才听得到。而这个信息如何传到你那里,就需要分组存储转发以及路由选择机制。
总结
相关文章:

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博文目录 (如果只想看代码,请直接跳到“方法”一节,开头我介绍我的常用方法,后面介绍具体的各种方案) 神经网络通过多层神经元相互连接构成,而这些连接的强度就是通过权重ÿ…...
代码随想录训练营第三十九天|62.不同路径63. 不同路径 II
62.不同路径 1确定dp数组(dp table)以及下标的含义 从(0,0)出发到(i,j)有 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 光速入门课程
首先说一下,为啥小编在即PHP和Golang之后,为啥又要整Python,那是因为小编最近又拿起了 " 阿里天池 " 的东西,所以小编又不得不捡起来大概五年前学习的Python,本篇文章主要讲的是最基础版本,所以比…...
解决vite打包出现 “default“ is not exported by “node_modules/...问题
项目场景: 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函数的作用为以指定字符分割字符串,含有两个参数,第一个函数为待分割的字符串或者空指针NULL,第二个参数为分割字符集。 对一个字符串首次使用strtok时第一个参数应该是待分割字符串,strtok以指定字符完成第一次分割后&…...

hash,以及数据结构——map容器
1.hash是什么? 定义:hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出, 该输出就是散列值。这种转换是一种压缩映射&…...

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

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的鸟类识别系统(Python+PySide6界面+训练代码)
摘要:本文详细阐述了一个利用深度学习进行鸟类识别的系统,该系统集成了最新的YOLOv8算法,并与YOLOv7、YOLOv6、YOLOv5等先前版本进行了性能比较。该系统能够在图像、视频、实时视频流和批量文件中精确地识别和分类鸟类。文中不仅深入讲解了YO…...

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

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

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

Bert基础(四)--解码器(上)
1 理解解码器 假设我们想把英语句子I am good(原句)翻译成法语句子Je vais bien(目标句)。首先,将原句I am good送入编码器,使编码器学习原句,并计算特征值。在前文中,我们学习了编…...
Visual Studio快捷键记录
日常使用Visual Studio进行开发,记录一下常用的快捷键: 复制:CtrlC剪切:CtrlX粘贴:CtrlV删除:CtrlL撤销:CtrlZ反撤销:CtrlY查找:CtrlF/CtrlI替换:CtrlH框式选…...

分享84个Html个人模板,总有一款适合您
分享84个Html个人模板,总有一款适合您 84个Html个人模板下载链接:https://pan.baidu.com/s/1GXUZlKPzmHvxtO0sm3gHLg?pwd8888 提取码:8888 Python采集代码下载链接:采集代码.zip - 蓝奏云 学习知识费力气,收集…...
vue使用.sync和update实现父组件与子组件数据绑定的案例
在 Vue 中,.sync 是一个用于实现双向数据绑定的特殊修饰符。它允许父组件通过一种简洁的方式向子组件传递一个 prop,并在子组件中修改这个 prop 的值,然后将修改后的值反馈回父组件,实现双向数据绑定。 使用 .sync 修饰符的基本语…...

利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...

HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...