This commit consists of some miscellaneous small changes and some
exception tracking to help packet-out debugging in the adapter.
Change-Id: I1d6b50f60c800768acb5a132c1d630416ac9811f
diff --git a/python/adapters/ponsim_olt/ponsim_olt.py b/python/adapters/ponsim_olt/ponsim_olt.py
index e3157e7..06c1235 100644
--- a/python/adapters/ponsim_olt/ponsim_olt.py
+++ b/python/adapters/ponsim_olt/ponsim_olt.py
@@ -340,7 +340,7 @@
port=LogicalPort(
ofp_port=ofp_port(
hw_addr=mac_str_to_tuple(
- '00:00:00:00:00:%02x' % port_no),
+ 'AA:BB:CC:DD:EE:%02x' % port_no),
config=0,
state=OFPPS_LIVE,
curr=cap,
@@ -491,24 +491,28 @@
def packet_out(self, egress_port, msg):
self.log.info('sending-packet-out', egress_port=egress_port,
msg=hexify(msg))
- pkt = Ether(msg)
- out_pkt = pkt
- if egress_port != self.nni_port.port_no:
- # don't do the vlan manipulation for the NNI port, vlans are already correct
- out_pkt = (
- Ether(src=pkt.src, dst=pkt.dst) /
- Dot1Q(vlan=egress_port, type=pkt.type) /
- pkt.payload
- )
+ try:
+ pkt = Ether(msg)
+ out_pkt = pkt
+ if egress_port != self.nni_port.port_no:
+ # don't do the vlan manipulation for the NNI port, vlans are already correct
+ out_pkt = (
+ Ether(src=pkt.src, dst=pkt.dst) /
+ Dot1Q(vlan=egress_port, type=pkt.type) /
+ pkt.payload
+ )
- # TODO need better way of mapping logical ports to PON ports
- out_port = self.nni_port.port_no if egress_port == self.nni_port.port_no else 1
+ # TODO need better way of mapping logical ports to PON ports
+ out_port = self.nni_port.port_no if egress_port == self.nni_port.port_no else 1
- # send over grpc stream
- stub = ponsim_pb2.PonSimStub(self.channel)
- frame = PonSimFrame(id=self.device_id, payload=str(out_pkt),
- out_port=out_port)
- stub.SendFrame(frame)
+ # send over grpc stream
+ stub = ponsim_pb2.PonSimStub(self.channel)
+ frame = PonSimFrame(id=self.device_id, payload=str(out_pkt),
+ out_port=out_port)
+ stub.SendFrame(frame)
+ except Exception as e:
+ self.log.exception("error-processing-packet-out", e=e)
+
@inlineCallbacks
def reboot(self):