编程入门(四)【计算机网络基础(由一根网线连接两个电脑开始)】

news2024/12/23 19:43:08

读者大大们好呀!!!☀️☀️☀️

🔥 欢迎来到我的博客
👀期待大大的关注哦❗️❗️❗️
🚀欢迎收看我的主页文章➡️寻至善的主页

文章目录

  • 前言
  • 两个电脑如何互连呢?
  • 集线器、交换机与路由器
  • 总结

前言

当你有一跟网线和两台计算机💻时,你会不会想我如何让这两台电脑互联(通信)呢?本文将通过上述网络中所遇到的实际问题,来介绍解答计算机网络的基本概念与知识。

两个电脑如何互连呢?

1、什么是计算机

百度百科的解释是:现代用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。
详细的了解计算机,大大们可以移步笔者的另外一篇博客计算机基础二

2、什么是网线

网线是一种用于计算机网络中传输数据的通信介质,它允许网络设备之间进行数据交换。
网线通常由金属(如铜)或玻璃制成,其主要类型包括双绞线、同轴电缆和光纤电缆。双绞线是由多对相互缠绕的绝缘铜线组成,这种设计可以有效抵抗电磁干扰,由于其成本低廉,被广泛应用于局域网(LAN)环境中。
同轴电缆则以其较强的抗干扰能力,在闭路电视和其他要求较高传输质量的场合中使用。光纤电缆则因其保密性好、传输速度快的特点,常用于要求高带宽和长距离传输的场合。
此外,

本文主要介绍双绞线:

网线也被称为双绞线,是因为它由两两对绞的四对双绞线和塑料外被组成,主要用于终端设备和接入层交换机之间的连接。随着网络规模的扩大,网线的重要性也越来越显著。

🚀网线的两种接法:
🔥直通法:两头同为568A标准1 或568B标准2一般常用568B标准的线序,这种接线方法用于不同设备之间的互连。
🔥交叉法:一头为568A标准一头为568B标准,这种接线方法用于同种设备相连。

计算机用网线连接起来,应该采用交叉法连接的网线,两者便可以共连了:

两者共连

集线器、交换机与路由器

1、当多台电脑互连时

我们可以两台电脑之间两两连接,但是这样的话就太麻烦了,于是集线器就出现了。
🚗集线器
一种用于连接多台计算机或其他网络设备的网络硬件设备。也被称为多端口的中继器,是一种用于局域网3(LAN)环境的物理层4设备。
集线器的主要功能包括对接收到的信号进行再生、整形和放大,以扩大网络的传输距离,并且将所有节点集中在一个中心点周围。

集线器虽然把多台电脑互连了,但是它还是有缺陷的:
1️⃣每次发送的消息,都会发给在该台集线器上的所有电脑。
2️⃣多台电脑发送信息时,会造成信息干扰,导致数据混乱。
因此更好的设备交换机出现了。
✈️交换机
交换机(Switch)是一种网络硬件设备,用于电信号转发的网络设备,可以为接入交换机的任意两个网络节点提供电信号通路。
交换机工作在数据链路层5,它基于MAC地址进行寻址,允许连接到交换机的设备之间进行直接通信。交换机有多个端口,每个端口都具有桥接功能,可以连接一个局域网、一台高性能服务器或工作站。交换机可以分为广域网交换机和局域网交换机,常见的交换机类型包括以太网交换机、电话语音交换机和光纤交换机。
上面有提到三个名词:MAC地址、局域网、广域网6
下面笔者来解释一下:
🔥MAC地址:MAC地址(Media Access Control address)是一个用于唯一标识网络设备(如计算机、手机、路由器等)的地址。MAC地址通常被硬件设备固化在网络适配器的网卡中,每个网络设备都有一个唯一的MAC地址。
接入交换机的设备都有自己的MAC地址(出厂时MAC地址已经设定好了)。
根据交换机工作原理:
👉接收数据包:当交换机接收到一个数据包时,会检查数据包中的目标MAC地址。
⬇️
👉学习MAC地址:如果交换机之前未曾接收过发件人的MAC地址,则会将发件人的MAC地址和其接收端口之间建立映射关系,并存储在MAC地址表(也称为转发表)中。
⬇️
👉转发数据包:根据目标MAC地址在MAC地址表中查找对应的接收端口,然后将数据包仅转发到目标端口,而不会洪泛7整个网络。

2、多台交换机连接时

因为当设备网卡(含有MAC地址)更换时,交换机要重新获取MAC,便用到了IP地址,可根据ARP协议8便是IP地址映射到MAC地址的协议,计算机里面MAC地址与IP地址绑定的数据表则是ARP记录表。
由于交换机的泛洪特性,我们可以用多个交换机连接起来,但是当网络规模大了以后,交换机由于把每个经过的MAC地址都保存起来,当联网设备巨量时导致交换机的MAC地址表无法容纳,而且交换机的全网泛洪会导致通信效率降低。
为了提高网络效率我们希望将网络隔离开来,把网络分成不同的网段,交换机只用来传输同一网段的消息,于是子网掩码出现了。为了下文对路由器及相关协议的了解,现在笔者来解释一下IP地址与子网掩码
IP地址是互联网中用于标识和定位设备的地址。它在网络通信中扮演着至关重要的角色.
子网掩码(Subnet Mask)是用于划分IP地址中网络部分和主机部分的32位二进制数。它与IP地址一起使用,帮助确定本地网络中主机的数量以及将IP地址分为网络地址和主机地址两部分。
IP地址和子网掩码“与”运算:确定IP地址的网络部分,以此划分网络。
IP地址和子网掩码“或”运算:确定网络的广播地址,用于向网络内的所有主机发送数据包。
根据运算判断是否为当前网段,还是外网,对于发往外网的消息,交换机将交给专门的设备帮忙转发,这个设备便是路由器。
🚀路由器:路由器是计算机网络中的关键设备,负责在不同网络之间传输数据包。
路由器工作原理:
🔥数据交换:路由器通过查找路由表中的信息,决定如何将数据包从源主机传输到目的主机。
👇
🔥数据转发:根据目的IP地址和子网掩码,路由器选择最佳路径将数据包转发到下一跳路由器或目的主机。
👇
🔥路由选择:路由器通过路由选择协议学习网络拓扑和动态路由信息,更新路由表以实现最佳路径选择。

3、路由与路由相连时

下面介绍一下上文提到的物理层、数据链路层、传输层(OSI模型)9的ISO协议来引出后面的OSPF、BGP、UDP等协议.
ISO协议:ISO协议指的是国际标准化组织(ISO)制定的各种网络通信协议标准。其中最著名的是OSI(开放系统互联)参考模型,由ISO提出并被广泛接受。这个模型将计算机网络通信分为七个层次,每个层次处理不同的网络功能,用来规范不同设备之间的通信。
OSPF协议:
OSPF(开放最短路径优先)协议是一种用于在IP网络中路由数据包的动态路由协议。简单来说,OSPF协议就像是一个帮助数据包找到最短路径的GPS导航系统。
就像你开车要选择最短路线一样,OSPF协议帮助互联网上的路由器决定如何最快地将数据包从发送方传送到接收方。它通过在网络中传播路由信息、计算最佳路径和更新路由表来实现这一目的。
所以,可以将OSPF协议看作是一种帮助路由器交通指引的“导航系统”,它通过动态决定最短路径,确保数据包能够快速准确地到达目的地。
👇
BGP协议:BGP(边界网关协议)是用于互联网中不同自治系统之间交换路由信息的协议。可以将BGP协议看作是互联网世界中的“外交协议”。
在互联网中,不同的网络都属于不同的自治系统(AS),类似于不同的国家。BGP协议就像是各个国家之间签订的协议,用于交换如何到达对方国家的路由信息。
当一个自治系统需要发送数据到另一个自治系统时,它会通过BGP协议向其他自治系统的边界路由器发送路由更新信息,以便选出最佳路径。这样就像是不同国家之间协商选择最佳的国际航线一样。
因此,BGP协议可以被理解为帮助互联网中不同自治系统之间协商和选择最佳路径的“外交协议”,确保数据能够按照最有效的方式在全球范围内传输。
👇
UDP协议:UDP 是一种简单的传输层协议,它提供了无连接、不可靠、无序的数据传输。UDP适用于那些对数据传输实时性要求较高、能够容忍少量数据丢失的应用场景。UDP协议不提供数据包的重传、排序和拥塞控制等功能,因此速度较快,但数据传输的可靠性较差。
👇
TCP/IP协议10:TCP/IP 是一组协议的集合,其中 TCP 是传输层协议,IP 则是网络层协议。TCP 提供了面向连接、可靠、有序的数据传输,它负责数据包的拆分、重组、排序和重传等功能,以确保数据的可靠传输。TCP 在数据传输过程中实现了流量控制和拥塞控制,但相对于 UDP,TCP 的传输效率会稍低。
👇
NET协议:网络地址转换(NAT)协议是一种用于在网络数据包传输过程中修改IP地址信息的协议。它允许多台设备在一个内部网络中共享一个外部可见的IP地址。这样,拥有私有IP地址的设备可以通过一个公共IP地址从内部网络访问互联网。
NAT的原理是将发送出去的数据包的源IP地址和端口号转换为NAT设备的公共IP地址和一个唯一的端口号。当返回响应时,NAT设备将目标IP地址和端口号转换回请求设备的内部私有IP地址和端口号。
通过NAT协议,内部网络中的多个设备可以共享一个公共IP地址,为IPv4地址的有限资源提供了节约,同时也为私有网络提供了额外的安全保护。

总结

本文从计算机相连 开始,到后面越来越复杂的连接与协议,了解了协议的用处,以及出现的原因。

✈️✈️✈️如果喜欢这篇文章的话

🙏大大们可以动动发财的小手:
👉👉👉 点赞:👍收藏:⭐️评论:✍️👈👈👈


  1. 白绿、绿、白橙、蓝、白蓝、橙、白棕、棕。 ↩︎

  2. 橙白、橙、绿白、蓝、蓝白、绿、棕白、棕。 ↩︎

  3. 局域网(Local Area Network(LAN))是一个可连接住宅,学校,实验室,大学校园或办公大楼等有限区域内计算机的计算机网络。 ↩︎

  4. 它工作在OSI(开放系统互联参考模型)的第一层,即物理层 ↩︎

  5. OSI参考模型的第二层 ↩︎

  6. 广域网(Wide Area Network,简称 WAN)是一个广大地理范围内连接多个局域网(LAN)和城域网(MAN)的计算机网络。广域网通常覆盖跨越城市、国家甚至全球各地的范围,用于连接远距离地点的计算机和网络设备,实现数据通信和资源共享。 ↩︎

  7. 当交换机在MAC地址表中找不到目标MAC地址对应的接收端口时,它会执行一个称为“泛洪”的操作。泛洪是指交换机将数据包通过除接收端口外的所有其他端口都发送一遍,以确保数据包能够到达目标设备。在目标设备回应后,交换机会学习新设备的MAC地址,并更新其MAC地址表,从而实现直接通信。 ↩︎

  8. ARP(Address Resolution Protocol,地址解析协议)是网络通信中用于将IP地址映射为MAC地址的协议,其作用是在局域网中根据目标IP地址找到对应的MAC地址,以实现数据包在局域网内的正确传输。 ↩︎

  9. 物理层:负责传输数据比特流,涉及硬件设备和物理介质。
    数据链路层:负责帧的传输和错误检测,确保数据传输的可靠性。
    网络层:负责实现数据包的路由选择和跨网络的数据传输。
    传输层:提供端到端的通信和数据传输控制。
    会话层:负责建立、管理和终止会话,进行数据交换控制。
    表示层:负责数据的加密、压缩和格式转换,确保不同系统间数据交换的兼容性。
    应用层:提供应用软件和用户之间的接口,实现特定应用的功能。 ↩︎

  10. TCP 三次握手(Three-Way Handshake)
    第一步 - 发起连接:客户端向服务器发送一个请求连接的数据包,这个过程称为 SYN(同步)包。客户端告诉服务器自己要建立连接。
    第二步 - 确认连接:服务器收到客户端的 SYN 包后,会发送一个 SYN-ACK 包作为应答,表示已收到连接请求,并同意建立连接。
    第三步 - 完成连接:客户端再向服务器发送一个 ACK 包,表示收到了服务器的确认,连接建立完成,可以开始数据传输了。
    TCP 四次挥手(Four-Way Handshake)
    第一步 - 主动关闭:当客户端或服务器想关闭连接时,先发送一个 FIN 包给对方,表示不再发送数据。
    第二步 - 确认关闭请求:接收到 FIN 包的一方会发送一个 ACK 包作为确认,表明已收到关闭请求。
    第三步 - 被动关闭:对方发送 FIN 包,表示自己也准备关闭连接。
    第四步 - 确认关闭:接收到 FIN 包的一方会发送一个 ACK 包作为确认,双方确认关闭连接,连接断开。
    简单解释:三次握手 是建立连接时客户端和服务器之间的协商和确认步骤,确保双方都能正常通信。
    四次挥手 是断开连接时的协商和确认步骤,确保双方都知道对方要断开连接,避免数据丢失。 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1605352.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【IC前端虚拟项目】接口分析与agent组件生成

【IC前端虚拟项目】数据搬运指令处理模块前端实现虚拟项目说明-CSDN博客 到目前为止关于环境的准备工作都已经完成了,甚至验证环境的大体结构我们也已经画好了,再来看一下: 于是乎呢就可以大张旗鼓的开始咱们验证环境的搭建了!看上面这个结构图,里面除了mvu作为DUT,其他…

【C语言】冒泡排序算法详解

目录 一、算法原理二、算法分析时间复杂度空间复杂度稳定性 三、C语言实现四、Python实现 冒泡排序(Bubble Sort)是一种基础的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列…

HackMyVM-BaseME

目录 信息收集 arp nmap WEB web信息收集 gobuster hydra 目录检索 ssh 提权 get user sudo base64提权 get root 信息收集 arp ┌─[rootparrot]─[~/HackMyVM] └──╼ #arp-scan -l Interface: enp0s3, type: EN10MB, MAC: 08:00:27:16:3d:f8, IPv4: 192.168…

机器人的非接触式充电和无线充电有什么区别?

文 | BFT机器人 在日新月异的技术浪潮中,接触式与非接触式无线充电之间的微妙差异变得愈发重要,这如同在纷繁复杂的迷雾中增添了一层难以捉摸的迷离。而今,一些所谓的“无线”充电站纷纷涌入市场,它们自诩为无需线缆束缚的新时代…

在线预约家政服务小程序上门服务源码系统 带完整的安装代码包以及搭建教程

随着互联网的快速发展,家政服务行业也逐渐向线上化、智能化转型。为了满足广大用户的需求,罗峰给大家分享一款在线预约家政服务小程序上门服务源码系统。该系统不仅功能完善,而且操作简单,是您打造高效、便捷的家政服务平台的首选…

【uniapp踩坑记】——微信小程序转发保存图片

关于微信小程序转发&保存图片 微信小程序图片转发保存简单说明网络图片的转发保存base64流形式图片转发保存 已经好多年没写博客了,最近使用在用uniapp开发一个移动版管理后台,记录下自己踩过的一些坑 吃相别太难看,搞一堆下头僵尸号来点…

Elasticsearch Windows上安装

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能…

python二级题目-仅使用 Python 基本语法,即不使用任何模块,编写 Python 程序计算下列数学表达式的结果并输出,小数点后保留 3 位。

x(((3**4)5*(6**7))/8)**0.5 .format 用法一: print({}.format(1)) 1 print(这个是format的用法{}。。。.format(3)) 这个是format的用法3 ’大括号1:{},大括号2:{},大括号3:{}‘.format(3,4,5) print(’大括号1:{},大括号2:{},大括号3:{}‘.form…

github,raw.githubusercontent.com 等网址登陆不上不去的设置方法

目录 提示域名解析错误: 出现的现象: 解决办法:修改host host改完不生效 解决方案1: 解决方案2: 提示域名解析错误: 出现的现象: 登陆github,raw.githubusercontent.com 等网…

Vue接收接口返回的mp3格式数据并支持在页面播放音频

一、背景简介 在实际工作中需要开发一个转音频工具,并且能够在平台页面点击播放按钮播放音频 二、相关知识介绍 2.1 JS内置对象Blob Blob对象通常用于处理大量的二进制数据,可以读取/写入/操作文件、音视频等二进制数据流。Blob表示了一段不可变的二…

第21天:信息打点-公众号服务Github监控供应链网盘泄漏证书图标邮箱资产

第二十一天 一、开发泄漏-Github监控 1.短期查看 1.密码搜索 根据攻击目标的域名在GitHub上进行搜索密码,如果目标网站的文件与搜索到的源码相关,那就可以联想目标网站是否使用这套源码进行开发 原理就是开发者在上传文件的时候忘记更改敏感文件或者…

Arduino源代码(ino)在Proteus中调试总结

一、前言 基于BluePill Plus开发板(该板是毕设网红板) BluePill Plus / WeAct Studio 微行工作室 出品 BluePill-Plus/README-zh.md at master WeActStudio/BluePill-Plus GitHub 首页-WeAct Studio-淘宝网 (taobao.com) 在Proteus中对应的例子是&…

解决vue启动项目报错:npm ERR! Missing script: “serve“【详细清晰版】

目录 问题描述问题分析和解决情况一解决方法情况二(常见于vue3)解决方法情况三解决方法 问题描述 在启动vue项目时通常在控制台输入npm run serve 但是此时出现如下报错: npm ERR! Missing script: "serve" npm ERR! npm ERR! T…

优思学院|分析过程能力Cpk时出现双峰是什么原因?

当你在分析过程能力指数Cpk时,遇到了数据分布呈现出双峰的情况,这通常意味着什么呢?让我们一探究竟。 在统计分析中,如果一个数据集中的频率分布图显示出两个明显的峰值,这种现象被称为双峰分布。这意味着数据可能来源…

vim相关指令

vim的各种模式及其转换关系图 vim 默认处于命令模式!!! 模式之间转换的指令 除【命令模式】之外,其它模式要切换到【命令模式】,只需要无脑 ESC 即可!!! [ 命令模式 ] 切换至 [ 插…

pyskl手势/动作识别的实现与pytorch cuda环境部署保姆教程

恭喜你,找到这篇不需要翻墙就能够成功部署的方法。在国内布置这个挺麻烦的,其他帖子会出现各种问题不能完全贯通。便宜你了。。 实话5年前我用1080训练过一个基于卷积和ltsm的手势识别,实话实说感觉比现在效果好。是因为现在的注意力都在tra…

CSS基础常用属性之颜色(如果想知道CSS的颜色知识点,那么只看这一篇就足够了!)

前言:在我们学习CSS的时候,主要学习选择器和常用的属性,而这篇文章讲解的就是最基础的属性——颜色。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 目录 1.颜色属性 【1】使用颜色关键词表…

JVM修炼之路【10】- 垃圾回收器和垃圾回收算法

垃圾回收算法 我们先简要看一下 四种主要的垃圾回收算法 看到这不禁感慨一下 人家1960年 都搞出GC算法了 太强了 评价标准 既然有这么多算法 那就跟各个牌子的游戏本一样 有个比较,这里我们重点介绍一下 垃圾回收算法的评价标准 这几个标准非常重要是 是后面理解很…

python基础——类【类的定义和使用、魔术方法】

📝前言: python中的类,自我感觉在某种程度上和C语言的结构体是有共同之处的,如果有兴趣,可以先看看这篇文章:C语言——结构体类型(一),先了解一下C语言中的结构体&#x…

Linux debian gdb dump

1.开发背景 记录 debian 下应用程序崩溃调试方法 2.开发需求 程序越界可以定位到越界的位置附近 3.开发环境 debian 操作系统,如果不支持需要查看是否存在对应的可执行文件 4.实现步骤 4.1 设置 dump 输出大小 ulimit -c unlimited # 设置输出大小 生成core 文…