【GPON实战】ONT和OLT的vlan处理机制(一)

引言

ONT和OLT支持多种vlan配置,包括单层tag vlan,默认vlan(PVID),vlan转换,vlan翻译,双层vlan等等。那ONT和OLT是如何处理的呢?本文将介绍ONT和OLT对vlan的处理机制,第一篇介绍单层vlan场景ONT和OLT如何打vlan和剥离vlan,第二篇将介绍OLT是如何通过omci消息将vlan的处理机制下发到ONT的。

vlan的添加和剥离

交换机的机制

在过去很长一段时间里,笔者将ONT和OLT之间报文传输的vlan处理机制,按普通交换机的机制理解

场景1:ONT和OLT两端配置相同vlan

上行流:

1、LAN PC发送untag报文给ONT;

2、ONT打上标签vlan100,发送带tag vlan 100的报文的给OLT

3、OLT收到带tag vlan 100的报文,检查PON口配置了tag vlan 100,则从上联口转发到Internet

下行流:

1、OLT收到带tag vlan 100的报文,发送带tag vlan 100的报文给ONT

2、ONT收到带tag vlan 100的报文,检查ONT WAN口配置了tag vlan 100,剥离标签后转发给LAN PC;

3、LAN PC收到untag报文

场景2:ONT和OLT两端配置不同vlan

上行流:

1、LAN PC发送untag报文给ONT;

2、ONT打上标签vlan100,发送带tag vlan 100的报文的给OLT

3、OLT收到带tag vlan 100的报文,检查PON口只配置了tag vlan 200,丢弃该报文

下行流:

1、OLT收到带tag vlan 200的报文,发送带tag vlan 200的报文给ONT

2、ONT收到带tag vlan 200的报文,检查ONT WAN口只配置了tag vlan 100,丢弃该报文;

场景3:OLT配置PVID,ONT不配置vlan(透传)

上行流:

1、LAN PC发送untag报文给ONT;

2、ONT上没配置vlan,发送带utag报文的给OLT

3、OLT收到带untag的报文,检查PON口配置了PVID vlan 100,打上标签vlan 100然后从上联口转发到Internet

下行流:

1、OLT收到带tag vlan 100的报文,与PON口配置的PVID一致,则剥离掉标签,发送带untag报文给ONT

2、ONT上没配置vlan,收到带untag报文后转发给LAN PC;

3、LAN PC收到untag报文

疑问

按上述机制的理解,大部分OLT配置和业务都可以解释得通,但长期被以下两个问题困扰:

1、7360配置PVID时,支持ONU(ONT)打标签和OLT打标签两种模式,默认是ONU打标签;这两种的模式有什么区别?

2、在排查业务不通的过程中经常遇到,开发反馈抓包显示报文带了正确的vlan且报文已经发给OLT了,但在OLT却没收到报文;报文在哪里被丢弃,为什么被丢弃?

ONT和OLT的机制

经过跟开发多次排查,抓取OMCI报文和查阅GPON标准文档,发现ONT上有VEIP接口和gpon接口两种接口。VEIP接口的配置由对应的WAN连接决定,gpon接口则是由OLT下发的配置决定。ONT的上行报文先经过VEIP接口处理,再转发给gpon接口处理,最后才发送给OLT。

场景1:ONT和OLT两端配置相同vlan

上行流:

1、LAN PC发送untag报文给ONT;

2、ONT的VEIP接口打上标签vlan100,发送带tag vlan 100的报文的给gpon接口

3、ONT的gpon接口收到tag vlan 100的报文,检查gpon接口配置了tag vlan 100,转发带tag vlan 100的报文给OLT

4、OLT收到带tag vlan 100的报文,检查PON口配置了tag vlan 100,则从上联口转发到Internet

下行流:

1、OLT收到带tag vlan 100的报文,发送带tag vlan 100的报文给ONT

2、ONT的gpon接口收到tag vlan 100的报文,检查gpon接口配置了tag vlan 100,转发tag vlan 100的报文给ONT的VEIP接口

3、ONT的VEIP接口收到带tag vlan 100的报文,检查ONT WAN口配置了tag vlan 100,剥离标签后转发给LAN PC;

4、LAN PC收到untag报文

此场景中,跟交换机的机制对比,上行流和下行流只是多了gpon接口处理这一步,业务本身没有太大区别。

场景2:ONT和OLT两端配置不同vlan

上行流:

1、LAN PC发送untag报文给ONT;

2、ONT的VEIP接口打上标签vlan100,发送带tag vlan 100的报文的给ONT的gpon接口

3、ONT的gpon接口收到带tag vlan 100的报文,检查PON口只配置了tag vlan 200,丢弃该报文

下行流:

1、OLT收到带tag vlan 200的报文,发送带tag vlan 200的报文给ONT的gpon接口

2、ONT的gpon接口收到带tag vlan 200的报文,检查gpon接口配置了tag vlan 200,转发带tag vlan 200的报文给ONT的VEIP接口

3、ONT的VEIP接口收到带tag vlan 200的报文,检查ONT WAN口只配置了tag vlan 100,丢弃该报文;

此场景中,上行报文在ONT的gpon接口就被丢弃,而不是到OLT才被丢弃。这种机制的好处在于节省了ONT到OLT的上行带宽。因为GPON技术中,上行是时分复用技术,多个ONT共享上行带宽;如果一个报文因为带的VLAN不对,在OLT接收到才丢弃,无疑大大浪费了上行带宽。

进一步地,为什么ONT的VLAN不上报的OLT,让带错误VLAN的下行报文在OLT就丢弃呢?原因是在用户的使用场景,业务流绝大部分是有用户发起的,即先有上行流,才有下行流,例如用先要发出播放视频的请求(流),才会收到视频流(下行流),如果ONT和OLT的VLAN不一致,上行流不通,也就没有下行流了。

因此,第二个问题的答案是:研发抓的是VEIP接口(WAN口)的报文,此报文还需要gpon接口处理后才是最终发给OLT的报文;如果gpon接口处理异常,则可能导致报文在gpon接口被丢弃,导致出现抓包看到已经发出报文,但OLT实际没收到报文。

场景3:ONT不配置vlan,OLT配置PVID,由ONT打标签

上行流

1、LAN PC发送untag报文给ONT;

2、ONT的VEIP接口上没配置vlan,发送带utag报文的给ONT的gpon接口;

3、ONT的gpon接口收到带untag的报文,检查gpon接口配置了PVID vlan 100,打上标签vlan 100然后转发给OLT

4、OLT收到带tag VLAN 100的报文,从上联口转发到Internet

下行流:

1、OLT收到带tag vlan 100的报文,与PON口配置的PVID一致,不处理,发送带tag VLAN 100的报文给ONT的gpon接口

2、ONT的gpon接口收到tag VLAN 100的报文,检查gpon接口配置了PVID vlan 100,剥离掉VLAN,转发untag报文给3、ONT的VEIP接口

4、ONT的VEIP接口没配置vlan,收到带untag报文后转发给LAN PC;

5、LAN PC收到untag报文

此场景中,ONT打标签,指在ONT的gpon接口打上PVID,在ONT的gpon接口剥离PVID

场景4:ONT不配置vlan,OLT配置PVID,由OLT打标签

上行流

1、LAN PC发送untag报文给ONT;

2、ONT的VEIP接口上没配置vlan,发送带utag报文的给ONT的gpon接口;

3、ONT的gpon接口收到带untag的报文,检查gpon接口配置了PVID vlan 100,不处理转发untag报文给OLT

4、OLT收到untag报文,打上PVID vlan 100,从上联口转发到Internet

下行流:

1、OLT收到带tag vlan 100的报文,与PON口配置的PVID一致,不处理,发送带tag VLAN 100的报文给ONT的gpon接口

2、ONT的gpon接口收到tag VLAN 100的报文,检查gpon接口配置了PVID vlan 100,剥离掉VLAN,转发untag报文给3、ONT的VEIP接口

4、ONT的VEIP接口没配置vlan,收到带untag报文后转发给LAN PC;

5、LAN PC收到untag报文

此场景中,由OLT打标签,指在OLT的PON打上PVID,在ONT的gpon接口剥离PVID

对比两个场景,第一个疑问有了答案:ONT打标签和OLT打标签的区别在于,前者在ONT的gpon接口打上PVID,后者在OLT的PON接口打上PVID


原创不易,你的支持是我最大的动力,欢迎大家点赞,收藏,关注!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

交换机路由器测试之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值