ChinaUnix.net
相关文章推荐:

NETIFFIPV6CSUM

Intel(R) PRO/100 Network Driver - version 2.3.43-k1 Copyright (c) 2004 Intel Corporation divert: allocating divert_blk for eth0 e100: selftest OK. e100: eth0: Intel(R) PRO/100 Network Connection Hardware receive checksums enabled divert: freeing divert_blk for eth0 ip_tables: (C) 2000-2002 Netfilter core team Intel(R) PRO/100 Network Driver - version 2.3.43-k1 Copyright (c) 2004 Intel Corporat...

by lg8080 - 服务器架设 - 2006-04-12 13:43:12 阅读(596) 回复(0)

相关讨论

Intel(R) PRO/100 Network Driver - version 2.3.43-k1 Copyright (c) 2004 Intel Corporation divert: allocating divert_blk for eth0 e100: selftest OK. e100: eth0: Intel(R) PRO/100 Network Connection Hardware receive checksums enabled divert: freeing divert_blk for eth0 ip_tables: (C) 2000-2002 Netfilter core team Intel(R) PRO/100 Network Driver - version 2.3.43-k1 Copyright (c) 2004 Intel Corporat...

by lg8080 - 服务器应用 - 2006-04-12 13:43:12 阅读(1097) 回复(0)

在机器重新启动后dmesg发现有很多hw tcp v4 csum failed不知道是什么原因 是硬件的问题还是驱动的问题呢?请各位给看看,谢谢 divert: allocating divert_blk for eth1 e100: selftest OK. e100: eth1: Intel(R) PRO/100 Network Connection Hardware receive checksums enabled cpu cycle saver enabled ip_tables: (C) 2000-2002 Netfilter core team e100: eth0 NIC Link is Up 100 Mbps Full duplex ip_tables: (C) 2000-...

by clory_0 - 网络与硬件 - 2006-02-16 14:48:59 阅读(764) 回复(0)

在机器重新启动后dmesg发现有很多hw tcp v4 csum failed不知道是什么原因 是硬件的问题还是驱动的问题呢?请各位给看看,谢谢 divert: allocating divert_blk for eth1 e100: selftest OK. e100: eth1: Intel(R) PRO/100 Network Connection Hardware receive checksums enabled cpu cycle saver enabled ip_tables: (C) 2000-2002 Netfilter core team e100: eth0 NIC Link is Up 100 Mbps Full duplex ip_tables: (C) 2000-...

by clory_0 - Linux系统管理 - 2008-08-11 14:39:49 阅读(2293) 回复(2)

在ip_output中,对于来自4层还是ip_input转发过来的包,还是有区别的。来自4层的需要计算sum的,也就是csum_DELAY_DATA,但是forward过来的,包是完整有效的。 但是如果要插入额外的处理代码时,尤其需要修改包的时候,就需要特别注意了,首先要做in_delayed_cksum(m),然后再修改包,这样就会相对简单一些。 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/132/showart_49455.html

by mirnshi - BSD文档中心 - 2005-09-26 18:25:52 阅读(1015) 回复(0)

[code]unsigned int ihl) { unsigned int sum; //(%1)就是iph数据包首地址,%0就是sum, %2数据包长度 //11-14行都是进行32位的加法运算 __asm__ __volatile__( "movl (%1), %0 ;\n" "subl $4, %2 ;\n" "jbe 2f ;\n" "addl 4(%1), %0 ;\n" "adcl 8(%1), %0 ;\n" "adcl 12(%1), %0 ;\n" "1: adcl 16(%1), %0 ;\n" "lea 4(%1), %1 ;\n" //没看懂 "decl %2 ;\n" "jne 1b ;\n" "adcl $0, %0 ;\n" "movl %0, %2 ;\n" //保存sum的值到...

by 0n10rz1r0 - 内核源码 - 2014-09-30 13:36:27 阅读(1225) 回复(4)

用下面这段代码将hook收到的udp包做校验。但不知为何csum_tcpudp_magic总是返回0。 有谁知道吗? if (udp_header->check) { int datalen = sock_buff->len - (ip_header->ihl<<2); tmpcsum = csum_tcpudp_magic(ip_header->saddr, ip_header->daddr, datalen, IPPROTO_UDP, csum_partial((char *)udp_header, datalen, 0)); if((tmpcsum == 0)) ...

by xhx321 - 内核源码 - 2014-09-18 17:14:30 阅读(698) 回复(0)

[code] __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len, unsigned short proto, __wsum sum) { return (__force __sum16)~from64to16( (__force u64)saddr + (__force u64)daddr + (__force u64)sum + ((len + proto) << 8)); } [/code] [code] ((len + proto) << 8) [/code] 这一句是什么意思? [ 本帖最后由 印随 于 2009-11-5 20:54 编辑 ]

by 印随 - 内核源码 - 2009-11-05 22:56:33 阅读(5135) 回复(1)

读到一段代码时,发现在计算TCP或者UDP校验和的时候,用sk_buff.csum存储TCP或UDP数据报数据部分的校验和,然后在这个校验和基础上再加上伪头部和头部的校验和。 但是整个TCP或UDP数据包本身也是有长度的,按理说也可以直接调用API计算整个TCP或UDP校验和。因此,很想知道结构体sk_buff中的csum成员一般怎么使用。

by Godbach - 内核源码 - 2014-03-31 01:15:12 阅读(2581) 回复(3)

我想知道下面这段嵌入到c的汇编的算法,哪位大侠研究过,给我讲讲,它是如何算的,谢谢[code]static inline unsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl) { unsigned int sum; __asm__ __volatile__(" movl (%1), %0 subl $4, %2 jbe 2f addl 4(%1), %0 adcl 8(%1), %0 adcl 12(%1), %0 1: adcl 16(%1), %0 lea 4(%1), %1 decl %2 jne 1b ...

by un_xxx - C/C++ - 2004-04-22 15:22:51 阅读(3111) 回复(0)

如果设置了NETIF_F_NO_csum,是不是网卡就不会对接收到的数据包进行校验,直接交给上层?

by myxmu - 内核源码 - 2007-08-18 10:58:05 阅读(3564) 回复(1)