DefaultGroupBucket.createSelectGroupBucket(trafficTreatment, (short) weightInt); break; case "INDIRECT": groupBucket = DefaultGroupBucket.createIndirectGroupBucket(trafficTreatment); break; case "ALL": groupBucket = DefaultGroupBucket.createAllGroupBucket(trafficTreatment); break; case "FAILOVER": DefaultGroupBucket.createFailoverGroupBucket(trafficTreatment, watchPort, watchGroup); break; default: DefaultGroupBucket.createAllGroupBucket(trafficTreatment);
private void addBucketToGroup(NextObjective nextObjective) { log.debug("addBucketToGroup in {}: for next objective id {}", deviceId, nextObjective.id()); Collection<TrafficTreatment> treatments = nextObjective.next(); TrafficTreatment treatment = treatments.iterator().next(); final GroupKey key = new DefaultGroupKey( appKryo.serialize(nextObjective .id())); Group group = groupService.getGroup(deviceId, key); if (group == null) { log.warn("Group is not found in {} for {}", deviceId, key); return; } GroupBucket bucket; if (group.type() == GroupDescription.Type.INDIRECT) { bucket = DefaultGroupBucket.createIndirectGroupBucket(treatment); } else if (group.type() == GroupDescription.Type.SELECT) { bucket = DefaultGroupBucket.createSelectGroupBucket(treatment); } else if (group.type() == GroupDescription.Type.ALL) { bucket = DefaultGroupBucket.createAllGroupBucket(treatment); } else { log.warn("Unsupported Group type {}", group.type()); return; } GroupBuckets bucketsToAdd = new GroupBuckets(Collections.singletonList(bucket)); log.debug("Adding buckets to group id {} of next objective id {} in device {}", group.id(), nextObjective.id(), deviceId); groupService.addBucketsToGroup(deviceId, key, bucketsToAdd, key, appId); }
.stream() .map((treatment) -> DefaultGroupBucket .createSelectGroupBucket(treatment)) .collect(Collectors.toList()); if (!buckets.isEmpty()) { .stream() .map((treatment) -> DefaultGroupBucket .createAllGroupBucket(treatment)) .collect(Collectors.toList()); if (!buckets.isEmpty()) {
TrafficTreatment.Builder ttb = DefaultTrafficTreatment.builder(); ttb.group(new DefaultGroupId(l2intGrpDesc.givenGroupId())); GroupBucket abucket = DefaultGroupBucket.createAllGroupBucket(ttb.build()); l2floodBuckets.add(abucket); });
(int) portNum.toLong(); GroupBucket l2InterfaceGroupBucket = DefaultGroupBucket.createIndirectGroupBucket(newTreatment.build()); GroupDescription l2InterfaceGroupDescription = new DefaultGroupDescription(
ttb.group(new DefaultGroupId(gi.nextGroupDesc.givenGroupId())); GroupBucket sbucket = DefaultGroupBucket .createSelectGroupBucket(ttb.build()); l3ecmpGroupBuckets.add(sbucket);
/** * Creates a new failover group with the initial ports of the links * from the primary and backup path. * * @param links links from the primary path * @param backupLinks links from the backup path * @param intent intent from which this call originates */ private void createFailoverTreatmentGroup(List<Link> links, List<Link> backupLinks, PointToPointIntent intent) { List<GroupBucket> buckets = new ArrayList<>(); TrafficTreatment.Builder tBuilderIn = DefaultTrafficTreatment.builder(); ConnectPoint src = links.get(0).src(); tBuilderIn.setOutput(src.port()); TrafficTreatment.Builder tBuilderIn2 = DefaultTrafficTreatment.builder(); ConnectPoint src2 = backupLinks.get(0).src(); tBuilderIn2.setOutput(src2.port()); buckets.add(DefaultGroupBucket.createFailoverGroupBucket(tBuilderIn.build(), src.port(), null)); buckets.add(DefaultGroupBucket.createFailoverGroupBucket(tBuilderIn2.build(), src2.port(), null)); GroupBuckets groupBuckets = new GroupBuckets(buckets); GroupDescription groupDesc = new DefaultGroupDescription(src.deviceId(), Group.Type.FAILOVER, groupBuckets, makeGroupKey(intent.id()), null, intent.appId()); log.trace("adding failover group {}", groupDesc); groupService.addGroup(groupDesc); }
bucket = DefaultGroupBucket.createIndirectGroupBucket(treatment); } else if (group.type() == GroupDescription.Type.SELECT) { bucket = DefaultGroupBucket.createSelectGroupBucket(treatment); } else if (group.type() == GroupDescription.Type.ALL) { bucket = DefaultGroupBucket.createAllGroupBucket(treatment); } else { log.warn("Unsupported Group type {}", group.type());
TrafficTreatment.Builder ttb = DefaultTrafficTreatment.builder(); ttb.group(new DefaultGroupId(nextGroupDesc.givenGroupId())); GroupBucket abucket = DefaultGroupBucket.createAllGroupBucket(ttb.build()); l3McastBuckets.add(abucket); });
DefaultGroupBucket.createIndirectGroupBucket(treatmentWithoutPushVlan.build()); final GroupKey key = new DefaultGroupKey(appKryo.serialize(nextObjective.id())); GroupDescription groupDescription
TrafficTreatment.Builder ttb = DefaultTrafficTreatment.builder(); ttb.group(new DefaultGroupId(gi.nextGroupDesc.givenGroupId())); GroupBucket sbucket = DefaultGroupBucket.createSelectGroupBucket(ttb.build());
private void updateFailoverGroup(PointToPointIntent intent, List<Link> links) { GroupKey groupKey = makeGroupKey(intent.id()); TrafficTreatment.Builder tBuilderIn = DefaultTrafficTreatment.builder(); ConnectPoint src = links.get(0).src(); tBuilderIn.setOutput(src.port()); GroupBucket bucket = DefaultGroupBucket.createFailoverGroupBucket(tBuilderIn.build(), src.port(), null); GroupBuckets addBuckets = new GroupBuckets(Collections.singletonList(bucket)); groupService.addBucketsToGroup(src.deviceId(), groupKey, addBuckets, groupKey, intent.appId()); }
case INDIRECT: groupBucket = DefaultGroupBucket.createIndirectGroupBucket(treatment); break; case SELECT: groupBucket = DefaultGroupBucket.createSelectGroupBucket(treatment); break; case FF: new DefaultGroupId(bucket.getWatchGroup().getGroupNumber()); groupBucket = DefaultGroupBucket.createFailoverGroupBucket(treatment, port, groupId); break; case ALL: groupBucket = DefaultGroupBucket.createAllGroupBucket(treatment); break; default:
GroupBucket bucket = DefaultGroupBucket.createAllGroupBucket(treatment); GroupKey key = new DefaultGroupKey(appKryo.serialize(nextObjective.id()));
onelabelGroupInfo.nextGroupDesc.givenGroupId())); GroupBucket l3vpnGrpBkt = DefaultGroupBucket.createIndirectGroupBucket(l3vpnTtb.build()); int l3vpnIndex = getNextAvailableIndex(); int l3vpngroupId = MPLS_L3VPN_SUBTYPE | (SUBTYPE_MASK & l3vpnIndex);
GroupBucket bucket = DefaultGroupBucket.createSelectGroupBucket( DefaultTrafficTreatment.builder() .group(pointedGroup.id())
builder.setOutput(portNumber); GroupBucket bucket = DefaultGroupBucket .createAllGroupBucket(builder.build()); buckets.add(bucket); });
DefaultGroupBucket.createIndirectGroupBucket(outerTtb.build()); outerGrpDesc = new DefaultGroupDescription( deviceId, DefaultGroupBucket.createIndirectGroupBucket(outerTtb.build()); outerGrpDesc = new DefaultGroupDescription( deviceId, DefaultGroupBucket.createIndirectGroupBucket(innerTtb.build()); GroupDescription l2groupDescription = new DefaultGroupDescription(
DefaultGroupBucket.createIndirectGroupBucket(outerTtb.build()); outerGrpDesc = new DefaultGroupDescription( deviceId, DefaultGroupBucket.createIndirectGroupBucket(outerTtb.build()); outerGrpDesc = new DefaultGroupDescription( deviceId, DefaultGroupBucket.createIndirectGroupBucket(innerTtb.build()); GroupDescription l2groupDescription = new DefaultGroupDescription(