blob: 68b6d80ac7f4f3c4d97d35945ce5e952cc6f5304 [file] [log] [blame]
Matteo Scandolo97d853b2018-08-29 16:22:08 -07001# Copyright 2017-present Open Networking Foundation
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
Matteo Scandolo77171952018-09-04 14:43:43 -070015# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onlab-pod1-olt.yaml http://10.90.0.101:30007/run
Matteo Scandolo97d853b2018-08-29 16:22:08 -070016
17tosca_definitions_version: tosca_simple_yaml_1_0
18imports:
19 - custom_types/oltdevice.yaml
20 - custom_types/onudevice.yaml
21 - custom_types/voltservice.yaml
Matteo Scandolo7b81da92019-06-11 09:11:23 -070022 - custom_types/technologyprofile.yaml
Matteo Scandolo97d853b2018-08-29 16:22:08 -070023description: Create a simulated OLT Device in VOLTHA
24topology_template:
25 node_templates:
26
27 service#volt:
28 type: tosca.nodes.VOLTService
29 properties:
30 name: volt
31 must-exist: true
32
33 olt_device:
34 type: tosca.nodes.OLTDevice
35 properties:
Matteo Scandoloa4a89ca2018-12-18 08:06:56 -080036 name: ONF OLT
Matteo Scandolo97d853b2018-08-29 16:22:08 -070037 device_type: openolt
Matteo Scandoloa4a89ca2018-12-18 08:06:56 -080038 host: 10.90.0.114
39 port: 9191
Matteo Scandolo97d853b2018-08-29 16:22:08 -070040 switch_datapath_id: of:0000000000000001
Matteo Scandoloa4a89ca2018-12-18 08:06:56 -080041 switch_port: "1"
Matteo Scandolo97d853b2018-08-29 16:22:08 -070042 outer_tpid: "0x8100"
Scott Baker970d5d52018-12-11 07:00:17 +000043 uplink: "65536"
Matteo Scandolo77171952018-09-04 14:43:43 -070044 nas_id: "NAS_ID"
Matteo Scandolo97d853b2018-08-29 16:22:08 -070045 requirements:
46 - volt_service:
47 node: service#volt
Matteo Scandolo50b27102019-06-11 08:40:58 -070048 relationship: tosca.relationships.BelongsToOne
49
50 technologyProfile:
51 type: tosca.nodes.TechnologyProfile
52 properties:
53 profile_id: 64
54 technology: xgspon
55 profile_value: >
56 {
Matteo Scandolocf3b8562019-06-18 17:22:05 -070057 "name": "4QueueHybridProfileMap1",
58 "profile_type": "XPON",
59 "version": 1,
60 "num_gem_ports": 4,
61 "instance_control": {
62 "onu": "multi-instance",
63 "uni": "single-instance",
64 "max_gem_payload_size": "auto"
65 },
66 "us_scheduler": {
67 "additional_bw": "auto",
68 "direction": "UPSTREAM",
69 "priority": 0,
70 "weight": 0,
71 "q_sched_policy": "hybrid"
72 },
73 "ds_scheduler": {
74 "additional_bw": "auto",
75 "direction": "DOWNSTREAM",
76 "priority": 0,
77 "weight": 0,
78 "q_sched_policy": "hybrid"
79 },
80 "upstream_gem_port_attribute_list": [
81 {
82 "pbit_map": "0b00000101",
83 "aes_encryption": "True",
84 "scheduling_policy": "WRR",
85 "priority_q": 4,
86 "weight": 25,
87 "discard_policy": "TailDrop",
88 "max_q_size": "auto",
89 "discard_config": {
90 "max_threshold": 0,
91 "min_threshold": 0,
92 "max_probability": 0
93 }
94 },
95 {
96 "pbit_map": "0b00011010",
97 "aes_encryption": "True",
98 "scheduling_policy": "WRR",
99 "priority_q": 3,
100 "weight": 75,
101 "discard_policy": "TailDrop",
102 "max_q_size": "auto",
103 "discard_config": {
104 "min_threshold": 0,
105 "max_threshold": 0,
106 "max_probability": 0
107 }
108 },
109 {
110 "pbit_map": "0b00100000",
111 "aes_encryption": "True",
112 "scheduling_policy": "StrictPriority",
113 "priority_q": 2,
114 "weight": 0,
115 "discard_policy": "TailDrop",
116 "max_q_size": "auto",
117 "discard_config": {
118 "min_threshold": 0,
119 "max_threshold": 0,
120 "max_probability": 0
121 }
122 },
123 {
124 "pbit_map": "0b11000000",
125 "aes_encryption": "True",
126 "scheduling_policy": "StrictPriority",
127 "priority_q": 1,
128 "weight": 25,
129 "discard_policy": "TailDrop",
130 "max_q_size": "auto",
131 "discard_config": {
132 "min_threshold": 0,
133 "max_threshold": 0,
134 "max_probability": 0
135 }
136 }
137 ],
138 "downstream_gem_port_attribute_list": [
139 {
140 "pbit_map": "0b00000101",
141 "aes_encryption": "True",
142 "scheduling_policy": "WRR",
143 "priority_q": 4,
144 "weight": 10,
145 "discard_policy": "TailDrop",
146 "max_q_size": "auto",
147 "discard_config": {
148 "min_threshold": 0,
149 "max_threshold": 0,
150 "max_probability": 0
151 }
152 },
153 {
154 "pbit_map": "0b00011010",
155 "aes_encryption": "True",
156 "scheduling_policy": "WRR",
157 "priority_q": 3,
158 "weight": 90,
159 "discard_policy": "TailDrop",
160 "max_q_size": "auto",
161 "discard_config": {
162 "min_threshold": 0,
163 "max_threshold": 0,
164 "max_probability": 0
165 }
166 },
167 {
168 "pbit_map": "0b00100000",
169 "aes_encryption": "True",
170 "scheduling_policy": "StrictPriority",
171 "priority_q": 2,
172 "weight": 0,
173 "discard_policy": "TailDrop",
174 "max_q_size": "auto",
175 "discard_config": {
176 "min_threshold": 0,
177 "max_threshold": 0,
178 "max_probability": 0
179 }
180 },
181 {
182 "pbit_map": "0b11000000",
183 "aes_encryption": "True",
184 "scheduling_policy": "StrictPriority",
185 "priority_q": 1,
186 "weight": 25,
187 "discard_policy": "TailDrop",
188 "max_q_size": "auto",
189 "discard_config": {
190 "min_threshold": 0,
191 "max_threshold": 0,
192 "max_probability": 0
193 }
194 }
195 ]
Matteo Scandolo50b27102019-06-11 08:40:58 -0700196 }