E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
skb
linux内核ip分片函数ip_fragment解析(转贴)
int ip_fragment(struct sk_buff *
skb
, int (*output)(struct sk_buff *)) { struct iphdr *iph;
cybertan
·
2010-06-14 17:00
评价linux协议栈tcp实现中的prequeue
对tcp-ack的影响:某种情形之下只有用户进程处理了这个
skb
的时候才发送ack。
dog250
·
2010-04-08 21:00
评价linux协议栈tcp实现中的prequeue
对tcp-ack的影响:某种情形之下只有用户进程处理了这个
skb
的时候才发送ack。
xitong
·
2010-04-08 21:00
linux
评价linux协议栈tcp实现中的prequeue
对tcp-ack的影响:某种情形之下只有用户进程处理了这个
skb
的时候才发送ack。
dog250
·
2010-04-08 21:00
linux
socket
tcp
cache
Path
linux内核
评价linux协议栈tcp实现中的prequeue
对tcp-ack的影响:某种情形之下只有用户进程处理了这个
skb
的时候才发送ack。
totoxian
·
2010-04-08 21:00
linux
评价linux协议栈tcp实现中的prequeue
对tcp-ack的影响:某种情形之下只有用户进程处理了这个
skb
的时候才发送ack。
dog250
·
2010-04-08 21:00
内核构造
skb
数据包的实现总结
一、IPv4、TCP和UDP的校验和计算校验和是网络协议用来识别传输错误的冗余域。有些校验和不但能检测错误,还能自动修正某些类型的错误。校验和的想法很简单。在传输一个数据包之前,发送方计算出一个很小的、固定长度的域(校验和)包含数据的某种散列。如果在传输过程中某几位数据被改变,很可能损坏的数据会产生一个不同的校验和。取决于你用来产生校验和使用的函数,校验和提供不同级别的可靠性。IP协议采用的校验和
macrossdzh
·
2010-03-31 17:00
算法
struct
tcp
header
网络协议
路由器
IPv6实现--转发包的处理流程(2)
进入第一个钩子NF_HOOK(PF_INET6,NF_INET_PRE_ROUTING,
skb
,dev,NULL,ip6_rcv_finish)后,ip6_rcv_finish()将调用下列3个函数之一
macrossdzh
·
2010-03-09 16:00
struct
table
input
hook
DST
output
IPv6实现--传入包的处理流程(1)
中数据包的接收处理流程在一个IPSEC包进入到网络层调用~/net/ipv6/ip6_input.c中的ipv6_rcv()函数,然后进入第一个钩子NF_HOOK(PF_INET6,NF_INET_PRE_ROUTING,
skb
macrossdzh
·
2010-03-09 15:00
struct
解密
null
input
扩展
hook
在内核中构造一个UDP 数据
intsend_udp(structnet_device*odev,u16local_port,u32remote_ip,u16remote_port,u8*msg,intlen){structsk_buff*
skb
force_eagle
·
2010-03-04 13:00
网络
struct
header
NetWork
DST
output
在内核中构造一个UDP 数据
net_device *odev, u16 local_port, u32 remote_ip, u16 remote_port, u8 *msg, int len) { struct sk_buff *
skb
mmdev
·
2010-03-04 13:00
.net
网络协议
在内核中构造一个UDP 数据
net_device *odev, u16 local_port, u32 remote_ip, u16 remote_port, u8 *msg, int len) { struct sk_buff *
skb
izuoyan
·
2010-03-04 13:00
.net
网络协议
linux内核网络协议栈实现中的几个问题
1.关于sk_buff的链表组织sk_buff的next和prev指针用来将sk_buff连接成链表,但是具体哪些
skb
被连接在一起就要看当前的
skb
在哪一个层次了,并且
skb
中还有一个sk_buff_head
dog250
·
2010-02-09 22:00
数据结构
struct
list
网络协议
扩展
linux内核
linux内核网络协议栈实现中的几个问题
1.关于sk_buff的链表组织sk_buff的next和prev指针用来将sk_buff连接成链表,但是具体哪些
skb
被连接在一起就要看当前的
skb
在哪一个层次了,并且
skb
中还有一个sk_buff_head
dog250
·
2010-02-09 22:00
数据结构
struct
list
网络协议
扩展
linux内核
linux内核网络协议栈实现中的几个问题
1.关于sk_buff的链表组织 sk_buff 的next和prev指针用来将sk_buff连接成链表,但是具体哪些
skb
被连接在一起就要看当前的
skb
在哪一个层次了,并且
skb
中还有一个 sk_buff_head
totoxian
·
2010-02-09 22:00
linux
linux内核网络协议栈实现中的几个问题
1.关于sk_buff的链表组织 sk_buff 的next和prev指针用来将sk_buff连接成链表,但是具体哪些
skb
被连接在一起就要看当前的
skb
在哪一个层次了,并且
skb
中还有一个 sk_buff_head
xitong
·
2010-02-09 22:00
linux
recv选项MSG_PEEK
(flags&MSG_PEEK)){sk_eat_
skb
(sk,
skb
,copied_early);copied_early=0;}/***sk_eat_
skb
-Releaseaskbifitisnolongerneeded
chensichensi
·
2010-01-27 11:00
网络协议栈
recv选项MSG_PEEK
(flags&MSG_PEEK)){ sk_eat_
skb
(sk,
skb
,copied_early); copied_early=0; } /** *sk_eat_
skb
-Releaseaskbifitisnolon
chensichensi
·
2010-01-27 11:00
socket
tcp
struct
buffer
内核tcp的ack的处理
这个函数主要功能是: 1 update重传队列,并基于sack来设置
skb
的相关buf。 2 update发送窗口。
simohayha
·
2010-01-17 03:00
数据结构
算法
cache
Blog
F#
内核sk_buff工作线程总结
对
skb
采用异步序列操作的一个总结, 写成一系列函数. 将
skb
出队列作为一个线程调用,
skb
处理则采用回调函数, 在线程里直接调用, 提高了通用性.
mmdev
·
2009-12-26 22:00
工作
linux
UP
内核sk_buff工作线程总结
对
skb
采用异步序列操作的一个总结,写成一系列函数.将
skb
出队列作为一个线程调用,
skb
处理则采用回调函数,在线程里直接调用,提高了通用性.也可以将一个
skb
_task定义为PER_CPU变量,达到并行处理目的
force_eagle
·
2009-12-26 22:00
工作
struct
list
null
UP
callback
内核sk_buff工作线程总结
对
skb
采用异步序列操作的一个总结, 写成一系列函数. 将
skb
出队列作为一个线程调用,
skb
处理则采用回调函数, 在线程里直接调用, 提高了通用性.
izuoyan
·
2009-12-26 22:00
linux
工作
UP
skb
_alloc()
/*allocateanetworkbuffer,andinittheskb->data andskb->tailto
skb
->head*/structsk_buff*alloc_
skb
(unsignedintsize
zhulinfeiba
·
2009-12-11 22:00
struct
cache
list
null
NetWork
include
在内核中使用线程与
skb
队列发送数据
在内核中我们发送数据一般使用dev_queue_xmit.但是每次都需要通读等待返回,通过线程的方式,可以实现异步模式,无需等待发送完成.可以大大加快发送速度.以下是示例代码:staticintxmit_thread_worker(void*arg);//////////////////////////////////////////////////////////////////////////
force_eagle
·
2009-12-11 03:00
thread
struct
null
UP
从linux内核中学到的编程技巧
kernel.h)#definemin(x,y)({/typeof(x)_min1=(x);/typeof(y)_min2=(y);/(void)(&_min1==&_min2);/_min1len,
skb
ustc_dylan
·
2009-12-06 10:00
优化
struct
gcc
编译器
deprecated
linux内核
ip_push_pending_frames函数简单注释
下面这个函数主要由udp调用,调用几次ip_append_data之后udp缓存中有一些数据这时想要将数据发送出去就调用ip_push_pending_frames这个函数将
skb
从第一个
skb
的next
peimichael
·
2009-10-30 10:00
skb
_buf总结
sk_buff结构可能是linux网络代码中最重要的数据结构,它表示接收或发送数据包的包头信息。它在中定义,并包含很多成员变量供网络代码中的各子系统使用。这个结构在linux内核的发展过程中改动过很多次,或者是增加新的选项,或者是重新组织已存在的成员变量以使得成员变量的布局更加清晰。它的成员变量可以大致分为以下几类:Layout布局General通用Feature-specific功能相关Mana
bingyang_xue
·
2009-10-20 11:00
数据结构
struct
tcp
网络
function
destructor
Linux发送函数dev_queue_xmit分析
当上层准备好一个包之后,交给下面这个函数处理intdev_queue_xmit(structsk_buff*
skb
){structnet_device*dev=
skb
->dev;structnetdev_queue
peimichael
·
2009-10-19 18:00
linux
struct
list
processing
statistics
recursion
linux设备驱动之USB数据传输分析
三:传输过程的实现说到传输过程,我们必须要从URB开始说起,这个结构的就好比是网络子系统中的
skb
,好比是I/O中的bio.USB系统的信息传输就是打成URB结构,然后再过行传送的.URB的全称叫USBrequestblock
bdc995
·
2009-10-09 17:00
linux
timer
struct
list
buffer
Descriptor
linux内核ip分片函数ip_fragment解析
int ip_fragment(struct sk_buff *
skb
, int (*output)(struct sk_buff *)) { struct iphdr *iph; int raw =
izuoyan
·
2009-09-15 16:00
linux
.net
socket
F#
UP
linux内核ip分片函数ip_fragment解析
int ip_fragment(struct sk_buff *
skb
, int (*output)(struct sk_buff *)) { struct iphdr *iph; int raw =
mmdev
·
2009-09-15 16:00
.net
linux
socket
F#
UP
linux内核ip分片函数ip_fragment解析
intip_fragment(structsk_buff*
skb
,int(*output)(structsk_buff*)){structiphdr*iph;intraw=0;intptr;structnet_device
force_eagle
·
2009-09-15 16:00
list
struct
header
Path
NetWork
linux内核
sk_buffer 详细分析 (下)
Sk_buffer的秘密当调用alloc_
skb
()构造
SKB
和databuffer时,需要的buffer大小是这样计算的:data=kmalloc(size+sizeof(structskb_shared_info
sahusoft
·
2009-09-13 11:00
sk_buffer 详细分析(上)
定义Packet: 通过网卡收发的报文,包括链路层、网络层、传输层的协议头和携带的数据DataBuffer:用于存储packet的内存空间
SKB
: structsk_buffer
sahusoft
·
2009-09-13 11:00
socket
struct
header
buffer
reference
destructor
Skb
与网卡驱动
分析
skb
和网卡驱动的关系 by good02xauthttp://xabai.21ic.org/user1/1066/archives/2007/40745.html 网卡驱动所能看到的仅仅是MAC帧
jiayanhui2877
·
2009-08-26 22:00
struct
null
byte
layer
linux下ip协议(V4)的实现(三)
先看下面的图,这张图表示了4层和3层之间(也就是4层传输给3层)的传输所需要调用的主要的函数:我们注意到3层最终会把帧用dst_output函数进行输出,而这个函数,我们上一次已经讲过了,他会调用
skb
simohayha
·
2009-07-12 18:00
数据结构
linux
.net
socket
ext
从linux内核中学到的编程技巧
kernel.h)#definemin(x,y)({/typeof(x)_min1=(x);/typeof(y)_min2=(y);/(void)(&_min1==&_min2);/_min1len,
skb
ustc_dylan
·
2009-07-04 14:00
优化
struct
gcc
编译器
deprecated
linux内核
SAP ABAP
SKA1 总账科目主记录(科目表) 科目表层数据SKAT 总帐科目主记录(科目表:说明) 包括语言代码
SKB
1
champaignwolf
·
2009-05-23 13:00
Date
function
calendar
SAP
语言
callback
2.6的网络数据包时间戳
2.2.6中的tstamp2.4中
skb
的时间戳直接就用s
enchen
·
2009-05-14 18:58
职场
休闲
2.6内核中netfilter hook点一览
1.1PREROTING/*net/ipv4/ip_input.c*/intip_rcv(structsk_buff*
skb
enchen
·
2009-05-14 18:10
职场
休闲
Linux内核中流量控制(20)
msn:
[email protected]
来源:http://yfydz.cublog.cn7.11tcindextcindex是根据
skb
数据包中的tcindex参数对数据类型进行分类的,而tcindex
enchen
·
2009-05-14 18:36
linux
职场
休闲
Linux内核中流量控制(13)
msn:
[email protected]
来源:http://yfydz.cublog.cn 5.11.9入队staticinthtb_enqueue(structsk_buff*
skb
,structQdisc
enchen
·
2009-05-14 18:38
linux
职场
休闲
Linux-2.6.21.1 网络函数调用流程
msn:
[email protected]
来源:http://yfydz.cublog.cn接收以太帧:netif_rx ->queue ->netif_receive_
skb
->bond
enchen
·
2009-05-14 17:32
linux
职场
休闲
数据包的发送流程——基于RTL8139网卡(1)
intdev_queue_xmit(strcutsk_buff*
skb
){ structnet_device*dev=
skb
->dev; structQdisc*q;
chensichensi
·
2009-03-09 19:00
cache
list
struct
null
processing
action
写的将
skb
copy/clone后转发到源地址的一段代码
可以作为自构建
skb
xmit发送的示范! 在netfilter 模块中通过!
mmdev
·
2009-03-07 00:00
.net
写的将
skb
copy/clone后转发到源地址的一段代码
可以作为自构建skbxmit发送的示范! 在netfilter模块中通过! staticintskb_copy_xmit(structsk_buff*pskb,conststructnet_device*in){ structsk_buff*nskb; structiphdr*oiph,*niph; structtcphdr*oth,*tcph;
force_eagle
·
2009-03-07 00:00
struct
tcp
header
null
NetWork
写的将
skb
copy/clone后转发到源地址的一段代码
可以作为自构建
skb
xmit发送的示范! 在netfilter 模块中通过!
izuoyan
·
2009-03-07 00:00
.net
iphdr与tcphdr详解(
skb
_header_pointer函数分析)
linux2.6.26下获取tcp信息: tcph=
skb
_header_pointer(
skb
,protoff,sizeof(tcph),&tcph); //
skb
_header_pointer是个库函数
ast_224
·
2009-02-27 17:00
struct
list
tcp
header
buffer
路由器
sk_buff 功能函数
skb
支持的功能函数主要描述一下sk_buff层最重要的一些功能函数。分配、释放、复制、克隆、扩展等功能函数。
ast_224
·
2009-02-05 17:00
数据结构
struct
网络
socket
扩展
linux内核
struct net_device结构中添加了needed_headroom/needed_tailroom成员
*在一些情况下不是通过分配
skb
,而是使用LL_MAX_HE
kapu
·
2009-01-22 10:38
linux
struct
kernel
休闲
net_device
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他