svn commit: r277079 - in projects/ifnet: share/man/man4 sys/netinet
Gleb Smirnoff
glebius at FreeBSD.org
Mon Jan 12 18:14:24 UTC 2015
Author: glebius
Date: Mon Jan 12 18:14:22 2015
New Revision: 277079
URL: https://svnweb.freebsd.org/changeset/base/277079
Log:
Merge head.
Modified:
projects/ifnet/share/man/man4/cc_dctcp.4
projects/ifnet/sys/netinet/sctp_output.c
Directory Properties:
projects/ifnet/ (props changed)
projects/ifnet/share/ (props changed)
projects/ifnet/share/man/man4/ (props changed)
projects/ifnet/sys/ (props changed)
Modified: projects/ifnet/share/man/man4/cc_dctcp.4
==============================================================================
--- projects/ifnet/share/man/man4/cc_dctcp.4 Mon Jan 12 18:13:38 2015 (r277078)
+++ projects/ifnet/share/man/man4/cc_dctcp.4 Mon Jan 12 18:14:22 2015 (r277079)
@@ -40,18 +40,23 @@ throughput and minimise latency in data
proportion of Explicit Congestion Notification (ECN) marks received from capable
hardware as a congestion signal.
.Pp
-DCTCP uses fraction of ECN marked packets to update congestion window. The
-window reduction ratio is always <= 1/2. Only when all of the packets are
+DCTCP uses fraction of ECN marked packets to update congestion window.
+The window reduction ratio is always <= 1/2.
+Only when all of the packets are
marked, congestion window is halved.
.Pp
In order to keep the accuracy of the ECN marked fraction, a DCTCP receiver
mirrors back incoming (or missing) CE marks by setting (or clearing) ECE marks.
This feedback methodology is also adopted when the receiver uses delayed ACK.
.Pp
-FreeBSD DCTCP implementation includes two minor modifications for the one-sided
-deployment. Considering the situation that DCTCP is used as sender and classic
+The
+.Fx
+DCTCP implementation includes two minor modifications for the one-sided
+deployment.
+Considering the situation that DCTCP is used as sender and classic
ECN is used as receiver, DCTCP sets the CWR flag as the reaction to the ECE
-flag. In addition, when classic ECN is used as sender and DCTCP is used as
+flag.
+In addition, when classic ECN is used as sender and DCTCP is used as
receiver, DCTCP avoids to mirror back ACKs only when the CWR flag is
set in the incoming packet.
.Pp
@@ -75,6 +80,7 @@ Default is 16.
.It Va slowstart
A trigger to halve congestion window after slow start.
Default does nothing to halve window.
+.El
.Sh SEE ALSO
.Xr cc_chd 4 ,
.Xr cc_cubic 4 ,
@@ -120,8 +126,8 @@ University, Japan.
The
.Nm
congestion control module and this manual page were written by
-.An Midori Kato katoon at sfc.wide.ad.jp
+.An Midori Kato Mt katoon at sfc.wide.ad.jp
and
-.An Lars Eggert lars at netapp.com
+.An Lars Eggert Mt lars at netapp.com
with help and modifications from
-.An Hiren Panchasara hiren at FreeBSD.org
+.An Hiren Panchasara Mt hiren at FreeBSD.org
Modified: projects/ifnet/sys/netinet/sctp_output.c
==============================================================================
--- projects/ifnet/sys/netinet/sctp_output.c Mon Jan 12 18:13:38 2015 (r277078)
+++ projects/ifnet/sys/netinet/sctp_output.c Mon Jan 12 18:14:22 2015 (r277079)
@@ -7958,22 +7958,6 @@ again_one_more_time:
} else {
skip_data_for_this_net = 0;
}
- if ((net->ro.ro_rt) && (net->ro.ro_rt->rt_ifp)) {
- /*
- * if we have a route and an ifp check to see if we
- * have room to send to this guy
- */
- struct ifnet *ifp;
-
- ifp = net->ro.ro_rt->rt_ifp;
- if ((ifp->if_snd.ifq_len + 2) >= ifp->if_snd.ifq_maxlen) {
- SCTP_STAT_INCR(sctps_ifnomemqueued);
- if (SCTP_BASE_SYSCTL(sctp_logging_level) & SCTP_LOG_MAXBURST_ENABLE) {
- sctp_log_maxburst(stcb, net, ifp->if_snd.ifq_len, ifp->if_snd.ifq_maxlen, SCTP_MAX_IFP_APPLIED);
- }
- continue;
- }
- }
switch (((struct sockaddr *)&net->ro._l_addr)->sa_family) {
#ifdef INET
case AF_INET:
More information about the svn-src-projects
mailing list