To me this seems like you send every single pbuf as one ethernet frame. LwIP 
can combine multiple pbufs to one ethernet frame, which is done for many tcp 
packets: the first pbuf contains all the headers, the second pbuf contains the 
'user data' (in your case the HTML page). Your driver should send pbuf queues 
in one frame; the end of a pbuf queue can be determined like shown in 
pbuf.c/.h: the last pbuf of a frame has p->len == p->tot_len (NOT p->next == 
NULL, as there can also be multiple frames in a pbuf queue!)

Hope that helps.
Simon.

-------- Original-Nachricht --------
> Datum: Mon, 25 Aug 2008 19:11:16 +0800 (CST)
> Von: yihect <[EMAIL PROTECTED]>
> An: lwip_users <[email protected]>
> Betreff: [lwip-users] help -- the http reply is divided into 2 frames.

>  
>   
>  
> Hi, all: 
>  I'm porting lwIP 1.3 on uCOS-II. Now use the httpserver attached in
> contrib dir for testing the port.
>  
>  Benefitting from Jonathan Larmour's help, now the http request from pc
> are sent in a single ethernet frame. but when using netconn_write() api to
> send http reply head info, the lwIP stack will divide the head info into 2
> frames. 
> The first frame seems like a full ether-ip-tcp-http frame, but the second
> one seems only include the head info, no ethernet frame header, no ip
> header, and no tcp header. You can see frame 8 and frame 9 from the following
> file  captured from pc side.
>   
> There is a checksum error too, I don't know that's why? It's strange to
> see the 6 mysterious bytes at the end of the first frame. I think that's not
> correct. I think the head info should be included in one single frame when
> sending. Is it true? Please tell me if i'm wrong. 
>  
> Frankly speaking, I'm a fully newbie to the lwIP stack, so, any suggestion
> will be appreciated greatlly.
>  
> captured file fragement:
> //////////////////////////////////////////////////////////////////////////
> //frame 8
> No.     Time        Source                Destination           Protocol
> Info
>       8 1250.620706 192.168.10.2          192.168.10.123        HTTP    
> Continuation or non-HTTP traffic
> Frame 8 (60 bytes on wire, 60 bytes captured)
> Ethernet II, Src: 00:53:45:00:00:00 (00:53:45:00:00:00), Dst:
> RapidCit_06:15:90 (00:e0:16:06:15:90)
> Internet Protocol, Src: 192.168.10.2 (192.168.10.2), Dst: 192.168.10.123
> (192.168.10.123)
> Transmission Control Protocol, Src Port: http (80), Dst Port: danf-ak2
> (1041), Seq: 1, Ack: 471, Len: 6
>     Source port: http (80)
>     Destination port: danf-ak2 (1041)
>     Sequence number: 1    (relative sequence number)
>     [Next sequence number: 7    (relative sequence number)]
>     Acknowledgement number: 471    (relative ack number)
>     Header length: 20 bytes
>     Flags: 0x18 (PSH, ACK)
>     Window size: 2048
>     Checksum: 0xda82 [incorrect, should be 0x4328 (maybe caused by "TCP
> checksum offload"?)]
> Hypertext Transfer Protocol
>     Data (6 bytes)
> 0000  00 e0 16 06 15 90 00 53 45 00 00 00 08 00 45 00   .......SE.....E.
> 0010  00 54 00 02 00 00 ff 06 25 d4 c0 a8 0a 02 c0 a8   .T......%.......
> 0020  0a 7b 00 50 04 11 00 00 19 6f f2 1e 1e e0 50 18   .{.P.....o....P.
> 0030  08 00 da 82 00 00 a0 01 00 00 00 00               ............
> 
> ///////////////////////////////////////////////////////
> //frame 9
> No.     Time        Source                Destination           Protocol
> Info
>       9 1250.620758 2e:31:20:32:30:30     48:54:54:50:2f:31     0x204f  
> Ethernet II
> Frame 9 (60 bytes on wire, 60 bytes captured)
> Ethernet II, Src: 2e:31:20:32:30:30 (2e:31:20:32:30:30), Dst:
> 48:54:54:50:2f:31 (48:54:54:50:2f:31)
> Data (46 bytes)
> 0000  48 54 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d   HTTP/1.1 200 OK.
> 0010  0a 43 6f 6e 74 65 6e 74 2d 74 79 70 65 3a 20 74   .Content-type: t
> 0020  65 78 74 2f 68 74 6d 6c 0d 0a 0d 0a 00 00 00 00   ext/html........
> 0030  3c 68 74 6d 6c 3e 3c 68 65 61 64 3e               <html><head>
>  
>  
>  

-- 
GMX Kostenlose Spiele: Einfach online spielen und Spaß haben mit Pastry Passion!
http://games.entertainment.gmx.net/de/entertainment/games/free/puzzle/6169196


_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to