光模块的组网方式

文章来源:FPGA的现今未

搞FPGA的大多都用过光模块,通过光模块连接光纤实现了2个设备之间的通信,比如很常见的2个10G的网口通过光纤连接实现通信。如下图所示:是2个10G的光口,采用LC接口的光纤对接实现10G的网络。

1.JPG

但是在实际使用中并不是所有的网口都能一一匹配,比如要通信的对端是40G的光口,而本端是10G的光口,如何通信呢?

光模块分类

首先要了解下光模块的分类,传输速率越高的光模块,结构越复杂。根据封装类型的不同,光模块可分为:SFP、eSFP、SFP+、XFP、SFP28、QSFP+、CXP、CFP、QSFP28、QSFP-DD,所有光模块均支持热插拔。这里说明其中常用的光模块。

SFP+(Small Form-factor Pluggable Plus)光模块:指速率提升的SFP模块,因为速率提升,所以对EMI敏感,壳子上面的裙片做的多了,配对的笼子也相对缩紧了。产品广泛应用万兆以太网光纤数据通信领域,是万兆模块的主流产品。

SFP28(Small Form-factor Pluggable 28)光模块:接口封装大小与SFP+相同,支持速率为25G的SFP28光模块和10G的SFP+光模块。

QSFP+(Quad Small Form-factor Pluggable)光模块:四通道小型可热插拔光模块。QSFP+光模块支持MPO光纤连接器,相比SFP+光模块尺寸更大。

QSFP28(Quad Small Form-factor Pluggable 28)光模块:接口封装大小与QSFP+相同,支持速率为100G的QSFP28光模块和40G的QSFP+光模块。

QSFP-DD((Quad Small Form Factor Pluggable-Double Density))光模块:双密度四通道小型可插拔封装光模块,是QSFP-DD MSA小组定义的一种高速可插拔模块。

这里要明确几个基本知识:

(1)SFP+和SFP28的封装形式是兼容的,也就是说光模块可以混插,但是能否正常使用,还要看固件是否支持。

(2)以Q开头的光模块它通过4个独立的全双工通道进行数据传输,通常交换机或者服务器有一个port split,将1个接口拆成4个独立的接口。比如1个40G的接口拆成4个10G的接口。

一对一场景

在一对一的场景中,除了上述的10G对10G外,如何实现40G对10G、100G对20G、或者100G对10G呢。这里就需要用到上面的port split功能和一种1分12的光纤(这种1分12的光纤可以将一个通道分成4个通道,也简称1分4光纤)。以40G对接10G为例,如下图所示:

2.JPG

左端40G可以采用QSFP+光模块,连接MPO接口的光纤,右端10G光模块采用SFP+光模块,连接LC接口的光纤,中间光纤采用1分4的,MPO转LC的光纤。对于100G对接口25G,方法一样,只不过光模块的封装形式不同而已。

如果左端是服务器或者交换机,需要注意必须支持port split的功能才可能实现上述组网功能。如果左端是FPGA,在例化MAC的时候,只采用一条lane即可。

如果左端是100G的光口了,这里需要另一个一个功能就是降速,将100G的速率降低到40G,即每条lane从25G降到10G,才能和右端10G的光模块通信,当然也需要固件支持降速。

一对多场景

如果一个40G光模块需要对接2个10G光模块时,组网方式也是类似,只是多一个连接设备而已,如下图所示:

3.JPG

一对多的场景可以看成是2个一对一场景的组合,左端本来需要2个40G的光口,或者说1个40G+1个10G的光口,现在只需要一个40G的光口完成组网,节省了左端的硬件端口。

当左端是FPGA设备时,在需要例化2个10G的MAC,分别使用一对lane,但是这2对lane共用了一个40G的光模块(常见的用法是一个MAC对应一个光模块)。

多对多场景

假定上述的一对多场景中,右端有一个设备是40G的光口,现在除了和左端通信,还要与其他设备通信,如下图所示:

4.JPG

A和C接口都是40G光口,B和D是10G的光口,A和C都采用MPO接口的光纤,都只用一个lane连接。A的另一条lane和B连接,同理,C的另一个lane和D连接,即实现了它们之间的互联。

总结

这样的连接方案首先是简化了硬件的设计,不需要如此多的接口,另外还保留了很好的灵活性,增加和对端接口互联时的兼容性。