blob: 93aa56f71bded2c025faef31b49f6ca0a9adcb3e [file] [log] [blame]
Joey Armstrong92ac4cf2022-12-27 07:39:37 -05001# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
Matteo Scandolo97d853b2018-08-29 16:22:08 -07002#
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
Andrea Campanellae847e3b2022-06-10 11:13:54 -070038 host: 10.35.90.28
Matteo Scandoloa4a89ca2018-12-18 08:06:56 -080039 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"
Kailashb15ad442019-08-28 09:49:20 -070042 serial_number: "EC1721000216"
Matteo Scandolo97d853b2018-08-29 16:22:08 -070043 outer_tpid: "0x8100"
Scott Baker970d5d52018-12-11 07:00:17 +000044 uplink: "65536"
Matteo Scandolo77171952018-09-04 14:43:43 -070045 nas_id: "NAS_ID"
Matteo Scandolo97d853b2018-08-29 16:22:08 -070046 requirements:
47 - volt_service:
48 node: service#volt
Matteo Scandolo50b27102019-06-11 08:40:58 -070049 relationship: tosca.relationships.BelongsToOne
50
51 technologyProfile:
52 type: tosca.nodes.TechnologyProfile
53 properties:
54 profile_id: 64
55 technology: xgspon
56 profile_value: >
57 {
Matteo Scandolocf3b8562019-06-18 17:22:05 -070058 "name": "4QueueHybridProfileMap1",
59 "profile_type": "XPON",
60 "version": 1,
61 "num_gem_ports": 4,
62 "instance_control": {
63 "onu": "multi-instance",
64 "uni": "single-instance",
65 "max_gem_payload_size": "auto"
66 },
67 "us_scheduler": {
68 "additional_bw": "auto",
69 "direction": "UPSTREAM",
70 "priority": 0,
71 "weight": 0,
72 "q_sched_policy": "hybrid"
73 },
74 "ds_scheduler": {
75 "additional_bw": "auto",
76 "direction": "DOWNSTREAM",
77 "priority": 0,
78 "weight": 0,
79 "q_sched_policy": "hybrid"
80 },
81 "upstream_gem_port_attribute_list": [
82 {
83 "pbit_map": "0b00000101",
84 "aes_encryption": "True",
85 "scheduling_policy": "WRR",
86 "priority_q": 4,
87 "weight": 25,
88 "discard_policy": "TailDrop",
89 "max_q_size": "auto",
90 "discard_config": {
91 "max_threshold": 0,
92 "min_threshold": 0,
93 "max_probability": 0
94 }
95 },
96 {
97 "pbit_map": "0b00011010",
98 "aes_encryption": "True",
99 "scheduling_policy": "WRR",
100 "priority_q": 3,
101 "weight": 75,
102 "discard_policy": "TailDrop",
103 "max_q_size": "auto",
104 "discard_config": {
105 "min_threshold": 0,
106 "max_threshold": 0,
107 "max_probability": 0
108 }
109 },
110 {
111 "pbit_map": "0b00100000",
112 "aes_encryption": "True",
113 "scheduling_policy": "StrictPriority",
114 "priority_q": 2,
115 "weight": 0,
116 "discard_policy": "TailDrop",
117 "max_q_size": "auto",
118 "discard_config": {
119 "min_threshold": 0,
120 "max_threshold": 0,
121 "max_probability": 0
122 }
123 },
124 {
125 "pbit_map": "0b11000000",
126 "aes_encryption": "True",
127 "scheduling_policy": "StrictPriority",
128 "priority_q": 1,
129 "weight": 25,
130 "discard_policy": "TailDrop",
131 "max_q_size": "auto",
132 "discard_config": {
133 "min_threshold": 0,
134 "max_threshold": 0,
135 "max_probability": 0
136 }
137 }
138 ],
139 "downstream_gem_port_attribute_list": [
140 {
141 "pbit_map": "0b00000101",
142 "aes_encryption": "True",
143 "scheduling_policy": "WRR",
144 "priority_q": 4,
145 "weight": 10,
146 "discard_policy": "TailDrop",
147 "max_q_size": "auto",
148 "discard_config": {
149 "min_threshold": 0,
150 "max_threshold": 0,
151 "max_probability": 0
152 }
153 },
154 {
155 "pbit_map": "0b00011010",
156 "aes_encryption": "True",
157 "scheduling_policy": "WRR",
158 "priority_q": 3,
159 "weight": 90,
160 "discard_policy": "TailDrop",
161 "max_q_size": "auto",
162 "discard_config": {
163 "min_threshold": 0,
164 "max_threshold": 0,
165 "max_probability": 0
166 }
167 },
168 {
169 "pbit_map": "0b00100000",
170 "aes_encryption": "True",
171 "scheduling_policy": "StrictPriority",
172 "priority_q": 2,
173 "weight": 0,
174 "discard_policy": "TailDrop",
175 "max_q_size": "auto",
176 "discard_config": {
177 "min_threshold": 0,
178 "max_threshold": 0,
179 "max_probability": 0
180 }
181 },
182 {
183 "pbit_map": "0b11000000",
184 "aes_encryption": "True",
185 "scheduling_policy": "StrictPriority",
186 "priority_q": 1,
187 "weight": 25,
188 "discard_policy": "TailDrop",
189 "max_q_size": "auto",
190 "discard_config": {
191 "min_threshold": 0,
192 "max_threshold": 0,
193 "max_probability": 0
194 }
195 }
196 ]
Matteo Scandolo50b27102019-06-11 08:40:58 -0700197 }