<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How do I assemble and send a packet from a SDN App for the HP VAN controller in Software Defined Networking</title>
    <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6564130#M374</link>
    <description>&lt;P&gt;Thanks for the reply,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am using the Packet Class (from the package com.hp.util.pkt.Packet)&lt;/P&gt;&lt;P&gt;import com.hp.util.pkt.Packet;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I try to create a packet I get the error message:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"The constructor Packet(Ethernet.Builder, Ip.Builder, Tcp.Builder, Icmp.Builder) is undefined."&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am modified the Eth, IP , TCP and ICMP info using:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Build ICMP response based on original ICMP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Icmp.Builder icmpOutData = new Icmp.Builder(icmpData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.typeCode(IcmpTypeCode.valueOf("ECHO_REPLY"));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.seqNum(icmpSeqNumber);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// IP response packet based on original IP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ip.Builder ipOutData = new Ip.Builder(ipData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.dstAddr(srcIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.srcAddr(dstIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ttl(255);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// TCP response&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Tcp.Builder tcpOutData = new Tcp.Builder(tcpData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tcpOutData.dstPort(srcTCPport);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tcpOutData.dstPort(dstTCPport);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Ethernet response frame based on original Ethernet frame&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Builder ethOutData = new Ethernet.Builder(ethData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.control(ethCtl);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.snapId(ethSnap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.type(ethType);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.ssap(ethSsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dsap(ethDsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dstAddr(srcMacAddr);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.srcAddr(dstMacAddr);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Assemble packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Packet packetOutData = new Packet(ethOutData, ipOutData, tcpOutData, icmpOutData);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave.&lt;/P&gt;</description>
    <pubDate>Tue, 05 Aug 2014 12:58:30 GMT</pubDate>
    <dc:creator>Dave-B</dc:creator>
    <dc:date>2014-08-05T12:58:30Z</dc:date>
    <item>
      <title>How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6526532#M336</link>
      <description>&lt;P&gt;I've been on the HP SDN App course, I'm now trying to write a very basic packet in / packet out app, where I can ping the controller on the SDN network side.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can handle a ICMP ech request packet, decode it to ethernet, IP and ICMP and then modify the fields, e.g.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;public boolean action (MessageContext messageContext, Packet packetInData)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Extract the Ethernet packet info.&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet&amp;nbsp; ethData&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= packetInData.get( ProtocolId.ETHERNET );&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;MacAddress srcMacAddr&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.srcAddr();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;MacAddress dstMacAddr&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.dstAddr();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ProtocolId ethProtocol&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.id();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;int ethLength&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.len();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;EthernetType ethType&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.type();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.SnapId ethSnap = ethData.snapId();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Control ethCtl = ethData.control();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Ssap ethSsap&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.ssap();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Dsap ethDsap&amp;nbsp;&amp;nbsp; &amp;nbsp;= ethData.dsap();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Extract IP packet info&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ip&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ipData&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = packetInData.get( ProtocolId.IP );&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;IpAddress srcIpAddress &amp;nbsp;&amp;nbsp; &amp;nbsp;= ipData.srcAddr();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;IpAddress dstIpAddress &amp;nbsp;&amp;nbsp; &amp;nbsp;= ipData.dstAddr();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ProtocolId ipProtocol&amp;nbsp;&amp;nbsp; &amp;nbsp;= ipData.id();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;int ipTTL&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= ipData.ttl();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Extract ICMP info&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Icmp icmpData&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= packetInData.get( ProtocolId.ICMP);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;int icmpIdent&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= icmpData.ident();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;int icmpSeqNumber&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= icmpData.seqNum();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;IcmpTypeCode icmpType&amp;nbsp;&amp;nbsp; &amp;nbsp;= icmpData.typeCode();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//String packetString&amp;nbsp;&amp;nbsp; &amp;nbsp;= icmpData.toString();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;byte[] icmpPayload&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;= icmpData.bytes();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Build response packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Build ICMP response based on original ICMP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Icmp.Builder icmpOutData = new Icmp.Builder(icmpData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.typeCode(IcmpTypeCode.valueOf("ECHO_REPLY"));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.seqNum(icmpSeqNumber);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// IP response packet based on original IP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ip.Builder ipOutData = new Ip.Builder(ipData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.dstAddr(srcIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.srcAddr(dstIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ttl(255);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Ethernet response frame based on original Ethernet frame&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Builder ethOutData = new Ethernet.Builder(ethData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.control(ethCtl);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.snapId(ethSnap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.type(ethType);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.ssap(ethSsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dsap(ethDsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dstAddr(srcMacAddr);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.srcAddr(dstMacAddr);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Assemble packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Packet packetOutData = new Packet();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return true;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How do combine the ethernet, IP and ICMP parts into a new packet and send the packet back to the switch?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Which classes do I use?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2014 15:26:43 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6526532#M336</guid>
      <dc:creator>Dave-B</dc:creator>
      <dc:date>2014-07-01T15:26:43Z</dc:date>
    </item>
    <item>
      <title>Re: How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6563246#M372</link>
      <description>&lt;P&gt;Hello Dave,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Apologies for the delay.&lt;/P&gt;&lt;P&gt;Did you try to use Packet Class (from the package com.hp.util.pkt.Packet)?&lt;/P&gt;&lt;P&gt;This class has constructors as below&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Packet(List&amp;lt;Protocol&amp;gt; layers)&lt;/P&gt;&lt;P&gt;Constructor creates a packet of protocol layers.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Packet(Protocol... layers)&lt;/P&gt;&lt;P&gt;Constructor creates a packet of protocol layers.&lt;/P&gt;&lt;P&gt;Here Protocols are Ethernet,Icmp,Ip,…&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So different protocols can be combined in the List to create the packet.&lt;/P&gt;&lt;P&gt;Please let us know if you are still facing the issue or your problem is solved.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;HP SDN Team&lt;/P&gt;</description>
      <pubDate>Mon, 04 Aug 2014 19:04:36 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6563246#M372</guid>
      <dc:creator>sdnindia</dc:creator>
      <dc:date>2014-08-04T19:04:36Z</dc:date>
    </item>
    <item>
      <title>Re: How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6564130#M374</link>
      <description>&lt;P&gt;Thanks for the reply,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am using the Packet Class (from the package com.hp.util.pkt.Packet)&lt;/P&gt;&lt;P&gt;import com.hp.util.pkt.Packet;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I try to create a packet I get the error message:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"The constructor Packet(Ethernet.Builder, Ip.Builder, Tcp.Builder, Icmp.Builder) is undefined."&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am modified the Eth, IP , TCP and ICMP info using:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Build ICMP response based on original ICMP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Icmp.Builder icmpOutData = new Icmp.Builder(icmpData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.typeCode(IcmpTypeCode.valueOf("ECHO_REPLY"));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;icmpOutData.seqNum(icmpSeqNumber);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// IP response packet based on original IP packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ip.Builder ipOutData = new Ip.Builder(ipData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.dstAddr(srcIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.srcAddr(dstIpAddress);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ident(icmpIdent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ipOutData.ttl(255);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// TCP response&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Tcp.Builder tcpOutData = new Tcp.Builder(tcpData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tcpOutData.dstPort(srcTCPport);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;tcpOutData.dstPort(dstTCPport);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Ethernet response frame based on original Ethernet frame&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ethernet.Builder ethOutData = new Ethernet.Builder(ethData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.control(ethCtl);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.snapId(ethSnap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.type(ethType);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.ssap(ethSsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dsap(ethDsap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.dstAddr(srcMacAddr);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ethOutData.srcAddr(dstMacAddr);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Assemble packet&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Packet packetOutData = new Packet(ethOutData, ipOutData, tcpOutData, icmpOutData);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave.&lt;/P&gt;</description>
      <pubDate>Tue, 05 Aug 2014 12:58:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6564130#M374</guid>
      <dc:creator>Dave-B</dc:creator>
      <dc:date>2014-08-05T12:58:30Z</dc:date>
    </item>
    <item>
      <title>Re: How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6565272#M375</link>
      <description>&lt;P&gt;A more specifc question would be how to convert back from mutable Ethernet.Builder / Ip.Builder / Icmp.builder classes to the&amp;nbsp; immutable Ethernet / Ip / Icmp classes.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To&amp;nbsp; create a packet I can use;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Packet MyPacket = new Packet(eth, ip, icmp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;# There is no tcp layer for ICMP packets.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However to modify or create eth, ip and icmp inner layers I have to create mutable versions , e.g.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Icmp.Builder icmpOutData = new Icmp.Builder(icmpData);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But I cannot use icmpOutData when I create a new packet or cast to Icmp.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave.&lt;/P&gt;</description>
      <pubDate>Wed, 06 Aug 2014 11:34:37 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6565272#M375</guid>
      <dc:creator>Dave-B</dc:creator>
      <dc:date>2014-08-06T11:34:37Z</dc:date>
    </item>
    <item>
      <title>Re: How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6657490#M545</link>
      <description>&lt;P&gt;Hello Dave,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Apologies for the delay.&lt;/P&gt;&lt;P&gt;Please let us know if your problem is solved or you still facing some issue.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;If you have more questions on the same topic please do reply on the same thread or open a new post if new topic.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;BR /&gt;HP SDN Team&lt;/P&gt;</description>
      <pubDate>Tue, 28 Oct 2014 06:50:48 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6657490#M545</guid>
      <dc:creator>sdnindia</dc:creator>
      <dc:date>2014-10-28T06:50:48Z</dc:date>
    </item>
    <item>
      <title>Re: How do I assemble and send a packet from a SDN App for the HP VAN controller</title>
      <link>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6658600#M548</link>
      <description>&lt;P&gt;SDN Team,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I still haven't been able to create and output packets in HP VAN 2.0.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have started setting up a HP VAN 2.3 developement system, but not finished this yet.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also do not know if either HP VAN 2.0 or 2.3 are capable of creating and sending a packet to a switch.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It would aslo be useful if there were IGMP packet functions in the SDK. Multicast is very important for my industry.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave.&lt;/P&gt;</description>
      <pubDate>Wed, 29 Oct 2014 09:47:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/how-do-i-assemble-and-send-a-packet-from-a-sdn-app-for-the-hp/m-p/6658600#M548</guid>
      <dc:creator>Dave-B</dc:creator>
      <dc:date>2014-10-29T09:47:56Z</dc:date>
    </item>
  </channel>
</rss>

