一种支持光线路终端和光网络单元版本兼容的方法及系统 【技术领域】
本发明涉及通信技术领域, 尤其涉及一种支持无源光网络 (PON) 中光线路终端 (OLT, Optical Line Terminal) 与光网络单元 (ONU, Optical Network Unit) 版本兼容的 方法及系统。背景技术
吉比特无源光网络 (GPON, Gigabit-Capable Passive Optical Network) 技术是 PON 家族中一个重要的技术分支, 和其它 PON 技术类似, GPON 是一种采用点到多点拓扑结构 的无源光接入技术。
GPON 由局侧的 OLT、 用户侧的 ONU 以及光分配网络 (ODN, OpticalDistributio Network) 组成, 通常采用点到多点的网络结构。ODN 通常由单模光纤、 光分路器、 光连接器 等组成, 为 OLT 和 ONU 之间的物理连接提供光传输媒质。
GPON 系统中, 由于下行方向, 即由 OLT 到 ONU 的方向为天然广播方式, 因此各个 ONU 都将收到所有的帧, 并且根据 ONU-ID 来获得属于自己的帧, 并抛弃发送给其他 ONU 的 下行帧。如果网络中存在被重新编程的恶意 ONU, 当 OLT 给某个 ONU 发送下行信息时, 恶意 ONU 就会监听 OLT 发给其他 ONU 的信息。针对此种情况, GPON 系统对 OLT 发给 ONU 的下行 数据进行了加密, 加密密钥是在 OLT 下行发送密码请求, ONU 产生并以明文的形式将密码上 行发送给 OLT 的。现行的 ITU-T 的 G.984.3 标准中没有提供 ONU 对 OLT 的身份进行认证的 方法, 如果 PON 系统中存在恶意 OLT 比如仿冒 OLT 对 ONU 发出指令, 且 ONU 响应了上述指令, 则 PON 系统的安全受到了威胁, 而且 ONU 以明文的形式传输密钥也增加了密钥被盗用的风 险。为解决 GPON 系统中的安全问题, ITU-T 目前正在讨论 :
(1) 基于保护模式的密钥交换方法, 加密密钥是由 OLT 和 ONU 根据相同的方法独立 产生的, 避免了 ONU 以明文形式传输加密密钥, 提高了 GPON 系统的安全性。
(2)OLT 与 ONU 互相进行身份认证的机制, 有效防止了仿冒 OLT 和 ONU 的出现。
通过上述的方法, OLT 和 ONU 支持了更多的功能, 和之前的 OLT、 ONU 所支持的版本 是不一样的。上述方法修改了 GPON 中的传递密码信息和密钥信息的物理层操作管理维护 (PLOAM, Physical layer Operations Administration andMaintenance) 消息中部分字节 的格式, 例如, 现有的 G.984.3 中, OLT 向 ONU 发出密码请求的指令, ONU 回复给 OLT 自身的 密码。在上述基于保护模式的密钥交换方法中, OLT 向 ONU 发出密码请求时携带了 OLT 所 支持的用于认证和加密算法的类型等信息, ONU 回复给 OLT 自身所支持的用于认证和加密 算法的类型等信息。
当版本升级的新一代 OLT 和 ONU 接入现有的 GPON 系统时, GPON 系统中存在两种 版本的 OLT 和 ONU, 即 GPON 中现有的 OLT、 ONU, 以及版本升级后的 OLT、 ONU。当版本升级后 的 OLT 向现有的 ONU 发出密码请求的指令时, ONU 回复给 OLT 自身的密码或者 ONU 不能解析 这种密码请求信息 ; 当现有的 OLT 向版本升级的 ONU 发送密码请求信息时, ONU 回复给 OLT 自身所支持的用于认证和加密算法的类型等信息或者 ONU 不能解析这种密码请求信息。综上所述, GPON 标准的更新升级造成 OLT 或者 ONU 不能正确解析接收到的内容, ONU 发送的信息与 OLT 需要其回复的信息不匹配等问题。上述问题正是由于 OLT 和 ONU 不 知道对方的版本信息, 即: 版本信息不兼容所造成的, 而现有的 ITU-T 的 G.984.3 标准中没 有提供关于 GPON 系统的 OLT 和 ONU 之间的版本协商或者能力协商的实现方案。因此, 目前 迫切需要一种能实现版本协商或者能力协商的方案, 以解决版本信息不兼容的所造成的问 题。 发明内容 有鉴于此, 本发明的主要目的在于提供一种支持 OLT 和 ONU 版本兼容的方法及系 统, 实现了版本协商或者能力协商, 从而能解决版本信息不兼容的所造成的问题。
为达到上述目的, 本发明的技术方案是这样实现的 :
一种支持光线路终端和光网络单元版本兼容的方法, 该方法包括 : 光线路终端 OLT 与光网络单元 ONU 之间支持版本信息的交互, 通过版本信息的交互实现 OLT 和 ONU 的版 本兼容。
其中, 所述版本信息包括 : OLT 和 ONU 支持的标准版本、 软件版本、 或硬件版本。
其中, 所述版本信息的交互具体包括 :
OLT 与 ONU 之间主动地交互各自的版本信息 ;
或者, OLT 与 ONU 之间互相请求对方的版本信息后, 被动地交互各自的版本信息。
其中, 该方法进一步包括 : 在 ONU 注册激活阶段, 所述 OLT 与所述 ONU 之间交互各 自的版本信息。
其中, 交互各自的版本信息具体包括 :
在下行方向上, 当前 OLT 将自身的版本信息封装到下行帧中, 并发送给 ONU ;
在上行方向上, 当前 ONU 将自身的版本信息封装到上行帧中, 并发送给 OLT。
其中, 下行方向时, 版本信息的封装方式具体包括 :
在下行帧中的现有的域封装当前 OLT 自身的版本信息 ;
或者, 在下行帧中增加一个新的域封装当前 OLT 自身的版本信息 ;
或者, 在物理层操作管理维护 PLOAM 消息中利用现有的部分比特封装当前 OLT 自 身的版本信息 ;
或者, 增加新的 PLOAM 消息封装当前 OLT 自身的版本信息 ;
或者, 在 ONU 的管理及控制接口 OMCI 消息中封装当前 OLT 自身的版本信息。
其中, 上行方向时, 版本信息的封装方式具体包括 :
在上行帧中的现有的域封装当前 OLT 自身的版本信息 ;
或者, 在上行帧中增加一个新的域封装当前 OLT 自身的版本信息 ;
或者, 在 PLOAM 消息中利用现有的部分比特封装当前 OLT 自身的版本信息 ;
或者, 增加新的 PLOAM 消息封装当前 OLT 自身的版本信息 ;
或者, 在 OMCI 消息中封装当前 ONU 自身的版本信息。
其中, 该方法进一步包括 : OLT 与 ONU 交互各自的版本信息后, 不需要对接收到的 版本信息进行判断 ; 或者,
OLT 与 ONU 交互各自的版本信息后, 需要对接收到的版本信息进行判断, 并根据判
断出的所能支持的不同版本信息, 判决需发送给对方的不同信息类型。
其中, 注册激活的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息之后 ;
当 OLT 给 ONU 发送序列号请求, 并且 ONU 根据所述当前 OLT 的自身版本信息判断 出当前 OLT 未进行版本升级时, 未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送 给当前 OLT 的所述信息类型皆为 : 序列号 ;
当 OLT 给 ONU 发送序列号请求, 并且 ONU 根据所述当前 OLT 的自身版本信息判断 出当前 OLT 已进行版本升级时, 未进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类 型为 : 自身的序列号 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型为 : 自身 的序列号和密码。
其中, 加密的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息之后 ;
当 OLT 给 ONU 发送密码请求, 并且 ONU 根据所述当前 OLT 的自身版本信息判断出 当前 OLT 未进行版本升级时, 未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给 当前 OLT 的所述信息类型皆为 : 密码 ;
当 OLT 给 ONU 发送密码请求, 并且 ONU 根据所述当前 OLT 的自身版本信息判断出 当前 OLT 已进行版本升级时, 未进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型 为: 自身的密码 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型包括 : 自身用 于认证 OLT 的随机数、 用于响应 OLT 认证的值、 用于 OLT 可以识别 ONU 的信息、 和 ONU 所支 持的认证算法和加密算法。 其中, 该方法进一步包括 : 当根据所述当前 OLT 的自身版本信息判断出当前 OLT 未 进行版本升级时, 已进行版本升级的 ONU, 进一步选择不支持未进行版本升级的 OLT 的密码 请求方式, 并发送报警信息给 OLT ;
当根据所述当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级时, 未进行 版本升级的 ONU, 进一步选择不支持已进行版本升级的 OLT 的密码请求方式, 并发送报警信 息给 OLT。
一种支持光线路终端和光网络单元版本兼容的系统, 该系统包括 : 交互单元和版 本兼容单元 ; 其中,
交互单元, 用于 OLT 与 ONU 之间交互版本信息 ;
版本兼容单元, 用于通过版本信息的交互实现 OLT 和 ONU 的版本兼容。
其中, 所述交互单元, 进一步用于 OLT 与 ONU 之间主动地交互各自的版本信息 ; 或 者, OLT 与 ONU 之间互相请求对方的版本信息后, 被动地交互各自的版本信息。
其中, 所述交互单元, 进一步用于在 ONU 注册激活阶段, 所述 OLT 与所述 ONU 之间 交互各自的版本信息。
其中, 该系统还包括 : 版本信息判断单元和信息类型判决单元 ; 其中,
版本信息判断单元, 用于 OLT 与 ONU 交互各自的版本信息, 对接收到的版本信息进 行判断, 并判断出所能支持的不同版本信息 ;
信息类型判决单元, 用于根据判断出的所能支持的不同版本信息, 判决需发送给 对方的不同信息类型。
其中, 在注册激活的情况下, 所述版本信息判断单元, 进一步用于 OLT 给 ONU 发送 序列号请求时, ONU 根据所述当前 OLT 的自身版本信息判断出当前 OLT 未进行版本升级 ; 所
述信息类型判决单元, 进一步用于未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发 送给当前 OLT 的所述信息类型皆为 : 序列号 ; 或者 ;
在注册激活的情况下, 所述版本信息判断单元, 进一步用于 OLT 给 ONU 发送序列号 请求时, ONU 根据所述当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级 ; 所述信息 类型判决单元, 进一步用于未进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型为 : 自身的序列号 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型为 : 自身的序 列号和密码。
其中, 在加密的情况下, 所述版本信息判断单元, 进一步用于 OLT 给 ONU 发送密码 请求时, ONU 根据所述当前 OLT 的自身版本信息判断出当前 OLT 未进行版本升级 ; 所述信息 类型判决单元, 进一步用于未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给当 前 OLT 的所述信息类型皆为 : 密码 ; 或者 ;
在加密的情况下, 所述版本信息判断单元, 进一步用于 OLT 给 ONU 发送密码请求 时, ONU 根据所述当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级 ; 所述信息类型 判决单元, 进一步用于未进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型为 : 自身 的密码 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的所述信息类型包括 : 自身用于认证 OLT 的随机数、 用于响应 OLT 认证的值、 用于 OLT 可以识别 ONU 的信息、 ONU 所支持的认证算 法和加密算法。 本发明的 OLT 与 ONU 之间之间支持版本信息的交互, 通过版本信息的交互实现 OLT 和 ONU 的版本兼容。
采用本发明, 通过 OLT 和 ONU 之间交互各自的版本信息, 实现了版本协商或者能力 协商, 从而能解决版本信息不兼容的所造成的问题, 使 PON 中部分版本不同的 OLT 与 ONU 共 存时, PON 中的版本不同的 OLT 和 ONU 能协调兼容工作。
附图说明
图 1 为本发明方法一实施例的实现流程示意图。具体实施方式
本发明的基本思想是 : OLT 与 ONU 之间支持版本信息的交互, 通过版本信息的交互 实现 OLT 和 ONU 的版本兼容。
下面结合附图对技术方案的实施作进一步的详细描述。
一种支持 OLT 和 ONU 版本兼容的方法, 该方法包括 : OLT 与 ONU 之间支持版本信息 的交互, 通过版本信息的交互实现 OLT 和 ONU 的版本兼容。
针对版本信息而言, 版本信息包括 : OLT 和 ONU 支持的标准版本、 软件版本、 或硬件 版本。
如图 1 所示为本发明方法一实例的实现流程示意图, 本实例中, 通过版本信息的 交互以支持 OLT 和 ONU 版本兼容, 其包括以下步骤 :
步骤 101、 OLT 与 ONU 之间主动地交互各自的版本信息。
这里, 步骤 101 还可以为步骤 111 : OLT 与 ONU 之间互相请求对方的版本信息后, 被 动地交互各自的版本信息。这里需要指出的是 : 最好在 ONU 注册激活阶段, OLT 与 ONU 之间交互各自的版本信息。 步骤 102、 OLT 与 ONU 交互各自的版本信息后, 需要对接收到的版本信息进行判断, 并根据判断出的所能支持的不同版本信息, 判决需发送给对方的不同信息类型。
这里, 步骤 102 还可以为步骤 112 : OLT 与 ONU 交互各自的版本信息后, 不需要对接 收到的版本信息进行判断。
其中, 信息类型具体为 : 各种版本的 OLT 与 ONU 之间, 支持双方版本信息的信息类 型; 双方版本信息为相同或不同。
针对由步骤 101/111 ~步骤 102/112 所构成的技术方案而言, 步骤 101/111 中, 交 互各自的版本信息具体包括下行方向和上行方向两种情况, 以下分别阐述。
第一种情况 : 在下行方向上, 当前 OLT 将自身的版本信息封装到下行帧中, 并发送 给 ONU。这样, 以便通知 ONU 当前 OLT 所支持的标准组织规定的标准版本信息。
针对信息的封装、 或者叫携带的方式而言, 下行方向时, 版本信息的封装方式具体 包括以下内容之一 :
一、 在下行帧中的现有的域封装当前 OLT 自身的版本信息。
二、 在下行帧中增加一个新的域封装当前 OLT 自身的版本信息。
三、 在 PLOAM 消息中利用现有的部分比特封装当前 OLT 自身的版本信息。
四、 增加新的 PLOAM 消息封装当前 OLT 自身的版本信息 ;
五、 在 ONU 的管理及控制接口 (OMCI) 消息中封装当前 OLT 自身的版本信息。
需要指出的是 : PLOAM 消息、 OMCI 消息都可以包括在下行帧中。
第二种情况 : 在上行方向上, 当前 ONU 将自身的版本信息封装到上行帧中, 并发送 给 OLT。这样, 以便通知 OLT 当前 ONU 所支持的标准组织规定的标准版本信息。
针对信息的封装、 或者叫携带的方式而言, 上行方向时, 版本信息的封装方式具体 包括以下内容之一 :
一、 在上行帧中的现有的域封装当前 ONU 自身的版本信息。
二、 在上行帧中增加一个新的域封装当前 ONU 自身的版本信息。
三、 在 PLOAM 消息中利用现有的部分比特封装当前 ONU 自身的版本信息。
四、 增加新的 PLOAM 消息封装当前 ONU 自身的版本信息 ;
五、 在 OMCI 消息中封装当前 ONU 自身的版本信息。
需要指出的是 : PLOAM 消息、 OMCI 消息也都可以包括在上行帧中。
步骤 102 中, 在不同应用场景, 比如注册激活过程和加密过程中, 判决需发送给对 方的信息类型有所不同, 以下分别举例阐述。每个场景下分别包括两种情况。
场景一 : 注册激活过程。
第一种情况 : 注册激活的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息 之后 ; 当 OLT 给 ONU 发送序列号请求, 并且 ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 未进行版本升级时, 未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给当前 OLT 的信息类型皆为 : 序列号。
第二种情况 : 注册激活的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息 之后 ; 当 OLT 给 ONU 发送序列号请求, 并且 ONU 根据当前 OLT 的自身版本信息判断出当前
OLT 已进行版本升级时, 未进行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的 序列号 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的序列号和密码。
场景一 : 加密过程。
第一种情况 : 加密的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息之 后; 当 OLT 给 ONU 发送密码请求, 并且 ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 未 进行版本升级时, 未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给当前 OLT 的 信息类型皆为 : 密码。
第二种情况 : 加密的情况下, ONU 接收到来自 OLT 的当前 OLT 的自身版本信息之 后; 当 OLT 给 ONU 发送密码请求, 并且 ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 已 进行版本升级时, 未进行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的密码 ; 已进行版本升级的 ONU 决定发送给当前 OLT 的信息类型包括 : 自身用于认证 OLT 的随机数、 用于响应 OLT 认证的值、 用于 OLT 可以识别 ONU 的信息、 ONU 所支持的认证算法和加密算法。
这里需要指出的是 : 就加密过程中的第一种情况而言, 当根据当前 OLT 的自身版 本信息判断出当前 OLT 未进行版本升级时, 该方法进一步包括 : 已进行版本升级的 ONU, 进 一步选择不支持未进行版本升级的 OLT 的密码请求方式, 并且已进行版本升级的 ONU 发送 报警信息给 OLT。 就加密过程中的第二种情况而言, 当根据当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级时, 该方法进一步包括 : 未进行版本升级的 ONU, 进一步选择不支持已 进行版本升级的 OLT 的密码请求方式, 并且未进行版本升级的 ONU 发送报警信息给 OLT。
综上所述, 本发明主要包括以下内容 :
针对 PON 系统中, 部分不同版本的 OLT 和 ONU 共存给整个 PON 系统带来的问题, 本 发明提出了一种 OLT/ONU 通知 ONU/OLT 自己的版本信息的方法, 从而 ONU/OLT 可以根据发 送信息的 OLT/ONU 的版本完成对接收信息的解析和对发送信息的选择, 解决了 PON 系统中 升级版本的 OLT、 ONU 与现有版本的 OLT、 ONU 的协同工作问题。
本发明采用以下技术方案 :
OLT 和 ONU 之间可以交互各自的版本信息。
进一步地, OLT 在发送给 ONU 的下行帧中携带信息通知 ONU 当前 OLT 所支持的标 准组织规定的标准版本信息, ONU 在发送给 OLT 的上行帧中携带信息通知 OLT 当前 ONU 所 支持的标准组织规定的标准版本信息。
进一步地, OLT 和 ONU 可以互相请求对方的版本信息。
进一步地, OLT 和 ONU 尽量在 ONU 注册激活阶段互相交互版本信息。
进一步地, OLT 可以在下行帧中的下行物理控制块 (PCBd, Physical ControlBlock downstream) 中携带自身的版本信息。OLT 也可以在下行帧中增加一个域传递自身的版本 信息 ; OLT 也可以在某个 PLOAM 消息中利用部分比特传递自身的版本信息 ; OLT 也可以增加 一个新的 PLOAM 消息传递自身的版本信息, OLT 可以通过 OMCI 消息传递自身的版本信息。
进一步地, ONU 可以在发送包含序列号信息的物理层操作、 管理与维护 PLOAM 消息 中携带自身的版本信息。 ONU 也可以在上行帧中增加一个域传递自身的版本信息 ; ONU 也可 以在某个 PLOAM 消息中利用部分比特传递自身的版本信息 ; ONU 也可以增加一个新的 PLOAM 消息传递自身的版本信息, ONU 可以通过 OMCI 消息传递自身的版本信息。
以下对本发明举例阐述。应当理解, 以下所描述的优选实例仅用于说明和解释本 发明, 并不用于限定本发明。如果不冲突, 本申请中的实例及实例中的特征可以相互组合。
实例一 :
GPON 系统中, 在 ONU 注册激活过程中, OLT 是通过 ONU 的序列号判断该 ONU 是否合 法。这种方法要求 OLT 预先知道 ONU 的序列号, 如果一个 ONU 的序列号没有预先存储在 OLT 的序列号库中, 则此 ONU 不能注册。 为了解决 ONU 注册中存在的这种问题, ITU-T 的 G.984.3 标准中允许通过 ONU 的密码或其他消息进行注册。本实例中, 支持 ONU 序列号或密码注册 功能的 OLT 和 ONU 称为版本升级的 OLT 和 ONU。
OLT 通过下行帧 PCBd 域的分配结构 (Allocation Structure) 中 Flags 的保留域 传递给 ONU 自身的版本信息, 当 Flags 的 bit1-0 的值为 00 时, 表示此 OLT 没有进行版本升 级, 它仅支持基于 ONU 的序列号进行 ONU 的注册激活 ; 当 Flags 的 bit1-0 位的值为 01 时, 表示此 OLT 已进行版本升级, 它支持基于 ONU 的序列号或密码进行 ONU 的注册激活。需要 说明的是这里仅涉及两个版本的 GPON 标准, 如果有多个版本的 GPON 标准, 可以采用 Flags 域的更多保留比特以支持更多的可能取值表示不同的 GPON 标准版本。
ONU 通过包含序列号信息的 PLOAM 消息 ( 消息名为 Serial Number ONU) 中的第 12 字节传递给 OLT 自身的版本信息, 当 Serial Number ONU 消息的第 12 字节的 bit3-2 位 的值为 00 时, 表示此 ONU 没有进行版本升级, 它仅支持基于 ONU 的序列号进行 ONU 的注册 激活 ; 当 Flags 的 bit3-2 位的值为 01 时, 表示此 ONU 已进行版本升级, 它支持基于 ONU 的 序列号或密码进行 ONU 的注册激活。 没有进行版本升级的 OLT 发送用于发现未注册激活 ONU 的 AllocationStructure 的各部分的值为 : Alloc-ID = 254, 这个值是 ONU 激活 Alloc-ID ; Flags 域中的 bit10 置 1, 即: ONU 需要上传 PLOAMu 消息 ; Flags 的 bit1-0 位的值为 00, 表示此 OLT 没有进行版本升 级; SstartTime = xx, SstopTime = xx+12, 表示 ONU 在上行帧的第 xx 字节发送 PLOAMu 消 息, 在 xx+12 字节停止发送 ; CRC 域对当前的时间分配结构提供保护。当没有进行版本升级 的 ONU 和已经进行版本升级的 ONU 接收到上述的 Allocation Structure 时, 根据 Flags 的 bit1-0 位的值 00 可以判断此 OLT 没有进行版本升级, 因此两种版本的 ONU 都发送自身的序 列号给 OLT, 完成注册激活过程。
已经进行版本升级的 OLT 发送用于发现未注册激活 ONU 的 AllocationStructure 的各部分的值为 : Alloc-ID = 254, 这个值是 ONU 激活 Alloc-ID ; Flags 域中的 bit10 置 1, 即: ONU 需要上传 PLOAMu 消息 ; Flags 的 bit1-0 位的值为 01, 表示此 OLT 已经进行版本升 级; SstartTime = xx, SstopTime = xx+25, 表示 ONU 在上行帧的第 xx 字节发送 PLOAMu 消 息, 在 xx+25 字节停止发送 ; CRC 域对当前的时间分配结构提供保护。当没有进行版本升级 的 ONU 和已经进行版本升级的 ONU 接收到上述的 Allocation Structure 时, 根据 Flags 的 bit1-0 位的值 01 可以判断此 OLT 已经进行版本升级, 因此没有进行版本升级的 ONU 发送自 身的序列号给 OLT, 完成注册激活过程。 已经进行版本升级的 ONU 发送自身的序列号和密码 给 OLT, 完成注册激活过程。
本实例给出了一种 OLT 和 ONU 交互版本信息的方法。OLT 也可以通过下行帧的 IDENT 域的保留位 bit31 传递自身的版本信息, bit31 的值为 0 时, 表示 OLT 的版本没有 升级, bit31 的值为 1 时, 表示 OLT 的版本已升级 ; OLT 也可以通过下行帧的 PLEND 域的
bit19-8 传递自身的版本信息 ; OLT 也可以在下行帧中增加一个域传递自身的版本信息 ; OLT 也可以在某个 PLOAM 消息中利用部分比特传递自身的版本信息 ; OLT 也可以增加一个新 的 PLOAM 消息传递自身的版本信息, OLT 也可以通过 OMCI 消息携带自身的版本信息。ONU 也可以通过上行帧的 IND 域的 bit4-0 传递自身的版本信息 ; ONU 也可以在上行帧中增加一 个域传递自身的版本信息 ; ONU 也可以在某个 PLOAM 消息中利用部分比特传递自身的版本 信息 ; ONU 也可以增加一个新的 PLOAM 消息传递自身的版本信息, ONU 也可以通过 OMCI 消息 携带自身的版本信息。
本实例说明了两种版本的 OLT 和 ONU 协同工作的方法, 当 GPON 中存在多种版本 的 OLT 和 ONU 时, OLT 和 ONU 也可以通过本实施例的方法传递自身的版本信息, 各种版本的 OLT/ONU 通过接收到的 ONU/OLT 的版本信息解析接收到的信息并决定发送的信息类型, 实 现各种版本的 OLT 和 ONU 在 GPON 系统中的协同工作。
本实例给出了根据 OLT 和 ONU 的功能划分 OLT 和 ONU 的版本, 也可以根据 OLT 和 ONU 符合不同时间的标准划分 OLT 和 ONU 的版本。
本实例中 OLT 和 ONU 主动给对方发送自己版本信息, OLT 和 ONU 也可以互相请求 对方的版本信息。 实例二 :
GPON 系统中, 对 OLT 下行数据的加密是通过 OLT 发送消息名称为 Request_Key message 的密钥请求, ONU 接收到此消息后产生一个密钥索引和加密密钥, 并以明文的方式 发送消息名称为 Encryption_Key message 的密钥给 OLT, OLT 收到此密钥后选择并通知 ONU 利用此密钥加密的时间, OLT 和 ONU 同步使用此密钥。支持此加密过程的 OLT 和 ONU 称为没有进行版本升级的 OLT 和 ONU。意大利电信提出的对 OLT 下行数据进行加密的过程 如下 : OLT 给 ONU 发送一个消息名称为 Request_Password message 的密码请求, 此消息携 带了 OLT 所支持的用于认证 ONU 的随机数、 认证算法和加密算法的类型等信息, ONU 回复给 OLT 用于认证 OLT 的随机数、 响应 OLT 认证的值、 OLT 可以识别 ONU 的信息、 ONU 所支持的认 证算法和加密算法的类型等信息。如果 ONU 通过 OLT 的认证后, OLT 发送名称为 Request_ Key message 的密钥请求, 此请求携带了用于 ONU 认证 OLT 的响应值和用与产生密钥的随 机数信息, ONU 收到此信息后对 OLT 进行认证, 如果 OLT 通过认证, ONU 响应发送名称为 Encryption_Keymessage 的 PLOAM 消息, 此信息携带密钥索引、 用于产生密钥的随机数和用 于 OLT 认证 ONU 的响应值。OLT 收到此信息后, 如果 ONU 通过认证, OLT 和 ONU 可以独立地 利用加密算法对 OLT、 ONU 产生的随机数和 OLT、 ONU 预先知道的秘密信息进行计算, 得到密 钥。OLT 选择并通知 ONU 利用此密钥加密的时间, OLT 和 ONU 同步使用此密钥。支持此加密 过程的 OLT 和 ONU 称为已进行版本升级的 OLT 和 ONU。
OLT 通过下行帧的 IDENT 域的保留位 bit31 传递自身的版本信息, bit31 的值为 0 时, 表示 OLT 的版本没有升级, bit31 的值为 1 时, 表示 OLT 的版本已升级 ; ONU 通过上行帧 的 IND 域的 bit1-0 传递自身的版本信息, bit1-0 的值为 00 时, 表示 ONU 的版本没有升级, bit1-0 的值为 01 时, 表示 ONU 的版本已经升级。
当没有进行版本升级的 OLT 发送密码请求 Request_Password message 时, 没有进 行版本升级的 ONU 和已经进行版本升级的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 0 可以判断此 OLT 没有进行版本升级, 因此没有进行版本的 ONU 和已经进行版本升级的 ONU
都发送自身的密码给 OLT。 当没有进行版本升级的 OLT 发送密钥请求 Request_Key message 时, 没有进行版本升级的 ONU 和已经进行版本升级的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 0 可以判断此 OLT 没有进行版本升级, 因此没有进行版本升级的 ONU 和已经进行 版本升级的 ONU 都按照没有升级的 OLT 和 ONU 的交互密钥方法, 在 ONU 处产生一个密钥并 以明文的形式发送给 OLT。
当没有进行版本升级的 OLT 发送密钥请求 Request_Key message 时, 已经进行版 本升级的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 0 可以判断此 OLT 没有进行版本 升级, 实现版本升级的 ONU 也可以选择不支持未进行版本升级的 OLT 的密钥交换方式, 版本 升级的 ONU 发送报警信息给 OLT。
当已经进行版本升级的 OLT 发送密码请求 Request_Password message 时, 没有进 行版本升级的 ONU 和已经进行版本升级的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 1 可以判断此 OLT 已经进行版本升级, 因此没有进行版本的 ONU 发送自身的密码给 OLT, 已 经进行版本升级的 ONU 回复给 OLT 用于认证 OLT 的随机数、 响应 OLT 认证的值、 OLT 可以识 别 ONU 的信息、 ONU 所支持的认证算法和加密算法的类型等信息。当已经进行版本升级的 OLT 发送密钥请求 Request_Key message 时, 没有进行版本升级的 ONU 和已经进行版本升级 的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 1 可以判断此 OLT 已经进行版本升级, 因此没有进行版本升级的 ONU 按照没有升级的 OLT 和 ONU 的交互密钥方法, 在 ONU 处产生 一个密钥并以明文的形式发送给 OLT, 已经进行版本升级的 ONU 收到此信息后对 OLT 进行认 证, 如果 OLT 通过认证, ONU 响应发送名称为 Encryption_Key message, 此信息携带密钥索 引、 用于产生密钥的随机数和用于 OLT 认证 ONU 的响应值。
当已经进行版本升级的 OLT 发送密钥请求 Request_Key message 时, 没有进行版 本升级的 ONU 根据下行帧的 IDENT 域的保留位 bit31 的值 1 可以判断此 OLT 已经进行版本 升级, 没有进行版本升级的 ONU 也可以选择不支持已经进行版本升级的 OLT 的密钥交换方 式, 未进行版本升级的 ONU 发送报警信息给 OLT。
本实例给出了一种 OLT 和 ONU 交互版本信息的方法。OLT 也可以通过下行帧的 PLEND 域的 bit19-8 传递自身的版本信息 ; OLT 也可以在下行帧中增加一个域传递自身的版 本信息 ; OLT 也可以在某个 PLOAM 消息中利用部分比特传递自身的版本信息 ; OLT 也可以增 加一个新的 PLOAM 消息传递自身的版本信息, OLT 也可以通过 OMCI 消息携带自身的版本信 息。ONU 也可以在上行帧中增加一个域传递自身的版本信息 ; ONU 也可以在某个 PLOAM 消息 中利用部分比特传递自身的版本信息 ; ONU 也可以增加一个新的 PLOAM 消息传递自身的版 本信息, ONU 也可以通过 OMCI 消息携带自身的版本信息。
本实例说明了两种版本的 OLT 和 ONU 协同工作的方法, 当 GPON 中存在多种版本的 OLT 和 ONU 时, OLT 和 ONU 也可以通过本实例的方法传递自身的版本信息, 各种版本的 OLT/ ONU 通过接收到的 ONU/OLT 的版本信息解析接收到的信息并决定发送的信息类型, 实现各 种版本的 OLT 和 ONU 在 GPON 系统中的协同工作。
本实例给出了利用 OLT 和 ONU 的功能划分 OLT 和 ONU 的版本, 也可以根据 OLT 和 ONU 符合不同时间的标准划分 OLT 和 ONU 的版本。
本实例中 OLT 和 ONU 主动给对方发送自己版本信息, OLT 和 ONU 也可以互相请求 对方的版本信息。一种支持 OLT 和 ONU 版本兼容的系统, 该系统包括 : 交互单元和版本兼容单元。其 中, 交互单元, 用于 OLT 与 ONU 之间交互版本信息 ; 版本兼容单元, 用于通过版本信息的交互 实现 OLT 和 ONU 的版本兼容。
这里, 交互单元, 进一步用于 OLT 与 ONU 之间主动地交互各自的版本信息 ; 或者, OLT 与 ONU 之间互相请求对方的版本信息后, 被动地交互各自的版本信息。
这里, 交互单元进一步用于在 ONU 注册激活阶段, OLT 与 ONU 之间交互各自的版本 信息。
这里, 该系统还包括 : 版本信息判断单元和信息类型判决单元。其中, 版本信息判 断单元, 用于 OLT 与 ONU 交互各自的版本信息, 对接收到的版本信息进行判断, 并判断出所 能支持的不同版本信息。 信息类型判决单元, 用于根据判断出的所能支持的不同版本信息, 判决需发送给对方的不同信息类型。
以下, 进一步地, 对不同情况比如注册激活或加密下, 版本信息判断单元和信息类 型判决单元的具体实现进行分别阐述。
第一种情况 : 注册激活的情况下。
一种具体实现 : 版本信息判断单元, 进一步用于 OLT 给 ONU 发送序列号请求时, ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 未进行版本升级。信息类型判决单元, 进一 步用于未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给当前 OLT 的信息类型皆 为: 序列号。
另一种具体实现 : 版本信息判断单元, 进一步用于 OLT 给 ONU 发送序列号请求时, ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级。 信息类型判决单元, 进 一步用于未进行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的序列号 ; 已进 行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的序列号和密码。
第二种情况 : 加密的情况下。
一种具体实现 : 版本信息判断单元, 进一步用于 OLT 给 ONU 发送密码请求时, ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 未进行版本升级。信息类型判决单元, 进一 步用于未进行版本升级的 ONU、 和已进行版本升级的 ONU 决定发送给当前 OLT 的信息类型皆 为: 密码。
另一种具体实现 : 版本信息判断单元, 进一步用于 OLT 给 ONU 发送密码请求时, ONU 根据当前 OLT 的自身版本信息判断出当前 OLT 已进行版本升级。信息类型判决单元, 进一 步用于未进行版本升级的 ONU 决定发送给当前 OLT 的信息类型为 : 自身的密码 ; 已进行版 本升级的 ONU 决定发送给当前 OLT 的信息类型包括 : 自身用于认证 OLT 的随机数、 用于响应 OLT 认证的值、 用于 OLT 可以识别 ONU 的信息、 ONU 所支持的认证算法和加密算法。
这里, 以上涉及到的序列号可以用 Serial Number 表示 ; 密码可以用 Passward 表 示。
以上所述, 仅为本发明的较佳实施例而已, 并非用于限定本发明的保护范围。