------_=_NextPart_001_01CAC5B0.B77F3FA8
Content-Type: text/plain;
charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable
Hi,
My pc is installed linux-2.6.24.4, httpd-2.2.9, rp-pppoe-3.8 and
ppp-2.4.4.
It connects to WAN by PPPoE, so it has both of WAN IP and LAN IP.
For example, 172.23.26.130(LAN) and 140.35.25.73(PPPoE).
Then, I put a file which size is larger than 16396 bytes on my pc for
downloading.
After that, I use http://140.35.25.73/file and https://140.35.25.73/file
to download this file.
If I use https, the downloaded file is correct. But not for http.
For example, the file original content may be...
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
abcdefghijklmnopqrstuvwxyz
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
And the downloaded file by http may be...
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
abcdefghijklklmnopqrsrstuvwxyz
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
If use wireshark to watch packets, will see...
Packet1(data part):
abcdefghijkl
Packet2(data part):
klmnopqrs
Packet3(data part):
rstuvwxyz
It is easy to find that the returned data isn't correct, some overlap
happens. The interesting thing is...
1. It only happens when the file size is larger than 16396 bytes
2. https is ok, only http has this problem
3. Only when using PPPoE, if use http://172.23.26.130/file, it's
ok.
However, a more interesting thing is...
http://140.35.25.73/file is ok if turn on DumpIOOutput.
Is it a bug of httpd? Should I report it? Or anyone can give me any
suggestion about how to solve this issue?
Thanks.
-----------------------------------------------
Regards,
Aslan Liu
------_=_NextPart_001_01CAC5B0.B77F3FA8
Content-Type: text/html;
charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
[at] font-face
{font-family:PMingLiU;
panose-1:2 2 3 0 0 0 0 0 0 0;}
[at] font-face
{font-family:PMingLiU;
panose-1:2 2 3 0 0 0 0 0 0 0;}
[at] font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
[at] font-face
{font-family:PMingLiU;
panose-1:2 2 3 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:24.0pt;
margin-bottom:.0001pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:0cm;
mso-para-margin-left:2.0gd;
mso-para-margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Calibri","sans-serif";}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
..MsoChpDefault
{mso-style-type:export-only;}
/* Page Definitions */
[at] page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
{page:Section1;}
/* List Definitions */
[at] list l0
{mso-list-id:1453858898;
mso-list-type:hybrid;
mso-list-template-ids:-1854786606 1887453804 67698713 67698715 67698703 =
67698713 67698715 67698703 67698713 67698715;}
[at] list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:18.0pt;
text-indent:-18.0pt;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3DZH-TW link=3Dblue vlink=3Dpurple =
style=3D'text-justify-trim:punctuation'>
<div class=3DSection1>
<p class=3DMsoNormal><span lang=3DEN-US>Hi, <o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>My pc is installed =
linux-2.6.24.4, httpd-2.2.9,
rp-pppoe-3.8 and ppp-2.4.4.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>It connects to WAN by PPPoE, so =
it has both
of WAN IP and LAN IP.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>For example, 172.23.26.130(LAN) =
and 140.35.25.73(PPPoE).<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Then, I put a file which size is =
larger
than <b><span style=3D'color:red'>16396</span></b> bytes on my pc for =
downloading.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>After that, I use <a
href=3D"http://140.35.25.73/file">http://140.35.25.73/file</a> and <a
href=3D"https://140.35.25.73/file">https://140.35.25.73/file</a> to =
download this
file.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>If I use https, the downloaded =
file is
correct. But not for http.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>For example, the file original =
content may
be…<o:p></o:p></span></p>
<p class=3DMsoNormal><span =
lang=3DEN-US>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3 D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<o:p></o:p></span></p>
<p class=3DMsoNormal><span =
lang=3DEN-US>abcdefghijklmnopqrstuvwxyz<o:p></o:p></span></p>
<p class=3DMsoNormal><span =
lang=3DEN-US>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3 D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>And the downloaded file by http =
may be…<o:p></o:p></span></p>
<p class=3DMsoNormal><span =
lang=3DEN-US>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3 D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>abcdefghij<b><span =
style=3D'color:red'>klkl</span></b>mnopq<b><span
style=3D'color:red'>rsrs</span></b>tuvwxyz<o:p></o:p></span></p>
<p class=3DMsoNormal><span =
lang=3DEN-US>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3 D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>If use wireshark to watch =
packets, will see…<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Packet1(data =
part):<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>abcdefghij<b><span =
style=3D'color:red'>kl</span></b><o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Packet2(data =
part):<o:p></o:p></span></p>
<p class=3DMsoNormal><b><span lang=3DEN-US =
style=3D'color:red'>kl</span></b><span
lang=3DEN-US>mnopq<b><span style=3D'color:red'>rs</span></b><span =
style=3D'color:
red'><o:p></o:p></span></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Packet3(data =
part):<o:p></o:p></span></p>
<p class=3DMsoNormal><b><span lang=3DEN-US =
style=3D'color:red'>rs</span></b><span
lang=3DEN-US>tuvwxyz<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>It is easy to find that the =
returned data
isn’t correct, some overlap happens. The interesting thing =
is…<o:p></o:p></span></p>
<p class=3DMsoListParagraph =
style=3D'margin-left:18.0pt;mso-para-margin-left:0gd;
text-indent:-18.0pt;mso-list:l0 level1 lfo1'><![if !supportLists]><span
lang=3DEN-US><span style=3D'mso-list:Ignore'>1.<span style=3D'font:7.0pt =
"Times New Roman"'>
</span></span></span><![endif]><span lang=3DEN-US>It only happens when =
the file
size is larger than 16396 bytes<o:p></o:p></span></p>
<p class=3DMsoListParagraph =
style=3D'margin-left:18.0pt;mso-para-margin-left:0gd;
text-indent:-18.0pt;mso-list:l0 level1 lfo1'><![if !supportLists]><span
lang=3DEN-US><span style=3D'mso-list:Ignore'>2.<span style=3D'font:7.0pt =
"Times New Roman"'>
</span></span></span><![endif]><span lang=3DEN-US>https is ok, only http =
has this
problem<o:p></o:p></span></p>
<p class=3DMsoListParagraph =
style=3D'margin-left:18.0pt;mso-para-margin-left:0gd;
text-indent:-18.0pt;mso-list:l0 level1 lfo1'><![if !supportLists]><span
lang=3DEN-US><span style=3D'mso-list:Ignore'>3.<span style=3D'font:7.0pt =
"Times New Roman"'>
</span></span></span><![endif]><span lang=3DEN-US>Only when using PPPoE, =
if use <a
href=3D"http://172.23.26.130/file">http://172.23.26.130/file</a>, =
it’s ok.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>However, a more interesting =
thing is…<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><a =
href=3D"http://140.35.25.73/file">http://140.35.25.73/file</a>
is ok if turn on <b><span =
style=3D'color:red'>DumpIOOutput</span></b>.<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Is it a bug of httpd? Should I =
report it?
Or anyone can give me any suggestion about how to solve this =
issue?<o:p></o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US><o:p> </o:p></span></p>
<p class=3DMsoNormal><span lang=3DEN-US>Thanks.<o:p></o:p></span></p>
<p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto' ><b><span
lang=3DEN-US =
style=3D'font-family:"新細明體","serif";
color:black'>-----------------------------------------------<o:p></o:p></=
span></b></p>
<p class=3DMsoNormal =
style=3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:auto' ><b><span
lang=3DEN-US =
style=3D'font-family:"新細明體","serif";
color:black'>Regards,<br>
Aslan Liu<br>
<br>
</span></b><span lang=3DEN-US><o:p></o:p></span></p>
</div>
</body>
</html>
------_=_NextPart_001_01CAC5B0.B77F3FA8--
