网络通信原理


文章目录




为什么http是应用层而不是传输层,不也是根据端口吗

HTTP协议确实会涉及到端口(通常是80或443),但将其划归为​​应用层​​而非​​传输层​​的核心原因在于:​​端口的使用目的、协议的核心任务以及它们在网络通信模型中扮演的角色有本质区别​​。

网络分层模型与各层职责

要理解这个问题,首先需要了解网络分层的概念。当前的互联网架构主要基于TCP/IP模型,不同的协议各司其职,共同完成一次网络通信。

从这个表格可以看出,​​传输层​​的核心是建立​​主机上不同应用程序进程之间​​的通信渠道。它通过端口号来区分同一台主机上的不同服务(例如,80端口分配给Web服务,21端口分配给FTP服务)。而​​应用层​​协议则决定了这些被传输的数据的​​具体格式和含义​​。
端口的不同角色:寻址 vs. 服务定义

你提到的端口是关键切入点,但HTTP和TCP/UDP使用端口的目的不同:

​​传输层(TCP/UDP)使用端口​​:是为了​​寻址​​。端口号像一个公司大楼里的具体房间号,传输层确保数据包能送到目标主机上的正确"房间"(即应用程序进程)。但它不关心"房间"里具体干什么。

应用层协议(如HTTP)与端口绑定​​:这是一种​​约定俗成的服务定义​​。约定Web服务默认在80端口"开门迎客"。HTTP协议本身并不负责建立和管理端口连接,这个任务是由传输层的TCP完成的。HTTP只是"占用"了这个端口,并定义了在这个端口上进行通信的​​语言规则​​。

HTTP是"内容"的规范者,而TCP是"通道"的维护者​​。HTTP之所以是应用层协议,不是因为它用了端口,而是因为它关心的是传输的​​内容是什么​​以及​​如何处理这些内容​​。端口号只是它"租用"传输层服务的一个地址标识。

为什么有多种模型

OSI 七层模型:理想的"理论蓝图"

OSI模型是由国际标准化组织 在20世纪80年代提出的一个理论参考模型。它的目标是成为一个全球通用的、严谨的网络互联标准,让所有厂商都按照这个标准来生产设备,从而实现完美的互联互通。
为什么是7层?

OSI模型的设计者采用了一种"分而治之"的思想,将复杂的网络通信过程按照功能进行了非常精细的划分。每一层只负责一个相对独立的功能,并为上一层提供服务。

物理层:比特流的传输。

数据链路层:在相邻节点间进行可靠的数据帧传输。

网络层:负责寻址和路由,实现从源到目的地的数据传送。

传输层:提供端到端的可靠或不可靠传输。

会话层:建立、管理和终止应用程序之间的会话。

表示层:负责数据格式转换、加密解密、压缩解压缩。

应用层:为应用程序提供网络服务接口。

关键点:OSI模型非常严谨和完整,但它太复杂、太理想化了。制定过程缓慢,等到它出来时,一个更简单、更实用的协议族------TCP/IP------已经在现实中大规模部署和应用了。所以,OSI模型从未被真正实现过,但它作为一个教学工具和理论框架,至今仍然无比重要。


TCP/IP 四层模型:现实的"实践王者"

TCP/IP模型源于美国国防部的ARPANET项目,它是从实践中诞生并发展起来的。它的设计原则是"实用至上",目标是简单、高效、能容忍故障。
为什么是4层?

TCP/IP模型没有拘泥于理论,而是将功能相近的层进行了合并,形成了一个更简洁的架构。

网络接口层:对应OSI的物理层和数据链路层。它负责在本地网络媒介上传输数据帧(如以太网帧、Wi-Fi帧)。

网际层:对应OSI的网络层。核心协议是IP,负责将数据包从源主机跨越多个网络送到目标主机。

传输层:对应OSI的传输层。核心协议是TCP和UDP,负责端到端的通信。

应用层:对应OSI的会话层、表示层和应用层。所有应用程序的协议都在这里,如HTTP、FTP、SMTP、DNS等。

关键点:TCP/IP模型就是互联网本身使用的协议架构。因为它先于OSI模型被广泛部署,并且简单有效,所以它赢得了"协议战争",成为了事实上的国际标准。


五层模型:教学中的"最佳折衷"

五层模型是为了教学和理解的方便,而将OSI模型和TCP/IP模型融合后的产物。它既保留了OSI模型的清晰层次结构,又反映了TCP/IP协议族的实际组成。
为什么是5层?

它采用了TCP/IP的四层结构,但将其中比较笼统的"网络接口层"重新拆分为OSI的"物理层"和"数据链路层",使得网络硬件的讨论更加清晰。同时,它和TCP/IP一样,将OSI的上三层合并为一个"应用层"。

物理层

数据链路层

网络层(核心协议:IP)

传输层(核心协议:TCP, UDP)

应用层(包含所有应用协议,如HTTP)

关键点 :五层模型是目前计算机网络教材中最常用的模型。因为它:比OSI七层模型更贴近现实(TCP/IP)。

比TCP/IP四层模型在讲解底层网络技术(如交换机、网卡)时更清晰。


一张图看懂对应关系

结论:

  • OSI是"法律条文",用来衡量和评价其他网络体系结构。

  • TCP/IP是"现实生活",是我们每天都在使用的互联网的基石。

  • 五层模型是"教科书",是为了更好地学习和理解前两者而诞生的优秀折衷方案。


常见网络协议

1)网络层常见协议

简单来说,你可以将网络层想象成邮政系统

  • IP协议 定义了信封格式和邮政编码(IP地址)。
  • 路由协议(RIP/OSPF/BGP) 是邮局分拣员之间商量"哪条路送信最快"的规则。
  • ICMP协议 是当你地址写错或信件无法投递时,邮局退回信件时附上的那张"无法投递说明单"。
  • ARP协议 则是在同一个小区(局域网)内,根据门牌号(IP地址)打听具体是哪一户人家(MAC地址)的过程。

2)传输层常见协议

传输层是承上启下的一层,它负责端到端的通信。所谓"端到端",就是进程到进程(例如,你的浏览器进程连接到网站的Web服务器进程)。
传输层的主要任务包括:

  • 进程寻址:通过端口号区分同一台主机上的不同应用程序。
  • 可靠性:提供(或不提供)数据可靠传输、差错恢复和顺序控制。
  • 流量控制:控制发送方的速率,以免淹没接收方。
  • 传输层的协议数量不像网络层那么多,但每一个都至关重要。

核心协议
1. TCP - 传输控制协议

TCP是传输层的"重量级"协议,提供面向连接的、可靠的、基于字节流的传输服务。
核心特性:

面向连接:数据传输前必须经过"三次握手"建立连接,传输结束后通过"四次挥手"断开连接。

可靠传输:通过确认机制、超时重传、校验和等方式,确保数据能准确无误地到达对方。

顺序控制:为每个数据字节编号,确保接收方能按顺序重组数据。

流量控制:通过滑动窗口机制,动态调整发送速率,避免接收方缓冲区溢出。

拥塞控制:通过慢启动、拥塞避免、快速重传等算法,感知网络拥堵并调整发送速率,保障整个网络的健康。

应用场景:适用于要求数据完整无误传输的应用。

Web浏览:HTTP/HTTPS

文件传输:FTP

电子邮件:SMTP, POP3, IMAP

远程登录:SSH

2. UDP - 用户数据报协议

UDP是传输层的"轻量级"协议,提供无连接的、不可靠的传输服务。
核心特性:

无连接:发送数据前不需要建立连接,直接发送。开销小,延迟低。

不可靠传输:不保证数据包能送达,也不保证顺序,不进行重传。

无流量控制:尽可能快地发送数据,无论接收方是否能处理。

报文导向:它发送的是独立的报文,有边界,不会像TCP那样合并。

应用场景:适用于要求低延迟、高效率,并能容忍一定数据丢失的应用。

音视频流媒体:直播、视频会议

实时在线游戏:游戏内的状态同步

DNS查询:快速获取域名对应的IP地址

SNMP:网络管理

TFTP:简单文件传输协议


3)应用层常见协议


防火墙在哪一层

传统的、基础的防火墙主要工作在传输层(以及网络层)

最初期的防火墙,也称为包过滤防火墙,其核心工作原理确实高度依赖于传输层。

1. 传统防火墙:核心在传输层

最初期的防火墙,也称为包过滤防火墙,其核心工作原理确实高度依赖于传输层。

  • 工作层级:网络层和传输层。

  • 决策依据

    网络层信息:源IP地址、目标IP地址。

    传输层信息:这是其最核心的判断依据------协议类型(TCP、UDP)、端口号。

  • 工作方式:

它检查每个数据包的IP头和高层协议头(TCP/UDP头)。

管理员会设定规则,例如:"允许 源IP为 192.168.1.0/24 网段,访问 目标IP 为 10.1.1.1,且 目标端口 为 80 的 TCP 流量。"

这里的"目标端口为80"就是传输层的核心信息。防火墙知道端口80通常对应HTTP服务(Web服务)。

为什么说它核心在传输层?

因为对于传统防火墙而言,它识别"这是什么应用"的唯一线索就是端口号。它看到端口80,就认为是网页流量;看到端口21,就认为是FTP流量;看到端口25,就认为是邮件流量。它并不关心数据包里面实际传输的内容是什么。

2. 状态检测防火墙:依然是传输层为核心

状态检测防火墙是传统包过滤防火墙的增强版,也是过去几十年中最主流的防火墙技术。

  • 工作层级:网络层和传输层,但增加了"状态"的概念。
  • 核心改进
    它不仅检查单个数据包,还会跟踪网络连接的状态(如TCP的三次握手、四次挥手)。
    它会维护一个"连接状态表",只允许已建立连接的回包通过,而阻止未经请求的外部连接。这大大提高了安全性。
  • 决策依据:依然是IP地址、协议和端口号。

结论:状态检测防火墙虽然更智能,但其识别应用的主要方式仍然依赖于传输层的端口号。因此,它依然被广泛视为一个以传输层为核心的设备。

3. 下一代防火墙 / 应用层防火墙:演进到应用层

为了解决传统防火墙的局限性,现代防火墙已经演变为 下一代防火墙。

  • 工作层级:从网络层到应用层。
  • 核心技术 :深度包检测
    它不仅仅看IP头和TCP头,还会深入检查数据包的应用层载荷。
    它能够识别出数据包内部真正的应用协议,而不管它使用的是什么端口。
  • 工作方式
    即使一个Skype语音通话使用了端口80,NGWF通过分析数据包内的特征码,也能准确地识别出这是"Skype"应用,而不仅仅是"HTTP流量"。
    管理员可以设定基于应用的策略,例如:"在公司网络内 禁止使用 Facebook",或者 "限制 BT下载 应用的带宽"。

此时的防火墙,已经是一个不折不扣的、能够理解应用层协议内容的设备了。


每一层对应的网络设备


PDU(协议数据单元)

传输层:段 segment

网络层:包 packet

数据链路层:帧 frame

物理层:比特流 bit


物理层概述





双绞线分类

功能分类

双绞线主要分为两大类:UTP 和 STP。它们的核心区别在于 抗干扰能力和结构。
核心区别一览表

1. UTP - 非屏蔽双绞线

这是我们日常生活中最常见、使用最广泛的网线。
结构

内部是4对(8根)相互缠绕的绝缘铜线。

除了线对外,没有任何额外的金属屏蔽层。

最外面是一层塑料护套。
抗干扰原理:

完全依赖于 "双绞" 这一物理原理。当两根线紧密缠绕在一起时,它们对外部电磁干扰的感应电势会大小相等、方向相反,从而相互抵消。

就像拧麻花一样,绞合得越紧密,抗干扰能力越强,支持的速率也越高。
优点:

成本低:制造工艺简单,材料成本低。

柔韧性好:线缆较细软,易于在墙角、管道中布线和端接。

部署简单:无需考虑接地问题,即插即用。
缺点:

在强电磁干扰环境下,性能会下降,误码率会增加。

总结:UTP是性价比之王,适用于几乎所有的常规办公和家庭环境。


2. STP - 屏蔽双绞线

这是一个广义的概念,泛指所有带有屏蔽层的双绞线。它主要用在有严重电磁干扰的特殊环境中。
结构:

在双绞线对的外部(或同时在每一对线的外部)包裹着一层金属屏蔽层。这层屏蔽层可以是金属箔(Foil)或金属编织网(Braid),或两者结合。

屏蔽层需要连接到接地的RJ-45连接器和水晶头。
抗干扰原理:

法拉第笼效应。外部的金属屏蔽层可以有效地将外界的电磁干扰阻挡在外,同时也能防止内部信号辐射出去干扰其他设备。
优点:

极强的抗干扰能力:非常适合在工厂、医院(靠近大型医疗设备)、机场、数据中心等高干扰环境使用。

更好的信号完整性:在恶劣环境下能保证更高的传输速率和更低的误码率。
缺点:

成本高:材料和制造成本都更高。

重量大、硬度高:布线和端接更困难。

必须正确接地:这是最关键的一点。如果屏蔽层没有良好接地,它不但不能屏蔽干扰,反而会成为一个天线,收集周围的干扰,导致性能甚至比UTP还差。
总结:STP是特殊环境下的专业选择,普通用户通常用不到。


如何选择?

家庭、普通办公室、学校:

毫无疑问,选择 UTP。性价比最高,完全满足需求。常见的 Cat5e、Cat6、Cat6A 网线都是UTP。

工厂车间、无线电发射站附近、数据中心服务器机柜:

如果存在强电磁干扰,应选择 STP(通常是FTP或S/FTP)。同时务必确保整个链路(包括配线架、模块、网线、跳线)的屏蔽层是连续且良好接地的。

简单判断:当你拿起一根网线,如果塑料外皮下的部分直接就是彩色的小铜线,那它就是UTP。如果能看到一层银色的金属箔或金属网,那它就是某种STP。


性能分类

双绞线性能分类大全汇总


网线线序




线序最好能记住

我们更常用的是 T568B,所以强烈建议你以 T568B 为基准来记忆。

核心逻辑:为"差分信号"和"抗干扰"服务

记住一个根本原则:网线传输的是差分信号------即用两根线的电压差来表示0和1。这两根线必须紧密地绞合在一起(这就是"双绞线"的名字来源),这样它们受到的外部干扰才会相同,从而在计算电压差时把干扰抵消掉。

因此,一对双绞线,必须被分配到负责同一组数据收发的两个引脚上。

第一步:记住最关键的四根线

在百兆网络和千兆网络中,真正用于数据传输的,主要是 1、2、3、6 这四根针脚。

1 & 2 是一对,负责发送数据。

3 & 6 是一对,负责接收数据。
逻辑1:T568B 是"橙派",T568A 是"绿派"

T568B(最常用标准):

它让 橙色线对 担任最重要的 发送任务。

所以:引脚1 = 白橙,引脚2 = 橙。

它让 绿色线对 担任 接收任务。

所以:引脚3 = 白绿,引脚6 = 绿。
T568A(旧标准/交叉线一端):

它让 绿色线对 担任 发送任务。

所以:引脚1 = 白绿,引脚2 = 绿。

它让 橙色线对 担任 接收任务。

所以:引脚3 = 白橙,引脚6 = 橙。

到此为止,你已经掌握了80%的精髓。A和B的本质,就是"橙"和"绿"这两大王牌线对,在发送和接收角色上的互换。

第二步:理解剩下四根线的"固定位"逻辑

为什么剩下的蓝线和棕线位置不变?因为它们是"辅助兵种",位置固定可以简化生产和降低串扰。

逻辑2:中间插队,两头不变

看线序的物理结构,从左到右:

  • 第1对(发送对):不是橙就是绿。
  • 第2对(接收对):不是绿就是橙。
  • 第3对(蓝色对):永远固定在中间的第4、5引脚。像一个"插队者"或"隔离带",把绿色的另一半(引脚6)从物理上分开了。它的作用是提供物理隔离,减少串扰,或在某些情况下用于电话。
  • 第4对(棕色对):永远固定在最后的两头,第7、8引脚。因为它离得最远,干扰最小。

这个布局是经过精密计算的,目的是让不同线对之间的电磁干扰最小。

总结一下这个逻辑思维:

  • 定基调:先决定你是"橙派"还是"绿派"。

  • 封王牌:把你选中的那个派系的线对,封为"发送对",放在最前面的1、2引脚。

  • 派副将:把另一个派系的线对,作为"接收对",放在3、6引脚。

  • 固定位:把蓝线对死死地按在中间的4、5引脚。

  • 收好尾:把棕色对放在最后的7、8引脚。

从此,你不再需要记忆8个颜色的顺序,你只需要理解这个角色分配和固定位置的逻辑。任何时候,你都可以用这个逻辑推导出完整的线序。


光纤的分类

单模 跟 多模


核心结论:单模光纤系统总成本更高,主要贵在【光源设备】上,而不是光纤本身。
一、 光纤本身的成本:差异不大

首先,纠正一个普遍误解。从材料成本来看,多模光纤和单模光纤本身的价格差异非常小,甚至在某些情况下单模光纤可能更便宜。

  • 多模光纤:芯径粗(50/62.5µm),需要沉积更多的玻璃材料来制造粗芯层。
  • 单模光纤:芯径极细(9µm),使用的核心玻璃材料更少。

之所以你觉得单模光纤可能更贵,是因为其制造工艺对精度和纯度要求更高,但这部分成本差距在规模化生产后已经不明显。在工程中,光纤本身的成本相对于接续、施工和设备来说,只占很小一部分。

二、 真正的成本差距:光模块

这才是成本差异的重中之重。光模块(如SFP, SFP+, QSFP28)是插在交换机或路由器上,负责电-光转换的核心部件。

一个生动的比喻:

  • 多模光纤 + VCSEL激光器:就像用一个广角手电筒去照射一个宽阔的隧道。光很容易就能照进去,覆盖整个入口,对手电筒的要求不高。

  • 单模光纤 + 激光器:就像用一个高精度激光笔去照射几十米外的一个针眼。必须要求激光笔的光束极其集中、准直,不能有丝毫偏差,否则光就进不去。制造这种"激光笔"的成本和技术难度,远高于制造"手电筒"。

三、 其他辅助成本

  • 接续与施工成本:

    单模光纤的芯径只有9µm,在熔接时需要更高精度的熔接机和更熟练的技术人员,否则轻微的错位就会导致巨大的信号损耗。高精度熔接机和施工服务都比多模的更贵。

  • 测试与诊断设备:

    测试单模光纤链路通常需要光时域反射计(OTDR),这种设备非常昂贵。而测试多模链路有时用简单的光功率计就能完成。


数据链路层

1、MAC地址概述

什么是以太网?

以太网是一种计算机局域网组网技术。它定义了一套完整的标准,包括:

  • 物理层:规定使用什么线缆(如双绞线、光纤)、接口(如RJ-45)、电压和信号。
  • 数据链路层:规定数据如何格式化(帧结构)、设备如何唯一标识(MAC地址)、如何在共享的媒介上公平地发送数据(CSMA/CD, 现在已被交换机淘汰)。

核心特点:

  1. 主导地位:它是当今最有线局域网的事实标准。你办公室墙上、家里路由器上那个方形的RJ-45网线接口,跑的就是以太网协议。
  2. 标准化的:由IEEE组织标准化为 IEEE 802.3。这意味着全球厂商都按同一套标准生产设备,保证了互联互通。
  3. 不断演进:从最初的10Mbps,发展到100Mbps、1000Mbps、10Gbps,甚至现在更高的400Gbps,它的速度和能力在不断提升,但核心思想保持不变。

MAC地址概述

MAC地址即以太网地址,用来标识一个以太网上的某个单独设备或一组设备

MAC地址,中文全称是媒体访问控制地址。它也被称为:

  • 物理地址
  • 硬件地址
  • 以太网地址

核心定义:

MAC地址是一个被预先固化在网络设备(如网卡)硬件中的、全球唯一的48位(6字节)标识符。它用于在本地网络中唯一地标识一个网络接口。

MAC地址的详细结构

一个标准的MAC地址格式为:XX:XX:XX:XX:XX:XX(十六进制表示),例如 00:1A:2B:3C:4D:5E。

这48位被分为两个部分:



2、帧格式

以太网帧的数据长度范围46-1500字节(净重)

以太网帧的长度范围64-1518字节(毛重)

冲突域


定义:

在同一个冲突域内,同一时间只能有一台设备成功发送数据。如果两台或更多设备同时发送数据,它们的电信号就会在物理介质上相互叠加、混淆,导致数据被破坏,这就是 "冲突"。

发生冲突后,所有发送设备都会检测到这一情况,并执行一种叫做 CSMA/CD 的机制来解决问题。


冲突域 vs. 广播域

这是一个非常重要的对比,经常一起考察。

冲突域 是一个物理层的概念,描述了设备需要竞争共享带宽的网络范围。
集线器会扩大冲突域,而交换机/网桥会分割冲突域。


交换机上一个口就是一个冲突域

核心思想:从"共享车道"到"独立车道"

  • 集线器 就像一条单车道环形路。

    所有车辆(数据)都必须挤在这条路上。

    如果两辆车同时进入,必然会发生碰撞(冲突)。

    整个环形路就是一个冲突域。

  • 交换机 就像一座立交桥交换枢纽。

    它为每一个入口都修建了一条独立的、点对点的专用车道,直接连接到目标出口。

    从A口到B口的车,只在A-B这条专用车道上跑;从C口到D口的车,在C-D车道上跑。它们互不干扰,永远不会相撞。

    因此,每一条专用车道(交换机的每一个端口)自己就是一个独立的冲突域。

技术原理:为什么可以做到?

交换机相比集线器,有两大革命性的技术突破:
1. 基于MAC地址的转发(数据链路层智能)

dart 复制代码
集线器(物理层设备):它很"傻",收到电信号后,只是简单地放大并向所有其他端口广播。它不认识MAC地址。

交换机(数据链路层设备):它非常"聪明"。
	它内部有一个 MAC地址表,记录了每个端口连接着哪个MAC地址的设备。
	当交换机从一个端口收到数据帧时,它会查看帧头的目标MAC地址。
	然后,它只把这个帧精准地转发到目标设备所在的那个端口,其他端口完全不受影响。

2. 全双工通信

dart 复制代码
集线器:必须采用半双工模式。设备不能同时发送和接收数据,否则信号会冲突。这就像一条单车道的桥,车只能交替通行。

交换机:每个端口都支持全双工模式。
	这意味着连接在端口上的设备可以同时向交换机发送数据和从交换机接收数据。
	发送和接收使用不同的线路,物理上就不可能产生冲突。



傻瓜交换机是集线器吗?

你平时买到的所谓"傻瓜交换机 "依然是正宗的交换机,而不是集线器。

"傻瓜交换机"和"集线器"有着本质的区别,它们根本就不是同一个时代的产物。之所以会有这个疑问,是因为它们外观相似,但内核完全不同。

  • 集线器:是物理层设备,采用广播的工作方式,所有端口共享带宽。

  • 傻瓜交换机:是数据链路层设备,采用基于MAC地址的智能转发,每个端口独享带宽。

"傻瓜"这个词,指的是它"管理功能"上的缺失,而不是"基础工作原理"上的倒退。

你绝对买不到新的集线器了:由于性能极其低下,集线器早在十多年前就已经停产,退出了历史舞台。现在即使在二手市场也难觅踪影。


接口双工模式

一、 核心概念:什么是双工?
双工 描述的是通信通道中数据流动的方向。

用一个生动的比喻:两个人之间的对话。

二、 网络中的双工模式

在网络接口(网卡、交换机端口)中,我们只关心 半双工 和 全双工。

三、 为什么双工模式如此重要?------ 不匹配的灾难

这是最关键的部分。当连接的两端(如电脑和交换机)双工模式设置不匹配时,会发生严重的性能问题。

四、 自动协商:最佳的解决方案

除非有极其特殊的原因,否则请将双工模式和速率设置为 "Auto-Negotiation"。 这是最安全、最可靠的配置方式。


交换机转发原理








交换机的MAC地址表老化时间是300秒,这么短的时间,不会加剧交换机的压力吗

频繁更新表项肯定会消耗资源,但设计者将老化时间设为300秒(5分钟),恰恰是为了用极小的代价,避免一个毁灭性的、压力大得多的问题。

一、 MAC地址表的学习:一个"顺带手"的操作

首先,要理解交换机学习MAC地址的成本极低。

它不是主动探测:交换机不是在不停地轮询每个端口问"你是谁?"。它只是在正常转发数据帧时,"顺带"看一眼帧的源MAC地址和入端口。

这是一个硬件行为:在现代交换机中,这个学习和查找MAC地址表的过程是由专门的ASIC芯片完成的,速度极快,几乎不占用主CPU资源。可以理解为是"本能反应",而不是"繁重计算"。

内存开销极小:一条MAC表项只占用几十个字节的内存。一台普通的交换机可以轻松存储数万甚至数十万条表项,这点内存开销微不足道。

所以,学习新MAC地址对交换机造成的"压力"可以忽略不计。

二、 老化时间的真正目的:应对网络变化

MAC地址表的核心任务是准确反映网络拓扑。网络是动态的,老化机制就是为了应对以下变化:


结论:老化机制是交换机网络能够"自愈"和"自适应"的基石。没有它,网络就会变得僵化,无法容忍任何变化。

三、 300秒:一个精心权衡的平衡点

这个值是在准确性和效率之间取得的完美平衡。


广播域



vlan





非标准帧(802.1Q)



网络层

IP数据包格式

ipv4 字段分析

标识符、标志、段偏移量 ------是IPv4数据包格式中紧密相关的一组字段,它们共同服务于一个核心功能:IP分片与重组。

由于网络链路有不同的最大传输单元,一个大的IP数据包可能需要被分割成多个更小的"分片",才能在网络上传输。接收方则需要根据这些字段将分片重新组装成原始数据包。

一个生动的比喻:邮寄一本厚书

想象你要通过邮局寄一本1000页的书,但邮局规定每个包裹最多只能装100页。

这样,收件人收到包裹后,就能根据订单号知道哪些包裹是一起的,根据标志知道是否收齐了所有包裹,再根据页码信息把它们按顺序拼回完整的一本书。


技术细节详解

现在,我们把这个比喻对应到IP数据包的三个字段上。










IP地址回顾

问题:192.168.0.0/16 为什么这种C类私有地址的掩码不跟C类地址的掩码24位对应,这样不是很乱吗

192.168.0.0/16 是一个在现代"无类别"思维下定义的、但恰好落在传统"C类"地址范围内的一个大型地址块。

这里的"乱"源于我们同时在使用两套不同的命名体系:

1.传统有类寻址 - 基于A/B/C类分类(已过时,但名称遗留)

2.现代无类别寻址 - 基于CIDR(当前标准)

历史回顾:"有类网络"时代

在互联网早期,IP地址被严格分为A/B/C类:

按照这个古老的分类,192.x.x.x 确实属于C类,其默认掩码就是 /24。

现代发展:"无类别"时代 & RFC 1918

到了1990年代,人们发现这种僵化的分类效率极低,于是发明了 CIDR。

核心思想:IP地址不再有"默认"掩码,掩码可以自由定义。

RFC 1918(1996年):正是在CIDR时代制定的,它从实用主义出发来划分私有地址块,而不是拘泥于旧分类。



ICMP

消息协议




加参数 -c 1 可以只抓一个包,这样数据就不会太多太乱了



traceroute 只显示数据包在路径上遇到的"下一跳"路由器的入站接口IP地址。在您的场景中,PC2所在的网段对于PC1来说是直连在同一个路由器上的,因此数据包在路由器的192.168.1.254接口"进入"后,其下一跳就是最终目标PC2本身,而不是路由器的另一个接口192.168.2.254。


ICMP消息提示


ARP








路由配置

路由概述





PC1去Ping PC3主机不需要知道PC3的Mac地址(跨网段通信)

需要的不是最终目标设备的MAC地址,而是您当前所在网段的【默认网关】(路由器)的MAC地址。

跨网段通信的关键在于,数据包在每一跳链路上传递时,都依赖于该链路的数据链路层(如以太网),而数据链路层只认MAC地址。

路由器转发数据包IP地址与MAC地址的封装变化

核心原则:不变与变

首先记住一个黄金法则:

  • IP地址:像信封上的最终收件人地址和发件人地址,在整个传输过程中保持不变。

  • MAC地址:像信封在每一站传递时的当前收件人和当前发件人,在每一跳都会改变。

下面的流程图清晰地展示了数据包从PC1到PC2,在每一跳中IP地址和MAC地址的封装变化:






默认路由实验


为什么一开始不用这种配置


为什么默认路由只适合末梢网络去配

什么是末梢网络?

特点

只有一个上游连接(通常是一个ISP或总部网络)。

所有去往外部网络的流量,都必须通过这个唯一的出口。

网络内部只包含主机和本地网络,不连接其他独立的路由域。

典型例子:

家庭网络

小型分支机构

咖啡馆/商店的Wi-Fi网络

什么是默认路由?

  • 定义:0.0.0.0/0,代表"所有未知目的地的流量"。
  • 作用:当路由表中没有更精确的匹配项时,数据包就会按照默认路由发送。
  • 比喻:就像你手机地图上的"回家"快捷按钮。无论你在城市的哪个角落,只要不知道具体去哪,或者想回去,按这个按钮就能找到方向。

核心问题:为什么默认路由在其他网络中是个"灾难"?

让我们通过一个具体的多出口网络场景来揭示问题。



正确的解决方案:动态路由协议

对于多出口的非末梢网络,正确的做法是使用 动态路由协议,如下图所示:



如果PC1去Ping一个不存在的ip,那么数据包就会不断的流转


传输层

网络层 负责的是 "主机到主机" 的通信,它只关心把数据包送到目标IP地址。

传输层 负责的是 "进程到进程" 的通信,它关心的是主机上的哪个应用程序(如浏览器、微信)在接收数据。


TCP封装格式


URG

在 TCP 报文中,URG(Urgent)标志用来告诉接收方,这个报文段里包含 紧急数据(urgent data),即需要比普通数据更快地交付给上层应用程序。

当 URG 标志被置为 1 时,报文段的 Urgent Pointer(紧急指针)‍ 字段就会变得有意义。它的作用是 指明紧急数据的结束位置,具体解释如下:


举例说明

假设一个 TCP 报文段的 序列号 为 1000,而 Urgent Pointer 为 200,并且 URG 标志 为 1。

  • 那么紧急数据的范围是 序列号 1000 到 1199(共 200 个字节)。
  • 接收方在收到该报文段后,会立即把这 200 字节交给上层(比如把它标记为 "紧急"),而不必等到普通的接收窗口滑动后才处理。

为什么需要紧急数据?

紧急数据的设计初衷是让某些对时效性要求极高的控制信息(如 Telnet 的中断键、SSH 的紧急信号)能够 跳过普通的流量控制,直接送达应用层,从而实现更快的响应。



TCP 报文标志位(Flags)概览

TCP 报文头里有 6 个常用的控制位:SYN、ACK、FIN、RST、PSH、URG。它们像"信号灯"一样告诉对端本段的目的------是要 建立连接、确认收到、立即送达、异常终止、还是优雅关闭。下面用生活中的形象比喻和实际通信场景来说明每个标志的作用。








TCP的三次握手

TCP 三次握手(Three‑Way Handshake)

TCP 为了在不可靠的 IP 网络上提供可靠的、全双工的通信,需要在正式传输数据前先建立一条双方都确认的连接。这个过程通过 三次报文交互 完成,每一步都携带特定的标志位、序列号和确认号,确保双方的发送/接收能力、序列号空间以及窗口大小都已协商好。

在 TCP 报文头里有 两个不同的概念:





B站好的讲解视频


实验抓包

PC1去Ping PC2









TCP四次挥手

1. 为什么要四次?

  • 全双工:TCP 连接可以同时在两个方向传输数据。关闭时必须分别结束 发送方向 与 接收方向,于是需要 两次 FIN(每方向一次)以及对应的 两次 ACK 来确认,形成四次交互。
  • 防止数据丢失:如果只用一次 FIN/ACK,可能出现 "FIN 先到、数据后到" 的情况,导致对方还有未读数据被直接丢弃。四次挥手保证双方在关闭前都已确认没有未发送的数据。

2. 四次挥手的状态机(主动关闭方 A、被动关闭方 B)



UDP



应用层

DNS

工作在 应用层,使用 53 号端口 作为默认的服务端口(无论是 UDP 还是 TCP)

为什么 DNS 主要使用 UDP?

  • 速度快:UDP 不需要三次握手,直接发送请求 → 响应,极大降低查询延迟。
  • 资源占用少:服务器无需维护每个客户端的连接状态,能够支撑海量并发查询。
  • 实现简单:解析器自行实现超时与重传机制,适合分布式、递归查询的高效运作。

DNS 采用"UDP 为主、TCP 为辅"的双协议策略:普通、轻量查询走 UDP,确保快速响应;大数据或需要可靠性的操作(如区域传送、超大响应、加密 DNS)则切换到 TCP。

这种设计兼顾 效率 与 可靠性,满足全球互联网对域名解析的高并发、低时延需求,同时在特殊情况下提供完整的数据传输保障。

域名注册的网站

https://www.xinnet.com/ - 新网

https://wanwang.aliyun.com/ -- 万网 阿里云

https://www.hulian.top/


FTP

为什么 FTP 使用 TCP

为什么 FTP 需要 两个端口(21 与 20)


两个端口的设计意义

为什么要分主动模式和被动模式

FTP 为什么要划分为主动模式(Active)和被动模式(Passive)‍,主要是为了解决 数据连接的发起方向 在不同网络环境(尤其是防火墙、NAT、路由器)下的兼容性和安全性问题。下面从历史、技术实现、网络限制以及实际使用场景四个角度说明原因,并给出对应的证据来源。




TFTP

  • 轻量级文件传输协议,专为在网络设备之间快速、低开销地传输小文件而设计。
  • 基于 UDP(默认端口 69),不提供登录、目录列表或加密等高级功能,只实现最基本的读/写操作

常见使用场景


超文本传输协议


telnet协议

Telnet(远程登录协议)‍是一种在 TCP 之上实现的应用层协议,最早出现在 1960 年代的 ARPANET,后在 RFC 854 中正式定义为 "网络虚拟终端(Network Virtual Terminal,NVT)" 协议。它的核心目标是把本地终端(键盘 + 显示器)延伸到远程主机,使用户能够像在本地机器上一样交互式地执行命令。

相关推荐
门思科技2 小时前
LoRaWAN通信协议详解:架构、加密机制与核心应用
运维·服务器·网络·嵌入式硬件·物联网
帅次2 小时前
信息安全的容灾与业务持续&安全管理的措施
安全·网络安全·系统安全·密码学·网络攻击模型·安全威胁分析·安全架构
程思扬2 小时前
开源 + 实时 + 无网络限制:Excalidraw 是流程图协作新选择
网络·人工智能·阿里云·ai·开源·流程图
测绘小沫-北京云升智维2 小时前
徕卡RTC360三维激光扫描仪摔坏故障维修方案
网络
视觉震撼3 小时前
RDP登录事件详细溯源分析脚本(兼容Windows PowerShell版本)
运维·网络·windows·网络安全·网络攻击模型·安全威胁分析·安全架构
Pluchon3 小时前
硅基计划6.0 陆 JavaEE Http&Https协议
网络协议·tcp/ip·http·网络安全·https·udp·java-ee
是店小二呀3 小时前
仓颉三方库开发实战:Simple HTTP Server 实现详解
网络·网络协议·http
北京耐用通信3 小时前
从‘卡壳’到‘丝滑’:耐达讯自动化PROFIBUS光纤模块如何让RFID读写器实现‘零延迟’物流追踪?”
网络·人工智能·科技·物联网·网络协议·自动化
交换机路由器测试之路3 小时前
交换机路由器基础(四)--TCPIP四层模型及常见协议技术
网络·网络协议·路由器·交换机·tcp/ip模型