Skip to content
This repository was archived by the owner on Nov 19, 2025. It is now read-only.

Commit ae08214

Browse files
committed
independent threshold count
1 parent 75a743f commit ae08214

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

net/mptcp/mptcp_ratio.c

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -607,10 +607,10 @@ static struct sk_buff *mptcp_ratio_next_segment(struct sock *meta_sk,
607607
}
608608
if (inet_sk(meta_sk)->inet_daddr)
609609
//printk("daddr: %pI4, num_samples: %u, ratio: %d, rate_ad: %u, rate_ac: %u, rate_total: %u, srtt_ad: %u, srtt_ac: %u, min_rtt_ad:%u, min_rtt_ac:%u, num_acks_ad: %u, num_acks_ac: %u, buffer_ad: %u, buffer_ac: %u\n", &inet_sk(meta_sk)->inet_daddr, meta_tp->delivered, meta_tp->num_segments_flow_one, tput[0], tput[1], meta_tp->rate_delivered, srtt[0], srtt[1], min_rtt[0], min_rtt[1], num_acks[0], num_acks[1],buffer_sub[0], buffer_sub[1]);
610-
printk("ratio: %d, rate_ad: %u, rate_ac: %u, srtt_ad: %u, srtt_ac: %u, num_acks_ad: %u, num_acks_ac: %u, buffer_ad: %u, buffer_ac: %u\n", meta_tp->num_segments_flow_one, tput[0], tput[1], srtt[0], srtt[1], num_acks[0], num_acks[1], buffer_sub[0], buffer_sub[1]);
610+
printk("ratio: %d, rate_ad: %u, rate_ac: %u, srtt_ad: %u, srtt_ac: %u, num_acks_ad: %u, num_acks_ac: %u\n", meta_tp->num_segments_flow_one, tput[0], tput[1], srtt[0], srtt[1], num_acks[0], num_acks[1]);
611611
else
612612
//printk("daddr NULL, num_samples: %u, ratio: %d, rate_ad: %u, rate_ac: %u, rate_total: %u, srtt_ad: %u, srtt_ac: %u, min_rtt_ad:%u, min_rtt_ac:%u, num_acks_ad: %u, num_acks_ac: %u, buffer_ad: %u, buffer_ac: %u\n", meta_tp->delivered, meta_tp->num_segments_flow_one, tput[0], tput[1], meta_tp->rate_delivered, srtt[0], srtt[1], min_rtt[0], min_rtt[1], num_acks[0], num_acks[1], buffer_sub[0], buffer_sub[1]);
613-
printk("ratio: %d, rate_ad: %u, rate_ac: %u, srtt_ad: %u, srtt_ac: %u, num_acks_ad: %u, num_acks_ac: %u, buffer_ad: %u, buffer_ac: %u\n", meta_tp->num_segments_flow_one, tput[0], tput[1], srtt[0], srtt[1], num_acks[0], num_acks[1], buffer_sub[0], buffer_sub[1]);
613+
printk("ratio: %d, rate_ad: %u, rate_ac: %u, srtt_ad: %u, srtt_ac: %u, num_acks_ad: %u, num_acks_ac: %u\n", meta_tp->num_segments_flow_one, tput[0], tput[1], srtt[0], srtt[1], num_acks[0], num_acks[1]);
614614

615615
//printk("rate_thresh_cnt: %d, buffer_thresh_cnt: %d, count_init: %u, last_rate: %u, last_trigger_tstamp: %u\n", threshold_cnt, buffer_threshold_cnt, count_set_init_rate, last_rate, last_trigger_tstamp);
616616
printk("rate_thresh_cnt: %d, buffer_thresh_cnt: %d\n", threshold_cnt, buffer_threshold_cnt);
@@ -680,10 +680,8 @@ static struct sk_buff *mptcp_ratio_next_segment(struct sock *meta_sk,
680680
buffer_diff = (int)buffer_total - (int)init_buffer_total;
681681

682682
if (abs(rate_diff) > trigger_threshold) {
683-
buffer_threshold_cnt = 0;
684683
threshold_cnt++;
685684
} else if (buffer_diff < meta_tp->buffer_trigger_threshold) {
686-
threshold_cnt = 0;
687685
buffer_threshold_cnt++;
688686
} else {
689687
buffer_threshold_cnt = 0;
@@ -696,7 +694,7 @@ static struct sk_buff *mptcp_ratio_next_segment(struct sock *meta_sk,
696694
goto search_start;
697695
}
698696

699-
if (buffer_threshold_cnt == 5 || threshold_cnt == 3) {
697+
if (buffer_threshold_cnt == 5 || threshold_cnt == 5) {
700698
mptcp_for_each_sub(mpcb, mptcp) {
701699
struct sock *sk_it = mptcp_to_sock(mptcp);
702700
if (tcp_in_slow_start(tcp_sk(sk_it))) {
@@ -716,7 +714,7 @@ static struct sk_buff *mptcp_ratio_next_segment(struct sock *meta_sk,
716714
{
717715
printk("DECREASED SEND QUEUE\n");
718716
}
719-
else if(threshold_cnt==3)
717+
else if(threshold_cnt==5)
720718
{
721719
printk("DECREASED THROUGHPUT\n");
722720
}
@@ -730,8 +728,8 @@ static struct sk_buff *mptcp_ratio_next_segment(struct sock *meta_sk,
730728
threshold_cnt = 0;
731729
buffer_threshold_cnt = 0;
732730

733-
/*Double sampling interval*/
734-
meta_tp->ratio_rate_sample = meta_tp->ratio_rate_sample*2;
731+
/*Multiply sampling interval*/
732+
meta_tp->ratio_rate_sample = meta_tp->ratio_rate_sample*4;
735733
last_trigger_tstamp = jiffies;
736734

737735
if (meta_tp->num_segments_flow_one < (100 - abs(meta_tp->ratio_search_step))) {

0 commit comments

Comments
 (0)