首页 > 其他 > 详细

从PACKET_IN消息中得到packet data

时间:2014-06-16 22:45:18      阅读:599      评论:0      收藏:0      [点我收藏+]

     在Floodlight模块中如果想得到packet in消息,就对相应的消息类型进行监听即可,然后在receive方法中就可以操纵这个上传上来的packet_in。
     关键代码:
 
    Ethernet eth = IFloodlightProviderService.bcStore.get(cntx,
                                            IFloodlightProviderService.CONTEXT_PI_PAYLOAD);
          
          if(eth.getEtherType() == Ethernet.TYPE_IPv4){
                IPv4 ipPkt = (IPv4)eth.getPayload();
                if(ipPkt.getProtocol() == IPv4.PROTOCOL_UDP){
                         UDP udpPkt = (UDP)ipPkt.getPayload();
                         Data dataPkt = (Data)udpPkt.getPayload();
               
                        System.out.println(dataPkt.getData().length);  
                        
                        byte[] arr = dataPkt.getData();
                        for (int i = 0; i < dataPkt.getData().length; i++){
                                  System.out.print((char)arr[i]);
                        }
                 }
          }

从PACKET_IN消息中得到packet data,布布扣,bubuko.com

从PACKET_IN消息中得到packet data

原文:http://blog.csdn.net/vonzhoufz/article/details/31356485

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!