【Linux】网络发展背景与协议分层模型

目录

[1. 计算机网络发展历程](#1. 计算机网络发展历程)

[1.1 独立模式](#1.1 独立模式)

[1.2 网络互联](#1.2 网络互联)

[1.3 局域网(LAN)](#1.3 局域网(LAN))

[1.4 广域网(WAN)](#1.4 广域网(WAN))

[2. 初识协议](#2. 初识协议)

[2.1 什么是协议?](#2.1 什么是协议?)

[2.2 为什么需要标准化的协议?](#2.2 为什么需要标准化的协议?)

[3. 协议分层的好处](#3. 协议分层的好处)

[4. OSI七层模型](#4. OSI七层模型)

[5. TCP/IP五层(或四层)模型](#5. TCP/IP五层(或四层)模型)

[6. 为什么要有TCP/IP协议?](#6. 为什么要有TCP/IP协议?)

[7. 协议的朴素理解](#7. 协议的朴素理解)

[8. 小结](#8. 小结)


1. 计算机网络发展历程

1.1 独立模式

早期计算机处于"独立模式",每台计算机独自运行,不与其他计算机交互。数据只能通过软盘、磁带等物理介质传递,效率低下,无法实现资源共享。

1.2 网络互联

随着需求增长,多台计算机开始连接在一起,实现数据共享。业务服务器集中管理数据,客户端可以随时访问不同业务。

1.3 局域网(LAN)

当计算机数量增多时,通过交换机 和路由器将一定范围内的计算机连接起来,形成一个局域网。局域网内的主机可以高速通信,共享文件、打印机等资源。

1.4 广域网(WAN)

将远隔千里的计算机连接在一起,形成广域网。广域网可以看作是多个局域网的互联。所谓的"局域网"和"广域网"是相对概念------一个大型广域网从内部看也可能像一个大局域网。

理解:计算机是人的工具,人与人需要协同工作,因此网络的产生是必然的。

2. 初识协议

2.1 什么是协议?

"协议"是一种约定。例如打电话时,双方约定响铃几声后接听;计算机通信中,双方必须约定好数据的格式、传输速率、校验方式等。计算机之间的传输媒介是光信号和电信号,通过"频率"和"强弱"来表示0和1。要想传递复杂信息,必须约定统一的数据格式。

2.2 为什么需要标准化的协议?
  • 存在众多计算机生产厂商、操作系统、网络硬件设备。

  • 要让这些不同厂商生产的计算机能够相互通信,必须有一个共同的标准,即网络协议。

  • 标准制定组织包括:IEEE(电气与电子工程师协会)、ISO(国际标准化组织)、ITU(国际电信联盟)、IETF(互联网工程任务组)等。

协议本质 :协议也是软件,为了模块化、解耦合,被设计成分层结构。

3. 协议分层的好处

  • 解耦合:每一层独立演进,不影响其他层。

  • 易于维护:某一层出现问题只需替换该层实现。

  • 复用性:下层为多个上层提供服务(如传输层可为多个应用层协议服务)。

举个简单例子:语言层和通信设备层分离,说话人无需关心信号传输细节。

4. OSI七层模型

OSI(Open System Interconnection)是国际标准化组织提出的开放式系统互联参考模型,将网络逻辑上分为七层:

层级 名称 功能
7 应用层 针对特定应用的协议(HTTP、FTP、SMTP等)
6 表示层 数据格式转换、加密解密、压缩解压缩
5 会话层 建立、管理、终止会话
4 传输层 端到端可靠传输(TCP、UDP)
3 网络层 路由选择、地址管理(IP)
2 数据链路层 相邻节点间数据帧传输、差错检测
1 物理层 比特流传输、电气特性定义

优点 :将服务、接口、协议三个概念明确区分,理论完整。
缺点:复杂且不实用,工程实践中会话层和表示层很难完全融入操作系统。

5. TCP/IP五层(或四层)模型

TCP/IP是一组协议的代名词,称为TCP/IP协议簇。它在工程实践中被广泛采用,分为五层:

| 层级 | 名称 | 功能 | 典型设备/协议 |
|----|-------|------------|----------------------|-----|
| 5 | 应用层 | 应用程序间沟通 | HTTP、FTP、SMTP、Telnet |
| 4 | 传输层 | 端到端数据传输 | TCP、UDP |
| 3 | 网络层 | 地址管理与路由选择 | IP、ICMP | 路由器 |
| 2 | 数据链路层 | 相邻设备间数据帧传送 | 以太网、WiFi | 交换机 |
| 1 | 物理层 | 光/电信号传输 | 双绞线、光纤、同轴电缆 | 集线器 |

  • 对于一台主机:操作系统内核实现了从传输层到物理层的内容。

  • 对于一台路由器:实现了从网络层到物理层。

  • 对于一台交换机:实现了从数据链路层到物理层(高级交换机也可能实现网络层功能)。

  • 对于集线器:只实现物理层。

很多时候我们将物理层也视为硬件细节,只关注软件相关的四层,因此也称为TCP/IP四层模型。

6. 为什么要有TCP/IP协议?

单机内部已有各种硬件协议(如内存协议、磁盘SATA/IDE/SCSI协议)。但网络通信的特点是通信距离变远,带来新问题:

  • 数据可能丢失、乱序、重复。

  • 传输路径不确定。

  • 需要统一编址和路由。

TCP/IP协议正是为解决远距离通信问题而设计的解决方案 。其分层结构正是因为这些问题本身可以分层解决。

7. 协议的朴素理解

协议本质是通信双方都认识的结构化的数据类型。例如,双方用相同的C语言结构体定义报文格式,发送方填充结构体,接收方按相同结构体解析,自然能识别数据。

c

复制代码
struct protocol {
    int a;
    int b;
    int c;
};

因为协议栈是分层的,所以每一层都有对应的协议,同层之间能够识别对方的协议格式。

扩展:实际网络协议的设计远比这个复杂,包含了版本号、首部长度、标志位、校验和等字段,但核心思想一致------双方约定格式。

8. 小结

本文介绍了计算机网络的发展历程、协议的基本概念、OSI七层模型和TCP/IP五层/四层模型,并初步理解了协议分层的好处以及协议的朴素本质。下一篇将深入讲解网络传输的基本流程,包括局域网通信原理、封装与解包、IP地址与MAC地址的区别等内容。

相关推荐
盟接之桥8 小时前
当大模型遇见线束制造:不是通用AI,而是行业AI
大数据·网络·人工智能·安全·制造
归秋1428 小时前
2026 企业 AI 办公工具选型指南:从评估框架到产品适配
大数据·运维·人工智能
Android系统攻城狮8 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛9 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德9 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
硅基手札10 小时前
【Linux内核专栏 14】网络协议栈
linux·运维·网络协议
可乐鸡翅yeah_10 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
沫璃染墨12 小时前
《Linux工程实践篇(一):认识设计模式——从日志系统看策略模式》
linux·c++·安全·设计模式·策略模式
工作10年+,存储芯片行业12 小时前
Linux NVMe 中断排查与性能优化:CPU 亲和性
linux·运维·服务器·windows·性能优化·ssd·pcie
酣大智12 小时前
H3C MSR3600 交换机配置 SSH
网络·ssh·智能路由器