网络基础概念 完整讲解

发布时间:2026/6/28 4:47:39
网络基础概念 完整讲解 一、计算机网络背景网络发展计算机网络的诞生核心是解决「独立计算机无法共享资源、远距离传递信息」的问题发展历程可以概括为 4 个阶段萌芽阶段1969 年美国 ARPANET阿帕网诞生是最早的分组交换网络最初只连接 4 所大学的计算机是互联网的雏形。标准化阶段早期不同厂商的设备有各自的私有协议无法互通。70-80 年代 TCP/IP 协议簇逐步成熟1983 年 ARPANET 全面切换为 TCP/IP 协议成为互联网的通用标准不同设备终于可以统一通信。普及阶段90 年代万维网WWW出现网页、浏览器诞生互联网从科研机构走向普通用户进入民用普及期。当下阶段移动互联网、物联网普及网络从连接计算机拓展到连接手机、智能设备成为社会基础设施。二、初识协议1. 什么是协议网络协议 计算机之间通信的「约定规则」。 就像两个人对话要讲同一种语言、遵守基本的对话逻辑计算机之间收发数据也要提前约定数据按什么格式组织、先发什么后发什么、数据出错了怎么处理、对方没收到怎么补救。 所有网络通信都必须遵循协议否则双方无法识别对方的数据通信就会失败。2. 协议分层软件分层的好处网络通信是一个非常复杂的问题要处理物理信号、设备寻址、路径选择、数据可靠传输、业务数据解析…… 如果把所有逻辑写在一起维护和升级会极其困难。 分层设计的核心思想是把复杂问题拆成多个独立层次每层只负责一件事层与层通过固定接口交互。带来的核心好处有 3 个解耦易维护每层可以独立升级、替换不影响其他层。比如把网线从铜线换成光纤只改动物理层上层的网页、APP 完全不用改。降低排查难度网络出问题可以逐层定位先看网线插没插物理层、再看地址对不对网络层、再看连接通不通传输层最后看应用有没有问题。便于标准化不同厂商的设备只要遵循同层的协议标准就能互相通信不会被单一厂商绑定。生活类比寄快递的流程就是典型的分层。你只负责打包好商品交给快递员应用层快递员负责分拣、运输、派件传输 / 网络层公路 / 飞机负责物理运输物理层每层各司其职互不干扰。OSI 七层模型OSI 七层模型是国际标准化组织制定的理论参考模型定义了网络通信的完整分层标准共 7 层从上到下分别是表格层级名称核心功能第 7 层应用层直接面向用户提供具体的应用服务定义业务数据的格式比如网页、文件传输第 6 层表示层负责数据的格式转换、加密解密、压缩解压让不同设备能识别统一的数据格式第 5 层会话层负责建立、管理、断开应用之间的会话连接控制通信的开始和结束第 4 层传输层端到端的进程通信定位到具体的应用程序保证传输的可靠性 / 效率第 3 层网络层跨网络寻址、选择传输路径在全网范围内定位目标设备第 2 层数据链路层同一局域网内的数据传输通过 MAC 地址定位设备负责差错校验第 1 层物理层把数据转换成电信号、光信号、无线信号通过物理介质传输比特流TCP/IP 五层或四层模型OSI 七层是理论标准实际工业界落地使用的是TCP/IP 模型它把 OSI 的上层做了合并更贴合实际开发。五层说法应用层合并 OSI 的应用层 表示层 会话层、传输层、网络层、数据链路层、物理层四层说法把数据链路层 物理层合并为「网络接口层」即应用层、传输层、网际层网络层、网络接口层我们日常学习和开发中更常用五层模型来理解对应关系和核心协议如下表格TCP/IP 五层对应 OSI 七层核心协议 / 设备应用层应用层 表示层 会话层HTTP、HTTPS、FTP、DNS传输层传输层TCP、UDP端口号网络层网络层IP、ICMP路由器数据链路层数据链路层以太网协议交换机、网卡物理层物理层网线、光纤、无线信号三、再识协议1. 为什么要有 TCP/IP 协议早期计算机网络没有统一标准不同厂商、不同品牌的设备有各自的私有协议A 厂商的电脑无法和 B 厂商的电脑通信网络之间是割裂的。 TCP/IP 协议的出现就是为了制定一套全球通用的通信标准所有设备都遵守同一套规则不管是什么品牌、什么系统都能互联互通屏蔽底层硬件差异上层应用不用关心底层是网线还是光纤只需要基于 TCP/IP 开发即可。2. 什么是 TCP/IP 协议注意TCP/IP 不是「TCP 协议 IP 协议」两个协议而是以 TCP、IP 为核心的一整套协议簇包含了从底层到应用层的几十种协议比如 ARP、ICMP、UDP、HTTP、FTP、DNS 都属于 TCP/IP 协议簇。 它定义了数据如何封装、如何寻址、如何路由、如何保证可靠传输是整个互联网的通用语言。3. TCP/IP 协议与操作系统的关系宏观视角TCP/IP 协议栈是实现在操作系统内核中的操作系统把复杂的网络底层逻辑数据封装、路由查找、连接管理、重传控制全部封装在内核里不需要应用程序自己实现操作系统向上层应用提供统一的编程接口 —— 也就是 Socket套接字接口应用程序只需要调用 Socket 接口就能完成网络通信不用关心底层网卡怎么发数据、路由怎么选路径。简单理解操作系统内核是「网络通信的执行者」Socket 是「应用和内核之间的接口」TCP/IP 协议是「执行时遵守的规则」。4. 所以究竟什么是协议总结来说协议是通信双方预先约定好的、必须共同遵守的规则集合它明确规定了三个核心问题数据要封装成什么格式语法数据发送的顺序、什么时候该回复时序数据出错、异常时该怎么处理语义。 小到两个单片机通信大到全球互联网所有网络通信都离不开协议。四、网络传输基本流程1. 局域网络传输流程局域网以太网为例通信原理局域网指的是同一个网段内的设备组成的网络比如家庭、办公室的内网。局域网内的通信核心依靠MAC 地址和交换机完成发送方知道目标 IP但不知道目标 MAC 地址先发送一个ARP 广播包「IP 是 xxx 的设备请回复你的 MAC 地址」局域网内所有设备都能收到只有 IP 匹配的设备会回复 ARP 应答告诉发送方自己的 MAC 地址发送方把数据封装成以太网帧填上源 MAC 和目标 MAC发送给交换机交换机根据 MAC 地址表把数据帧直接转发到目标设备对应的端口完成局域网内通信。认识 MAC 地址MAC 地址物理地址是数据链路层的地址有两个核心特点全球唯一每块网卡出厂时都会烧录一个 48 位的 MAC 地址全世界没有重复相当于网卡的「身份证号」仅局域网有效MAC 地址只用来在同一个局域网内定位设备跨网络通信时MAC 地址会逐跳替换不会传到外网。数据封装和分用数据在网络中传输核心动作就是「发送端封装接收端分用」这是分层模型的直接体现封装发送端从上到下 应用层生成业务数据 → 传输层添加 TCP/UDP 头部含源目端口 → 网络层添加 IP 头部含源目 IP → 数据链路层添加帧头部含源目 MAC → 物理层转换成比特流发送出去。 每一层都会给数据加上自己的头部就像寄快递逐层套包装盒、贴标签。分用接收端从下到上 物理层收到比特流 → 链路层拆帧头、校验数据 → 网络层拆 IP 头、检查目标 IP → 传输层拆 TCP 头、匹配端口 → 最终把纯业务数据交给上层应用。 每一层只处理自己的头部处理完就拆掉把剩下的数据交给上一层。2. 跨网络传输流程跨网段、跨城市的通信需要经过路由器逐跳转发核心依靠IP 地址选路完整流程可以概括为发送方判断目标 IP 和自己不在同一网段把数据发给自己的网关路由器内网口路由器收到数据后查看 IP 头部的目标 IP查询自己的路由表选择一条最优的路径把数据转发给下一个路由器数据经过多个路由器逐跳转发最终到达目标 IP 所在的局域网目标局域网的路由器通过 ARP 找到目标设备的 MAC 地址把数据封装成帧交给目标设备。简单理解IP 地址负责「找城市、找小区」MAC 地址负责「找楼、找房间」跨网靠 IP 路由内网靠 MAC 寻址。3. 网络中的地址管理 - 认识 IP 地址IP 地址是网络层的地址作用是在全网范围内定位一台网络设备相当于网络世界的「门牌号」。我们常用的 IPv4 是 32 位二进制地址通常写成「点分十进制」格式比如192.168.1.1分成 4 段每段 0-255IP 地址分为两部分网络位标识属于哪个网段主机位标识网段内的具体设备同一个网段内的设备网络位相同可以直接通信网络位不同就必须通过路由器转发才能通信。谢谢