QoS marking for Openssh (review wanted)
Philip Prindeville
philipp_subx at redfish-solutions.com
Thu Feb 10 10:06:02 EST 2011
Well, it looks like my fix for QoS got badly mangled... which is what happens when it sits on the shelf for 10 months I suppose, so no surprise there.
Looking at:
$ cvs diff -u -r1.162 -r1.163 defines.h
Index: defines.h
===================================================================
RCS file: /cvs/openssh/defines.h,v
retrieving revision 1.162
retrieving revision 1.163
diff -u -r1.162 -r1.163
--- defines.h 25 Oct 2010 05:54:28 -0000 1.162
+++ defines.h 23 Nov 2010 23:50:05 -0000 1.163
@@ -25,7 +25,7 @@
#ifndef _DEFINES_H
#define _DEFINES_H
-/* $Id: defines.h,v 1.162 2010/10/25 05:54:28 dtucker Exp $ */
+/* $Id: defines.h,v 1.163 2010/11/23 23:50:05 djm Exp $ */
/* Constants */
@@ -42,6 +42,9 @@
# define SHUT_RDWR SHUT_RDWR
#endif
+/*
+ * Definitions for IP type of service (ip_tos)
+ */
#ifndef IPTOS_LOWDELAY
# define IPTOS_LOWDELAY 0x10
# define IPTOS_THROUGHPUT 0x08
@@ -49,6 +52,40 @@
# define IPTOS_LOWCOST 0x02
# define IPTOS_MINCOST IPTOS_LOWCOST
#endif /* IPTOS_LOWDELAY */
+
+/*
+ * Definitions for DiffServ Codepoints as per RFC2474
+ */
+#include<netinet/in_systm.h>
+#include<netinet/ip.h>
+#ifndef IPTOS_DSCP_AF11
+# define IPTOS_DSCP_AF11 0x28
+# define IPTOS_DSCP_AF12 0x30
+# define IPTOS_DSCP_AF13 0x38
+# define IPTOS_DSCP_AF21 0x48
+# define IPTOS_DSCP_AF22 0x50
+# define IPTOS_DSCP_AF23 0x58
+# define IPTOS_DSCP_AF31 0x68
+# define IPTOS_DSCP_AF32 0x70
+# define IPTOS_DSCP_AF33 0x78
+# define IPTOS_DSCP_AF41 0x88
+# define IPTOS_DSCP_AF42 0x90
+# define IPTOS_DSCP_AF43 0x98
+# define IPTOS_DSCP_EF 0xb8
+#endif /* IPTOS_DSCP_AF11 */
+#ifndef IPTOS_DSCP_CS0
+# define IPTOS_DSCP_CS0 0x00
+# define IPTOS_DSCP_CS1 0x20
+# define IPTOS_DSCP_CS2 0x40
+# define IPTOS_DSCP_CS3 0x60
+# define IPTOS_DSCP_CS4 0x80
+# define IPTOS_DSCP_CS5 0xa0
+# define IPTOS_DSCP_CS6 0xc0
+# define IPTOS_DSCP_CS7 0xe0
+#endif /* IPTOS_DSCP_CS0 */
+#ifndef IPTOS_DSCP_EF
+# define IPTOS_DSCP_EF 0xb8
+#endif /* IPTOS_DSCP_EF */
#ifndef MAXPATHLEN
# ifdef PATH_MAX
This is very different from the defines of IPTOS_CLASS_CS0 ... IPTOS_CLASS_CS7 which I had in my patch, and which I identified with the comment:
/*
* Temporarily needed file until glibc 2.12 becomes ubiquitous.
*/
So the provenance of the names would be clear, and exactly what we were trying to match against.
Note also that the Class-Selectors predated the definition of Differentiated Services Code Points by several years, hence the different naming.
I'll file a couple of bugs to fix this and another issue.
Not sure if it's worth attaching a patch if it's going to end up being ignored and eventually replaced with some that introduced what can only euphemistically be called "divergence".
-Philip
On 5/26/10 2:08 PM, Philip A. Prindeville wrote:
> Still being patient... do we have an estimate on when you might get to it?
>
> Thanks.
>
>
> On 04/29/2010 08:03 PM, Damien Miller wrote:
>> we'll get to it - please be patient.
>>
>> On Thu, 29 Apr 2010, Philip Prindeville wrote:
>>
>>> On 3/24/10 12:45 PM, Philip A. Prindeville wrote:
>>>> Anyone want to code review:
>>>>
>>>> https://bugzilla.mindrot.org/show_bug.cgi?id=1733
>>>>
>>>> There's a patch attached. We're currently using it on astlinux.
>>>>
>>>> Thanks.
>>>>
>>> Still looking to get a code-review and approval.
>>>
>>> Thanks.
>
More information about the openssh-unix-dev
mailing list