On 04/03/2015 07:53 PM, Bala Manoharan wrote:
On 3 April 2015 at 22:00, Taras Kondratiuk <[email protected]> wrote:
On 03/30/2015 03:34 PM, Zhujianhua wrote:

@ Jerin Jacob:
What will happen if odp_cos_set_pool(odp_cos_t cos_id, odp_buffer_pool_t
pool_id) was called twice?
Will the new pool_id replace the old one or the CoS have two pools?

@Taras:
Assume: set several pools per pktio interface.
What will happen if two data plane applications share one physical
Ethernet port to receive packets?
Since the pool is per pktio interface, will these two applications share
the same buffer pool?
If there is memory leak in one application, the other application will be
disturbed.
Correct me if my understanding were wrong.


That's a nice question. I'm afraid this use-case was not considered before.
Do you want to split traffic between two applications via classifier?


Maybe to let each CoS have more than one pool and limit the max number of
Pool to for example 4 (Let the application designer decide how many pools
are needed for each CoS) could be one option.

Hi,

If we are attaching multiple pools per CoS what will be the
distribution algorithm for packets to each of the associated pools?
will it be a simple round-robin in that case wouldn't it be better to
attach a single pool of bigger size to the specific CoS?

Packets will be distributed deterministically according to size.

In fact distributing packets to different pools by their sizes is
orthogonal to the rest of classification which is done by analyzing
packet (header) content. IMO it was a mistake to combine them. They
normally have different purposes. Classification by size is used to get
efficient memory usage and decrease packet segmentation. While content
classification is used to separate different 'types' of traffic.

In KS2 platform these are two separate steps:
1. Packet is classified by a header content and directed to a Flow
   (ODP CoS analog).
2. Flow has a destination queue and up to 4 pools assigned. Exact pool
   is chosen based on a packet size.

Actually, the initial use-case in this thread clearly demonstrates
orthogonality of packet content and size classification: number of CoS'es explodes as <content_classes>*<size_classes>.
_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to