Comments (11)
hmm...i think the different personas who would be interested in testing multicast are
- Driver developers of switching ASICs - so think say an asic driver developer who has to develop against l2 and l3 mcast in SAI (and they probably don't test it in a nos context), so they will use ASIC SDK to configure the packet replication into the ASIC without any higher layer control protocols, and just want to positive/negative test around packet replication they configured.
- NOS developers who does control plane protocols, whatever that may be that we don't support yet, and those control protocols will then interact with the ASIC drivers to program the needed l2/l3 replications into the ASIC
- Users of NOS who wants to deploy anything multicast
It seems a single flow is more natural to describe this replication (in this case is what MulticastPortTxRx could fill the need)
BTW, the above does not mean that these use cases are pressing, i skim through just the file structures for SAI tests, it didn't look like they had tests specifically covering l2/l3 mcast/replication.
As for ashutosh's comment about rx_port_name being optional, I think independent of unicast/multicast, there is always the case of people just want to do Tx and no Rx, and I think we should be open to the possibility that people may want to simply do Rx without Tx also (this is a "measure" first type of scenario that we don't typically consider). And these are the flexibility that PTF/scappy/ixexplorer brings.
from models.
The tx_rx is a choice - right now it supports PortTxRx, DeviceTxRx - the design is meant to be extensible and should support a MulticastPortTxRx for that and have specific documentation in that object as opposed to the PortTxRx
from models.
I agree. I will change the rx_port_names to single rx_port_name.
from models.
Think about multicast? Do we want to model a single flow that will get replicated to two different rx ports as two separate flows?
from models.
Just reopening it for now to make sure we all consider mcast?
from models.
Sounds reasonable.
from models.
@ashutshkumr @ankur-sheth any comments on the way to handle multicast? if you guys also think it is reasonable, we can close this.
from models.
I'm not sure that we want a separate MulticastPortTxRx. That said, multicast doesn't seem like a common use-case. Can you give me an example of a use-case where we are sending/receiving multicast traffic? IGMP?
from models.
Do we need to multicast against:
- Test ports (traffic engine interface) ?
- Interfaces belonging to SUT ?
- Emulated interfaces ?
I'm asking this because we'll need multiple rx port names only for (1.) and the concern is how are we (or who is) going to assign multicast group to each test interface (or if it is even feasible).
Hence, at this point, I do not have enough information to comment on whether we need MulticastPortTxRx.
For (2.), just embedding desired multicast addr in frame should be fine. Interestingly, this also tells us that there are scenarios when we might want rx_port_name
to be optional.
(3.) should be taken care of by DeviceTxRx.
from models.
I went thru this thread again. I'm ok to add MulticastPortTxRx if and when required. For now, we are ok to support only one Rx port/device for each flow. We can close it as earlier and open a new issue when we need to support multicast.
@ajbalogh @ashutshkumr @winstonliu1111 sound ok to you?
from models.
sounds good to shelve it, we've got a number of ideas in the discussions if/when this ever comes up again.
from models.
Related Issues (20)
- ATE Feature: MacSec support for ethernet interfaces
- ATE Feature: Autoconfiguration for IPv6 interfaces
- ATE Feature: Set Router Capability ID for IS-IS routers
- ATE Feature: IS-IS Segment Routing
- ATE Feature: IS-IS Simulated Node Topology
- ATE Feature: DHCP client/server protocols
- ATE Feature: Support More BGP Route Attributes HOT 1
- ATE Feature: BGP Route Import
- ATE Feature: Support more protocol control packet headers
- Refactor Control API
- Document the intended sequence of API calls for common scenarios
- Duration & Burst parameters need to be int64
- Addition of proper description to bgp extended community and addition of isis names in tx names of transmitting emulated devices HOT 1
- Allow otg BGP implementation to report FSM states. HOT 1
- Auto insertion of RSVP ERO based on learned TE topology through IGP HOT 1
- BGP Notifications sending from otg tools HOT 1
- Some API descriptions need to document the cause of warnings as part of response
- Remove under_review warnings from stdout when otg test runs for objects for which review has already completed HOT 1
- BGP Graceful Restart capabilities HOT 5
- Metrics response disaggregation based on Rx ports
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from models.