一文读懂 SFP家族

文摘   2024-11-18 08:00   美国  

引言 — AI推动着数据中心网络的快速壮大,SFP、QSFP、QSFP-DD、OSFP等术语如同密码一般,令人眼花缭乱。在此基础上,再增加一个光和铜的维度,前一个维度再增加一个单模和多模,后一个维度再增加一个直连和有源。这样一个复杂的矩阵,今天帮你一文搞懂。

然而,参考文献竟然又是NV的。不得不说,成功不是偶然的。


本文主要分为三个部分:

1. 各种SFP

2. 收发器概论

3. 交换机网卡

4. 收发器细节



原材料已上传至知识星球:IT奶爸-知识星球



I. 各种SFP


什么叫做SFP?

small form factor plug:小型插头

  • 四通道,quad,就叫QSFP

  • 双倍密度,double density,就叫QSFP-DD

  • 八通道,octal,就叫OSFP

twin-port OSFP,包含八个电气通道,和2个光纤四通道



400Gb/s 速率

400Gb/s包含了四通道100G PAM4信号,可以基于OSFP连接器型号。OSFP:octal small form factor plug (八进制小型插头)


  • 交换机侧:一个OSFP笼子里包括了两个400Gb/s的port,这种叫twin-port finned top OSFP

  • 网卡侧:CX-7和BF-3都是使用了四通道的400Gb/s的single-port flat top OSFP,或者QSFP的笼子。


注意:

twin-port OSFP不用于网卡这一侧,因为finned top比单端口的笼子更高。

400Gb/s Spectrum-3 SN4000 系列以太网交换机由 8 通道 50G-PAM4 信号调制构成,并使用具有双倍密度的四通道小型插头 (QSFP-DD)。


DAC,ACC和AOC的cable都是基于在交换机所使用的连接器类型来分类,这些连接器类型包含但是不限于,single-port OSFP,QSFP112,QSFP56等等。

这些连接器类型,包括了光收发器,也包括铜缆。

例如一个twin-port 800G的OSFP 到四个200G QSFP112的分路铜缆,如下图。

NV的网络产品线包括:

  • Quantum Infiniband交换机

  • Spectrum 以太网交换机

  • CX-7网卡

  • BF-3智能网卡


LinkX cable 和光收发器包括:

  • DAC (直连无源铜缆)

    • 长度三米

    • 接近0延时,功率小于0.1W

    • 2m以内用30AWG的线,到3m之内用26AWG的线

    • 可以支持800G直连,和到400G及200G的QSFP112或OSFP的分头

  • ACC(有源铜缆,有信号预加重芯片,但是没有DSP,所以也叫线性ACC)

    • 长度3, 4,5米

    • 低延时,800G这边1.5W,分头那边0.6W或者0.35W

    • 2m以内用30AWG的线,到3m之内用26AWG的线

    • 可以支持800G直连,和到400G及200G的QSFP112或OSFP的分头

  • AOC(多模收发有源光纤)

    • 最大范围50m

    • 800G twin-port OSFP 17 W(最大)。

    • 400G QSFP112 或 OSFP 9 W(最大)。

    • 支持50 米直式或 1:2 分路器光缆。

    • 两个收发器端口都使用 1:2 光纤分路器,创建 4 个 2x100G-PAM4 (200G) 链路。

  • 单模收发器

    • 支持50米1:2分路器光纤,支持100m,500m,和2公里直连光纤

    • 800G twin-port OSFP 17 W(最大)。

    • 400G QSFP112 或 OSFP 9 W(最大)。

  • 交叉光纤


如下图

针对100G-PAM4系统来说,在交换机和网卡上使用的连接器类型是不同的。

  • 交换机仅使用 800G twin-port OSFP finned top 电缆和收发器。

  • DGX H100 系统使用上述的flat top版本。

  • ConnectX-7 使用 400G flat top OSFP 或 QSFP112/56/28 电缆和收发器。

  • BlueField-3 仅使用 QSFP112/56/28 电缆和收发器;无 OSFP 设备。

  • 基于 QSFP112 的 ConnectX-7 适配器和 BlueField-3 DPU 接受传统的 QSFP56 和 QSFP28 速度较慢的设备。QSFP112不能在 OSFP 交换机中使用。


I. 收发器概论


MPO-12 光连接器是一种陶瓷块,带有孔,其中包含单模或多模类型的多根光纤的末端。陶瓷块由不同数量的孔 8、12、16、24 等制成,但 100G-PAM4 系列使用 8 根光纤,但标记为 MPO-12

发送到光纤中的一些光从光纤端面向后反射。速度较慢的电子设备和光学元件对光纤内部产生的背向反射不太敏感。因此,25G-NRZ (4x25G-NRZ SR4) 和一些 50G-PAM4 收发器 (4x50G-PAM4 SR4) 使用不同的抛光方式:MPO-12/UPC 或超扁平抛光连接器。

100G-PAM4 收发器对背向反射更敏感,并使用 MPO-12/APC 或斜角抛光连接器。它的末端经过 8 度抛光,导致背向反射转移到光纤侧包层并远离发射器。


对于 100G-PAM4 光学器件:

  • MPO-12/APC 用于单模和多模光学器件。

  • 两个 MPO-12/APC 光连接器与twin-port 2x400G OSFP 收发器一起使用,用于两个 4 通道 100G-PAM4 端口。

  • 单个 MPO-12/APC 光连接器用于 4 通道、400G OSFP 和 QSFP112 收发器。

  • 仅使用 8 根光纤,其中 4 根光纤用于传输,4 根光纤用于接收。

  • NVIDIA 提供的光缆在 MPO 端部有 NVIDIA 绿色塑料外壳,以表示 APC 类型。

  • 收发器具有对准引脚,MPO-12/APC 连接器具有对准孔。使用连接器端可能有引脚或孔的干线电缆时,了解这一点很重要。将针式连接器插入收发器会损坏两者。塑料侧的白点或孔表示光纤引脚 1 侧。

  • MPO-12/APC(绿色)与用于具有 50GPAM4 和 25G-NRZ 调制的 40G-200Gb/s 收发器的 MPO-12/UPC(蓝色)超扁平抛光连接器不兼容,因为它具有平坦的抛光。

  • Spectrum-3 SN4000 和 Spectrum-4 SN4400 交换机中使用的 400Gb/s QSFP-DD 单模 DR5400 收发器也使用 8 光纤 MPO-12/APC。

  • DR4 使用 8 通道 50G-PAM4 电接口和 4 通道 100G-PAM4 光纤接口。这与双端口和单端口 100G-PAM4 收发器使用的光连接器相同,可用于将 QSFP-DD 与双端口 OSFP 收发器链接,将 QSFP-DD 8x50G-PAM4 系统连接到 100G-PAM4 系统。


最后一条比较有用,特别是在50G PAM4和100G PAM4之间的兼容使用。


LC 双工光纤连接器 

2 光纤 Lucent 连接器或 LC 双工通常用于使用传输光纤和接收光纤的单通道链路。

这适用于多模和单模光学器件。

长距离并行光纤布线成本高昂,因此收发器使用多个不同波长的激光器,这些激光器被组合或“多路复用”到一根光纤中进行传输,并在接收器处过滤掉。

一根光纤用于传输,一根用于接收,但承载 4 或 8 个通道。

对于长达 2 千米的长距离,Far Reach 4 通道 2xFR4 双端口 OSFP 收发器中使用了两个 2 光纤 LC 双工光连接器。

这些用于将 2x400Gb/s NDR InfiniBand 和 Spectrum-4 以太网交换机连接在一起,并通过在每个光连接器中使用两根光纤来连接园区之间的集群。

MPO-12/APC、MPO-12/UPC 和双工 LC 光连接器

光纤类型 

单模光纤 

单模光纤有一个微小的 9 um 载光芯。

这足够小,可以使光以非常小的角度向内弯曲,从而将数据脉冲光子包作为一个组或“单模式”聚集在一起,可以传播很远的距离。

单模光纤使用 1310nm 波长,通常用于 50 米到 2 公里的长距离,以将交换机连接在一起。

光缆护套为黄色 

多模光纤 

多模光纤用于小于 50 米的短距离。多模光纤具有一个 50 um 的大载光纤芯,单个数据脉冲中的一些光子在沿光纤传播时采用更陡峭的角度。

这会导致光脉冲在光纤内部散射成多条路径或“多模式”,脉冲的某些部分需要更长的时间才能到达光电探测器的末端。

这会导致脉冲强度减弱并及时扩散到足以与下一个后续数据脉冲碰撞,从而限制最大范围。

  • 多模光纤经过优化,在 850 nm 波长下最具有传输性。

  • 多模 850nm 收发器不能与 1310nm 单模光纤和收发器配合使用。

  • 光缆护套为浅绿色。光纤类型为 OM4 长达 50 米,OM3 长达 <30 米。

NVIDIA 提供的单模和多模交叉光纤电缆

NVIDIA 仅提供基于 4 通道 100G-PAM4 的交叉光纤电缆,仅使用 MPO-12/APC 光纤连接器。

这些电缆专用于 NDR InfiniBand 和spectrum以太网的 100G-PAM4 NVIDIA 产品。

在没有中间光学配线架的情况下,在短距离内将多达五个收发器直接连接在一起是加速 AI 加速系统的标准做法。

NVIDIA 光纤电缆是交叉的 B 型光纤,可以直接将两个收发器连接在一起。这使得可以直接将收发器连接在一起,并通过使用两个光连接器穿过电缆内部的光纤引脚布置,将发射激光器与接收器光电探测器对准。例如,发射激光器侧的引脚 1 交叉到接收收发器的光电探测器侧光连接器中的引脚 12。


NVIDIA 的光缆产品包括:

  • 长达 100 米的直式、单模、交叉光纤和长达 50 米的 1:2 分路器光纤。

  • 直式和 1:2 分路器多模交叉光纤,最长可达 50 米。

  • 这些光纤可从 NVIDIA 获得,专为 NVIDIA 系统设计和认证,具有最高的质量和公差。

NVIDIA 不提供基于以下标准的光缆:

  • MPO-12/UPC 或 MPO-16/APC 或 LC 双工。

  • 非交叉、A 型并行直光缆或分路光缆、主干光缆、2 芯单模 LC 光缆以及长度超过 100 米的交叉光纤。

  • NVIDIA 建议从众多第三方供应商处采购这些产品。


光纤分路器 1:2 电缆使用三个连接器,其中 4 通道用于twin-port OSFP 收发器端,两个 2 通道端用于单端口收发器,在单模和多模中提供 3m 至 50 m。

twin port OSFP 收发器使用两条 1:2 分路器电缆,以 1:4 的比分有效地转换为 4x200G。

长度是从光纤连接器端面测量的。

  • 分割点距离单个光纤连接器表面 0.2 米。

  • 光纤连接器键 – 连接器末端顶部的小凸起用于将光纤定向到收发器,并将光纤 1 与激光器 1 对齐,等等。

  • 光纤的弯曲半径为 3 毫米。

  • 分叉点距连接器端面 0.2 米。

  • NVIDIA 提供的所有光缆的两端都是母头 - 引脚位于收发器上。


III. 交换机网卡


100G-PAM4的交换机

Quantum-2 NDR InfiniBand 和 Spectrum-4 SN5600 以太网系列 OSFP 风冷 400Gb/s 网络交换机,基于 100G-PAM4 信号调制。

虽然额定速度为 400Gb/s,但这些交换机使用的连接器壳体在一个称为 2x400G twin-port OSFP 的壳体中,容纳两个 400Gb/s 端口,专门用于这些风冷交换机。

SN5400 和 SN4000 系列以太网交换机基于 50G-PAM4 调制,使用 QSFP-DD 连接器并接受 QSFP56 和 QSFP28 连接器。

ConnectX 网络适配器和 BlueField 数据处理单元 (DPU) 仅使用单端口 OSFP、QSFP112、QSFP56 外形尺寸的平顶连接器外壳。

QSFP-DD 仅用于以太网交换机,而不用于 ConnectX-7 或 BlueField-3。

Twin-port OSFP 壳体使 400Gb/s 端口的数量增加了一倍。1RU、32 口的 Quantum-2 和 2RU、Spectrum-4 交换机支持 64 个 400Gb/s 端口,64 口Spectrum-4 交换机支持 128 个 400Gb/s 端口。

此功能使单个交换机能够创建一个巨大的网络。例如,具有 64 个口(128 个端口)的单个 SN5600 以太网交换机具有与 6 对 7 SN4000 交换机相同的联网能力。

Quantum-2 NDR InfiniBand 和 Spectrum-4 以太网交换机壳体和twin-port翅片顶部 OSFP 插头。

PCIe 卡:NIC、HCA 和 DPU

ConnectX-7 以太网网络接口卡 (NIC) 和 InfiniBand 主机通道适配器 (HCA) 是基于 PCIe 总线的网络适配器。

基于 100GPAM4 的 ConnectX-7 在同一卡中同时支持 InfiniBand 和以太网。


基于 PCIe 的适配器卡在 PCIe 总线上可能有 8、16 或 32 个通道,每个通道为 16 或 32Gb/传输。

适配器 IC 将大量较慢的 PCIe 通道和调制类型转换为 100G-PAM4 的 4-8 个通道,并转换为以太网或 InfiniBand 协议。

这些信号被传送到电缆或收发器插头插入的 OSFP 或 QSFP112 连接器笼子中。

  • 200G/400G ConnectX-7 提供 QSFP112 版本,OSFP 

  • 200G/400G BlueField-3 仅提供QSFP112

  • 基于 PCIe Gen 5,传输速度为 32G/秒 

  • 一些 ConnectX-6 和 BlueField-2 适配器是特定于协议的,对于 InfiniBand 和以太网具有不同的部件号,可能需要特定的协议和部件号电缆和收发器。

这创建了一系列产品 SKU,其中双端口翅片顶部 OSFP 和 QSFP-DD 用于交换机侧,OSFP、QSFP112、QSFP56 或 QSFP-DD 电缆和收发器用于其他所有设备。


IV. 收发器细节


QSFP 笼子的历史兼容性

交换机和适配器中的 QSFP 笼子具有独特的向后兼容性功能,使旧版本能够插入到较新的型号中。

例如:4 通道QSFP112 (4x100G-PAM4) 壳体可支持 QSFP56 (4x50G-PAM4) 和 QSFP28 (4x25G-NRZ) 器件。

  • QSFP-DD (8x50G-PAM4) 笼子支持 QSFP112、56 和 28 使用 2 排电气引脚,具有 8 个通道。

  • 调制速度由交换机和适配器协商。

  • 许多(但不是全部)收发器可以降移到较慢的调制速度。

  • 双端口 OSFP 和单端口 OSFP 壳体与 QSFP 系列设备不兼容。

  • 不提供 QSFP 到 OSFP 适配器 (QSA)。

收发器和光纤详细信息:

100G-PAM4 双端口 OSFP 单模收发器内部装有两个完整的多模或单模光引擎,该引擎出口到两个 4 通道 MPO-12/APC 光连接器,形成双端口。

双端口收发器可以相互链接形成 800Gb/s 链路,并且可以使用两条直式或 1:2 分路器光缆连接到两个或四个 400G QSFP112 或 OSFP 收发器,形成两个 400G 或四个 200Gb/s 链路。

  • 双端口 OSFP 收发器可以同时链接到 2 个或 4 个 OSFP 和/或 QSFP112 的任意组合,因为 OSFP 和 QSFP112 的内部结构相同。

  • 两个双端口收发器端口中的光纤类型(直式或分路器)必须相同,因为交换机和收发器组合只能在 2x400G 或 4x200G 分路模式下运行,不能配置一根直式和一根 1:2 分路器光纤。

  • 双端口 800G AOC 不提供 800G 功能,但提供 2x200G 向后兼容 HDR 和 200GbE。

提供长达 50 米的多模光学器件和长达 100 米以及 500 米和 2k 米的单模光纤,用于长距离switch到switch的链路。

选择的长度不仅与光学功能有关,还与最小化整体链路延迟有关,包括交换机buffer延时、光学延迟和能力、网卡耗时等。还提供使用两个 LC 双工光纤连接器的 2 公里 2xFR4 版本。


收发器范围和光学器件类型命名法如下:

双端口 OSFP 

  • 2x SR4:短距离, 4 通道多模光学器件;800Gb/秒;最大范围 50 米,又名 SR8 

  • 2x DR4:数据中心范围 8 通道;800Gb/秒;100 米和 500 米最大范围,又名 DR8 

  • 2x FR4:2 倍远距离 4 通道;800Gb/秒;最大距离 2 公里 


单端口 OSFP 或 QSFP112 

  • SR4:短距离 4 通道多模光纤;400Gb/秒;50 米最大范围 

  • DR4:数据中心范围 4 通道单模光学;400Gb/秒;100 米和 500 米最大范围 

  • FR4:远距离 4 通道,400Gb/s,最大范围 2 公里 -- 不提供 


2xSR4 和 2xDR4 有时在数据表中称为 800G DR8 和 800G SR8。这些是双端口 OSFP 收发器,具有 8 通道电气 (DR8) 和两个 400G 光纤端口 (2x400G)。


400G InfiniBand 和 Spectrum-4 SN5600 以太网交换机仅使用带翅片的顶部双端口 2x400G OSFP 连接器。

双端口 OSFP 采用 8 个电气引脚,全部排成一排,直接穿过以连接到交换机。

风冷交换机中使用的双端口设备在连接器顶部有额外的散热片,因为每个收发器的功耗为 15-17 瓦,并且交换机前面板上的风冷孔非常少。

双端口收发器使用两个 MPO-12/APC 光纤连接器支持两个 4x100G-PAM4 端口。每个双端口收发器都支持:

  • 两根直连光缆,带两个 400G 收发器 

  • 两根 1:2 分路器电缆,支持四个收发器端。1:2 分路器光纤端有 2 个光纤组(2 通道),与 400Gb/s 收发器一起使用时,速率为 200Gb/s。

  • 400G 收发器不能降级到 50G-PAM4 。不提供 200G 收发器。


2xSR4 多模、双端口 OSFP,50 米

由于大多数 AI 加速和 HPC 系统的典型范围小于 50 米,以限制由于光以每米 4.5 ns 的速度在光纤中传播而导致的延迟,因此 2xSR4(又名 SR8)是最受欢迎的收发器,此外它还比单模光学器件便宜。

2xSR4(又名 SR8)由双端口 OSFP 外壳内的两个基于 VCSEL 的 850nm SR4 收发器组成。

两个 MPO-12/APC 光连接器从收发器的背面引出,支持三种配置:

 800G 到 800G :使用两个 2xSR4 和两个 4 通道光纤用于交换机之间连接。

800G 到 2 个 400G:交换机到 2 个 400G 适配器交换机,使用一个 2xSR4 和两个 4 通道直光纤到两个 400G 收发器。

800G 到 4 个 200G:交换机到 4 个 200G 适配器,使用 4 个 2xSR4 和两个 2 通道光纤分路器进行切换。

800G 到 2 个 400G,其中每个 400G 端口支持一个 400G 收发器,或者被两个拆分,总共产生四个 200Gb/s 运行。

两根光纤必须是相同的直光纤或分路器,因为收发器只能配制成两个端口的直线模式或分路模式。

2xDR4 单模、双端口 OSFP、100 米

单模光纤是指长光纤距离。对于大型系统,2xDR4 单模收发器(又名 DR8)提供较长的长度,通常用于 50 米到 100 米,但也支持从 1 米开始。

2xDR4 由两个使用 1310nm 外部调制激光器 (EML) 的收发器引擎组成。

2xDR4 单模、双端口 OSFP,500 米 

500 米双端口 OSFP 单模收发器使用两个并行 8 光纤 MPO-12/APC 光连接器提供。该收发器具有与 100 米版本相同的设计和规格,但经过 500 米测试,并且可能使用不同的纠错方案。

2xFR4,单模,800G 双端口 OSFP,2 公里

2 公里双端口 OSFP 单模 2x 远距离 4 通道收发器 (2xFR4) 使用两个 2 光纤 LC 光连接器,每个连接器承载 400Gb/s 多路复用光信号。


这些用于将两台 Quantum-2 或 Spectrum-4 OSFP 交换机远距离连接在一起。

四个数据信号通道,每个通道使用不同的激光波长,多路复用到一根光纤中进行传输,并在接收器中单独过滤掉。这节省了与长光纤传输、安装和维护相关的成本。光纤不能像并行光纤 2xDR4 收发器设计那样拆分为单独的收发器。

由于调制方案不同,双端口 OSFP 2xFR4 100G-PAM4 无法与 4x50G-PAM4 FR4 收发器连接,并且 2xFR4 无法降档到 50G-PAM4。



SR4、DR4 400G 单端口 OSFP 收发器 

单端口 4 通道收发器提供 OSFP 和 QSFP112 两种版本。

QSFP112 比 OSFP 更晚才成为行业标准化产品,体积要小得多,并且适合具有许多组件的 BlueField-3 卡的有限空间。

单端口 4 通道 OSFP 收发器仅用于网络适配器,并连接到插入交换机中的双端口 8 通道 OSFP 收发器。

单端口 OSFP 是平顶 4 通道版本,散热片位于适配器板连接器壳体的顶部,称为骑乘散热器 (RHS)。

双端口 OSFP 和单端口 OSFP 在物理上的大小相同,但单端口仅支持一个 4 通道 MPO-12/APC 光连接器,并包含一个 400Gb/s 光引擎。


铜质 DAC 和 ACC 电缆概述 

直连铜质 (DAC) 电缆 

铜缆是将高速系统互连在一起的最低成本、最低延迟和最低功率的方式。DAC 电缆将电气子系统“直接连接”在一起,因此得名直连铜缆 (DAC)。

DAC 铜缆主要用于在最大长度为 3 米的范围内

  • DAC 提供双端口 OSFP、OSFP 和 QSFP112 端 

  • 提供 0.5 米至 2 米的直线电缆长度,以及长达 3 米的分路器长度 

  • 每端功耗为 0.1 瓦 

  • 30AWG 细线用于长达 1 米的短距离电缆,用于 800G 至 800G 电缆

  • 较粗的 26AWG 线具有更多的屏蔽性,用于 2 至 3 米和分路器 

  • 提供两种不同的分路器电缆,最长可达 3 米,适用于 1:2,400Gb/s 4 通道和 1:4 ,200Gb/s 2 通道端,用于 ConnectX-7 和 BlueField-3 适配器

  • BlueField-3 仅使用 QSFP112,而 ConnectX-7 提供 QSFP112 和 OSFP 两种版本


有源铜缆 (ACC) 

ACC 电缆用于将铜缆的低成本、低功耗和低延迟从 3 米扩展到 5 米,可以跨越多个机架。

ACC 本质上是 DAC 电缆,每端都有一个额外的 IC,以提高信号功率和降噪效果。

该电缆使用预加重类型的电路,又名线性 ACC,该电路学习噪声信号并在向下发送电缆之前将其反转,从而产生抗噪声。

噪声和抗噪声能量相互抵消,保留数据信号。

与使用 DSP 的 HDR/200GbE ACC 不同,预加重 ACC 具有非常低的功耗和低延迟。

  • ACC 配置在更长的长度上与 DAC 线路相吻合。

  • 提供双端口 OSFP、OSFP 和 QSFP112 端。

  • ACC 的直线电缆长度可达 3 米,分路器的长度可达 4 米和 5 米。

  • 8 通道端的功耗为 1.5 瓦,分道端的功耗为 0.6W 和 0.3W。

  • 30AWG 细线用于 3 米和 4 米的短距离。

  • 更粗的 26AWG 电线具有更多的屏蔽层,用于 5 米分路器。

  • 提供两种不同的分路器电缆,最长可达 3 米,用于 1:2, 400Gb/s 4 通道和 1:4, 200Gb/s 2 通道端,用于 ConnectX-7 和 BlueField-3 适配器。

  • BlueField-3 仅使用 QSFP112,而 ConnectX-7 同时提供 QSFP112 和 OSFP。

没有 AOC 100G-PAM4 系列

AOC 由两个或多个收发器组成,光纤内部粘合且不可分离。这创造了一个完整的、即插即用的电缆组件,就像铜电缆一样,但长度要长得多。虽然 AOC 广泛用于 EDR、HDR 和 100GbE、200GbE 系统,但 AOC 不可用于 100G-PAM4 以太网或 InfiniBand 系统。

双端口 OSFP 和 OSFP 端很重,在安装过程中很容易断开光纤。一个 800G 到 4x 200G AOC 将有 5 个大型 OSFP 连接器。



参考文献(已上传知识星球):

LinkX User Guide for 400Gbps 100G-PAM4 OSFP & QSFP112-based Cables and Transceivers




为感谢支持,已点赞/分享/赞赏10篇/次以上的朋友,请加微信,进入微信群。我将发放免费加入知识星球的链接。

IT奶爸-知识星球



高阅读量文章





IT奶爸
实践是检验“专家”的唯一标准。一群认真执着的IT奶爸的学习和分享。
 最新文章