DPDK patches and discussions
 help / color / mirror / Atom feed
From: Gal Sagie <gal.sagie@gmail.com>
To: Gopi Krishna B <gopi97468@gmail.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] sending and receiving packets
Date: Thu, 17 Oct 2013 17:27:58 +0200	[thread overview]
Message-ID: <CAG9LJa5Uub21N9ioEw7dSAJfeSoJE1a4e7=Qnn1tu86ioTRh2w@mail.gmail.com> (raw)
In-Reply-To: <CA+XbSJJ7T8yHsmNLsexLP8q0ojskR6teXfyJW5wEcX38J07QMQ@mail.gmail.com>

Assigning an IP is a function of the network stack, DPDK and the NIC does
not need to be aware of that.
DPDK is just used to poll packets from the NIC and insert them into the
network stack start point inside rump kernels

In the tcp_http_get example it is assumed you are connected to a DHCP
server , this call is used to obtain an IP for the interface
using DHCP :
 if ((e = rump_pub_netconfig_dhcp_ipv4_oneshot("dpdk0")) != 0)

If you look at the udp echo server example, you can see how to set the IP
address statically using this call:

if (rump_pub_netconfig_ipv4_ifaddr(IFNAME,
            IF_ADDR, "255.255.255.0") != 0)




On Thu, Oct 17, 2013 at 4:26 PM, Gopi Krishna B <gopi97468@gmail.com> wrote:

>
>
> On Thu, Oct 17, 2013 at 3:01 PM, Gal Sagie <gal.sagie@gmail.com> wrote:
>
>> Rump kernels is a flexible kernel architecture which runs in user space
>> and is a very interesting project, you can read more about it
>> here => http://www.netbsd.org/docs/rump/#rump-about
>> It is currently part of the NetBSD source tree.
>>
>> A project was made to integrate Intel DPDK inside Rump kernel networking
>> layer. (in order to provide a networking stack and user space on top of
>> DPDK)
>> You can read more about it here =>
>> https://github.com/anttikantee/dpdk-rumptcpip
>>
>> By using this you can run TCP Server inside rump kernel client and
>> interface with the physical port using DPDK.
>>
>> Gopi, you didnt give enough information what exactly you are trying to
>> do, you can look at the examples in the dpdk-rumptcpip
>> maybe its best you first try to run them and see everything works.
>>  In order to write a TCP server application on top of Rump kernel you
>> either need to use the rump system call API's (starts with rump_..) or
>> use the libhijack  (You can read more about it in the rump kernels page)
>>
>> Gal
>>
>>>
>>> Hi
> I realized that there are some sample examples available in
> dpdk-rumptcpip, and am currently trying the tcp_http_get example.
>
> But the basic question still remains for me, without assigning an
> IPaddress to the NIC which DPDK is controlling, how does the communication
> happen. In more detail, what is the src_ipaddr in the packet being sent out.
>
> --
> Regards
> Gopi Krishna
>
>
>
>


-- 
Best Regards ,

The G.

  reply	other threads:[~2013-10-17 15:27 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-16 14:42 Gopi Krishna B
2013-10-17 11:36 ` Prashant Upadhyaya
2013-10-17 12:01   ` Gal Sagie
2013-10-17 13:26     ` Gopi Krishna B
2013-10-17 15:27       ` Gal Sagie [this message]
2013-10-18 10:11         ` Gopi Krishna B
2013-10-18 10:40           ` Gal Sagie
2013-10-18 10:58             ` Gopi Krishna B

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAG9LJa5Uub21N9ioEw7dSAJfeSoJE1a4e7=Qnn1tu86ioTRh2w@mail.gmail.com' \
    --to=gal.sagie@gmail.com \
    --cc=dev@dpdk.org \
    --cc=gopi97468@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).