当前位置: 首页>>代码示例>>Java>>正文


Java LDUpdate.getSrcPort方法代码示例

本文整理汇总了Java中net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate.getSrcPort方法的典型用法代码示例。如果您正苦于以下问题:Java LDUpdate.getSrcPort方法的具体用法?Java LDUpdate.getSrcPort怎么用?Java LDUpdate.getSrcPort使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate的用法示例。


在下文中一共展示了LDUpdate.getSrcPort方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: topologyChanged

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate; //导入方法依赖的package包/类
@Override
public void topologyChanged(List<LDUpdate> appliedUpdates) {
    for (LDUpdate ldu : appliedUpdates) {
        if (ldu.getOperation()
               .equals(ILinkDiscovery.UpdateOperation.PORT_DOWN)) {

            // Get the switch ID for the OFMatchWithSwDpid object
            IOFSwitch affectedSwitch = switchService.getSwitch(ldu.getSrc());

            // Create an OFMatchReconcile object
            OFMatchReconcile ofmr = new OFMatchReconcile();

            // Generate an OFMatch objects for the OFMatchWithSwDpid object
            Match match = affectedSwitch.getOFFactory().buildMatch().build(); // nothing specific set, so all wildcarded

            // Generate the OFMatchWithSwDpid
            OFMatchWithSwDpid ofmatchsw = new OFMatchWithSwDpid(match, affectedSwitch.getId());

            // Set the action to update the path to remove flows routing
            // towards the downed port
            ofmr.rcAction = OFMatchReconcile.ReconcileAction.UPDATE_PATH;

            // Set the match, with the switch dpid
            ofmr.ofmWithSwDpid = ofmatchsw;

            // Assign the downed port to the OFMatchReconcile's outPort data
            // member (I added this to
            // the OFMatchReconcile class)
            ofmr.outPort = ldu.getSrcPort();

            // Tell the reconcile manager to reconcile matching flows
            frm.reconcileFlow(ofmr, EventPriority.HIGH);
        }
    }
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:36,代码来源:PortDownReconciliation.java

示例2: topologyChanged

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate; //导入方法依赖的package包/类
@Override
public void topologyChanged(List<LDUpdate> appliedUpdates) {
    for (LDUpdate ldu : appliedUpdates) {
        if (ldu.getOperation()
               .equals(ILinkDiscovery.UpdateOperation.PORT_DOWN)) {

            // Get the switch ID for the OFMatchWithSwDpid object
            long affectedSwitch = floodlightProvider.getSwitch(ldu.getSrc())
                                                    .getId();

            // Create an OFMatchReconcile object
            OFMatchReconcile ofmr = new OFMatchReconcile();

            // Generate an OFMatch objects for the OFMatchWithSwDpid object
            OFMatch match = new OFMatch().setWildcards(OFMatch.OFPFW_ALL);

            // Generate the OFMatchWithSwDpid
            OFMatchWithSwDpid ofmatchsw = new OFMatchWithSwDpid(match,
                                                                affectedSwitch);

            // Set the action to update the path to remove flows routing
            // towards the downed port
            ofmr.rcAction = OFMatchReconcile.ReconcileAction.UPDATE_PATH;

            // Set the match, with the switch dpid
            ofmr.ofmWithSwDpid = ofmatchsw;

            // Assign the downed port to the OFMatchReconcile's outPort data
            // member (I added this to
            // the OFMatchReconcile class)
            ofmr.outPort = ldu.getSrcPort();

            // Tell the reconcile manager to reconcile matching flows
            frm.reconcileFlow(ofmr, EventPriority.HIGH);
        }
    }
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:38,代码来源:PortDownReconciliation.java

示例3: topologyChanged

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate; //导入方法依赖的package包/类
@Override
public void topologyChanged() {
    for (LDUpdate ldu : topology.getLastLinkUpdates()) {
        if (ldu.getOperation()
               .equals(ILinkDiscovery.UpdateOperation.PORT_DOWN)) {

            // Get the switch ID for the OFMatchWithSwDpid object
            long affectedSwitch = floodlightProvider.getSwitches()
                                                    .get(ldu.getSrc())
                                                    .getId();

            // Create an OFMatchReconcile object
            OFMatchReconcile ofmr = new OFMatchReconcile();

            // Generate an OFMatch objects for the OFMatchWithSwDpid object
            OFMatch match = new OFMatch().setWildcards(OFMatch.OFPFW_ALL);

            // Generate the OFMatchWithSwDpid
            OFMatchWithSwDpid ofmatchsw = new OFMatchWithSwDpid(match,
                                                                affectedSwitch);

            // Set the action to update the path to remove flows routing
            // towards the downed port
            ofmr.rcAction = OFMatchReconcile.ReconcileAction.UPDATE_PATH;

            // Set the match, with the switch dpid
            ofmr.ofmWithSwDpid = ofmatchsw;

            // Assign the downed port to the OFMatchReconcile's outPort data
            // member (I added this to
            // the OFMatchReconcile class)
            ofmr.outPort = ldu.getSrcPort();

            // Tell the reconcile manager to reconcile matching flows
            frm.reconcileFlow(ofmr);
        }
    }
}
 
开发者ID:dana-i2cat,项目名称:floodlight-nfv,代码行数:39,代码来源:PortDownReconciliation.java

示例4: topologyChanged

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate; //导入方法依赖的package包/类
@Override
public void topologyChanged(List<LDUpdate> linkUpdates) {
	/*
	System.out.println("**********topology have changed!***********");
	System.out.println("size : " + linkUpdates.size());
	System.out.println("linkUpdates " + linkUpdates);
	*/
	
	//int linkRemovedCount = 0;
	
	DatapathId singlelinkRemovedSrc = null;
	DatapathId singlelinkRemovedDst = null;
	OFPort singlelinkRemovedSrcPort = null;
	OFPort singlelinkRemovedDstPort = null;
	
	for(LDUpdate ldu : linkUpdates) {
		if(ldu.getOperation().equals(ILinkDiscovery.UpdateOperation.LINK_REMOVED)) {
			if(linkRemovedCount == 0) {
				singlelinkRemovedSrc = ldu.getSrc();
				singlelinkRemovedDst = ldu.getDst();
				singlelinkRemovedSrcPort = ldu.getSrcPort();
				singlelinkRemovedDstPort = ldu.getDstPort();
			}
			if(linkRemovedCount % 2 == 0) {
				allRemovedLinkList.add(ldu);
			}
			linkRemovedCount++;
		} else if(ldu.getOperation().equals(ILinkDiscovery.UpdateOperation.LINK_UPDATED)) {
			/*
			System.out.println("**********link have been updated!***********");
			System.out.println("source dpid " + ldu.getSrc());
			System.out.println("destination dpid " + ldu.getDst());
			*/
		}
	}
	
	if(linkRemovedCount == 2) {
		/*
		for(IFailureDiscoveryListener fdl : failureDiscoveryListeners) {
			fdl.singleLinkRemovedFailure(singlelinkRemovedSrc, singlelinkRemovedSrcPort, singlelinkRemovedDst, singlelinkRemovedDstPort);
		}
		*/
	} else if (linkRemovedCount == 26) {
		//System.out.println("others situation!");
		massivefailurerecoveryservice.startmassiverecovery();
		/*
		//
		long restorationTimeBegin = System.nanoTime();
		//
		for(LDUpdate ldu : allRemovedLinkList) {
			singlelinkRemovedSrc = ldu.getSrc();
			singlelinkRemovedDst = ldu.getDst();
			singlelinkRemovedSrcPort = ldu.getSrcPort();
			singlelinkRemovedDstPort = ldu.getDstPort();
			for(IFailureDiscoveryListener fdl : failureDiscoveryListeners) {
				fdl.singleLinkRemovedFailure(singlelinkRemovedSrc, singlelinkRemovedSrcPort, singlelinkRemovedDst, singlelinkRemovedDstPort);
			}
		}
		
		//
		long restorationTimeEnd = System.nanoTime();
		System.out.println("restorationTimeBegin : " + restorationTimeBegin);
		System.out.println("restorationTimeEnd : " + restorationTimeEnd);
		System.out.println("restorationTime : " + (restorationTimeEnd - restorationTimeBegin));
		//
		*/
		linkRemovedCount = 0;
	}
}
 
开发者ID:pixuan,项目名称:floodlight,代码行数:70,代码来源:FailureDiscovery.java


注:本文中的net.floodlightcontroller.linkdiscovery.ILinkDiscovery.LDUpdate.getSrcPort方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。