Skip to content

Commit cadc5bd

Browse files
tengfei-astfsstcheng
authored andcommitted
[qosorch]: Add cir and pir parameters for scheduler (sonic-net#991)
Signed-off-by: tengfei <[email protected]>
1 parent 6236b8f commit cadc5bd

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

orchagent/qosorch.cpp

+24
Original file line numberDiff line numberDiff line change
@@ -870,6 +870,30 @@ task_process_status QosOrch::handleSchedulerTable(Consumer& consumer)
870870
// TODO: The meaning is to be able to adjus priority of the given scheduler group.
871871
// However currently SAI model does not provide such ability.
872872
}
873+
else if (fvField(*i) == scheduler_min_bandwidth_rate_field_name)
874+
{
875+
attr.id = SAI_SCHEDULER_ATTR_MIN_BANDWIDTH_RATE;
876+
attr.value.u64 = (uint64_t)stoi(fvValue(*i));
877+
sai_attr_list.push_back(attr);
878+
}
879+
else if (fvField(*i) == scheduler_min_bandwidth_burst_rate_field_name)
880+
{
881+
attr.id = SAI_SCHEDULER_ATTR_MIN_BANDWIDTH_BURST_RATE;
882+
attr.value.u64 = (uint64_t)stoi(fvValue(*i));
883+
sai_attr_list.push_back(attr);
884+
}
885+
else if (fvField(*i) == scheduler_max_bandwidth_rate_field_name)
886+
{
887+
attr.id = SAI_SCHEDULER_ATTR_MAX_BANDWIDTH_RATE;
888+
attr.value.u64 = (uint64_t)stoi(fvValue(*i));
889+
sai_attr_list.push_back(attr);
890+
}
891+
else if (fvField(*i) == scheduler_max_bandwidth_burst_rate_field_name)
892+
{
893+
attr.id = SAI_SCHEDULER_ATTR_MAX_BANDWIDTH_BURST_RATE;
894+
attr.value.u64 = (uint64_t)stoi(fvValue(*i));
895+
sai_attr_list.push_back(attr);
896+
}
873897
else {
874898
SWSS_LOG_ERROR("Unknown field:%s", fvField(*i).c_str());
875899
return task_process_status::task_invalid_entry;

orchagent/qosorch.h

+5
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,11 @@ const string scheduler_algo_STRICT = "STRICT";
3636
const string scheduler_weight_field_name = "weight";
3737
const string scheduler_priority_field_name = "priority";
3838

39+
const string scheduler_min_bandwidth_rate_field_name = "cir";//Committed Information Rate
40+
const string scheduler_min_bandwidth_burst_rate_field_name = "cbs";//Committed Burst Size
41+
const string scheduler_max_bandwidth_rate_field_name = "pir";//Peak Information Rate
42+
const string scheduler_max_bandwidth_burst_rate_field_name = "pbs";//Peak Burst Size
43+
3944
const string ecn_field_name = "ecn";
4045
const string ecn_none = "ecn_none";
4146
const string ecn_red = "ecn_red";

0 commit comments

Comments
 (0)