合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
标签子系统用于基于MPLS的应用。作为一个系统资源,标签在ONOS内管理,应用程序可以通过北向接口调用获取或释放标签资源。标签被构建为资源池,并存储在ONOS仓库中。标签池一种容器。池中的标签定义为连续数字。根据应用程序的类型及其需求,系统提供两类标签池。首先, `device-label-pool`,当一个设备连接到网络中,由设备提供。其次, `global-label-pool`,是手动创建的。通过一个名称为`“global_resource_pool_device_id”`的虚拟设备标签,用户app可以将`global-label-pool`看作一个特殊的`device-label pool`。 `Device-label-pool ` 和`global-label-pool` 在ONOS仓库中并存,且具有不同的标签编码范围。所以,在管理员开始部署ONOS到网络时,每个池中的标签范围都需要认真规划。ONOS提供了两套API接口操作两种不同的池。系统也提供了CLI命令来访问标签仓库。 ![](https://box.kancloud.cn/8be7710bb37c178ba33f811a8297371b_560x633.jpg) 图 25 标签子系统架构 如上图给出了标签子系统的结构。流程如下: 1. 当一个设备连接到网络时,它上传池信息到仓库中; 2. 基于北向接口函数,应用程序可以使用或释放该标签; 3. 应用程序坚挺标签子系统事件,而标签子系统监听设备子系统事件; 4. 当一台设备消失了,设备子系统通告标签子系统哪个设备消失,然后标签子系统销毁标签池中相应的设备。任何使用该标签的应用程序将接收到通告,且应该释放消失设备的所有标签。 功能接口: * `LabelResourceAdminService`向管理者提供与标签资源池的交互服务; * `LabelResourceService`向应用程序提供使用、释放和查询标签的服务; * `LabelResourceManager`通过一个`LabelResourceProviderService` 接口管理与多个`providers`的接口,并通过一个`LabelResourceService `接口管理与多个监听器的接口。 * `LabelResourceProviders`支持使用`providers`自己的网络协议库与网络交互。 * `LabelResourceStore`跟踪`LabelResourcPool`模型对象,产生`LabelResourceEvent`事件。