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

🌈个人主页:聆风吟
🔥系列专栏:网络奇遇记、数据结构
🔖少年有梦不应止于心动,更要付诸行动。
文章目录
- 一. 计算机网络的定义
- 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…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
