Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Internal QOS on the local and remote computer

6 views
Skip to first unread message

Gert Leunen

unread,
Jan 6, 2010, 7:26:54 AM1/6/10
to
When I apply QOS on a socket through GQOS, TC or Qwave does windows
internally prioritize the packets send over those sockets (when sending and
receiving network packets) ? Or is the sole purpose of QOS (except for the
shaping of traffic) to apply the right headers so other network elements can
prioritize packets.


Jialiang Ge [MSFT]

unread,
Jan 7, 2010, 5:11:46 AM1/7/10
to
Hello

In QoS, you can specify the application's requirement for network service
quality. For example, the guaranteed service promises to carry a certain
traffic volume with a quantifiable bounded latency. The controlled load
service agrees to carry a certain traffic volume to a service level that
approximates what could be achieved when the network is lightly loaded. The
qualitative service indicates that the application requires better than
BESTEFFORT transmission, but cannot quantify its transmission requirements.

Applications that use the SERVICETYPE_QUALITATIVE service type should
supply an application ID policy element. The application ID policy element
enables policy servers on the network to identify the application and
assign an appropriate QOS to the application request by returning a DCLASS
object.

You can find more readings about this in the article Winsock 2: QoS API
Fine-Tunes Networked App Throughput and Reliability
http://msdn.microsoft.com/en-us/magazine/cc301862.aspx.

Regards,
Jialiang Ge
Microsoft Online Community Support

=================================================
Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
msd...@microsoft.com.

This posting is provided "AS IS" with no warranties, and confers no rights.
=================================================

Jialiang Ge [MSFT]

unread,
Jan 7, 2010, 5:15:18 AM1/7/10
to
Hello

I quote a few more information from the article
http://msdn.microsoft.com/en-us/magazine/cc301862.aspx for you:

GQoS allows a Winsock app to inform the network of its traffic
requirements. How those requirements are met depends on policies
established by network administrators. This means entitled users or apps
can receive preferential treatment for their net traffic.

Gert Leunen

unread,
Jan 7, 2010, 7:31:04 AM1/7/10
to
My application consists of different custom protocols with different
priority needs. When these protocols simultaneously execute an asynchronous
send operation on sockets with QOS set on them I need the associated network
packets to be prioritized by the kernel component responsible for handling
the sending of packets. Meaning that :
1) On the send side : packets send with a higher DSCP value are put on the
wire before packets with a lower value.
2) On the receiver side : packets with a higher DSCP value are delivered to
the responsible application sockets before those with a lower DSCP value.

So, a policy at the user or application level is not sufficient. Since the
protocols belong to the same application run by the same user.

Kind regards,
Mario

""Jialiang Ge [MSFT]"" <jia...@online.microsoft.com> wrote in message
news:ieT9aJ4j...@TK2MSFTNGHUB02.phx.gbl...

Jialiang Ge [MSFT]

unread,
Jan 13, 2010, 6:02:36 AM1/13/10
to
Hello

I'm still performing researches on this question. I will update you as soon
as I have any findings.

Jialiang Ge [MSFT]

unread,
Jan 13, 2010, 11:21:51 PM1/13/10
to
Hello

After perforing more researches, I got these information:

Windows will internally prioritize packets by their service type value iff
the number of packets pended to the NIC is >= the value of
MaxOutstandingSends
(http://technet.microsoft.com/en-us/library/cc758267(WS.10).aspx). The
default value of MaxOutstandingSends is 65536 so you will very rarely see
this in effect. Priority queues are emptied in a deficit round robin
fashion.

Gert Leunen

unread,
Jan 15, 2010, 4:17:02 AM1/15/10
to
Thanks again for the research! But one more question though. Is there
another way to internally prioritize my packets. For example by setting
different latency values in the QOS structure?

kind regards,
Mario

PS: I did implement an application level packet prioritizer for my
application, but this can never be made as efficient as a kernel
implementation.

""Jialiang Ge [MSFT]"" <jia...@online.microsoft.com> wrote in message

news:xh2BdENl...@TK2MSFTNGHUB02.phx.gbl...

Jialiang Ge [MSFT]

unread,
Jan 19, 2010, 9:53:09 PM1/19/10
to

Hello Mario

After perforing many researches, I do not find another way to internally
prioritize my packets. Could limiting bandwidth help in this case?

0 new messages