DPDK usage discussions
 help / color / mirror / Atom feed
From: longtb5@viettel.com.vn
To: users@dpdk.org
Subject: Re: [dpdk-users] IP Pipeline QoS
Date: Sat, 23 Sep 2017 16:29:26 +0700 (ICT)	[thread overview]
Message-ID: <1937346087.17522496.1506158965757.JavaMail.zimbra@viettel.com.vn> (raw)
In-Reply-To: <754042755.17160061.1506153610491.JavaMail.zimbra@viettel.com.vn>

Please disregard question 1 and 2. I understand now.

----- Original Message -----
From: longtb5@viettel.com.vn
To: users@dpdk.org
Cc: "cristian dumitrescu" <cristian.dumitrescu@intel.com>
Sent: Saturday, September 23, 2017 3:00:10 PM
Subject: IP Pipeline QoS


Hi, 
I am trying to build a QoS/Traffic management application using packet framework. The initial goal is to be able to  configure traffic flow for upto 1000 users, *individually*, through the front end cmdline. 
Atm I'm looking at ip_pipeline's edge_router_downstream sample and the qos_sched app for starting point. I have a few questions:

1. The traffic management pipeline in edge_router_downstream.cfg is configured as followed: 

[PIPELINE2] 
type = PASS-THROUGH 
pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 TM0 TM1 TM2 TM3 
pktq_out = TM0 TM1 TM2 TM3 SWQ4 SWQ5 SWQ6 SWQ7 

I'm not exactly sure how this works. My thinking is that since this is a passthru table with no action, the output of SWQ0 gets connected 
to the input of TM0 and the output of TM0 gets connected to input of SWQ4, effectively route SWQ0 to SWQ4 through TM0. Is that correct? 

2. If that's the case, why don't we do it this way: 

[PIPELINE1] 
type = ROUTING 
pktq_in = RXQ0.0 RXQ1.0 RXQ2.0 RXQ3.0 
pktq_out = TM0 TM1 TM2 TM3 SINK0 

[PIPELINE2] 
type = PASS-THROUGH 
pktq_in = TM0 TM1 TM2 TM3 
pktq_out = TM0 TM1 TM2 TM3 

[PIPELINE3] 
type = PASS-THROUGH 
pktq_in = TM0 TM1 TM2 TM3 
pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 

In other words, why do we need SWQs in this case? (and in general what is the typical use of SWQs?)

3. I understand the fast/slow table copy mechanism for querying/updating _tables_ through the front end. How should I go about querying/updating 
pipe profile, which are parts of TM _ports_ if I'm not mistaken. For example, to get/set the rate of tc 0 of pipe profile 0. 
Put it another way, how can I configure tm_profile.cfg interactively through the CLI? 
Is it even possible to configure TMs on-the-fly like that? 

Thanks, 
BL 

  reply	other threads:[~2017-09-23  9:29 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <950115745.16976369.1506151137515.JavaMail.zimbra@viettel.com.vn>
2017-09-23  8:00 ` longtb5
2017-09-23  9:29   ` longtb5 [this message]
2017-09-29 17:30   ` Dumitrescu, Cristian
2017-10-02  5:29     ` longtb5
     [not found] <1550329615.1084836.1506792836645.ref@mail.yahoo.com>
2017-09-30 17:33 ` Manoj Mallawaarachchi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1937346087.17522496.1506158965757.JavaMail.zimbra@viettel.com.vn \
    --to=longtb5@viettel.com.vn \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).