p4lang / pna

Portable NIC Architecture
Apache License 2.0
55 stars 21 forks source link

Flex routing #100

Closed mariobaldi closed 1 year ago

mariobaldi commented 1 year ago

Introduction of more flexible routing out of the packet processing block.

onf-cla-manager[bot] commented 1 year ago

Hi @mariobaldi, this is the ONF bot 🤖 I'm glad you want to contribute to our projects! However, before accepting your contribution, we need to ask you to sign a Contributor License Agreement (CLA). You can do it online, it will take only a few minutes:

✒️ 👉 https://cla.opennetworking.org

After signing, make sure to add your Github user ID mariobaldi to the agreement.

For more information or help:" https://wiki.opennetworking.org/x/BgCUI

thomascalvert-xlnx commented 1 year ago

I'm having trouble reviewing this PR as it seems to duplicate the changes in your previous one -- they are both based on main. Should we rebase this one on top of #99 ?

thomascalvert-xlnx commented 1 year ago

Should this PR also include changes to the pna.p4 file to reflect the new routing possibilities? The text does not seem to explain how the routing is practically effected, i.e. what code does a programmer need to write in MainControl to send a packet to the host/network?

I am thinking that at least the following structures might need some changes: PNA_Direction_t, PNA_PacketPath_t, and some of the metadata structures (c.f. comments for PortId_t in pna_main_parser_input_metadata_t).

mariobaldi commented 1 year ago

I am sorry for the confusion. I was undecided as to what was the best way to keep the PR separate from each other so that we could approve or reject different aspects independently. With the goal of making them independent, I based them all on main.


Mario

From: Thomas Calvert @.> Sent: Monday, December 12, 2022 12:34 PM To: p4lang/pna @.> Cc: Mario Baldi @.>; Mention @.> Subject: Re: [p4lang/pna] Flex routing (PR #100)

I'm having trouble reviewing this PR as it seems to duplicate the changes in your previous one -- they are both based on main. Should we rebase this one on top of #99 https://github.com/p4lang/pna/pull/99 ?

— Reply to this email directly, view it on GitHub https://github.com/p4lang/pna/pull/100#issuecomment-1346322731 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AICNJE5CAS2U3DV7255SGJTWM4ET7ANCNFSM6AAAAAAS24JOB4 . You are receiving this because you were mentioned.Message ID: @.***>

mariobaldi commented 1 year ago

I kept the text at the same high level it was before (basically saying that the program determines where a packet goes next by setting a piece of metadata or calling an extern function/method.

However, I agree that it would be better to be more specific (and introduce corresponding changes in pna.p4).


Mario

From: Thomas Calvert @.> Sent: Monday, December 12, 2022 12:59 PM To: p4lang/pna @.> Cc: Mario Baldi @.>; Mention @.> Subject: Re: [p4lang/pna] Flex routing (PR #100)

Should this PR also include changes to the pna.p4 file to reflect the new routing possibilities? The text does not seem to explain how the routing is practically effected, i.e. what code does a programmer need to write in MainControl to send a packet to the host/network?

I am thinking that at least the following structures might need some changes: PNA_Direction_t, PNA_PacketPath_t, and some of the metadata structures (c.f. comments for PortId_t in pna_main_parser_input_metadata_t).

— Reply to this email directly, view it on GitHub https://github.com/p4lang/pna/pull/100#issuecomment-1346348497 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AICNJE6DCH2YBNQV2SCHZBTWM4HRDANCNFSM6AAAAAAS24JOB4 . You are receiving this because you were mentioned.Message ID: @.***>

loalan commented 1 year ago

LGTM 👍