problems on undestanding tcp/ip mechanism on linux2.6.30
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
problems on undestanding tcp/ip mechanism on linux2.6.30
Hi, i'm a student of computer science and i'm developing a project on a kernel 2.6.30.
I already have a mechanism that give me a feedback when a tcp packet don't reach the router on wireless connection. Now i will be able to resend lost packets(that are lost during the route node-router) before the tcp timeout. When my hardware give me this information i put the lost packet into a list(with information about ip and tcp headers).
Here i have my problem. When i put package on my list i think i have to send an event that tcp_write_timer() can handle for resending. Now i alredy modified tcp_write_timer() to handle another event but i don't understand how this function receive it. I think i need to set the parameter icsk_pending with the number of the event and put the package into the sk list of the socket. Can anyone explain me how this resending event work ?
Here i have my problem. When i put package on my list i think i have to send an event that tcp_write_timer() can handle for resending. Now i alredy modified tcp_write_timer() to handle another event but i don't understand how this function receive it. I think i need to set the parameter icsk_pending with the number of the event and put the package into the sk list of the socket. Can anyone explain me how this resending event work ?
I have done packet buffering and forwarding, but I used iptables, libnfnetlink, and libnet. That allowed me to do everything in user space. If you are directly modifying code in the network stack, you will really need a copy of "Understanding Linux Network Internals". This book tells and shows how the Linux network stack works.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.