• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java DHCPOptionCode类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: snoopDHCPClientName

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
/**
 * Snoop and record client-provided host name from DHCP requests
 * @param eth
 * @param srcDevice
 */
private void snoopDHCPClientName(Ethernet eth, Device srcDevice) {
	if (! (eth.getPayload() instanceof IPv4) )
		return;
	IPv4 ipv4 = (IPv4) eth.getPayload();
	if (! (ipv4.getPayload() instanceof UDP) )
		return;
	UDP udp = (UDP) ipv4.getPayload();
	if (!(udp.getPayload() instanceof DHCP))
		return;
	DHCP dhcp = (DHCP) udp.getPayload();
	byte opcode = dhcp.getOpCode();
	if (opcode == DHCP.OPCODE_REQUEST) {
		DHCPOption dhcpOption = dhcp.getOption(
				DHCPOptionCode.OptionCode_Hostname);
		if (dhcpOption != null) {
			cntDhcpClientNameSnooped.increment();
			srcDevice.dhcpClientName = new String(dhcpOption.getData());
		}
	}
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:26,代码来源:DeviceManagerImpl.java


示例2: snoopDHCPClientName

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
/**
 * Snoop and record client-provided host name from DHCP requests
 * @param eth
 * @param srcDevice
 */
private void snoopDHCPClientName(Ethernet eth, Device srcDevice) {
    if (! (eth.getPayload() instanceof IPv4) )
        return;
    IPv4 ipv4 = (IPv4) eth.getPayload();
    if (! (ipv4.getPayload() instanceof UDP) )
        return;
    UDP udp = (UDP) ipv4.getPayload();
    if (!(udp.getPayload() instanceof DHCP))
        return;
    DHCP dhcp = (DHCP) udp.getPayload();
    byte opcode = dhcp.getOpCode();
    if (opcode == DHCP.OPCODE_REQUEST) {
        DHCPOption dhcpOption = dhcp.getOption(
                DHCPOptionCode.OptionCode_Hostname);
        if (dhcpOption != null) {
            cntDhcpClientNameSnooped.updateCounterNoFlush();
            srcDevice.dhcpClientName = new String(dhcpOption.getData());
        }
    }
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:26,代码来源:DeviceManagerImpl.java


示例3: snoopDHCPClientName

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
/**
 * Snoop and record client-provided host name from DHCP requests
 * @param eth
 * @param srcDevice
 */
private void snoopDHCPClientName(Ethernet eth, Device srcDevice) {
    if (! (eth.getPayload() instanceof IPv4) )
        return;
    IPv4 ipv4 = (IPv4) eth.getPayload();
    if (! (ipv4.getPayload() instanceof UDP) )
        return;
    UDP udp = (UDP) ipv4.getPayload();
    if (!(udp.getPayload() instanceof DHCP))
        return;
    DHCP dhcp = (DHCP) udp.getPayload();
    byte opcode = dhcp.getOpCode();
    if (opcode == DHCP.OPCODE_REQUEST) {
        DHCPOption dhcpOption = dhcp.getOption(
                DHCPOptionCode.OptionCode_Hostname);
        if (dhcpOption != null) {
            srcDevice.dhcpClientName = new String(dhcpOption.getData());
        }
    }
}
 
开发者ID:dana-i2cat,项目名称:floodlight-nfv,代码行数:25,代码来源:DeviceManagerImpl.java


示例4: snoopDHCPClientName

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
/**
 * Snoop and record client-provided host name from DHCP requests
 * @param eth
 * @param srcDevice
 */
private void snoopDHCPClientName(Ethernet eth, Device srcDevice) {
    if (eth.getEtherType() != Ethernet.TYPE_IPv4)
        return;
    IPv4 ipv4 = (IPv4) eth.getPayload();
    if (ipv4.getProtocol() != IPv4.PROTOCOL_UDP)
        return;
    UDP udp = (UDP) ipv4.getPayload();
    if (!(udp.getPayload() instanceof DHCP))
        return;
    DHCP dhcp = (DHCP) udp.getPayload();
    byte opcode = dhcp.getOpCode();
    if (opcode == DHCP.OPCODE_REQUEST) {
        DHCPOption dhcpOption = dhcp.getOption(
                DHCPOptionCode.OptionCode_Hostname);
        if (dhcpOption != null) {
            srcDevice.dhcpClientName = new String(dhcpOption.getData());
        }
    }
}
 
开发者ID:wallnerryan,项目名称:FL_HAND,代码行数:25,代码来源:DeviceManagerImpl.java


示例5: getRequestedParameters

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
public ArrayList<Byte> getRequestedParameters(DHCP DHCPPayload, boolean isInform) {
	ArrayList<Byte> requestOrder = new ArrayList<Byte>();
	byte[] requests = DHCPPayload.getOption(DHCPOptionCode.OptionCode_RequestedParameters).getData();
	boolean requestedLeaseTime = false;
	boolean requestedRebindTime = false;
	boolean requestedRenewTime = false;
	for (byte specificRequest : requests) {
		if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_SN) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_SN);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_ROUTER) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_ROUTER);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DN) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DN);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DNS) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DNS);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME);
			requestedLeaseTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DHCP_SERVER) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DHCP_SERVER);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_BROADCAST_IP) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_BROADCAST_IP);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_NTP_IP) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_NTP_IP);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME);
			requestedRebindTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME);
			requestedRenewTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_IP_FORWARDING) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_IP_FORWARDING);
			log.debug("requested IP FORWARDING");
		} else {
			//log.debug("Requested option 0x" + Byte.toString(specificRequest) + " not available");
		}
	}
	
	// We need to add these in regardless if the request list includes them
	if (!isInform) {
		if (!requestedLeaseTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME);
			log.debug("added option LEASE TIME");
		}
		if (!requestedRenewTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME);
			log.debug("added option RENEWAL TIME");
		}
		if (!requestedRebindTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME);
			log.debug("added option REBIND TIME");
		}
	}
	return requestOrder;
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:56,代码来源:DHCPServer.java


示例6: getRequestedParameters

import net.floodlightcontroller.packet.DHCP.DHCPOptionCode; //导入依赖的package包/类
public ArrayList<Byte> getRequestedParameters(DHCP DHCPPayload, boolean isInform) {
	ArrayList<Byte> requestOrder = new ArrayList<Byte>();
	byte[] requests = DHCPPayload.getOption(DHCPOptionCode.OptionCode_RequestedParameters).getData();
	boolean requestedLeaseTime = false;
	boolean requestedRebindTime = false;
	boolean requestedRenewTime = false;
	for (byte specificRequest : requests) {
		if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_SN) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_SN);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_ROUTER) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_ROUTER);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DN) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DN);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DNS) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DNS);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME);
			requestedLeaseTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_DHCP_SERVER) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_DHCP_SERVER);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_BROADCAST_IP) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_BROADCAST_IP);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_NTP_IP) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_NTP_IP);
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME);
			requestedRebindTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME);
			requestedRenewTime = true;
		} else if (specificRequest == DHCP_REQ_PARAM_OPTION_CODE_IP_FORWARDING) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_IP_FORWARDING);
			log.debug("requested IP FORWARDING");
		} else {
			//log.debug("Requested option 0x" + Byte.toString(specificRequest) + " not available");
		}
	}

	// We need to add these in regardless if the request list includes them
	if (!isInform) {
		if (!requestedLeaseTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_LEASE_TIME);
			log.debug("added option LEASE TIME");
		}
		if (!requestedRenewTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_RENEWAL_TIME);
			log.debug("added option RENEWAL TIME");
		}
		if (!requestedRebindTime) {
			requestOrder.add(DHCP_REQ_PARAM_OPTION_CODE_REBIND_TIME);
			log.debug("added option REBIND TIME");
		}
	}
	return requestOrder;
}
 
开发者ID:zhenshengcai,项目名称:floodlight-hardware,代码行数:56,代码来源:DHCPServer.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java HideReturnsTransformationMethod类代码示例发布时间:2022-05-21
下一篇:
Java DelegateTree类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap