[ONOS-4794] [ONOS-4793] [ONOS-4669]TE_COST and bandwidth information on update flow was not correct
Change-Id: Ib91b7c47c95e005a0ace1fdaa7e82fbdb7f02533
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; |
... | @@ -263,9 +261,6 @@ public class PceManager implements PceService { | ... | @@ -263,9 +261,6 @@ public class PceManager implements PceService { |
263 | 261 | ||
264 | packetService.addProcessor(processor, PacketProcessor.director(4)); | 262 | packetService.addProcessor(processor, PacketProcessor.director(4)); |
265 | topologyService.addListener(topologyListener); | 263 | topologyService.addListener(topologyListener); |
266 | - executor = Executors.newSingleThreadScheduledExecutor(); | ||
267 | - //Start a timer when the component is up, with initial delay of 30min and periodic delays at 30min | ||
268 | - executor.scheduleAtFixedRate(new GlobalOptimizationTimer(), INITIAL_DELAY, PERIODIC_DELAY, TimeUnit.MINUTES); | ||
269 | 264 | ||
270 | // Reserve global node pool | 265 | // Reserve global node pool |
271 | if (!srTeHandler.reserveGlobalPool(GLOBAL_LABEL_SPACE_MIN, GLOBAL_LABEL_SPACE_MAX)) { | 266 | if (!srTeHandler.reserveGlobalPool(GLOBAL_LABEL_SPACE_MIN, GLOBAL_LABEL_SPACE_MAX)) { |
... | @@ -283,8 +278,6 @@ public class PceManager implements PceService { | ... | @@ -283,8 +278,6 @@ public class PceManager implements PceService { |
283 | netCfgService.removeListener(cfgListener); | 278 | netCfgService.removeListener(cfgListener); |
284 | packetService.removeProcessor(processor); | 279 | packetService.removeProcessor(processor); |
285 | topologyService.removeListener(topologyListener); | 280 | topologyService.removeListener(topologyListener); |
286 | - // Shutdown the thread when component is deactivated | ||
287 | - executor.shutdown(); | ||
288 | log.info("Stopped"); | 281 | log.info("Stopped"); |
289 | } | 282 | } |
290 | 283 | ... | ... |
... | @@ -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 | ... | ... |
... | @@ -1531,7 +1531,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1531,7 +1531,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1531 | bandwidth = attributes.getBandwidthObject().getBandwidth(); | 1531 | bandwidth = attributes.getBandwidthObject().getBandwidth(); |
1532 | } | 1532 | } |
1533 | } | 1533 | } |
1534 | - | ||
1535 | List<Object> eroSubObjList = buildPathFromEroObj(eroObj, providerId); | 1534 | List<Object> eroSubObjList = buildPathFromEroObj(eroObj, providerId); |
1536 | List<Link> links = new ArrayList<>(); | 1535 | List<Link> links = new ArrayList<>(); |
1537 | List<LabelResourceId> labels = new ArrayList<>(); | 1536 | List<LabelResourceId> labels = new ArrayList<>(); |
... | @@ -1542,10 +1541,8 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1542,10 +1541,8 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1542 | labels.add(LabelResourceId.labelResourceId(((Integer) linkOrLabel).longValue())); | 1541 | labels.add(LabelResourceId.labelResourceId(((Integer) linkOrLabel).longValue())); |
1543 | } | 1542 | } |
1544 | } | 1543 | } |
1545 | - | ||
1546 | Path path = new DefaultPath(providerId, links, cost, EMPTY); | 1544 | Path path = new DefaultPath(providerId, links, cost, EMPTY); |
1547 | NetworkResource labelStack = new DefaultLabelStack(labels); | 1545 | NetworkResource labelStack = new DefaultLabelStack(labels); |
1548 | - | ||
1549 | // To carry PST TLV, SRP object can be present with value 0 even when PCRpt is not in response to any action | 1546 | // To carry PST TLV, SRP object can be present with value 0 even when PCRpt is not in response to any action |
1550 | // from PCE. | 1547 | // from PCE. |
1551 | PcepSrpObject srpObj = stateRpt.getSrpObject(); | 1548 | PcepSrpObject srpObj = stateRpt.getSrpObject(); |
... | @@ -1577,7 +1574,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1577,7 +1574,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1577 | log.error("Stateful IPv4 identifier TLV is null in PCRpt msg."); | 1574 | log.error("Stateful IPv4 identifier TLV is null in PCRpt msg."); |
1578 | return; | 1575 | return; |
1579 | } | 1576 | } |
1580 | - | ||
1581 | IpTunnelEndPoint tunnelEndPointSrc = IpTunnelEndPoint | 1577 | IpTunnelEndPoint tunnelEndPointSrc = IpTunnelEndPoint |
1582 | .ipTunnelPoint(IpAddress.valueOf(ipv4LspIdenTlv.getIpv4IngressAddress())); | 1578 | .ipTunnelPoint(IpAddress.valueOf(ipv4LspIdenTlv.getIpv4IngressAddress())); |
1583 | IpTunnelEndPoint tunnelEndPointDst = IpTunnelEndPoint | 1579 | IpTunnelEndPoint tunnelEndPointDst = IpTunnelEndPoint |
... | @@ -1591,7 +1587,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1591,7 +1587,6 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1591 | pcepClientController.getClient(pccId).setLspAndDelegationInfo( | 1587 | pcepClientController.getClient(pccId).setLspAndDelegationInfo( |
1592 | new LspKey(lspObj.getPlspId(), ipv4LspIdenTlv.getLspId()), lspObj.getDFlag()); | 1588 | new LspKey(lspObj.getPlspId(), ipv4LspIdenTlv.getLspId()), lspObj.getDFlag()); |
1593 | } | 1589 | } |
1594 | - | ||
1595 | Tunnel tunnel = null; | 1590 | Tunnel tunnel = null; |
1596 | // Asynchronous status change message from PCC for LSP reported earlier. | 1591 | // Asynchronous status change message from PCC for LSP reported earlier. |
1597 | for (Tunnel tunnelObj : tunnelQueryResult) { | 1592 | for (Tunnel tunnelObj : tunnelQueryResult) { |
... | @@ -1684,7 +1679,13 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid | ... | @@ -1684,7 +1679,13 @@ public class PcepTunnelProvider extends AbstractProvider implements TunnelProvid |
1684 | 1679 | ||
1685 | //delegated owner will update can be a master or non-master | 1680 | //delegated owner will update can be a master or non-master |
1686 | if (lspObj.getDFlag()) { | 1681 | if (lspObj.getDFlag()) { |
1687 | - annotations = getAnnotations(lspObj, ipv4LspIdenTlv, bandwidth, lspType, costType); | 1682 | + |
1683 | + if (tunnel.annotations().value(BANDWIDTH) != null) { | ||
1684 | + bandwidth = Float.parseFloat(tunnel.annotations().value(BANDWIDTH)); | ||
1685 | + } | ||
1686 | + annotations = getAnnotations(lspObj, ipv4LspIdenTlv, | ||
1687 | + bandwidth, lspType, | ||
1688 | + tunnel.annotations().value(COST_TYPE)); | ||
1688 | td = new DefaultTunnelDescription(null, tunnelEndPointSrc, tunnelEndPointDst, MPLS, new DefaultGroupId( | 1689 | td = new DefaultTunnelDescription(null, tunnelEndPointSrc, tunnelEndPointDst, MPLS, new DefaultGroupId( |
1689 | 0), providerId, TunnelName.tunnelName(new String(pathNameTlv.getValue())), | 1690 | 0), providerId, TunnelName.tunnelName(new String(pathNameTlv.getValue())), |
1690 | tunnel.path(), labelStack, annotations); | 1691 | tunnel.path(), labelStack, annotations); | ... | ... |
-
Please register or login to post a comment