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


Java OFBarrierRequest类代码示例

本文整理汇总了Java中org.openflow.protocol.OFBarrierRequest的典型用法代码示例。如果您正苦于以下问题:Java OFBarrierRequest类的具体用法?Java OFBarrierRequest怎么用?Java OFBarrierRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: sendHandshakeSetConfig

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
/**
 * Send the configuration requests to tell the switch we want full
 * packets
 * @throws IOException
 */
private void sendHandshakeSetConfig() throws IOException {
    List<OFMessage> msglist = new ArrayList<OFMessage>(3);

    // Ensure we receive the full packet via PacketIn
    // FIXME: We don't set the reassembly flags.
    OFSetConfig configSet = (OFSetConfig) BasicFactory.getInstance()
            .getMessage(OFType.SET_CONFIG);
    configSet.setMissSendLength((short) 0xffff)
        .setLengthU(OFSwitchConfig.MINIMUM_LENGTH);
    configSet.setXid(handshakeTransactionIds--);
    msglist.add(configSet);

    // Barrier
    OFBarrierRequest barrier = (OFBarrierRequest) BasicFactory.getInstance()
            .getMessage(OFType.BARRIER_REQUEST);
    barrier.setXid(handshakeTransactionIds--);
    msglist.add(barrier);

    // Verify (need barrier?)
    OFGetConfigRequest configReq = (OFGetConfigRequest)
            BasicFactory.getInstance().getMessage(OFType.GET_CONFIG_REQUEST);
    configReq.setXid(handshakeTransactionIds--);
    msglist.add(configReq);
    channel.write(msglist);
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:31,代码来源:OFChannelHandler.java

示例2: sendHandshakeSetConfig

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
/**
 * Sends the configuration requests to tell the switch we want full packets.
 *
 * @throws IOException
 */
private void sendHandshakeSetConfig() throws IOException {
    final List<OFMessage> msglist = new ArrayList<OFMessage>(3);

    // Ensure we receive the full packet via PacketIn

    final OFSetConfig configSet = (OFSetConfig) BasicFactory.getInstance()
            .getMessage(OFType.SET_CONFIG);
    configSet.setMissSendLength(OVXSetConfig.MSL_FULL).setLengthU(
            OFSwitchConfig.MINIMUM_LENGTH);
    configSet.setXid(this.handshakeTransactionIds--);
    msglist.add(configSet);

    // Barrier
    final OFBarrierRequest barrier = (OFBarrierRequest) BasicFactory
            .getInstance().getMessage(OFType.BARRIER_REQUEST);
    barrier.setXid(this.handshakeTransactionIds--);
    msglist.add(barrier);

    // Verify (need barrier?)
    final OFGetConfigRequest configReq = (OFGetConfigRequest) BasicFactory
            .getInstance().getMessage(OFType.GET_CONFIG_REQUEST);
    configReq.setXid(this.handshakeTransactionIds--);
    msglist.add(configReq);
    this.channel.write(msglist);
}
 
开发者ID:CoVisor,项目名称:CoVisor,代码行数:31,代码来源:SwitchChannelHandler.java

示例3: call

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
@Override
public Object call() throws Exception {
    /*
     * Send out message only if syncRequest is set to true. Otherwise, just
     * wait for the Barrier response back.
     */
    if (syncRequest) {
        sw.asyncSend(syncMsg, xid);
        if (!(syncMsg instanceof OFBarrierRequest)) {
            OFBarrierRequest barrierMsg = new OFBarrierRequest();
            sw.asyncSend(barrierMsg, xid);
        }
    }
    latch.await();
    return result;
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:17,代码来源:SynchronousMessage.java

示例4: clearAllFlowMods

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
@Override
@LogMessageDoc(level="ERROR",
               message="Failed to clear all flows on switch {switch}",
               explanation="An I/O error occured while trying to clear " +
                           "flows on the switch.",
               recommendation=LogMessageDoc.CHECK_SWITCH)
public void clearAllFlowMods() {
    // Delete all pre-existing flows
    OFMatch match = new OFMatch().setWildcards(OFMatch.OFPFW_ALL);
    OFMessage fm = ((OFFlowMod) floodlightProvider.getOFMessageFactory()
        .getMessage(OFType.FLOW_MOD))
            .setMatch(match)
        .setCommand(OFFlowMod.OFPFC_DELETE)
        .setOutPort(OFPort.OFPP_NONE)
        .setLength(U16.t(OFFlowMod.MINIMUM_LENGTH));
    fm.setXid(getNextTransactionId());
    OFMessage barrierMsg = (OFBarrierRequest)
            floodlightProvider.getOFMessageFactory().getMessage(
                    OFType.BARRIER_REQUEST);
    barrierMsg.setXid(getNextTransactionId());
    try {
        List<OFMessage> msglist = new ArrayList<OFMessage>(1);
        msglist.add(fm);
        write(msglist);
        msglist = new ArrayList<OFMessage>(1);
        msglist.add(barrierMsg);
        write(msglist);
    } catch (Exception e) {
        log.error("Failed to clear all flows on switch " + this, e);
    }
}
 
开发者ID:dana-i2cat,项目名称:floodlight-nfv,代码行数:32,代码来源:OFSwitchBase.java

示例5: asyncSendBarrierMessage

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
/**
 * Send Barrier message asynchronously. The caller is not blocked. The
 * Barrier message will be sent in a transmit thread which will be blocked
 * until the Barrier reply is received.
 */
@Override
public Object asyncSendBarrierMessage() {
    if (transmitQ == null) {
        return Boolean.FALSE;
    }

    OFBarrierRequest barrierMsg = new OFBarrierRequest();
    int xid = getNextXid();

    barrierMsg.setXid(xid);
    transmitQ.add(new PriorityMessage(barrierMsg, 0, true));

    return Boolean.TRUE;
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:20,代码来源:SwitchHandler.java

示例6: processOFBarrierRequest

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
void processOFBarrierRequest(final ControllerChannelHandler h,
        final OFBarrierRequest m) {
    this.illegalMessageReceived(h, m);
}
 
开发者ID:CoVisor,项目名称:CoVisor,代码行数:5,代码来源:ControllerChannelHandler.java

示例7: syncSendBarrierMessage

import org.openflow.protocol.OFBarrierRequest; //导入依赖的package包/类
/**
 * Send Barrier message synchronously. The caller will be blocked until the
 * Barrier reply is received.
 */
@Override
public Object syncSendBarrierMessage() {
    OFBarrierRequest barrierMsg = new OFBarrierRequest();
    return syncSend(barrierMsg);
}
 
开发者ID:lbchen,项目名称:ODL,代码行数:10,代码来源:SwitchHandler.java


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