- 经验
- 2997
- 分贝
- 0
- 家园分
- 27947
- 在线时间:
- 432 小时
- 最后登录:
- 2020-2-17
- 帖子:
- 654
- 精华:
- 5
- 注册时间:
- 2004-4-7
- UID:
- 18988
注册:2004-4-7
|
发表于 2010-9-26 22:55:15
|显示全部楼层
RFC4385定义了在MPLS PW中使用的Control Word和Associated Channel,即在LSP label和PW Label后面,可以跟Control Word或者Associated Channel两个结构化字段。这两个东西有什么用呢?
在MPLS Packet Switched Network里面,LSP label后面会携带IP Payload,IPv4或者IPv6, 大家知道,IP是会做ECMP的,基于IP的MPLS LSP同样也可能做ECMP, 在不同的系统里面,MPLS ECMP可能用不同的field来算hash值,这其中就可能用LSP后面的IP payload.
当PW在MPLS PSN传输的时候,如果没有特殊标志,后面的PWE3 payload可能被误当做IP payload,一旦被用来做ECMP,那就可能导致同一个PW上的数据走不同的转发路径,从而出现乱序。
为了避免这个问题,就需要在PW后面加一些东西来跟IP payload区分开,如何区分呢?大家知道IPv4的IP header的前四个bits是4,IPv6的是6,所以如果能加几个bytes,前四个bits既不是4也不是6,不就可以了吗?正是基于这个想法,所以RFC4385提出了Control word和Associated Channel这两个概念。
其中,Control word用于传输PW中的用户数据,一共32个bits, 前四个bits恒为0,只要看到payload的前四个bits是0,就知道是control word。格式如下:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 0| Flags |FRG| Length | Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
而Associated Channel则用于传输PW中的OAM数据,一共也是32个bits,前四个bits恒为1,只要看到payload的前四个bits是1,就知道是PW的OAM (被VCCV使用),格式如下:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1|Version| Reserved | Channel Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
而MPLS-TP里面进一步发展了PW Associated Channel,提出了Generic Associated Channel.
|
|