Path of network packet in kernel
Anand Moon
moon.linux at yahoo.com
Tue Jul 22 14:23:51 EDT 2014
Hi Anil,
I had written TCP client (tcpc.c) and TCP server (tcps.c) programs for demo and testing purpose.
Note : "./tcpc" is the application running under trace-cmd record command.
If you want to record the kernel flow for application you can use
# trace-cmd record -e all command.
# trace-cmd report /* to see the output. */
See the man page of trace-cmd record for example for more details.
Please find below link for more details how to filter the output.
http://elinux.org/images/3/35/Kernelshark-tut-elc-2011.pdf
-Anand Moon
On Tuesday, July 22, 2014 4:51 PM, Anil Joshi <aj27744 at gmail.com> wrote:
Hi Anand,
I did what you said but i am getting a strange output
[root at machine0 Desktop]#ls
cli trace.dat.cpu11 trace.dat.cpu2 trace.dat.cpu7
client.c trace.dat.cpu12 trace.dat.cpu3 trace.dat.cpu8
trace.dat.cpu0 trace.dat.cpu13 trace.dat.cpu4 trace.dat.cpu9
trace.dat.cpu1 trace.dat.cpu14 trace.dat.cpu5
trace.dat.cpu10 trace.dat.cpu15 trace.dat.cpu6
[root at hwcentos10 Desktop]# cat trace.dat.cpu
cat: trace.dat.cpu: No such file or directory
[root at machine0 Desktop]# cat trace.dat.cpu0
[root at machine0 Desktop]# tcpc client.c trace.dat.cpu1
-bash: tcpc: command not found
why am i getting so much trace.dat.cpu files and tcpc command not found can you please help me out....
cli is the executable file for client
---Anil
On Wed, Jul 16, 2014 at 12:27 AM, Anand Moon <moon.linux at yahoo.com> wrote:
Hi Anil,
>
>You need to use "trace-cmd record" command and run you client. For example.
>
>I chose to write a tcp simple client server application.
>Server running on remote machine listening on some port
>I executed below command to connect to the server using trace-cmd record
>Below command records all the event and function trace in the kernel,
>
>You can filter these function by passing "-e net:*"
>this command will generate a report of all the function that kernel executed.
>You can read the report afterwords. using trace-cmd report.
>
>#sudo trace-cmd record -e all ./tcpc 10.0.0.28
>#ls
>#tcpc tcpc.c trace.dat
>#trace-cmd report
>
>You can also user perf command to trace the kernel functions.
>
>#sudo perf record -e probe:tcp_sendmsg
>
>#perf report
>
>perf examples can be found below.
>
>http://www.brendangregg.com/perf.html
>
>-Anand Moon
>
>
>
>
>
>
>On Tuesday, July 15, 2014 10:34 PM, Jeff Haran <Jeff.Haran at citrix.com> wrote:
>
>
>
>This helps me to see the forest for the trees. And it’s pretty current:
>
>http://upload.wikimedia.org/wikipedia/commons/3/37/Netfilter-packet-flow.svg
>
>Jeff Haran
>
>
>From:kernelnewbies-bounces at kernelnewbies.org [mailto:kernelnewbies-bounces at kernelnewbies.org] On Behalf Of Anil Joshi
>Sent: Tuesday, July 15, 2014 7:38 AM
>To: kernelnewbies
>Subject: Path of network packet in kernel
>
>Hi All,
>
>I am just new to all this,just wanted to trace the path of the packet since it enter the system(inside the kernel (functions and system calls)) and reaches the destination application.
>
>How to do that.
>
>
>Regards
>
>
>
>_______________________________________________
>Kernelnewbies mailing list
>Kernelnewbies at kernelnewbies.org
>http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies at kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20140722/e8c8188a/attachment-0001.html
More information about the Kernelnewbies
mailing list