> -----Original Message-----
> From: Anoob Joseph [mailto:[email protected]]
> Sent: Monday, January 29, 2018 8:04 AM
> To: Akhil Goyal <[email protected]>; Nicolau, Radu
> <[email protected]>
> Cc: [email protected]; Doherty, Declan
> <[email protected]>; Gonzalez Monroy, Sergio
> <[email protected]>; Jerin Jacob
> <[email protected]>; Narayana Prasad
> <[email protected]>; Nelio Laranjeiro
> <[email protected]>; [email protected]
> Subject: Re: [RFC 0/3] set protocol specific metadata using set_pkt_metadata
> API
> 
> Hi Akhil, Radu,
> 
> 
> On 01/29/2018 01:02 PM, Akhil Goyal wrote:
> > On 1/26/2018 8:38 PM, Nicolau, Radu wrote:
> >>
> >>
> >>> -----Original Message-----
> >>> From: Anoob Joseph [mailto:[email protected]]
> >>> Sent: Friday, January 26, 2018 2:38 PM
> >>> To: Nicolau, Radu <[email protected]>; Akhil Goyal
> >>> <[email protected]>
> >>> Cc: [email protected]; Doherty, Declan
> >>> <[email protected]>; Gonzalez Monroy, Sergio
> >>> <[email protected]>; Jerin Jacob
> >>> <[email protected]>; Narayana Prasad
> >>> <[email protected]>; Nelio Laranjeiro
> >>> <[email protected]>; [email protected]
> >>> Subject: Re: [RFC 0/3] set protocol specific metadata using
> >>> set_pkt_metadata API
> >>>
> >>> Hi Radu,
> >>>
> >>> On 01/26/2018 04:52 PM, Nicolau, Radu wrote:
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: Anoob Joseph [mailto:[email protected]]
> >>>>> Sent: Thursday, January 25, 2018 5:13 PM
> >>>>> To: Akhil Goyal <[email protected]>; Nicolau, Radu
> >>>>> <[email protected]>
> >>>>> Cc: Doherty, Declan <[email protected]>; Gonzalez Monroy,
> >>>>> Sergio <[email protected]>;
> >>>>> [email protected]; Jerin Jacob
> >>>>> <[email protected]>; Narayana Prasad
> >>>>> <[email protected]>; Nelio Laranjeiro
> >>>>> <[email protected]>; [email protected]
> >>>>> Subject: Re: [RFC 0/3] set protocol specific metadata using
> >>>>> set_pkt_metadata API
> >>>>>
> >>>>> Hi Akhil, Radu,
> >>>>>
> >>>>> Could you review the patch and share your thoughts on the proposed
> >>>>> change?
> >>>>>
> >>>> Hi,
> >>>>
> >>>> I've had a quick look. From what I can see you can do everything
> >>>> you do in
> >>> this patch with the current API. For example you can store an
> >>> internal struct pointer in the private section of the security
> >>> context and you can increment the ESP SN with every tx or set
> >>> metadata call.
> >>> With the current API, PMD could store the ESN with the security
> >>> session, but there is no means for the application to read this.
> >>> Application should be aware of the sequence number used per packet.
> >>> This is required to monitor sequence number overflow.In the
> >>> proposal, the sequence number field is IN-OUT. So application could
> >>> either dictate the sequence number, or read the value from the PMD.
> >>>
> >>> Thanks,
> >>> Anoob
> >>
> >> My concern is that we are adding too much and too specific to the
> >> security API.
> >> Overflow situation can be monitored with a tx callback event or a
> >> crypto callback event, depending on the device type.
> >>
> > Agreed with Radu, this looks too specific information.
> > Instead, we can do overflow checking in the driver and add a macro in
> > rte_crypto_op_status for overflow.
> We could do the callback when sequence number over flow happens, and
> IPsec processing fails subsequently. But ideally, application should be able 
> to
> detect that the sequence number is about to over flow and renegotiate the
> SA while the original SA is still valid. I agree that we would be better off 
> by
> handling this in the driver. But application would need some sort of event
> which would say, "sequence number is about to overflow, renegotiate SA",
> before the current SA becomes invalid.
> 
> Do we have any mechanism to register a callback (acting on mbuf), when a
> particular event occurs (without dropping the mbuf)? If yes, we could move
> to that approach.
> 
> rte_crypto_op_status could be leveraged for lookaside_protocol, but can we
> do something similar for inline protocol? Thoughts?

You can look at rx/tx callbacks 
(http://dpdk.org/doc/api/examples_2rxtx_callbacks_2main_8c-example.html#a26) 
but probably events are more suitable: 
http://dpdk.org/doc/api/rte__ethdev_8h.html#ac0bef2920a6ade4041cab5103f4700d9 
There is already a "RTE_ETH_EVENT_MACSEC MACsec offload related event" so you 
can add a security related event.

Reply via email to