【网络原理】从0开始学习计算机网络常识,中学生看了都能学会

2024-09-02 13:28

本文主要是介绍【网络原理】从0开始学习计算机网络常识,中学生看了都能学会,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本篇会加入个人的所谓鱼式疯言

❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言

而是理解过并总结出来通俗易懂的大白话,

小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的.

🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !!!

在这里插入图片描述

引言

在当今数字化高速发展的时代,网络如同空气般无处不在,它已经深度融入我们的生活、学习和工作之中。

从日常的社交娱乐到复杂的科研创新,从便捷的在线购物到高效的远程办公,网络的影响力可谓无所不及。然而,你是否真正了解这个看似熟悉却又充满神秘的网络世界呢?

目录

  1. 计算机网络初识知识

  2. 网络协议的初识

  3. TCP/ IP 网络协议的分层(重点知识)

一. 计算机网络初识知识

在我们计算机网络中有传输的硬件设备: 路由器与交换机, 也有用来确定网络位置的标识: IP与端口号 , 也有用来确定网络区域: 局域网与广域网 。 还有发送方和接收方: 客户端与服务器

1. 路由器与交换机

<1>. 路由器

路由器是 连接两个或多个网络的硬件设备 , 工作在 网络层(下面内容会细细讲解) , 起着 网关 的作用 。

在这里插入图片描述

并且, 路由器是有具体的 IP地址 的, 只有 具有IP地址 的路由器才有能力 发送传输接受网络信号

但有路由器还是不够的,小伙伴们可以试想下,需要插入的网线接口很多, 而路由器的卡槽很少, 那该怎么应对呢???

<2>. 交换机

交换机的出现就有效的解决了 路由器卡槽少 的问题, 交换机还能为多个网端接口相互一起连接, 作为一个中转站使用, 可以把大多数 网络接口都连接在一起

在这里插入图片描述

2. IP 地址与端口号

<1>. IP 地址

IP地址: 用来描述一个主机在网络上所处的 位置IP 地址 一般使用 32 位整数 表示, 一般用 “点分十进制” 表示, 采用 “点分十进制” 是为了方便人们阅读。

在这里插入图片描述

鱼式疯言

IP地址 的表示方式用 IPV4IPV6 , 但我们一般谈及的都是 32 为的 IPv4 的整数地址

<2>. 端口号

端口号: 用来区别不同 应用程序(进程) 中的描述,是一个 二字节的正整数 , 当主机接受到 网络传来的数据 , 主机就要对应 应用程序(进程) 来使用。

鱼式疯言

一般的端口号的 0 ~ 1023 的数字不可用 , 一般我们用 其他的端口号 数字。

3. 局域网与广域网

<1>. 局域网

局域网是一种在 局限区域计算机网络集合 ,一般为 几百米到几公里的较短区域,比如一个办公室,一个学校,一个工厂都可以称为 局域网

<2>. 广域网

广域网 是一种在 广泛区域计算机网络的集合, 一般为几十公里 到 几千公里的 较大区域 , 比如一个地区,一个省会, 一个国家, 一个星球 都可以称为 广域网

<3>. 局域网和广域网的区别

在不同方面, 局域网和广域网的区别是很大 ,常见的有以下几点 :

  • 分布氛围 : 局域网 较小 , 一般是具体的地理位置, 广域网 较广, 一般为一段区域。

  • 连接方式 : 局域网通过 交换机 连接, 广域网通过 路由器 连接

  • IP地址 : 每一个局域网只有 一个IP地址 ,每一个广域网中的 每一个不同路由器 就有 不同的IP地址。

  • 通信延迟和带宽 : 局域网延迟小带宽大 , 广域网延迟大带宽小

鱼式疯言

互联网 就是 最大 的广域网。

4. 客户端和服务器

什么是客户端,什么又是服务器呢?

在这里插入图片描述

想上面这样, 假如小爱同学有问题想问小编, 就会加我QQ, 然后给我打招呼, 发给你好, 这时小爱同学的QQ就会给中间的 服务器 发送请求, 服务器接受到后,就会发返回一个你好给我, 这时就完成了网络通信。

其中,发送消息(请求) 的一方我们一般称为: 客户端

接受消息(请求) 的一方我们一般称为 : 服务器

这时就有小伙伴问了, 不是服务器也发送了消息吗?

是的,但这里服务器是返回消息,而不是发送消息, 我们称服务器返回消息为: 响应

鱼式疯言

综上所得:

我们称 发送请求或者接收响应 的一方为 客户端

接受请求或发送响应 的一方为 服务器

二. 网络协议

1. 网络协议的初识

再说明网络协议之前, 就得先说说协议这件事啦 !!!

协议 在我们日常生活中好比是 约定,规则 这样的含义

比如拿小编的栗子来说, 小编来自江西, 会讲江西话, 而我的室友来自安徽, 会讲安徽话 。

如果我对我室友讲江西话, 他肯定听不懂, 更别说和我交流啦。

如果室友对我讲安徽话, 我肯定也听不懂, 更别说和我交流啦。

那怎么办, 我们就定一个约定(协议), 我们都讲 普通话 , 这样双方既可以听懂, 也可以进行交流啦。

所以这就是协议,那么网络协议也是如此, 在网络上,网络协议是一切通信的基础, 无论是 发送方还是接收方 都需要进行在 同一协议 下进行工作,这样双方在网络上能够 相互交互互相构造 / 解析数据完成任务

鱼式疯言

故言之 网络协议 就是约定通信双方交换的 规则 , 协议确定了, 双方就在 同一个频道 上, 才能进行 有意义的通信

2. 网络协议的分层

由于网络通信是一个非常复杂的过程, 如果使用一个协议约定所有 网络通信细节, 就使这个协议 非常庞大, 非常复杂。

由于一个 协议是不方便完成所有网络通信的细节 的, 所以我们根据 功能相似 的一类都包含在一层协议, 功能不相似的协议 进行 多层切分 ,并且约定好 每一层和每一层之间交互关系 , 让每一层的协议都完成自己的 一件 / 一类事情

最终 每一层完成的小任务 都整合到一起,从而完成 所有的任务 。 并在此期间, 每一层的协议都不会进行交互, 不会互相影响, 只有相邻两层之间才会 进行交互

上层调用下层 , 下层为上层 提供服务

鱼式疯言

利用协议分层的好处:

  1. 降低学习协议的成本, 只需要关注 某一层相关的功能的实现细节不用关注 其他层的协议的实现细节。
  1. 降低了耦合性, 从而减少了每层协议之间的 相互影响 , 并且能灵活更改其他层的协议的实现。

现在教科书上讲的是 OSI 协议的分层 , 但世界上最主流的协议也是面试常考的协议就是 TCP / IP 协议 , 而本篇文章小编将带着大家初识 TCP / IP 协议。

三. TCP/ IP 网络协议的分层(重点知识)

作为重点知识, TCP / IP 协议是怎么分层的呢, 下面就跟着小编来走近看看吧 💖 💖 💖 💖

1. TCP/ IP 协议分层

TCP的协议分为 五层(从上到下): 应用程序 自身的 应用层系统内核 实现的 传输层和网络层硬件设备 所携带的 数据链路层网络层

在这里插入图片描述

简单说说每一层所实现的功能模块吧

  1. 应用层: 关注传输来的数据 用来干什么 , 根据开发人员的 实现过程 从而所发挥的功能也是不一样的
  1. 传输层: 关注数据传输的 起点和终点, 而不关注 数据传输的 中间过程
  1. 网络层: 关注数据传输的 路径规划, 并且进行 地址的管理
  1. 数据链路层:关注数据在相邻节点之间传输的 具体的实现过程
  1. 物理层: 描述的是硬件设备,驱动程序等相关的…

小伙伴们先记住每一层都用来干什么的, 关于具体的功能原理, 小编会在后面的文章给小伙伴们细细道来, 敬请期待哦 💞 💞 💞 💞

2. 网络设备所在的分层

  1. 主机:实现了从传输层到物理层的功能, 也就是协议的下四层。
  2. 路由器:实现了从网络层到物理层的功能, 也就是协议的下三层。
  3. 交换机: 实现了从 数据链路层及以下的功能, 也就是协议下两层。
  4. 集线器: 只实现了物理层

鱼式疯言

对于一般模型来说,上述情况的满足的。

但有些真实的情况

路由器有可能在 传输层,也有可能在应用层都是有可能, 得就具体业务需要来进行划分。

总结

  1. 计算机网络初识知识: 认识到了路由器,交换机,IP地址,端口号, 局域网和广域网, 以及客户端和服务器。

  2. 网络协议的初识: 网络协议好比网络规则, 有约定有规则才能正常进行网络通信的前提, 并对协议分层进行了深刻的理解。

  3. TCP/ IP 网络协议的分层(重点知识): 熟悉TCP协议的五层模型的功能并了解了网络设备的所在的分层

如果觉得小编写的还不错的咱可支持 三连 下 (定有回访哦) , 不妥当的咱请评论区 指正

希望我的文章能给各位宝子们带来哪怕一点点的收获就是 小编创作 的最大 动力 💖 💖 💖

在这里插入图片描述

这篇关于【网络原理】从0开始学习计算机网络常识,中学生看了都能学会的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130082

相关文章

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Java Spring 中 @PostConstruct 注解使用原理及常见场景

《JavaSpring中@PostConstruct注解使用原理及常见场景》在JavaSpring中,@PostConstruct注解是一个非常实用的功能,它允许开发者在Spring容器完全初... 目录一、@PostConstruct 注解概述二、@PostConstruct 注解的基本使用2.1 基本代

Golang HashMap实现原理解析

《GolangHashMap实现原理解析》HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持高效的插入、查找和删除操作,:本文主要介绍GolangH... 目录HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

C#中async await异步关键字用法和异步的底层原理全解析

《C#中asyncawait异步关键字用法和异步的底层原理全解析》:本文主要介绍C#中asyncawait异步关键字用法和异步的底层原理全解析,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录C#异步编程一、异步编程基础二、异步方法的工作原理三、代码示例四、编译后的底层实现五、总结C#异步编程

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、