Use only active ports when applying buffers/qos configuration (#1787)

* First part of skipping not used port for qos configuration

* Use active ports only to set QoS parameters for 6100

* Add a test for qos.json.j2

* Add a test for Dell S6100 buffers.json template

* Update submodulre
This commit is contained in:
pavel-shirshov 2018-06-21 11:51:37 -07:00 committed by GitHub
parent aaac497370
commit 3681cfa553
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 1128 additions and 14 deletions

View File

@ -1,3 +1,30 @@
{%- set PORT_ALL = [] %}
{%- if PORT is not defined %}
{%- for port_idx in range(0,64) %}
{%- if PORT_ALL.append("Ethernet%d" % (port_idx)) %}{%- endif %}
{%- endfor %}
{%- else %}
{%- for port in PORT %}
{%- if PORT_ALL.append(port) %}{%- endif %}
{%- endfor %}
{%- endif %}
{%- set PORT_ACTIVE = [] %}
{%- if DEVICE_NEIGHBOR is not defined %}
{%- set PORT_ACTIVE = PORT_ALL %}
{%- else %}
{%- for port in DEVICE_NEIGHBOR.keys() %}
{%- if PORT_ACTIVE.append(port) %}{%- endif %}
{%- endfor %}
{%- endif %}
{%- set port_names_list_active = [] %}
{%- for port in PORT_ACTIVE %}
{%- if port_names_list_active.append(port) %}{%- endif %}
{%- endfor %}
{%- set port_names_active = port_names_list_active | join(',') %}
{ {
"TC_TO_PRIORITY_GROUP_MAP": { "TC_TO_PRIORITY_GROUP_MAP": {
"AZURE": { "AZURE": {
@ -118,7 +145,7 @@
} }
}, },
"PORT_QOS_MAP": { "PORT_QOS_MAP": {
"Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet18,Ethernet19,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet33,Ethernet34,Ethernet35,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet43,Ethernet44,Ethernet45,Ethernet46,Ethernet47,Ethernet48,Ethernet49,Ethernet50,Ethernet51,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58,Ethernet59,Ethernet60,Ethernet61,Ethernet62,Ethernet63": { "{{ port_names_active }}": {
"dscp_to_tc_map" : "[DSCP_TO_TC_MAP|AZURE]", "dscp_to_tc_map" : "[DSCP_TO_TC_MAP|AZURE]",
"tc_to_queue_map" : "[TC_TO_QUEUE_MAP|AZURE]", "tc_to_queue_map" : "[TC_TO_QUEUE_MAP|AZURE]",
"tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|AZURE]", "tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
@ -141,14 +168,14 @@
} }
}, },
"QUEUE": { "QUEUE": {
"Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet18,Ethernet19,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet33,Ethernet34,Ethernet35,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet43,Ethernet44,Ethernet45,Ethernet46,Ethernet47,Ethernet48,Ethernet49,Ethernet50,Ethernet51,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58,Ethernet59,Ethernet60,Ethernet61,Ethernet62,Ethernet63|3-4" : { "{{ port_names_active }}|3-4" : {
"scheduler" : "[SCHEDULER|scheduler.0]", "scheduler" : "[SCHEDULER|scheduler.0]",
"wred_profile" : "[WRED_PROFILE|AZURE_LOSSLESS]" "wred_profile" : "[WRED_PROFILE|AZURE_LOSSLESS]"
}, },
"Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet18,Ethernet19,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet33,Ethernet34,Ethernet35,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet43,Ethernet44,Ethernet45,Ethernet46,Ethernet47,Ethernet48,Ethernet49,Ethernet50,Ethernet51,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58,Ethernet59,Ethernet60,Ethernet61,Ethernet62,Ethernet63|0" : { "{{ port_names_active }}|0" : {
"scheduler" : "[SCHEDULER|scheduler.1]" "scheduler" : "[SCHEDULER|scheduler.1]"
}, },
"Ethernet0,Ethernet1,Ethernet2,Ethernet3,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet18,Ethernet19,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet33,Ethernet34,Ethernet35,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet43,Ethernet44,Ethernet45,Ethernet46,Ethernet47,Ethernet48,Ethernet49,Ethernet50,Ethernet51,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58,Ethernet59,Ethernet60,Ethernet61,Ethernet62,Ethernet63|1" : { "{{ port_names_active }}|1" : {
"scheduler" : "[SCHEDULER|scheduler.2]" "scheduler" : "[SCHEDULER|scheduler.2]"
} }
} }

View File

@ -90,11 +90,20 @@ def
{%- endfor %} {%- endfor %}
{%- endif %} {%- endif %}
{%- set port_names_list_all = [] %} {%- set PORT_ACTIVE = [] %}
{%- for port in PORT_ALL %} {%- if DEVICE_NEIGHBOR is not defined %}
{%- if port_names_list_all.append(port) %}{%- endif %} {%- set PORT_ACTIVE = PORT_ALL %}
{%- else %}
{%- for port in DEVICE_NEIGHBOR.keys() %}
{%- if PORT_ACTIVE.append(port) %}{%- endif %}
{%- endfor %} {%- endfor %}
{%- set port_names_all = port_names_list_all | join(',') %} {%- endif %}
{%- set port_names_list_active = [] %}
{%- for port in PORT_ACTIVE %}
{%- if port_names_list_active.append(port) %}{%- endif %}
{%- endfor %}
{%- set port_names_active = port_names_list_active | join(',') %}
{ {
"CABLE_LENGTH": { "CABLE_LENGTH": {
@ -112,27 +121,27 @@ def
{% endif %} {% endif %}
{%- if defs.generate_profile_lists is defined %} {%- if defs.generate_profile_lists is defined %}
{{ defs.generate_profile_lists(port_names_all) }}, {{ defs.generate_profile_lists(port_names_active) }},
{% endif %} {% endif %}
{%- if defs.generate_pg_profils is defined %} {%- if defs.generate_pg_profils is defined %}
{{ defs.generate_pg_profils }}, {{ defs.generate_pg_profils }},
{% else %} {% else %}
"BUFFER_PG": { "BUFFER_PG": {
"{{ port_names_all }}|0-1": { "{{ port_names_active }}|0-1": {
"profile" : "[BUFFER_PROFILE|ingress_lossy_profile]" "profile" : "[BUFFER_PROFILE|ingress_lossy_profile]"
} }
}, },
{% endif %} {% endif %}
{% if defs.generate_queue_buffers is defined %} {% if defs.generate_queue_buffers is defined %}
{{ defs.generate_queue_buffers(port_names_all) }} {{ defs.generate_queue_buffers(port_names_active) }}
{% else %} {% else %}
"BUFFER_QUEUE": { "BUFFER_QUEUE": {
"{{ port_names_all }}|3-4": { "{{ port_names_active }}|3-4": {
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]" "profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
}, },
"{{ port_names_all }}|0-1": { "{{ port_names_active }}|0-1": {
"profile" : "[BUFFER_PROFILE|egress_lossy_profile]" "profile" : "[BUFFER_PROFILE|egress_lossy_profile]"
} }
} }

View File

@ -0,0 +1,770 @@
<DeviceMiniGraph xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="Microsoft.Search.Autopilot.Evolution">
<CpgDec>
<IsisRouters xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
<PeeringSessions>
<BGPSession>
<StartRouter>ARISTA01T1</StartRouter>
<StartPeer>10.0.0.1</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>10.0.0.0</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA02T1</StartRouter>
<StartPeer>10.0.0.5</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>10.0.0.4</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA03T1</StartRouter>
<StartPeer>10.0.0.9</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>10.0.0.8</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA04T1</StartRouter>
<StartPeer>10.0.0.13</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>10.0.0.12</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA01T1</StartRouter>
<StartPeer>FC00::2</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>FC00::1</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA02T1</StartRouter>
<StartPeer>FC00::A</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>FC00::9</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA03T1</StartRouter>
<StartPeer>FC00::12</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>FC00::11</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
<BGPSession>
<StartRouter>ARISTA04T1</StartRouter>
<StartPeer>FC00::1A</StartPeer>
<EndRouter>s6100-dev-1</EndRouter>
<EndPeer>FC00::19</EndPeer>
<Multihop>1</Multihop>
<HoldTime>180</HoldTime>
<KeepAliveTime>60</KeepAliveTime>
</BGPSession>
</PeeringSessions>
<Routers xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:BGPRouterDeclaration>
<a:ASN>64601</a:ASN>
<a:Hostname>s6100-dev-1</a:Hostname>
<a:Peers>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>10.0.0.1</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>10.0.0.5</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>10.0.0.9</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>10.0.0.13</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>FC00::2</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>FC00::A</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>FC00::12</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
<BGPPeer>
<ElementType>BGPPeer</ElementType>
<Address>FC00::1A</Address>
<RouteMapIn i:nil="true"/>
<RouteMapOut i:nil="true"/>
<Vrf i:nil="true"/>
</BGPPeer>
</a:Peers>
<a:RouteMaps/>
</a:BGPRouterDeclaration>
<a:BGPRouterDeclaration>
<a:ASN>64802</a:ASN>
<a:Hostname>ARISTA01T1</a:Hostname>
<a:RouteMaps/>
</a:BGPRouterDeclaration>
<a:BGPRouterDeclaration>
<a:ASN>64802</a:ASN>
<a:Hostname>ARISTA02T1</a:Hostname>
<a:RouteMaps/>
</a:BGPRouterDeclaration>
<a:BGPRouterDeclaration>
<a:ASN>64802</a:ASN>
<a:Hostname>ARISTA03T1</a:Hostname>
<a:RouteMaps/>
</a:BGPRouterDeclaration>
<a:BGPRouterDeclaration>
<a:ASN>64802</a:ASN>
<a:Hostname>ARISTA04T1</a:Hostname>
<a:RouteMaps/>
</a:BGPRouterDeclaration>
</Routers>
</CpgDec>
<DpgDec>
<DeviceDataPlaneInfo>
<IPSecTunnels/>
<LoopbackIPInterfaces xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:LoopbackIPInterface>
<Name>HostIP</Name>
<AttachTo>Loopback0</AttachTo>
<a:Prefix xmlns:b="Microsoft.Search.Autopilot.Evolution">
<b:IPPrefix>10.1.0.32/32</b:IPPrefix>
</a:Prefix>
<a:PrefixStr>10.1.0.32/32</a:PrefixStr>
</a:LoopbackIPInterface>
<a:LoopbackIPInterface>
<Name>HostIP1</Name>
<AttachTo>Loopback0</AttachTo>
<a:Prefix xmlns:b="Microsoft.Search.Autopilot.Evolution">
<b:IPPrefix>FC00:1::32/128</b:IPPrefix>
</a:Prefix>
<a:PrefixStr>FC00:1::32/128</a:PrefixStr>
</a:LoopbackIPInterface>
</LoopbackIPInterfaces>
<ManagementIPInterfaces xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:ManagementIPInterface>
<Name>HostIP</Name>
<AttachTo>eth0</AttachTo>
<a:Prefix xmlns:b="Microsoft.Search.Autopilot.Evolution">
<b:IPPrefix>10.0.0.243/23</b:IPPrefix>
</a:Prefix>
<a:PrefixStr>10.0.0.243/23</a:PrefixStr>
</a:ManagementIPInterface>
</ManagementIPInterfaces>
<MplsInterfaces/>
<MplsTeInterfaces/>
<RsvpInterfaces/>
<Hostname>s6100-dev-1</Hostname>
<PortChannelInterfaces>
<PortChannel>
<ElementType>PortChannelInterface</ElementType>
<Name>PortChannel1</Name>
<AttachTo>fortyGigE1/1/1;fortyGigE1/1/2</AttachTo>
<SubInterface/>
</PortChannel>
<PortChannel>
<ElementType>PortChannelInterface</ElementType>
<Name>PortChannel4</Name>
<AttachTo>fortyGigE1/1/5;fortyGigE1/1/6</AttachTo>
<SubInterface/>
</PortChannel>
<PortChannel>
<ElementType>PortChannelInterface</ElementType>
<Name>PortChannel16</Name>
<AttachTo>fortyGigE1/2/1;fortyGigE1/2/2</AttachTo>
<SubInterface/>
</PortChannel>
<PortChannel>
<ElementType>PortChannelInterface</ElementType>
<Name>PortChannel20</Name>
<AttachTo>fortyGigE1/2/5;fortyGigE1/2/6</AttachTo>
<SubInterface/>
</PortChannel>
</PortChannelInterfaces>
<VlanInterfaces>
<VlanInterface>
<ElementType>VlanInterface</ElementType>
<Name>Vlan2</Name>
<AttachTo>fortyGigE1/1/7;fortyGigE1/1/8;fortyGigE1/1/9;fortyGigE1/1/10;fortyGigE1/1/11;fortyGigE1/1/12;fortyGigE1/1/13;fortyGigE1/1/14;fortyGigE1/1/15;fortyGigE1/1/16;fortyGigE1/3/1;fortyGigE1/3/5;fortyGigE1/3/6;fortyGigE1/3/7;fortyGigE1/3/8;fortyGigE1/3/9;fortyGigE1/3/10;fortyGigE1/3/11;fortyGigE1/2/7;fortyGigE1/2/8;fortyGigE1/2/9;fortyGigE1/2/10;fortyGigE1/2/11;fortyGigE1/2/12;fortyGigE1/2/13;fortyGigE1/2/14;fortyGigE1/2/15;fortyGigE1/2/16;fortyGigE1/4/1;fortyGigE1/4/5;fortyGigE1/4/6;fortyGigE1/4/7;fortyGigE1/4/8;fortyGigE1/4/9;fortyGigE1/4/10;fortyGigE1/4/11</AttachTo>
<NoDhcpRelay>False</NoDhcpRelay>
<StaticDHCPRelay>0.0.0.0/0</StaticDHCPRelay>
<Type i:nil="true"/>
<VlanID>2</VlanID>
<Tag>2</Tag>
<Subnets>172.0.0.0/21</Subnets>
</VlanInterface>
</VlanInterfaces>
<IPInterfaces>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel1</AttachTo>
<Prefix>10.0.0.0/31</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel4</AttachTo>
<Prefix>10.0.0.4/31</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel16</AttachTo>
<Prefix>10.0.0.8/31</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel20</AttachTo>
<Prefix>10.0.0.12/31</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel1</AttachTo>
<Prefix>FC00::1/126</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel4</AttachTo>
<Prefix>FC00::9/126</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel16</AttachTo>
<Prefix>FC00::11/126</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:Name="true"/>
<AttachTo>PortChannel20</AttachTo>
<Prefix>FC00::19/126</Prefix>
</IPInterface>
<IPInterface>
<ElementType>IPInterface</ElementType>
<Name i:nil="true"/>
<AttachTo>Vlan2</AttachTo>
<Prefix>172.0.0.1/21</Prefix>
</IPInterface>
</IPInterfaces>
<DataAcls/>
<AclInterfaces/>
<DownstreamSummaries/>
<DownstreamSummarySet xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
</DeviceDataPlaneInfo>
</DpgDec>
<PngDec>
<DeviceInterfaceLinks>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA01T1</EndDevice>
<EndPort>Ethernet1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/1/1</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA01T1</EndDevice>
<EndPort>Ethernet2</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/1/2</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA02T1</EndDevice>
<EndPort>Ethernet1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/1/5</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA02T1</EndDevice>
<EndPort>Ethernet2</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/1/6</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA03T1</EndDevice>
<EndPort>Ethernet1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/2/1</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA03T1</EndDevice>
<EndPort>Ethernet2</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/2/2</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA04T1</EndDevice>
<EndPort>Ethernet1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/2/5</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>ARISTA04T1</EndDevice>
<EndPort>Ethernet2</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>s6100-dev-1</StartDevice>
<StartPort>fortyGigE1/2/6</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/7</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-01</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/8</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-02</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/9</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-03</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/10</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-04</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/11</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-05</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/12</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-06</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/13</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-07</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/14</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-08</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/15</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-09</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/1/16</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-10</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-11</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/5</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-12</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/6</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-13</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/7</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-14</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/8</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-15</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/9</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-16</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/10</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-17</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/3/11</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-18</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/7</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-19</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/8</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-20</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/9</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-21</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/10</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-22</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/11</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-23</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/12</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-24</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/13</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-25</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/14</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-26</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/15</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-27</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/2/16</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-28</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/1</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-29</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/5</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-30</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/6</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-31</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/7</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-32</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/8</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-33</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/9</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-34</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/10</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-35</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
<DeviceLinkBase i:type="DeviceInterfaceLink">
<ElementType>DeviceInterfaceLink</ElementType>
<AutoNegotiation>true</AutoNegotiation>
<Bandwidth>40000</Bandwidth>
<EndDevice>s6100-dev-1</EndDevice>
<EndPort>fortyGigE1/4/11</EndPort>
<FlowControl>true</FlowControl>
<StartDevice>server-36</StartDevice>
<StartPort>0</StartPort>
</DeviceLinkBase>
</DeviceInterfaceLinks>
<Devices>
<Device i:type="ToRRouter">
<Hostname>s6100-dev-1</Hostname>
<HwSku>Force10-S6100</HwSku>
<ManagementAddress xmlns:a="Microsoft.Search.Autopilot.NetMux">
<a:IPPrefix>10.0.0.243</a:IPPrefix>
</ManagementAddress>
</Device>
</Devices>
</PngDec>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:DeviceMetadata>
<a:Name>s6100-dev-1</a:Name>
<a:Properties>
<a:DeviceProperty>
<a:Name>ErspanDestinationIpv4</a:Name>
<a:Reference i:nil="true"/>
<a:Value>10.0.0.16</a:Value>
</a:DeviceProperty>
</a:Properties>
</a:DeviceMetadata>
</Devices>
<Properties xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
</MetadataDeclaration>
<Hostname>s6100-dev-1</Hostname>
<HwSku>Force10-S6100</HwSku>
</DeviceMiniGraph>

View File

@ -0,0 +1,121 @@
{
"CABLE_LENGTH": {
"AZURE": {
"Ethernet0": "5m",
"Ethernet1": "5m",
"Ethernet2": "5m",
"Ethernet3": "5m",
"Ethernet4": "5m",
"Ethernet5": "5m",
"Ethernet6": "5m",
"Ethernet7": "5m",
"Ethernet8": "5m",
"Ethernet9": "5m",
"Ethernet10": "5m",
"Ethernet11": "5m",
"Ethernet12": "5m",
"Ethernet13": "5m",
"Ethernet14": "5m",
"Ethernet15": "5m",
"Ethernet16": "5m",
"Ethernet17": "5m",
"Ethernet18": "5m",
"Ethernet19": "5m",
"Ethernet20": "5m",
"Ethernet21": "5m",
"Ethernet22": "5m",
"Ethernet23": "5m",
"Ethernet24": "5m",
"Ethernet25": "5m",
"Ethernet26": "5m",
"Ethernet27": "5m",
"Ethernet28": "5m",
"Ethernet29": "5m",
"Ethernet30": "5m",
"Ethernet31": "5m",
"Ethernet32": "5m",
"Ethernet33": "5m",
"Ethernet34": "5m",
"Ethernet35": "5m",
"Ethernet36": "5m",
"Ethernet37": "5m",
"Ethernet38": "5m",
"Ethernet39": "5m",
"Ethernet40": "5m",
"Ethernet41": "5m",
"Ethernet42": "5m",
"Ethernet43": "5m",
"Ethernet44": "5m",
"Ethernet45": "5m",
"Ethernet46": "5m",
"Ethernet47": "5m",
"Ethernet48": "5m",
"Ethernet49": "5m",
"Ethernet50": "5m",
"Ethernet51": "5m",
"Ethernet52": "5m",
"Ethernet53": "5m",
"Ethernet54": "5m",
"Ethernet55": "5m",
"Ethernet56": "5m",
"Ethernet57": "5m",
"Ethernet58": "5m",
"Ethernet59": "5m",
"Ethernet60": "5m",
"Ethernet61": "5m",
"Ethernet62": "5m",
"Ethernet63": "5m"
}
},
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "11213696",
"type": "ingress",
"mode": "dynamic",
"xoff": "3855488"
},
"egress_lossy_pool": {
"size": "9532224",
"type": "egress",
"mode": "dynamic"
},
"egress_lossless_pool": {
"size": "15982720",
"type": "egress",
"mode": "static"
}
},
"BUFFER_PROFILE": {
"ingress_lossy_profile": {
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
"size":"0",
"dynamic_th":"3"
},
"egress_lossless_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"1518",
"static_th":"3995680"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossy_pool]",
"size":"1518",
"dynamic_th":"3"
}
},
"BUFFER_PG": {
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|0-1": {
"profile" : "[BUFFER_PROFILE|ingress_lossy_profile]"
}
},
"BUFFER_QUEUE": {
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|3-4": {
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
},
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|0-1": {
"profile" : "[BUFFER_PROFILE|egress_lossy_profile]"
}
}
}

View File

@ -0,0 +1,156 @@
{
"TC_TO_PRIORITY_GROUP_MAP": {
"AZURE": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7"
}
},
"MAP_PFC_PRIORITY_TO_QUEUE": {
"AZURE": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7"
}
},
"TC_TO_QUEUE_MAP": {
"AZURE": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7"
}
},
"DSCP_TO_TC_MAP": {
"AZURE": {
"0":"0",
"1":"0",
"2":"0",
"3":"3",
"4":"4",
"5":"0",
"6":"0",
"7":"0",
"8":"1",
"9":"0",
"10":"0",
"11":"0",
"12":"0",
"13":"0",
"14":"0",
"15":"0",
"16":"0",
"17":"0",
"18":"0",
"19":"0",
"20":"0",
"21":"0",
"22":"0",
"23":"0",
"24":"0",
"25":"0",
"26":"0",
"27":"0",
"28":"0",
"29":"0",
"30":"0",
"31":"0",
"32":"0",
"33":"0",
"34":"0",
"35":"0",
"36":"0",
"37":"0",
"38":"0",
"39":"0",
"40":"0",
"41":"0",
"42":"0",
"43":"0",
"44":"0",
"45":"0",
"46":"0",
"47":"0",
"48":"0",
"49":"0",
"50":"0",
"51":"0",
"52":"0",
"53":"0",
"54":"0",
"55":"0",
"56":"0",
"57":"0",
"58":"0",
"59":"0",
"60":"0",
"61":"0",
"62":"0",
"63":"0"
}
},
"SCHEDULER": {
"scheduler.0" : {
"type":"DWRR",
"weight": "25"
},
"scheduler.1" : {
"type":"DWRR",
"weight": "30"
},
"scheduler.2" : {
"type":"DWRR",
"weight": "20"
}
},
"PORT_QOS_MAP": {
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58": {
"dscp_to_tc_map" : "[DSCP_TO_TC_MAP|AZURE]",
"tc_to_queue_map" : "[TC_TO_QUEUE_MAP|AZURE]",
"tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
"pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]",
"pfc_enable": "3,4"
}
},
"WRED_PROFILE": {
"AZURE_LOSSLESS" : {
"wred_green_enable":"true",
"wred_yellow_enable":"true",
"wred_red_enable":"true",
"ecn":"ecn_all",
"red_max_threshold":"312000",
"red_min_threshold":"104000",
"yellow_max_threshold":"312000",
"yellow_min_threshold":"104000",
"green_max_threshold": "312000",
"green_min_threshold": "104000"
}
},
"QUEUE": {
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|3-4" : {
"scheduler" : "[SCHEDULER|scheduler.0]",
"wred_profile" : "[WRED_PROFILE|AZURE_LOSSLESS]"
},
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|0" : {
"scheduler" : "[SCHEDULER|scheduler.1]"
},
"Ethernet0,Ethernet1,Ethernet4,Ethernet5,Ethernet6,Ethernet7,Ethernet8,Ethernet9,Ethernet10,Ethernet11,Ethernet12,Ethernet13,Ethernet14,Ethernet15,Ethernet16,Ethernet17,Ethernet20,Ethernet21,Ethernet22,Ethernet23,Ethernet24,Ethernet25,Ethernet26,Ethernet27,Ethernet28,Ethernet29,Ethernet30,Ethernet31,Ethernet32,Ethernet36,Ethernet37,Ethernet38,Ethernet39,Ethernet40,Ethernet41,Ethernet42,Ethernet48,Ethernet52,Ethernet53,Ethernet54,Ethernet55,Ethernet56,Ethernet57,Ethernet58|1" : {
"scheduler" : "[SCHEDULER|scheduler.2]"
}
}
}

View File

@ -2,6 +2,7 @@ import filecmp
import os import os
import subprocess import subprocess
import json import json
import shutil
from unittest import TestCase from unittest import TestCase
@ -15,6 +16,7 @@ class TestJ2Files(TestCase):
self.t0_port_config = os.path.join(self.test_dir, 't0-sample-port-config.ini') self.t0_port_config = os.path.join(self.test_dir, 't0-sample-port-config.ini')
self.t1_mlnx_minigraph = os.path.join(self.test_dir, 't1-sample-graph-mlnx.xml') self.t1_mlnx_minigraph = os.path.join(self.test_dir, 't1-sample-graph-mlnx.xml')
self.mlnx_port_config = os.path.join(self.test_dir, 'sample-port-config-mlnx.ini') self.mlnx_port_config = os.path.join(self.test_dir, 'sample-port-config-mlnx.ini')
self.dell6100_t0_minigraph = os.path.join(self.test_dir, 'sample-dell-6100-t0-minigraph.xml')
self.output_file = os.path.join(self.test_dir, 'output') self.output_file = os.path.join(self.test_dir, 'output')
def run_script(self, argument): def run_script(self, argument):
@ -119,6 +121,35 @@ class TestJ2Files(TestCase):
self.assertTrue(filecmp.cmp(sample_output_file, self.output_file)) self.assertTrue(filecmp.cmp(sample_output_file, self.output_file))
def test_qos_dell6100_render_template(self):
dell_dir_path = os.path.join(self.test_dir, '..', '..', '..', 'device', 'dell', 'x86_64-dell_s6100_c2538-r0', 'Force10-S6100')
qos_file = os.path.join(dell_dir_path, 'qos.json.j2')
port_config_ini_file = os.path.join(dell_dir_path, 'port_config.ini')
argument = '-m ' + self.dell6100_t0_minigraph + ' -p ' + port_config_ini_file + ' -t ' + qos_file + ' > ' + self.output_file
self.run_script(argument)
sample_output_file = os.path.join(self.test_dir, 'sample_output', 'qos-dell6100.json')
assert filecmp.cmp(sample_output_file, self.output_file)
def test_buffers_dell6100_render_template(self):
dell_dir_path = os.path.join(self.test_dir, '..', '..', '..', 'device', 'dell', 'x86_64-dell_s6100_c2538-r0', 'Force10-S6100')
buffers_file = os.path.join(dell_dir_path, 'buffers.json.j2')
port_config_ini_file = os.path.join(dell_dir_path, 'port_config.ini')
# copy buffers_config.j2 to the Dell S6100 directory to have all templates in one directory
buffers_config_file = os.path.join(self.test_dir, '..', '..', '..', 'files', 'build_templates', 'buffers_config.j2')
shutil.copy2(buffers_config_file, dell_dir_path)
argument = '-m ' + self.dell6100_t0_minigraph + ' -p ' + port_config_ini_file + ' -t ' + buffers_file + ' > ' + self.output_file
self.run_script(argument)
# cleanup
buffers_config_file_new = os.path.join(dell_dir_path, 'buffers_config.j2')
os.remove(buffers_config_file_new)
sample_output_file = os.path.join(self.test_dir, 'sample_output', 'buffers-dell6100.json')
assert filecmp.cmp(sample_output_file, self.output_file)
def tearDown(self): def tearDown(self):
try: try:
os.remove(self.output_file) os.remove(self.output_file)

@ -1 +1 @@
Subproject commit e2a3228843bec8280c965b847f5c168f4d96d231 Subproject commit 5baa30528bd73ffc364de03c9098263d42a2d320