blob: 7617e832b8b4ae3987298fbec6b03d11f83f5d57 [file] [log] [blame]
teonee9ff4862018-11-29 14:36:50 -08001# 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
15# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onf-demo-pod-fabric.yaml http://192.168.100.1:30007/run
16
17tosca_definitions_version: tosca_simple_yaml_1_0
18imports:
19 - custom_types/switch.yaml
20 - custom_types/switchport.yaml
21 - custom_types/portinterface.yaml
22 - custom_types/bngportmapping.yaml
23 - custom_types/attworkflowdriverwhitelistentry.yaml
24 - custom_types/attworkflowdriverservice.yaml
25 - custom_types/serviceinstanceattribute.yaml
26 - custom_types/onosapp.yaml
Matteo Scandoloef12df32019-06-26 15:37:35 -070027 - custom_types/technologyprofile.yaml
teonee9ff4862018-11-29 14:36:50 -080028
29description: Configures the fabric and the whitelist
30
31topology_template:
32 node_templates:
33 switch#agg_sw:
34 type: tosca.nodes.Switch
35 properties:
36 driver: ofdpa3
37 ipv4Loopback: 192.168.0.201
38 ipv4NodeSid: 17
39 isEdgeRouter: True
40 name: AGG SWITCH
41 ofId: of:0000000000000001
42 routerMac: 00:00:02:01:06:01
43
44 # Setup the EdgeCore OLT switch port
45 port#edgecore_olt_port:
46 type: tosca.nodes.SwitchPort
47 properties:
Matteo Scandolof8f5df42019-03-21 11:54:53 -070048 portId: 1
teonee9ff4862018-11-29 14:36:50 -080049 host_learning: false
50 requirements:
51 - switch:
52 node: switch#agg_sw
53 relationship: tosca.relationships.BelongsToOne
54
55 # Setup the Adtran OLT switch port
56 #port#adtran_olt_port:
57 # type: tosca.nodes.SwitchPort
58 # properties:
59 # portId: 50
60 # host_learning: false
61 # requirements:
62 # - switch:
63 # node: switch#agg_sw
64 # relationship: tosca.relationships.BelongsToOne
65
66 # Port connected to the BNG
67 port#bng_port:
68 type: tosca.nodes.SwitchPort
69 properties:
Matteo Scandolof8f5df42019-03-21 11:54:53 -070070 portId: 153
teonee9ff4862018-11-29 14:36:50 -080071 requirements:
72 - switch:
73 node: switch#agg_sw
74 relationship: tosca.relationships.BelongsToOne
75
76 # Setup the fabric switch port where the external
77 # router is connected to
78 bngmapping:
79 type: tosca.nodes.BNGPortMapping
80 properties:
81 s_tag: any
Matteo Scandolof8f5df42019-03-21 11:54:53 -070082 switch_port: 153
teonee9ff4862018-11-29 14:36:50 -080083
84 # DHCP L2 Relay config
85 onos_app#dhcpl2relay:
86 type: tosca.nodes.ONOSApp
87 properties:
88 name: dhcpl2relay
89 must-exist: true
90
91 dhcpl2relay-config-attr:
92 type: tosca.nodes.ServiceInstanceAttribute
93 properties:
94 name: /onos/v1/network/configuration/apps/org.opencord.dhcpl2relay
95 value: >
96 {
97 "dhcpl2relay" : {
98 "useOltUplinkForServerPktInOut" : false,
Matteo Scandolof8f5df42019-03-21 11:54:53 -070099 "dhcpServerConnectPoints" : [ "of:0000000000000001/153" ]
teonee9ff4862018-11-29 14:36:50 -0800100 }
101 }
102 requirements:
103 - service_instance:
104 node: onos_app#dhcpl2relay
105 relationship: tosca.relationships.BelongsToOne
106
107 # ONU Whitelist
108 service#att:
109 type: tosca.nodes.AttWorkflowDriverService
110 properties:
111 name: att-workflow-driver
112 must-exist: true
113
114 # ONUs connected to EdgeCore OLT
Matteo Scandolo36687062019-04-30 11:44:31 -0700115 ISKT71e801a0:
teonee9ff4862018-11-29 14:36:50 -0800116 type: tosca.nodes.AttWorkflowDriverWhiteListEntry
117 properties:
Matteo Scandolo36687062019-04-30 11:44:31 -0700118 serial_number: ISKT71e801a0
teonee9ff4862018-11-29 14:36:50 -0800119 pon_port_id: 536870912
120 device_id: of:00000000c0a8646f
121 requirements:
122 - owner:
123 node: service#att
124 relationship: tosca.relationships.BelongsToOne
Matteo Scandolo81a09522019-05-16 12:04:36 -0700125
126 BRCM22222222:
127 type: tosca.nodes.AttWorkflowDriverWhiteListEntry
128 properties:
129 serial_number: BRCM22222222
130 pon_port_id: 536870912
131 device_id: of:00000000c0a8646f
132 requirements:
133 - owner:
134 node: service#att
135 relationship: tosca.relationships.BelongsToOne
Matteo Scandoloef12df32019-06-26 15:37:35 -0700136
137 technologyProfile:
138 type: tosca.nodes.TechnologyProfile
139 properties:
140 profile_id: 64
141 technology: xgspon
142 profile_value: >
143 {
144 "name": "4QueueHybridProfileMap1",
145 "profile_type": "XPON",
146 "version": 1.0,
147 "num_gem_ports": 1,
148 "instance_control": {
149 "onu": "multi-instance",
150 "uni": "single-instance",
151 "max_gem_payload_size": "auto"
152 },
153 "us_scheduler": {
154 "additional_bw": "auto",
155 "direction": "UPSTREAM",
156 "priority": 0,
157 "weight": 0,
158 "q_sched_policy": "hybrid"
159 },
160 "ds_scheduler": {
161 "additional_bw": "auto",
162 "direction": "DOWNSTREAM",
163 "priority": 0,
164 "weight": 0,
165 "q_sched_policy": "hybrid"
166 },
167 "upstream_gem_port_attribute_list": [{
168 "pbit_map": "0b11000000",
169 "aes_encryption": "True",
170 "scheduling_policy": "StrictPriority",
171 "priority_q": 1,
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 "downstream_gem_port_attribute_list": [{
183 "pbit_map": "0b11000000",
184 "aes_encryption": "True",
185 "scheduling_policy": "StrictPriority",
186 "priority_q": 1,
187 "weight": 0,
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 ]
197 }