【网络奇遇记】那年我与计算机网络的浅相知

🌈个人主页:聆风吟
🔥系列专栏:网络奇遇记、数据结构
🔖少年有梦不应止于心动,更要付诸行动。
文章目录
- 一. 计算机网络的定义
- 1.1 计算机早期的一个最简单的定义
- 1.2 现阶段计算机网络的一个较好的定义
- 二. 计算机网络的分类
- 2.1 按网络的覆盖范围分类
- 2.2 按网络的使用者分类
- 2.3 按其他角度分类
- 三. 计算机网络体系结构中的专用术语
- 3.1 实体与对等实体
- 3.2 协议
- 3.2.1 协议的定义
- 3.2.2 协议的三要素
- 3.3 服务
- 📝全文总结
一. 计算机网络的定义
1.1 计算机早期的一个最简单的定义
定义:一些互连的、自治的计算机的集合。
- “互连” 是指计算机之间可以进行数据通信;
- “自治” 是指独立的计算机,它有自己的软硬件,可以独立运行。

1.2 现阶段计算机网络的一个较好的定义
定义:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
- “可编程的硬件” 不限于计算机,还包括智能手机、具有网络功能的传感器以及智能家电等智能硬件,这些硬件一定包含有中央处理单元(CPU);
- “各类应用” 计算机网络并非只用来传送数据,而是能够基于数据传送进而实现各种各样的应用,包括今后可能出现各种应用。
二. 计算机网络的分类
计算机网络有多种类别,下面从不同角度对计算机网络进行分类。
2.1 按网络的覆盖范围分类
(1)广域网(WAN):覆盖范围通常为几十千米到几千千米。广域网是因特网的核心部分,它为因特网核心路由器提供远距离高速连接,互连分布在不同国家和地区的城域网和局域网。
(2)城域网(MAN):覆盖范围一般为 5 ~ 50km。城域网通常作为城市骨干网,互连大量机构、企业及校园局域网。
(3)局域网(LAN):覆盖范围一般为 1km。局域网通常由微型计算机或工作站通过速率为 10Mb/s 以上的高速链路相连。一个企业或一个学校可能就会有多个互连得局域网,这样的网络常称为校园网或企业网。
(4)个域网(PAN):个域网是个人区域网的简称,其覆盖范围一般为 10m。个域网主要用于个人工作的地方,它把属于个人使用的笔记本电脑、耳机等电子设备用Wi-Fi或蓝牙等无线技术连接起来,因此也常称为无线个域网(WPAN)。
2.2 按网络的使用者分类
(1)公用网:通常是由电信公司出资建造的大型网络。公众只要按照电信公司的规定缴纳费用就可以使用这种网络。
(2)专用网:通常是由某个部门为满足本单位特殊业务的需要而建造的网络,例如银行、电力、铁路、军队等部门的专用网。这种网络不向本单位以外的人提供服务。
2.3 按其他角度分类
除上述两种分类角度外,计算机网络还有很多分类角度。
- 按传输介质分类:有线网和无线网;
- 按网络拓扑分类:总线型、星型、环型、网状型;
- 按交换方式分类:电路交换、报文交换、分组交换;
- 按传输技术分类:点对点、广播……
三. 计算机网络体系结构中的专用术语
上一节我们已经学习了计算机网络的体系结构,今天我们在来介绍一下计算机网络体系结构中的一些术语,以便大家对计算机网络的体系结构有更深入的理解。
需要注意的是,这些专用术语来源于OSI的七层体系结构,但也适用于TCP/IP的四层体系结构和五层原理体系结构。我们将这些专用术语中最具代表性的三个作为分类名称,它们分别是实体、协议、以及服务。

3.1 实体与对等实体
实体的定义:是指任何可发送或接收信息的硬件或软件进程。如下图所示,通信双方五层原理体系结构的各层中,我们用标有字母的方格表示实体。
对等实体的定义:是指通信双方相同层次中的实体。如下图所示,实体A与实体F互为对等实体,实体B与实体G互为对等实体,实体C与实体H互为对等实体,实体D与实体I互为对等实体,实体E与实体J互为对等实体。

3.2 协议
3.2.1 协议的定义
协议的定义:是控制两个对等实体在“水平方向”进行“逻辑通信”的规则集合。如下图所示:
- 物理层对等实体使用物理层协议进行逻辑通信,例如传统的以太网使用曼切斯特编码;
- 数据链路层对等实体使用数据链路层协议进行逻辑通信,例如传统以太网使用CSMA/CD协议;
- 网络层对等实体使用网络层协议进行逻辑通信,例如IP协议;
- 运输层对等实体使用运输层协议进行逻辑通信,例如TCP协议或UDP协议;
- 应用层对等实体使用应用层协议进行逻辑通信,例如HTTP协议,FTP协议以及SMTP协议等。

3.2.2 协议的三要素
计算机网络协议有三个要素,它们分别是语法、语义以及同步。
(1)语法:定义通信双发所交换的信息格式;
(2)语义:定义通信双发所要完成的操作;
(3)同步:定义通信双发的时序关系。
3.3 服务
在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。如下图所示:
需要注意的是:
协议是“水平的”,而服务是“垂直的”。实体能够看到下层提供的服务,但并不知道实现该服务的具体协议。这就好比我们能看到手机给我们提供的各种服务,但我们只是享受这些服务,而没有必要每个人都弄懂手机的工作原理。
在同一系统中相邻两层的实体交换信息的逻辑接口称为服务访问点。服务访问点用于区分不同的服务类型。例如,数据链路层的服务访问点为帧的 “类型” 字段,网络层的服务访问点为IP数据报的 “协议” 字段,运输层的服务访问点为 “端口号” 字段。上层要使用下层所提供的服务,必须通过与下层交换一些命令,这些命令称为服务原语。
拓展:
对等层次之间传送的数据包称为该层的协议数据单元(PDU)。 例如:
- 物理层对等实体间逻辑通信的数据包称为比特流;
- 数据链路层对等实体间逻辑通信的数据包称为帧;
- 网络层对等实体间逻辑通信的数据包称为分组,如果使用IP协议,也称为IP数据报;
- 运输层对等实体间逻辑通信的数据包一般根据协议而定,若使用TCP协议,则称为TCP报文段,若使用UDP协议,则称为UDP用户数据报;
- 应用层对等实体间逻辑通信的数据包一般称为应用报文;
上述各层数据包统称为协议数据单元(PDU)。
同一系统内层与层之间交换的数据包称为服务数据单元(SDU),多个SDU可以合成为一个PDU,而一个SDU也可以划分为几个PDU。
📝全文总结
本文主要讲解:
本文主要深入讲解了计算机网络的定义、各种分类,并对计算机网络体系结构中的专用术语进行了简单介绍。
今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!

相关文章:
【网络奇遇记】那年我与计算机网络的浅相知
🌈个人主页:聆风吟 🔥系列专栏:网络奇遇记、数据结构 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 一. 计算机网络的定义1.1 计算机早期的一个最简单的定义1.2 现阶段计算机网络的一个较好的定义 二. …...
LeetCode26.删除有序数组中的重复项(双指针法)
LeetCode26.删除有序数组中的重复项 1.问题描述2.解题思路3.代码 1.问题描述 给你一个 非严格递增排列 的数组 nums ,请你** 原地** 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然…...
原型网络Prototypical Network的python代码逐行解释,新手小白也可学会!!-----系列8
文章目录 前言一、原始代码二、对每一行代码的解释:总结 前言 这是该系列原型网络的最后一段代码及其详细解释,感谢各位的阅读! 一、原始代码 if __name__ __main__:##载入数据labels_trainData, labels_testData load_data() # labels_…...
黑马点评回顾 redis实现共享session
文章目录 传统session缺点整体访问流程代码实现生成验证码登录 问题具体思路 传统session缺点 传统单体项目一般是把session存入tomcat,但是每个tomcat中都有一份属于自己的session,假设用户第一次访问第一台tomcat,并且把自己的信息存放到第一台服务器…...
Redis篇---第八篇
系列文章目录 文章目录 系列文章目录前言一、说说 Redis 哈希槽的概念?二、Redis 常见性能问题和解决方案有哪些?三、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?前言 前些天发现了一个巨牛的人工智能学习网站…...
Unity使用Visual Studio Code 调试
Unity 使用Visual Studio Code 调试C# PackageManager安装Visual Studio EditorVisual Studio Code安装Unity 插件修改Unity配置调试 PackageManager安装Visual Studio Editor 打开 Window->PackageManger卸载 Visual Studio Code Editor ,这个已经被官方废弃安…...
【Linux】进程替换|exec系列函数
文章目录 一、看一看单进程版的进程替换二、进程替换的原理三、多进程版——验证各种程序替换接口exec系列函数execlexeclpexecvexecvp tipsexecleexecve 四、总结 一、看一看单进程版的进程替换 #include<stdio.h> #include<unistd.h> #include<stdlib.h>i…...
Java编程技巧:将图片导出成pdf文件
目录 一、pom依赖二、代码三、测试链接 一、pom依赖 <!-- pdf插件 start --> <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.3</version> </dependency> <dependency…...
二项分布和泊松分布
一、二项分布 1.1 n重伯努利试验 若是二项分布,则必是n重伯努利试验概型。即:每次试验只有两种结果 与 ,且在每次试验中A发生的概率相等,即P(A)p,将这种试验独立重复n次,则称这种试验为n重伯努利试验&#…...
【飞控调试】DJIF450机架+Pixhawk6c mini+v1.13.3固件+好盈Platinium 40A电调无人机调试
1 背景 由于使用了一种新的航电设备组合,在调试无人机起飞的时候遇到了之前没有遇到的问题。之前用的飞控(Pixhawk 6c)和电调(Hobbywing X-Rotor 40A),在QGC里按默认参数配置来基本就能平稳飞行࿰…...
Android studio配置Flutter开发环境报错问题解决
博主前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住也分享一下给大家 👉点击跳转到教程 报错问题截图 报错原因已经给出: You need Java 11 or higher to build your app with this version of G…...
2023.11.18 -自用hadoop高可用环境搭建命令
启动hadoop高可用环境 # 1.先恢复快照到高可用环境 # 2.三台服务器启动zookeeper服务 [rootnode1 ~]# zkServer.sh start [rootnode2 ~]# zkServer.sh start [rootnode3 ~]# zkServer.sh start 查看服务状态: [rootnode]# zkServer.sh status 关闭zk服务的命令是: [rootnode]# …...
【Linux】常用系统工作命令
一、Linux文档目录结构 在Linux系统中,目录、字符设备、套接字、硬盘、光驱、打印机等都被抽象成文件形式,“Linux系统中一切都是文件”。Linux系统中的一切文件都是从"根"目录(/)开始的,并按照文件系统层次…...
深入理解网络协议:通信世界的基石
💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 在当今数字化时代,网络协议是连接世…...
PL/SQL编程
一、Oracle常用函数 concat:用于连接两个字符串。 CONCAT(Oraok, .com) -- Result: Oraok.com ceil:小数点向上取整。 secect ceil(7.3) from dual --Result: 8 dual表是oracle系统为计算设计的一张临时表 select sysdate as 系统日期 from dual…...
Prompt提示词——什么是CRISPE框架?QCIPSPE框架?
框架介绍 【CRISPE】框架 是由 Matt Nigh 提出并发布的提示词书写框架,共由五部分组成。 这个框架(CRISPE)主要包括五个部分,用于指导用户向ChatGPT提问。首先,通过设定ChatGPT的角色(Capacity and Role&…...
Nginx的核心配置文件
Nginx的核心配置文件 学习Nginx首先需要对它的核心配置文件有一定的认识,这个文件位于Nginx的安装目录/usr/local/nginx/conf目录下,名字为nginx.conf 详细配置,可以参考resources目录下的<<nginx配置中文详解.conf>> Nginx的核…...
Java,集合框架,关于Collection接口(子接口List和Set)
目录 数组储存多个数据方面的特点: Java集合框架体系:(Java.util包下) Collection接口中的方法测试: 迭代器(Iterator)的作用:用来遍历集合元素。 增强for循环(即for…...
已安装的nginx追加ssl模块
Nginx开启SSL模块1 切换到源码包: cd /usr/local/src/nginx-1.11.3 2 查看nginx原有的模块 /usr/local/nginx/sbin/nginx -V 在configure arguments:后面显示的原有的configure参数如下: –prefix/usr/local/nginx --with-http_stub_status_module …...
大语言模型|人工智能领域中备受关注的技术
个人主页:【😊个人主页】 系列专栏:【❤️其他领域】 文章目录 前言关于大语言模型大语言模型是什么?大语言模型有什么用?文案写作知识库回答文本分类代码生成 AWS 如何通过 LLM 提供帮助?Amazon BedrockAmazon SageM…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
JVM垃圾回收机制全解析
Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
