MPCP协议详解-带注释(EPON关键协议)_第1页
MPCP协议详解-带注释(EPON关键协议)_第2页
MPCP协议详解-带注释(EPON关键协议)_第3页
MPCP协议详解-带注释(EPON关键协议)_第4页
MPCP协议详解-带注释(EPON关键协议)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2页共24页MPCP协议详细介绍MPCP帧结构MPCP定义了5种消息,称之为MPCPDATAUNITs,GATE、REPORT、REGISTER_RQ、REGISTER、REGISTER_ACK,他们用于OLT和ONU之间的信息交换。所有的MPCPDU为64字节的MAC控制帧,包括以下域:DA(目的地址),6个字节域,所有的MPCPDU都使用一个共同的多播MAC目的地址,其值为:01-80-C2-00-00-01,但是REGISTER报文除外,其使用ONU的实际MAC地址。SA(源地址),在OLT中,对应一个GMII接口有多个MAC实例,因此不同的MAC发出的数据都必须携带其对应的SA。类型域值为8808Opcode区分MAC控制帧类型。0001为PAUSE帧,0002为GATE帧,0003为REPORT帧,0004为REGISTER_REQ帧,0005为REGISTER帧,0006为REGISTER_ACK帧。TIMESTAMP,时标;用于同步OLT与ONU的MPCPCLOCK,其参考点为DA的首字节。Opcode-specificfield:用于传输特定的MPCP功能,不用的时候置0;FCS,CRC32REPORT帧REPORT帧是ONU用来向OLT上报本地队列状态的。Queue#nreport这个域的内容表示的不是实际的队列字节长度,其为传送这些字节需要的时间,这个时间还要考虑上前导码、帧间隔、FEC检验域等时间。ReportbitmapQueue有效指示,相应位为1则表示此QUEUE域值有效,否则无效。总共对应8个队列。NumberofQueueSets由于OLT分配给ONU的时隙不会正好等于ONU中的数据队列的发送时间,因此在时隙边界有可能会浪费部分的带宽(不能传送被切断的以太网帧),所以802.3ah工作组进入了多个queuesets,每个queueset都表示从队列开始的队列指示,但是分别指示了不同的长度,如果OLT分配的时隙中无法发送整个队列的话,则可以选择其中一种queueset来作为给ONU分配时隙的依据。简单而言,就是ONU提供了本地队列长度的多个门限截至位置,这些位置可以给OLT以更加灵活有效的带宽分配依据。GATE帧NumberofGrants/flagsNumberofGrants/Flag域中的低3比特(比特2~比特0)表示此GATE中携带的窗口授权个数,最多不能超过4个,其值从0变化到4,当为0时表示不进行窗口授权,仅表示一种链接机制,为1时表示携带1个窗口授权参数,为4表示携带4个窗口授权参数。一个常规GATE帧的发送对象为固定的,由LLID指定,最多可分配4个时隙(窗口)。比特3表示此GATE消息是discoveryGATE还是normalGATE,为0表示normalGATE。比特7~比特4表示在对应的授权窗口内需要ONU回告REPORT消息(强制回告)。比特4对应第1个授权窗口,比特7对应第4个授权窗口。一般来讲,如果OLT强制要求ONU回告REPORT消息的话,必须分配一个比原有授权窗口略大的一个窗口参数以适合REPORT消息的传送,如果OLT还是按照原来的参数进行分配的话,ONU的REPORT消息将会抢占正常数据的发送位置,由此可能导致带宽存在浪费的现象。当然,ONU也可自主发出REPORT消息,此时的REPORT消息应该是计算在队列长度中的。Grant#nstarttimeStartTime是以TQ为单位的,32位的计数器,ONU将在此StartTime指定的时刻开启激光器。不过在discoveryGATE中指定的startTime仅仅是可以打开激光器的参数值,因为ONU将会在此值上延时一个随机时间后才能打开激光器。Grant#nLength\在DiscoveryGATE中的GrantLength用来给ONU计算随机时间范围,在ONU中是根据grantLength减去REGISTER_REQ的传送时间作为随机时间范围的。Synctime这个仅在discoveryGATE中设置。ONU在指定的TAGC与TCDR期间发送IDLE码型。OLT最多一次4个授权窗口,ONU如何知道此授权窗口是给自己的,通过前导码中的逻辑链路标识LLIDREGISTER_REQ帧OLT收到REGISTER_REQ帧后有两个重要信息要处理:计算RTT与学习ONU的MAC地址。FLAGsFlag=1表示注册请求,Flag=3表示撤销注册请求。其他值均为保留值,OLT接收到保留值是不处理的。PendingGrantsONU接收到GATE消息后将把startTime等参数存贮起来等待本地MPCP时钟到点时再根据存贮起来的参数进行数据发送,ONU中会有一个缓存,此pendingGrants就是指示这个缓存中剩余空间的,其目的是告诉OLT我还能缓存多少个授权窗口参数信息,如果超过则会被ONU丢弃。REGISTER帧REGISTER消息用来为通过注册验证的ONU分配LLID,由于此时链接尚未建立,因此REGISTER消息发送时采用了广播的LLID,但是其MAC地址却是学习到的对应ONU的MAC地址。(此时有其他用户根据广播LLID可以获取MAC数据帧的话就可以把其MAC设置为混杂模式以便监听其他ONU的下行数据了)。由于是MPCP的控制帧,所以大家都可以收到此帧,别人就可以侦听到相应LLID的对应MAC地址。REGISTER消息还能用来撤销注册,OLT发送REGISTER消息给一个已经注册上的ONU时,表示要求其重新注册或者撤销其注册资格。此时OLT发出的REGISTER消息采用唯一的LLID以及多播MAC地址01-80-C2-00-00-01。AssignedPort携带唯一的LLID信息。一个PON调度处理引擎系统中的LLID都是唯一的,也就是说同一个处理平台上的不同PON光口分配的LLID不能有冲突。但是不同的处理系统中(比如两块PON接口板)的LLID可以成各自独立分配系统。FLAGs有四种情况,除去这四种情况外的REGISTER报文在ONU处是不处理的。对已经注册的ONU要求其重新注册;撤销注册,对已经注册的ONU撤销其注册状态,撤销后ONU将加入未初始化的ONU一类;注册成功响应,表示ONU注册信息验证通过;注册未成功响应,表示ONU注册信息验证没有通过;SyncTime同REGISTER_REQ中的synctime类似,但是数值可以不同,为经过调整的数值。Echoedpendinggrant表示OLT已经知晓ONU中的缓存空间。REGISTER_ACK帧Flags域表示ONU是否响应注册;Echoedassignedport为REGISTER中分配指定的port的一份拷贝。Synctime也是REGISTER的数据拷贝。Opcode-independentprocessMAC控制子层中的处理操作分为两种:与Opcode无关的parser控制处理、发送复用处理,以及与Opcode相关的PAUSE帧处理、discovery处理、GATE处理、REPORT处理。其实parser与复用模块也是有与opcode相关的部分。ControlparserControlparser负责把接收到的帧进行分类,分发到不同的处理模块进行处理,比如数据帧去业务处理,GATE帧去GATE处理模块等等。OLT与ONU中的controlparser模块基本相同,唯一的区别在于时标处理方式。其中guardThresholdOLT=12TQ,guardThresholdONU=8TQONUControlMultiplexer其中的checksizestate处如果发现待传送帧的TQ大于指配的时间窗时,此数据帧(控制帧)必须停止发送,也就是仍然存放在缓存队列中的首地址位置。Multi-pointtransmissioncontrolOLTControlMultiplexerGatingprocessGateprocess包括OLT产生GATE信息以及ONU接收和处理GATE信息的过程。在OLT侧为Gategenerationprocess,在ONU侧为Gatereceptionprocess(parsingandverifying接收的GATE帧)和Gateactivationprocess(发送timing控制)。GategenerationatOLTGategeneration由DBAagent驱动,它决定给分配给ONU的startTime和length参数值,每接收到DBAagent来的请求,Gategenerationprocess都会产生一个GATE信息帧发送给ONU。Gate信息还能用来实现keep-alive机制,其可以告知ONU,OLT虽然没有下发GATE时间信息,但是OLT中对应的逻辑运转还是正常的。这种情况发生在DBA没有按时(50ms)向gategenerationprocess发起请求,那么gategenerationprocess将自动产生GATE信息(grantnumber=0)给ONU以保持链接。GatereceptionatONUONU如果在1s之内(MPCPclock)没有收到GATE信息,则ONU将撤销注册。GateactivationatONU802.3ah协议规定,ONU撤销注册时,当前正在发送的帧必须传送完;另有一种意见是立刻中止传送。ReportingprocessReportgenerationatONUReport消息由DBA驱动,当DBA在设定的时间内无发送report消息的请求时,ONU需要自动产生一个空的report消息,以此来告知OLT一个结果:ONU在运转。ReportreceptionatOLT在1s之内如果收不到ONU的report消息,则认为此ONU下线,必须在本地数据库中撤销其注册登记资料。Discoveryprocess自动发现机制用来检测新上线的ONU,学习其RTT时间以及MAC地址。这个发现过程分为四个阶段:discoverygategenerationprocess、Requestreceptionprocess、Registergenerationprocess、finalregistrationprocess。这四个阶段都是由DiscoveryAgent来驱动的。由于OLT的周期性广播discover帧,未注册的ONU发现后,在允许时间内发送register_req帧。当OLT得到MAC,ONU得到LLID后,至此他们之间的连接注册建立。此后,他们之间的通信为单一链路通信(通过LLID识别)。Disc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论