计算机网络编程---发展历程、两种协议、封装与分用

目录

一、计算机网络发展历程

[1.1 网络的三个发展阶段](#1.1 网络的三个发展阶段)

[1.2 局域网 LAN 与 广域网 WAN](#1.2 局域网 LAN 与 广域网 WAN)

[二、到底什么是 "网络协议"?](#二、到底什么是 “网络协议”?)

[2.1 协议本质:一种约定](#2.1 协议本质:一种约定)

[2.2 为什么必须要有统一协议?](#2.2 为什么必须要有统一协议?)

三、协议为什么要分层?

分层最大的好处:封装

[四、两大网络模型:OSI 七层 & TCP/IP 五层](#四、两大网络模型:OSI 七层 & TCP/IP 五层)

[4.1 OSI 七层模型(理论模型)](#4.1 OSI 七层模型(理论模型))

[4.2 TCP/IP 五层模型(实际使用)](#4.2 TCP/IP 五层模型(实际使用))

1)应用层

2)传输层

3)网络层

4)数据链路层

5)物理层

[4.3 设备与层级对应关系(**)](#4.3 设备与层级对应关系(**))

五、网络传输基本流程:封装与分用

[5.1 数据在各层的名字](#5.1 数据在各层的名字)

[5.2 什么是封装(Encapsulation)](#5.2 什么是封装(Encapsulation))

​编辑

[5.3 什么是分用(分用)](#5.3 什么是分用(分用))

[六、网络中的地址管理:IP 地址 & MAC 地址](#六、网络中的地址管理:IP 地址 & MAC 地址)

[6.1 IP 地址](#6.1 IP 地址)

[6.2 MAC 地址](#6.2 MAC 地址)

七、本节重点总结


一、计算机网络发展历程

1.1 网络的三个发展阶段

计算机网络并不是一夜之间出现的,它的发展经历了从独立到互联、从分散到集中的清晰过程。

独立模式最早的计算机之间完全相互独立,没有任何连接。一台电脑的数据无法传给另一台,数据共享只能靠 U 盘、磁盘等物理介质,效率极低。

网络互联 人们把多台计算机用通信设备连接在一起,实现数据互通与资源共享。这是网络最核心的目的:打破设备隔离,让信息自由流动。

集中式服务器模式随着业务变复杂,进入多用户、多业务共用服务器的模式。

每个人使用自己独立的计算机

业务 1、业务 2、业务 3 可以随时自由切换

共享数据统一由服务器集中管理

1.2 局域网 LAN 与 广域网 WAN

  1. LAN(局域网) 覆盖范围小,比如家庭、教室、公司、园区。计算机数量较多,通过交换机、路由器连接,传输速度快、延迟低、稳定性高。

  2. **WAN(广域网)**覆盖范围极大,跨城市、跨省、跨国,把远隔千里的计算机连在一起。依靠运营商骨干网、光纤、卫星等远距离传输技术。

  3. 局域网和广域网只是相对概念。比如某些大规模的内部网络,虽然范围很广,但从架构上看,也可以看作一个超大号局域网。

二、到底什么是 "网络协议"?

2.1 协议本质:一种约定

计算机之间只能传输光信号、电信号,用电压高低、频率强弱表示 0 和 1。只靠 0101 乱传,双方根本不知道对方在说什么。

要想准确传递文字、图片、视频,通信双方必须提前约定:

  • 数据用什么格式
  • 什么时候开始发
  • 什么时候结束
  • 出错了怎么办这种双方必须遵守的约定 ,就是协议

2.2 为什么必须要有统一协议?

你可能会想:只要两台电脑自己约定协议不就行了吗?现实中完全不行,因为:

  • 计算机厂商非常多(联想、戴尔、华为、苹果......)
  • 操作系统非常多(Windows、macOS、Linux、Android......)
  • 网络硬件设备非常多(交换机、路由器、网卡、光猫......)

如果没有统一标准,不同设备之间就像说不同方言的人 ,完全无法沟通。所以必须有人站出来,制定一套通用、公开、所有人都遵守的标准 ,这就是网络协议

网络协议是互联网的 "普通话",是全球设备互通的基础。

三、协议为什么要分层?

实际网络通信极其复杂,如果把所有功能堆在一起,代码会混乱不堪、无法维护。所以人们想到一个办法:分层

分层就像把一个大任务,拆成多个小任务,每层只干一件事。用打电话举例:通信只需要两层逻辑,而真实网络要分更多层。

分层最大的好处:封装

  • 每一层只关注自己的功能,不用管下层怎么实现
  • 一层修改,不会影响其他层
  • 易理解、易实现、易调试、易替换这和面向对象的封装思想完全一致。

正是因为分层,网络才能不断迭代发展,而不会彻底重构。

四、两大网络模型:OSI 七层 & TCP/IP 五层

4.1 OSI 七层模型(理论模型)

OSI 全称 Open System Interconnection (开放系统互连),是一个国际标准的理论框架 。它把网络逻辑上分成 7 层,概念清晰、理论完整,但太复杂、不实用,现实中几乎不用。

层级 名称 核心功能
7 应用层 给应用程序使用的协议(邮件、远程登录、文件传输)
6 表示层 数据格式转换,把设备格式转成网络标准格式
5 会话层 建立、管理、断开通信连接
4 传输层 保证节点之间可靠传输,检查数据是否丢失
3 网络层 地址管理,选择传输路由
2 数据链路层 传输数据帧,0101 与帧之间转换
1 物理层 光电信号、网线、接口规范,传输 0/1 比特流

OSI 的优点是把服务、接口、协议 分得很清楚,但因为过于臃肿,最终被更简洁的 TCP/IP 模型取代。

4.2 TCP/IP 五层模型(实际使用)

我们学习、开发、面试全部用这个模型 。TCP/IP 不是一个协议,而是一大家族协议的统称 ,叫 TCP/IP 协议簇。

从上到下共 5 层:

1)应用层
  • 负责应用程序之间的沟通
  • 常见协议:HTTP、FTP、SMTP、Telnet、SSH 等
  • 我们写网络编程,主要面对这一层
2)传输层
  • 负责两台主机之间的数据传输
  • 保证数据可靠 / 不可靠送达
  • 核心协议:TCP(可靠)、UDP(不可靠)
3)网络层
  • 负责地址管理与路由选择
  • 用 IP 地址标识主机
  • 规划数据从源到目标的传输路径
  • 核心协议:IP、ICMP
  • 设备:路由器
4)数据链路层
  • 负责设备之间的数据帧传送与识别
  • 帧同步、冲突检测、差错校验
  • 标准:以太网、WiFi
  • 设备:交换机
5)物理层
  • 负责光 / 电信号传递
  • 网线、光纤、WiFi 电磁波、接口规范
  • 决定速率、距离、抗干扰能力
  • 设备:集线器 Hub

很多时候会把物理层 + 数据链路层合并,称为 TCP/IP 四层模型

4.3 设备与层级对应关系(**)

  • 主机(电脑 / 手机):操作系统实现 传输层及以下所有层
  • 路由器:实现 网络层~物理层
  • 交换机:实现 数据链路层~物理层
  • 集线器:只实现 物理层

注意:这是一般情况,不是绝对。现实中很多三层交换机具备网络层能力,很多路由器也具备端口转发(传输层)能力。

五、网络传输基本流程:封装与分用

这是网络通信最核心的流程,面试、考试必考。

5.1 数据在各层的名字

  • 传输层:段(Segment)
  • 网络层:数据报(Datagram)
  • 链路层:帧(Frame)

5.2 什么是封装(Encapsulation)

发送数据时,数据从上层 → 下层 传递。每经过一层,就加上该层的首部(Header),这个过程叫封装。

过程:

  1. 应用层生成原始数据
  2. 传输层加 TCP/UDP 头 → 变成
  3. 网络层加 IP 头 → 变成数据报
  4. 链路层加帧头帧尾 → 变成最后变成 0/1 比特流,从物理层发送到网线上。

首部里包含关键信息:

  • 首部长度
  • 数据长度
  • 上层协议类型
  • 源 / 目标地址
  • 校验信息

5.3 什么是分用(分用)

接收数据时,数据从下层 → 上层 传递。每经过一层,就剥掉对应层的首部,根据头部信息交给上一层处理。

最终,纯数据交给应用程序。

一句话记忆: 发送方:层层加头(封装) 接收方:层层剥头(分用)

同一网段内的设备通信,直接经过交换机转发。跨网段通信,必须经过路由器转发。

六、网络中的地址管理:IP 地址 & MAC 地址

网络能准确把数据发给目标设备,全靠两种地址:IP 和 MAC

6.1 IP 地址

  • 工作在 网络层
  • 作用:标识网络中的一台主机
  • 版本:IPv4(主流)、IPv6
  • IPv4 是 32 位(4 字节)整数
  • 表示方式:点分十进制,如 192.168.0.1每一段范围 0~255,共 4 段。

6.2 MAC 地址

  • 工作在 数据链路层
  • 作用:标识链路上的一个设备(网卡)
  • 长度:48 位(6 字节)
  • 表示:16 进制,用冒号分隔,如 08:00:27:03:fb:19
  • 特点:网卡出厂时固化,全球唯一(虚拟机除外)

简单理解:

  • IP 地址:定位主机在哪(网络层)
  • MAC 地址:定位设备是谁(链路层)

七、本节重点总结

  1. 网络发展三阶段:独立 → 互联 → 服务器集中共享
  2. 局域网(小范围)、广域网(大范围)是相对概念
  3. 协议 = 通信约定,必须统一标准才能互通
  4. 分层 = 模块化 = 封装,降低复杂度、易维护
  5. TCP/IP 五层(必考):应用层 → 传输层 → 网络层 → 数据链路层 → 物理层
  6. 设备层级:Hub(物理)、Switch(链路)、Router(网络)
  7. 发送:封装 (层层加头);接收:分用(层层剥头)
  8. IP 标识主机(网络层),MAC 标识网卡(链路层)
相关推荐
JS_SWKJ1 小时前
攻防升级下,网闸与光闸的创新突围——2026年网络安全隔离行业新趋势及产品实践
网络·安全·web安全
.select.1 小时前
TCP 7 (滑动窗口,流量控制)
服务器·网络·tcp/ip
@insist1231 小时前
网络工程师-交换机核心配置完全指南
运维·服务器·网络·网络工程师·软考·软件水平考试
@insist1231 小时前
网络工程师-路由器与动态路由协议配置全解
网络·智能路由器·网络工程师·软考·软件水平考试
齐潇宇1 小时前
LVS 基线检查与安全加固指南(附案例)
服务器·网络·php
sun0077001 小时前
android的qos
网络
极客范儿2 小时前
华为HCIP网络工程师认证—设备管理和路由基础
网络·华为
菜菜小狗的学习笔记2 小时前
八股(五)计算机网络
计算机网络
木井巳2 小时前
【网络原理】初识相关概念
网络·网络协议·tcp/ip·http·https·udp