|
From: | B B |
Subject: | [lwip-users] HTTP Server traffic |
Date: | Mon, 4 Dec 2006 16:17:04 +0000 |
From: address@hidden
To: address@hidden
Subject: [lwip] HTTP Server traffic
Date: Mon, 4 Dec 2006 10:11:25 +0000
Hi all,
I am using lwip 1.1.1 where i am running a HTTP webserver on an embedded system which is running FreeRTOS, and i have some questions regarding the
HTTP traffic.
I am running the demo application called "lwIP_Demo_Rowley_ARM7".
Which i have modified with the example from Adam dunkels httpd.c.
If i compare the traffic from the webserver to a PC client and a PC webserver to a PC client. The traffic differs, see ethereal capture below:
Embedded webserver -> PC client:
No. Time
1 0.000000 192.168.2.206 192.168.2.204 TCP 1906 > http [SYN] Seq=0 Len=0 MSS=1460
2 0.000726 192.168.2.204 192.168.2.206 TCP http > 1906 [SYN, ACK] Seq=0 Ack=1 Win=1500 Len=0 MSS=1460
3 0.000786 192.168.2.206 192.168.2.204 TCP 1906 > http [ACK] Seq=1 Ack=1 Win=65535 Len=0
4 0.001161 192.168.2.206 192.168.2.204 HTTP GET /sojlegraf.htm HTTP/1.1
5 0.002128 192.168.2.204 192.168.2.206 TCP http > 1906 [ACK] Seq=1 Ack=423 Win=1500 Len=0
6 0.005180 192.168.2.204 192.168.2.206 HTTP HTTP/1.1 200 OK (text/html)
7 0.107250 192.168.2.206 192.168.2.204 TCP 1906 > http [ACK] Seq=423 Ack=1461 Win=65535 Len=0
8 0.108553 192.168.2.204 192.168.2.206 HTTP Continuation or non-HTTP traffic
9 0.307498 192.168.2.206 192.168.2.204 TCP 1906 > http [ACK] Seq=423 Ack=2073 Win=64923 Len=0
....
17 0.347766 192.168.2.206 192.168.2.204 HTTP GET /wz_jsgraphics.js HTTP/1.1
18 0.348585 192.168.2.204 192.168.2.206 TCP http > 1908 [ACK] Seq=1 Ack=279 Win=1500 Len=0
19 0.349381 192.168.2.204 192.168.2.206 HTTP HTTP/1.1 200 OK (application/x-_javascript_)
20 0.507802 192.168.2.206 192.168.2.204 TCP 1908 > http [ACK] Seq=279 Ack=61 Win=65475 Len=0
....
56 0.536547 192.168.2.206 192.168.2.204 TCP 1908 > http [ACK] Seq=279 Ack=18061 Win=65535 Len=0
57 0.538502 192.168.2.204 192.168.2.206 HTTP Continuation or non-HTTP traffic
58 0.708082 192.168.2.206 192.168.2.204 TCP 1908 > http [ACK] Seq=279 Ack=19442 Win=64154 Len=0
....
62 0.728996 192.168.2.204 192.168.2.206 TCP http > 1908 [ACK] Seq=19443 Ack=280 Win=1499 Len=0
as you can see in the above, there are sometimes some funny jumps in time, it takes for the PC client to ACK the incomming data.
Between packet numbers: 8 and 9, 19 and 20, 57 and 58.
PC webserver -> PC client:
No. Time
1 0.000000 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [SYN] Seq=0 Len=0 MSS=1460
2 0.001606 xxx.xxx.207.21 192.168.2.206 TCP http > 2447 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460
3 0.001655 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=1 Ack=1 Win=65535 Len=0
4 0.002095 192.168.2.206 xxx.xxx.207.21 HTTP GET /performance/kurvegraf.htm HTTP/1.1
5 0.004400 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
6 0.004807 xxx.xxx.207.21 192.168.2.206 HTTP HTTP/1.1 200 OK (text/html)
7 0.004859 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=458 Ack=2219 Win=65535 Len=0
8 0.041431 192.168.2.206 xxx.xxx.207.21 HTTP GET /performance/wz_jsgraphics.js HTTP/1.1
9 0.044008 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
10 0.044518 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
11 0.044590 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=770 Ack=5139 Win=65535 Len=0
12 0.044617 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
13 0.046418 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
14 0.046871 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=770 Ack=7775 Win=65535 Len=0
15 0.046899 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
16 0.046938 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
17 0.047016 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=770 Ack=10411 Win=65535 Len=0
18 0.048962 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
19 0.049446 xxx.xxx.207.21 192.168.2.206 TCP [TCP segment of a reassembled PDU]
20 0.049509 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=770 Ack=13331 Win=65535 Len=0
....
31 0.169528 192.168.2.206 xxx.xxx.207.21 TCP 2447 > http [ACK] Seq=770 Ack=21841 Win=65217 Len=0
as you can see in the above there isnt't those jumps in time before a packet is ACK'ed.
So my question is, how do i make my communication between, my embedded target and the PC client run as smoothly as running the website
on a PC webserver ?
Is that even possible with lwip ?
best regards,
Martin B.
All-in-one security and maintenance for your PC. Get a free 90-day trial! Learn more!
[Prev in Thread] | Current Thread | [Next in Thread] |