Interactive QoS with `scp'

Mario Gartner mario.gartner at hotmail.com
Wed Jan 29 22:24:33 WST 2014


Hi Matt!

>> # scp --> Still uses IPTOS_LOWDELAY! i.e. NOT OK(?)
>> scp /tmp/file.dat 14.64.1.4:/tmp/
>> tos 0x10
>
> That's strange. scp should just be calling "dbclient localhost scp 
-t destination" - the same as the "date" case. Could you run
>
> strace -f -F -e process scp /tmp/file.dat 14.64.1.4:/tmp/
>
> and check what it's doing?
>

Excellent hint, thanks!
I had changed the PATH, but scp executed the old dropbear's dbclient via a hardcoded path:
./options.h:279:#define _PATH_SSH_PROGRAM "/usr/bin/dbclient"

I didn't expect this and I'm sorry for my complain, I should have looked closer.

So now I can confirm that when really using dropbear version 2013.62, scp uses TOS 0x8.


>> One more thing:
>> Using TOS is actually obsoleted. 
"Modern" implementations should use the DS Field and DSCP classes as 
described in RFC2474/RFC3260.
>> But as long as interactive 
and non-interactive connections can be identified and separated in the 
network, I'm fine with that...
>
> Yeah, I couldn't see any benefit though. It's just an extra
> configuration option with no sensible default value? (Assume
> rfc2597 is the most relevant one).

Right, RFC2597 describes the AF class PHBs used in the DSCP of the DS field which is transported in the old IPv4's TOS header field.
Way too much RFCs imho for a thing that should be that simple...
As said, I'm fine as long as you can tell interactive and no-interactive apart. What I now can.


Mario


----------------------------------------
> Date: Wed, 29 Jan 2014 21:32:38 +0800
> From: matt at ucc.asn.au
>
> Hi,
>
>> # ssh with command (implies no-pty) --> uses IPTOS_THROUGHPUT == OK!
>> ssh 14.64.1.4 "date"
>> tos 0x8
>>
>> # scp --> Still uses IPTOS_LOWDELAY! i.e. NOT OK(?)
>> scp /tmp/file.dat 14.64.1.4:/tmp/
>> tos 0x10
>
> That's strange. scp should just be calling "dbclient localhost scp -t destination" - the same as the "date" case. Could you run
>
> strace -f -F -e process scp /tmp/file.dat 14.64.1.4:/tmp/
>
> and check what it's doing?
>
>> [The TOS of the initial packets during connection establishment was 0 and then changed to the mentioned values, which is OK and expected]
>
> Yep, that's intentional to avoid initial roundtrip latency.
>
>> One more thing:
>> Using TOS is actually obsoleted. "Modern" implementations should use the DS Field and DSCP classes as described in RFC2474/RFC3260.
>> But as long as interactive and non-interactive connections can be identified and separated in the network, I'm fine with that...
>
> Yeah, I couldn't see any benefit though. It's just an extra
> configuration option with no sensible default value? (Assume
> rfc2597 is the most relevant one).
>
> Cheers,
> Matt
> 		 	   		  


More information about the Dropbear mailing list