Wrong checksum - socket+fwrite
am 11.09.2007 19:47:25 von office
I have a problem with writting data to a Socket. It comes some
incorrect checksum (dump
with tcpdump)
Dump :
00:16:76:df:12:eb (oui Unknown) > 00:04:23:c1:72:23 (oui Unknown),
ethertype IPv4 (0x0800), length 64: (tos 0x0, ttl 64, id 63018,
offset
0, flags [DF], proto: TCP (6), length: 50) 10.10.1.22.dnsix >
mk089144217176.a1.net.sbl: P, cksum 0x3e85 (incorrect (-> 0x261b),
1:11(10) ack 118 win 5840 urg 10
0x0000: 4500 0032 f62a 4000 4006 063b 0a0a 0116
0x0010: 5990 d9b0 005a 040f 1cc2 054c 0005 0ecc
0x0020: 5038 16d0 3e85 000a 3031 3334 3036 3936
0x0030: 3233
code:
$socket = stream_socket_server('tcp://10.10.1.22:90', $errno,
$errstr);
$conn = @stream_socket_accept($socket, 1);
$message = fread($conn, 8192);
$answer = "0134069623";
fwrite($conn, $answer);
fclose ($conn);
fclose($socket);
Re: Wrong checksum - socket+fwrite
am 11.09.2007 21:52:41 von shimmyshack
On Sep 11, 6:47 pm, off...@jobnavigator.at wrote:
> I have a problem with writting data to a Socket. It comes some
> incorrect checksum (dump
> with tcpdump)
>
> Dump :
>
> 00:16:76:df:12:eb (oui Unknown) > 00:04:23:c1:72:23 (oui Unknown),
> ethertype IPv4 (0x0800), length 64: (tos 0x0, ttl 64, id 63018,
> offset
> 0, flags [DF], proto: TCP (6), length: 50) 10.10.1.22.dnsix >
> mk089144217176.a1.net.sbl: P, cksum 0x3e85 (incorrect (-> 0x261b),
> 1:11(10) ack 118 win 5840 urg 10
> 0x0000: 4500 0032 f62a 4000 4006 063b 0a0a 0116
> 0x0010: 5990 d9b0 005a 040f 1cc2 054c 0005 0ecc
> 0x0020: 5038 16d0 3e85 000a 3031 3334 3036 3936
> 0x0030: 3233
>
> code:
>
> $socket = stream_socket_server('tcp://10.10.1.22:90', $errno,
> $errstr);
> $conn = @stream_socket_accept($socket, 1);
> $message = fread($conn, 8192);
> $answer = "0134069623";
> fwrite($conn, $answer);
> fclose ($conn);
> fclose($socket);
TCP checksum offloading is enabled on your card?
http://www.ethereal.com/lists/ethereal-users/200507/msg00242 .html