DPDK usage discussions
 help / color / mirror / Atom feed
* How to announce VIP with BGP for DPDK application?
@ 2022-03-29 15:17 Linhua Tang
  2022-04-04 13:00 ` Victor Detoni
  0 siblings, 1 reply; 4+ messages in thread
From: Linhua Tang @ 2022-03-29 15:17 UTC (permalink / raw)
  To: users

[-- Attachment #1: Type: text/plain, Size: 732 bytes --]

Hi everyone,

I'm new to DPDK, I have a question on how to announce VIP through BGP for
my LB based on DPDK.

The design looks like this:

   - I have multiple hosts (virtual machines or physical machines), every
   host advertising the same VIP, 10.0.0.10 for example.
   - Each LB host has two NICs, one for DPDK, one for admin purposes.
   - LB forward the packets to backend servers based on VIP configuration


Normally, I use Bird or Quagga for BGP advertising, but I don't know how to
make BGP work with DPDK applications. Do I need to implement BGP within the
DPDK application? It looks overkilling to me.

Looking forward to getting advice from you, or pointing me to any
references.

Thanks very much.

Best wishes,
James

[-- Attachment #2: Type: text/html, Size: 944 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How to announce VIP with BGP for DPDK application?
  2022-03-29 15:17 How to announce VIP with BGP for DPDK application? Linhua Tang
@ 2022-04-04 13:00 ` Victor Detoni
  2022-04-04 13:12   ` Linhua Tang
  0 siblings, 1 reply; 4+ messages in thread
From: Victor Detoni @ 2022-04-04 13:00 UTC (permalink / raw)
  To: Linhua Tang; +Cc: users

[-- Attachment #1: Type: text/plain, Size: 1300 bytes --]

Hi Linhua,

First of all, you need to bind an IP address on NIC that DPDK manages. You
can look at https://github.com/victordetoni/dpdk-l3fwd-acl this project and
copy arp (line 644) and ip stack (line 2024). After that, you can set as
next-hop on bgp the ip address that dpdk manages.

Maybe it's not clear yet, but dpdk is a framework that allows you to create
your own network apps. Search on google bgp projects that supports bgp,
quagga etc.

On Mon, Apr 4, 2022 at 7:29 AM Linhua Tang <linhua.tang.mr@gmail.com> wrote:

> Hi everyone,
>
> I'm new to DPDK, I have a question on how to announce VIP through BGP for
> my LB based on DPDK.
>
> The design looks like this:
>
>    - I have multiple hosts (virtual machines or physical machines), every
>    host advertising the same VIP, 10.0.0.10 for example.
>    - Each LB host has two NICs, one for DPDK, one for admin purposes.
>    - LB forward the packets to backend servers based on VIP configuration
>
>
> Normally, I use Bird or Quagga for BGP advertising, but I don't know how
> to make BGP work with DPDK applications. Do I need to implement BGP within
> the DPDK application? It looks overkilling to me.
>
> Looking forward to getting advice from you, or pointing me to any
> references.
>
> Thanks very much.
>
> Best wishes,
> James
>

[-- Attachment #2: Type: text/html, Size: 1869 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How to announce VIP with BGP for DPDK application?
  2022-04-04 13:00 ` Victor Detoni
@ 2022-04-04 13:12   ` Linhua Tang
  2022-04-04 13:18     ` Victor Detoni
  0 siblings, 1 reply; 4+ messages in thread
From: Linhua Tang @ 2022-04-04 13:12 UTC (permalink / raw)
  To: Victor Detoni; +Cc: users

[-- Attachment #1: Type: text/plain, Size: 1875 bytes --]

Hi Victor,

Thanks very much for your response.

Do you mean set next-hop on BGP with Quagga or similar applications through
other NIC (not DPDK managed)?

I looked at DPVS
<https://github.com/iqiyi/dpvs/blob/master/doc/tutorial.md#kni>, which uses
KNI to redirect traffic to Kernel so we can use Quagga or advertise VIP. Do
you think it's a better solution or implement ARP in the DPDK application
directly?

Thanks.

Best wishes,
Linhua Tang


On Mon, Apr 4, 2022 at 2:00 PM Victor Detoni <victordetoni@gmail.com> wrote:

> Hi Linhua,
>
> First of all, you need to bind an IP address on NIC that DPDK manages. You
> can look at https://github.com/victordetoni/dpdk-l3fwd-acl this project
> and copy arp (line 644) and ip stack (line 2024). After that, you can set
> as next-hop on bgp the ip address that dpdk manages.
>
> Maybe it's not clear yet, but dpdk is a framework that allows you to
> create your own network apps. Search on google bgp projects that supports
> bgp, quagga etc.
>
> On Mon, Apr 4, 2022 at 7:29 AM Linhua Tang <linhua.tang.mr@gmail.com>
> wrote:
>
>> Hi everyone,
>>
>> I'm new to DPDK, I have a question on how to announce VIP through BGP for
>> my LB based on DPDK.
>>
>> The design looks like this:
>>
>>    - I have multiple hosts (virtual machines or physical machines),
>>    every host advertising the same VIP, 10.0.0.10 for example.
>>    - Each LB host has two NICs, one for DPDK, one for admin purposes.
>>    - LB forward the packets to backend servers based on VIP configuration
>>
>>
>> Normally, I use Bird or Quagga for BGP advertising, but I don't know how
>> to make BGP work with DPDK applications. Do I need to implement BGP within
>> the DPDK application? It looks overkilling to me.
>>
>> Looking forward to getting advice from you, or pointing me to any
>> references.
>>
>> Thanks very much.
>>
>> Best wishes,
>> James
>>
>

[-- Attachment #2: Type: text/html, Size: 2868 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How to announce VIP with BGP for DPDK application?
  2022-04-04 13:12   ` Linhua Tang
@ 2022-04-04 13:18     ` Victor Detoni
  0 siblings, 0 replies; 4+ messages in thread
From: Victor Detoni @ 2022-04-04 13:18 UTC (permalink / raw)
  To: Linhua Tang; +Cc: users

[-- Attachment #1: Type: text/plain, Size: 2093 bytes --]

Hi,

DPVS seems like a very nice project to work with.

On Mon, Apr 4, 2022 at 10:12 AM Linhua Tang <linhua.tang.mr@gmail.com>
wrote:

> Hi Victor,
>
> Thanks very much for your response.
>
> Do you mean set next-hop on BGP with Quagga or similar applications
> through other NIC (not DPDK managed)?
>
> I looked at DPVS
> <https://github.com/iqiyi/dpvs/blob/master/doc/tutorial.md#kni>, which
> uses KNI to redirect traffic to Kernel so we can use Quagga or advertise
> VIP. Do you think it's a better solution or implement ARP in the DPDK
> application directly?
>
> Thanks.
>
> Best wishes,
> Linhua Tang
>
>
> On Mon, Apr 4, 2022 at 2:00 PM Victor Detoni <victordetoni@gmail.com>
> wrote:
>
>> Hi Linhua,
>>
>> First of all, you need to bind an IP address on NIC that DPDK manages.
>> You can look at https://github.com/victordetoni/dpdk-l3fwd-acl this
>> project and copy arp (line 644) and ip stack (line 2024). After that, you
>> can set as next-hop on bgp the ip address that dpdk manages.
>>
>> Maybe it's not clear yet, but dpdk is a framework that allows you to
>> create your own network apps. Search on google bgp projects that supports
>> bgp, quagga etc.
>>
>> On Mon, Apr 4, 2022 at 7:29 AM Linhua Tang <linhua.tang.mr@gmail.com>
>> wrote:
>>
>>> Hi everyone,
>>>
>>> I'm new to DPDK, I have a question on how to announce VIP through BGP
>>> for my LB based on DPDK.
>>>
>>> The design looks like this:
>>>
>>>    - I have multiple hosts (virtual machines or physical machines),
>>>    every host advertising the same VIP, 10.0.0.10 for example.
>>>    - Each LB host has two NICs, one for DPDK, one for admin purposes.
>>>    - LB forward the packets to backend servers based on VIP
>>>    configuration
>>>
>>>
>>> Normally, I use Bird or Quagga for BGP advertising, but I don't know how
>>> to make BGP work with DPDK applications. Do I need to implement BGP within
>>> the DPDK application? It looks overkilling to me.
>>>
>>> Looking forward to getting advice from you, or pointing me to any
>>> references.
>>>
>>> Thanks very much.
>>>
>>> Best wishes,
>>> James
>>>
>>

[-- Attachment #2: Type: text/html, Size: 3343 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-04-06  7:17 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-29 15:17 How to announce VIP with BGP for DPDK application? Linhua Tang
2022-04-04 13:00 ` Victor Detoni
2022-04-04 13:12   ` Linhua Tang
2022-04-04 13:18     ` Victor Detoni

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).