Example #1
0
    def add_qos(
        self,
        _,
        qos_info: QosInfo,
        cleanup_rule,
        parent=None,
        skip_filter=False,
    ) -> int:
        if self._qos_impl_broken:
            raise RuntimeError(BROKEN_KERN_ERROR_MSG)

        if parent:
            # TODO add ovs meter logic to handle APN AMBR
            pass

        meter_id = self._id_manager.allocate_idx()
        rate_in_kbps = int(qos_info.mbr / 1000)
        MeterClass.add_meter(
            self._datapath,
            meter_id,
            rate=rate_in_kbps,
            burst_size=0,
        )
        LOG.debug("Adding meter_id %d", meter_id)
        return meter_id
Example #2
0
    def add_qos(self, _, qos_info: QosInfo) -> int:
        if self._qos_impl_broken:
            raise RuntimeError(BROKEN_KERN_ERROR_MSG)

        meter_id = self._id_manager.allocate_idx()
        rate_in_kbps = int(qos_info.mbr / 1000)
        MeterClass.add_meter(self._datapath, meter_id, rate=rate_in_kbps,
                             burst_size=0)
        LOG.debug("Adding meter_id %d", meter_id)
        return meter_id