【网络原理】从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. 降低学习协议的成本 , 只需要关注 某一层相关的功能的实现细节不用关注 其他层的协议的实现细节。
  2. 降低了耦合性 , 从而减少了每层协议之间的 相互影响 , 并且能灵活更改其他层的协议的实现。

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

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

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

1. TCP/ IP 协议分层

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

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

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

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

2. 网络设备所在的分层

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

鱼式疯言

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

但有些真实的情况

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

总结

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

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

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

如果觉得小编写的还不错的咱可支持 三连 下 (定有回访哦) , 不妥当的咱请评论区 指正
希望我的文章能给各位宝子们带来哪怕一点点的收获就是 小编创作 的最大 动力 💖 💖 💖

相关推荐
幺零九零零1 小时前
【计算机网络】TCP协议面试常考(一)
服务器·tcp/ip·计算机网络
dayouziei2 小时前
java的类加载机制的学习
java·学习
热爱跑步的恒川2 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
云飞云共享云桌面2 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
音徽编程5 小时前
Rust异步运行时框架tokio保姆级教程
开发语言·网络·rust
dsywws5 小时前
Linux学习笔记之vim入门
linux·笔记·学习
晨曦_子画6 小时前
3种最难学习和最容易学习的 3 种编程语言
学习
长安初雪6 小时前
Request 和 Response 万字详解
计算机网络·servlet
幺零九零零6 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
城南vision6 小时前
Docker学习—Docker核心概念总结
java·学习·docker