Committed by
Priyankab-Huawei
cherry pick of [ONOS-4794] [ONOS-4793] [ONOS-4669]TE_COST and bandwidth informat…
…ion on update flow was not correct Change-Id: I66090e6da1307c8530e89c92f2dcbcdf12e18220
Showing
3 changed files
with
8 additions
and
14 deletions
... | @@ -27,9 +27,7 @@ import java.util.Map; | ... | @@ -27,9 +27,7 @@ import java.util.Map; |
27 | import java.util.Optional; | 27 | import java.util.Optional; |
28 | import java.util.Map.Entry; | 28 | import java.util.Map.Entry; |
29 | import java.util.Set; | 29 | import java.util.Set; |
30 | -import java.util.concurrent.Executors; | ||
31 | import java.util.concurrent.ScheduledExecutorService; | 30 | import java.util.concurrent.ScheduledExecutorService; |
32 | -import java.util.concurrent.TimeUnit; | ||
33 | 31 | ||
34 | import org.onlab.packet.Ethernet; | 32 | import org.onlab.packet.Ethernet; |
35 | import org.onlab.packet.IPv4; | 33 | import org.onlab.packet.IPv4; |
... | @@ -264,9 +262,6 @@ public class PceManager implements PceService { | ... | @@ -264,9 +262,6 @@ public class PceManager implements PceService { |
264 | 262 | ||
265 | packetService.addProcessor(processor, PacketProcessor.director(4)); | 263 | packetService.addProcessor(processor, PacketProcessor.director(4)); |
266 | topologyService.addListener(topologyListener); | 264 | topologyService.addListener(topologyListener); |
267 | - executor = Executors.newSingleThreadScheduledExecutor(); | ||
268 | - //Start a timer when the component is up, with initial delay of 30min and periodic delays at 30min | ||
269 | - executor.scheduleAtFixedRate(new GlobalOptimizationTimer(), INITIAL_DELAY, PERIODIC_DELAY, TimeUnit.MINUTES); | ||
270 | 265 | ||
271 | // Reserve global node pool | 266 | // Reserve global node pool |
272 | if (!srTeHandler.reserveGlobalPool(GLOBAL_LABEL_SPACE_MIN, GLOBAL_LABEL_SPACE_MAX)) { | 267 | if (!srTeHandler.reserveGlobalPool(GLOBAL_LABEL_SPACE_MIN, GLOBAL_LABEL_SPACE_MAX)) { |
... | @@ -284,8 +279,6 @@ public class PceManager implements PceService { | ... | @@ -284,8 +279,6 @@ public class PceManager implements PceService { |
284 | netCfgService.removeListener(cfgListener); | 279 | netCfgService.removeListener(cfgListener); |
285 | packetService.removeProcessor(processor); | 280 | packetService.removeProcessor(processor); |
286 | topologyService.removeListener(topologyListener); | 281 | topologyService.removeListener(topologyListener); |
287 | - // Shutdown the thread when component is deactivated | ||
288 | - executor.shutdown(); | ||
289 | log.info("Stopped"); | 282 | log.info("Stopped"); |
290 | } | 283 | } |
291 | 284 | ... | ... |
... | @@ -495,7 +495,7 @@ class BgpChannelHandler extends IdleStateAwareChannelHandler { | ... | @@ -495,7 +495,7 @@ class BgpChannelHandler extends IdleStateAwareChannelHandler { |
495 | @Override | 495 | @Override |
496 | public void exceptionCaught(ChannelHandlerContext ctx, ExceptionEvent e) throws Exception { | 496 | public void exceptionCaught(ChannelHandlerContext ctx, ExceptionEvent e) throws Exception { |
497 | 497 | ||
498 | - log.info("[exceptionCaught]: " + e.toString()); | 498 | + log.error("[exceptionCaught]: " + e.toString()); |
499 | 499 | ||
500 | if (e.getCause() instanceof ReadTimeoutException) { | 500 | if (e.getCause() instanceof ReadTimeoutException) { |
501 | // device timeout | 501 | // device timeout | ... | ... |
... | @@ -1524,7 +1524,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1524,7 +1524,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1524 | bandwidth = attributes.getBandwidthObject().getBandwidth(); | 1524 | bandwidth = attributes.getBandwidthObject().getBandwidth(); |
1525 | } | 1525 | } |
1526 | } | 1526 | } |
1527 | - | ||
1528 | List<Object> eroSubObjList = buildPathFromEroObj(eroObj, providerId); | 1527 | List<Object> eroSubObjList = buildPathFromEroObj(eroObj, providerId); |
1529 | List<Link> links = new ArrayList<>(); | 1528 | List<Link> links = new ArrayList<>(); |
1530 | List<LabelResourceId> labels = new ArrayList<>(); | 1529 | List<LabelResourceId> labels = new ArrayList<>(); |
... | @@ -1535,10 +1534,8 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1535,10 +1534,8 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1535 | labels.add(LabelResourceId.labelResourceId(((Integer) linkOrLabel).longValue())); | 1534 | labels.add(LabelResourceId.labelResourceId(((Integer) linkOrLabel).longValue())); |
1536 | } | 1535 | } |
1537 | } | 1536 | } |
1538 | - | ||
1539 | Path path = new DefaultPath(providerId, links, cost, EMPTY); | 1537 | Path path = new DefaultPath(providerId, links, cost, EMPTY); |
1540 | NetworkResource labelStack = new DefaultLabelStack(labels); | 1538 | NetworkResource labelStack = new DefaultLabelStack(labels); |
1541 | - | ||
1542 | // To carry PST TLV, SRP object can be present with value 0 even when PCRpt is not in response to any action | 1539 | // To carry PST TLV, SRP object can be present with value 0 even when PCRpt is not in response to any action |
1543 | // from PCE. | 1540 | // from PCE. |
1544 | PcepSrpObject srpObj = stateRpt.getSrpObject(); | 1541 | PcepSrpObject srpObj = stateRpt.getSrpObject(); |
... | @@ -1570,7 +1567,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1570,7 +1567,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1570 | log.error("Stateful IPv4 identifier TLV is null in PCRpt msg."); | 1567 | log.error("Stateful IPv4 identifier TLV is null in PCRpt msg."); |
1571 | return; | 1568 | return; |
1572 | } | 1569 | } |
1573 | - | ||
1574 | IpTunnelEndPoint tunnelEndPointSrc = IpTunnelEndPoint | 1570 | IpTunnelEndPoint tunnelEndPointSrc = IpTunnelEndPoint |
1575 | .ipTunnelPoint(IpAddress.valueOf(ipv4LspIdenTlv.getIpv4IngressAddress())); | 1571 | .ipTunnelPoint(IpAddress.valueOf(ipv4LspIdenTlv.getIpv4IngressAddress())); |
1576 | IpTunnelEndPoint tunnelEndPointDst = IpTunnelEndPoint | 1572 | IpTunnelEndPoint tunnelEndPointDst = IpTunnelEndPoint |
... | @@ -1584,7 +1580,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1584,7 +1580,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1584 | pcepClientController.getClient(pccId).setLspAndDelegationInfo( | 1580 | pcepClientController.getClient(pccId).setLspAndDelegationInfo( |
1585 | new LspKey(lspObj.getPlspId(), ipv4LspIdenTlv.getLspId()), lspObj.getDFlag()); | 1581 | new LspKey(lspObj.getPlspId(), ipv4LspIdenTlv.getLspId()), lspObj.getDFlag()); |
1586 | } | 1582 | } |
1587 | - | ||
1588 | Tunnel tunnel = null; | 1583 | Tunnel tunnel = null; |
1589 | // Asynchronous status change message from PCC for LSP reported earlier. | 1584 | // Asynchronous status change message from PCC for LSP reported earlier. |
1590 | for (Tunnel tunnelObj : tunnelQueryResult) { | 1585 | for (Tunnel tunnelObj : tunnelQueryResult) { |
... | @@ -1677,7 +1672,13 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1677,7 +1672,13 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1677 | 1672 | ||
1678 | //delegated owner will update can be a master or non-master | 1673 | //delegated owner will update can be a master or non-master |
1679 | if (lspObj.getDFlag()) { | 1674 | if (lspObj.getDFlag()) { |
1680 | - annotations = getAnnotations(lspObj, ipv4LspIdenTlv, bandwidth, lspType, costType); | 1675 | + |
1676 | + if (tunnel.annotations().value(BANDWIDTH) != null) { | ||
1677 | + bandwidth = Float.parseFloat(tunnel.annotations().value(BANDWIDTH)); | ||
1678 | + } | ||
1679 | + annotations = getAnnotations(lspObj, ipv4LspIdenTlv, | ||
1680 | + bandwidth, lspType, | ||
1681 | + tunnel.annotations().value(COST_TYPE)); | ||
1681 | td = new DefaultTunnelDescription(null, tunnelEndPointSrc, tunnelEndPointDst, MPLS, new DefaultGroupId( | 1682 | td = new DefaultTunnelDescription(null, tunnelEndPointSrc, tunnelEndPointDst, MPLS, new DefaultGroupId( |
1682 | 0), providerId, TunnelName.tunnelName(new String(pathNameTlv.getValue())), path, labelStack, | 1683 | 0), providerId, TunnelName.tunnelName(new String(pathNameTlv.getValue())), path, labelStack, |
1683 | annotations); | 1684 | annotations); | ... | ... |
-
Please register or login to post a comment