• 【网络原理】初始网络,了解概念


    1. 网络通信

    计算机与计算机之间是互相独立,是独立模式。这就造成计算机之间无法形成数据的共享,协同完成工作,那么网络互连便孕育而生了。
    网络互联
    将多台计算机连接在一起,形成数据共享
    数据共享的本质是网络数据传输,即计算机之间通过网络进行传输数据,也称为网络通信。
    根据连接的规模不同,可以分为局域网和广域网。

    1.1 局域网LAN

    局域网,Local Area Network,LAN。
    local是表识了局域网是本地的,是私有的,是一个内网。那么局域网内的设备可以互相通信,局域网与局域网之间如果没有连接,那么将无法通信。
    例如
    我们使用手机开热点便形成了一个小型局域网,当其他设备连接这个热点,便加入了这个局域网中,那么它们之间便可以进行传输数据,进行多人游戏……

    常见的局域网组成网络:

    1. 基于网络直连。
    2. 基于集线器(集线器(Hub)是计算机网络中用于连接多台计算机或网络设备的中心化设备。它是一个物理层设备,用于将多个设备连接在一起,以便它们可以在同一局域网上进行通信。现在几乎不在使用,被交换机取代)组建。
    3. 基于交换机(交换机(Switch)是计算机网络中的关键设备,用于连接多个计算机或网络设备,并以智能的方式在它们之间进行数据包转发。与集线器(Hub)不同,交换机工作在数据链路层(第二层),能够识别和学习设备的MAC地址,并根据需要选择性地转发数据包,以提供更高的性能和网络分段。)组建。
    4. 基于交换机和路由器(路由器(Router)是计算机网络中的网络设备,用于连接多个不同的网络,并在它们之间转发数据包,以确保数据在网络之间正确传输。路由器工作在网络层(第三层),它的主要任务是根据目标IP地址来决定如何将数据包从源网络传输到目标网络。)组建。

    1.2 广域网WAN

    广域网,Wide Area Network,WAN。
    通过路由器,将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网。广域网内部的局域网都属于其子网。
    但其实WAN和LAN的概念是相对的,广域网也可以是一个比较大的局域网。

    2. 基础概念

    2.1 IP

    概念
    IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址,通过IP地址我们可以定位到主机。
    例如:我们寄快递,IP地址就相当于我们寄的快递地址。
    格式
    IP地址通常使用32位2进制数字表示,然后被分为4组(四个字节)。
    例如:00000000.00000000.00000000.00000000。
    每个字节也可以使用10进制表示(范围0~255整数)。
    例如:
    100.22.22.22,
    特殊IP
    127.*类的IP常用于本机环回测试,就是本机与本机之间的通信,最常用的IP:127.0.0.1

    2.2 端口号

    IP地址可以确定主机位置,但是还有一个问题,一个主机上面有着许多的进程,那么我们如何保证数据是我们需要的进程接受呢?
    所以我们引入了一个端口号。
    概念:端口号可以标识主机中发送数据,接受数据的进程。
    这就相当于寄快递有了地址(IP)还是不行,我们还需要有接受人名字(端口号)。
    格式
    0~ 65535范围内的数字,在网络通信中,进程可以通过绑定一个端口号,来发送及接收网络数据。
    注意

    1. 两个不同的进程不能绑定同一个端口号,但是可以绑定多个端口号。
    2. 端口0~1023是知名端口号,已经被绑定,例如:HTTP(端口号80),FTP(端口号21),但它们仍然可以使用其他端口号。
    3. 大于1023的端口号一般用于用户定义或私有的服务。

    3. 认识协议

    在网络信息传输中,传的数据有着很大的区别,那个数据可能是照片、视频、文字等,那么格式就会不同,如何让对方知道传的是什么数据呢?
    我们便引入了协议,通过协议规定两方的数据格式。
    概念
    协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的一组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。通常由三要素组成:

    1. 语法:即数据与控制信息的结构或格式;
    2. 语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;
    3. 时序:即事件实现顺序的详细说明。

    4. 五元组

    在TCP/IP协议中,用五元组来标识一个网络通信:

    1. 源IP:标识源主机
    2. 源端口号:标识源主机中该次通信发送数据的进程
    3. 目的IP:标识目的主机
    4. 目的端口号:标识目的主机中该次通信接收数据的进程
    5. 协议号:标识发送进程和接收进程双方约定的数据格式
      1

    5. 协议分层

    协议分层就是把协议按照不同的功能分为不同层,使每层都有特色。

    5.1 分层的作用

    1. 模块化设计:将协议分为不同层次, 每一层都有特定的功能和作用,方便维护与管理。
    2. 提高互操作性:协议分层使不同设备和系统之间更容易实现互操作性,因为它们可以使用相同的协议栈来进行通信。这有助于设备来自不同供应商或开发者之间的无缝集成。
    3. 促进标准化:协议分层促进了标准化,不同厂商和组织可以基于通用的协议标准来开发设备和应用程序,从而确保一致性和可互操作性。
    4. 简化故障排除:由于每个协议层都有特定的功能,故障排除变得更加简单。如果出现问题,可以更容易地确定故障所在的层次,从而加快修复过程。
    5. 促进技术创新:协议分层鼓励技术创新,因为可以独立地开发和更新每个协议层次,而不影响其他层次的功能。
    6. 支持多种网络拓扑:不同类型的网络拓扑(如星型、总线型、网状型)可以使用相同的协议栈,因为每个层次都关注特定的任务,而不受拓扑结构的影响。
    7. 安全性和隔离:协议分层有助于安全性和隔离。例如,安全协议可以在应用层上添加加密功能,而不必修改传输层或网络层。

    最经典的网络协议分层模型OSI(开发系统互联)模型和TCP/IP模型。

    5.2 OSI七层模型

    2

    上图就是OSI模型,即复杂也不实用,所以并没有流行起来,我们最常用的协议分层还是TCP/IP五层(有时忽略物理层,也可称四层)模型。

    5.3 TCP/IP五层(四层)模型

    3

    TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。
    TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。

    1. 应用层:负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。我们的网络编程主要就是针对应用层。
    2. 传输层:负责两台主机之间的数据传输。如传输控制协议 (TCP),能够确保数据可靠的从源主机发送到目标主机。
    3. 网络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)工作在网路层。
    4. 数据链路层:负责设备之间的数据帧的传送和识别。例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作。
      有以太网、令牌环网,无线LAN等标准。交换机(Switch)工作在数据链路层。
    5. 物理层:负责光/电信号的传递方式。比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等。集线器(Hub)工作在物理层。

    6. 封装和分用

    不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。
    应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation)。
    首部信息中包含了一些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。
    数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理。

  • 相关阅读:
    react-native android图标尺寸规范
    微服务从代码到k8s部署应有尽有系列(一)
    48页数字政府智慧政务一网通办解决方案
    Java---数据库---MyBatisPlus
    性能测试_JMeter中你可能会忽略的细节点-2
    聊起日本文化大家首先会想起什么
    如何在Excel中实现三联类模板?
    git clone访问github失败
    开店星小程序上架教程和后台Request failed with status code 500[undefined]问题处理
    ESP8266-Arduino编程实例-VEML6040颜色传感器驱动
  • 原文地址:https://blog.csdn.net/weixin_73392477/article/details/133421059