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

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 编程入门(四)【计算机网络基础(由一根网线连接两个电脑开始)】

前言

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

两个电脑如何互连呢?

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 包作为确认,双方确认关闭连接,连接断开。
    简单解释:三次握手 是建立连接时客户端和服务器之间的协商和确认步骤,确保双方都能正常通信。
    四次挥手 是断开连接时的协商和确认步骤,确保双方都知道对方要断开连接,避免数据丢失。 ↩︎
相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
13天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】32. 卷积神经网络之稠密连接网络(DenseNet)介绍及其Pytorch实现
【从零开始学习深度学习】32. 卷积神经网络之稠密连接网络(DenseNet)介绍及其Pytorch实现
|
7天前
|
Java Linux 测试技术
Java sdk连接fabric网络的谜之报错
Java sdk连接fabric网络的谜之报错
13 0
|
16天前
|
分布式计算 NoSQL 大数据
MaxCompute产品使用合集之自定义udf连接云上vpc网络的redis获取数据的步骤是什么
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
17天前
|
DataWorks 安全 API
DataWorks产品使用合集之遇到无法查看到VPC网络连接,是什么原因
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
13 1
|
2天前
|
网络协议
逆向学习网络篇:通过Socket建立连接并传输数据
逆向学习网络篇:通过Socket建立连接并传输数据
5 0
|
19天前
|
安全 数据安全/隐私保护 Docker
Docker 容器连接:构建安全高效的容器化网络生态
Docker 容器连接:构建安全高效的容器化网络生态
|
21天前
|
算法 网络架构
计算机网络: 点对点协议 PPP
计算机网络: 点对点协议 PPP
16 0
|
5天前
|
机器学习/深度学习 网络协议 网络性能优化
[计算机网络]深度学习传输层TCP协议
[计算机网络]深度学习传输层TCP协议
11 1
|
19天前
|
网络协议 C语言 网络架构
计算机网络——数据链路层-点对点协议(组成部分、PPP帧格式、透明传输、差错检测、工作状态)
计算机网络——数据链路层-点对点协议(组成部分、PPP帧格式、透明传输、差错检测、工作状态)
55 7
|
19天前
|
缓存
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)
14 0
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)

热门文章

最新文章