私はOpenNetMonのアイデアに基づいてレイテンシーモニタリングシステムを実行しようとしています。私がしたいのは、パケットをスイッチに注入して、このノードがパケットを別のスイッチに転送し、これをコントローラに返送することです。最後に、コントローラはレイテンシを測定します。PacketOutを作成して送信するには?
この種類のプローブパケットを区別して測定するために、私はIPv4パケットからDSCPフィールドを変更します。
OpendaylightコントローラがPacketInを受信すると、これがコピーされますが、DSCPフィールドが変更され、次にcopied_packet/probe_packetがデータプレーンに送信されます。
私はPacketChainからRawPacket、EthernetPacket、IPv4Packetを抽出することができます。
RawPacket rawPacket = null;
EthernetPacket ethernetPacket = null;
Ipv4Packet ipv4Packet = null;
for (PacketChain packetChain : packetReceived.getPacketChain()) {
if (packetChain.getPacket() instanceof RawPacket) {
rawPacket = (RawPacket) packetChain.getPacket();
} else if (packetChain.getPacket() instanceof EthernetPacket) {
ethernetPacket = (EthernetPacket) packetChain.getPacket();
} else if (packetChain.getPacket() instanceof Ipv4Packet) {
ipv4Packet = (Ipv4Packet) packetChain.getPacket();
}
}
は、どのように私はこれらのパケットを送信することができますか?