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内核--网络协议栈深入分析(二)--sk_buff的操作函数
article/details/7972647更多请查看网络栈分析专栏http://blog.csdn.net/column/details/linux-kernel-net.html作者:闫明1、alloc_
skb
thecloud
·
2012-09-13 17:00
linux
Linux内核--网络协议栈深入分析(二)--sk_buff的操作函数
article/details/7972647更多请查看网络栈分析专栏http://blog.csdn.net/column/details/linux-kernel-net.html作者:闫明1、alloc_
skb
yming0221
·
2012-09-13 17:00
环回设备接口(loopback)上如何发送和接收数据报
structnet_device表示一个网络设备接口,该结构体的成员hard_start_xmit是一个函数指针,用于完成数据报在网络上的发送工作,其原型是:int(*hard_start_xmit)(structsk_buff*
skb
AssassinWu
·
2012-09-11 07:04
linux
网络
loopback发送和接收数据
javascript跨域问题的总结
javascript处于安全的考虑,不允许访问不同域名的文档,不同域不仅包括不同的主域名也包括主域名和子域名,一个主域名下的不同子域名(如:http://
skb
.kuxun.cn和http://piao.kuxun.cn
zhongyi_hlju
·
2012-09-05 13:53
JavaScript
跨域
javascript跨域问题的总结
javascript处于安全的考虑,不允许访问不同域名的文档,不同域不仅包括不同的主域名也包括主域名和子域名,一个主域名下的不同子域名(如:http://
skb
.kuxun.cn和http://piao.kuxun.cn
zhongyi_hlju
·
2012-09-05 13:53
javascript
跨域
Web前端
Linux网络协议栈 -- socket创建(3)
其主要的初始化工作是在函数sock_init_data()中完成的: voidsock_init_data(structsocket*sock,structsock*sk) { /* 初始化其三个队列*/
skb
_queue_head_init
zhaqiwen
·
2012-07-07 22:00
Linux网络协议栈(四) -- 链路层(1)
sk_buff数据结构,并将接收到的数据帧从网络适配器I/O端口拷贝到sk_buff缓冲区中;(2) 从数据帧中提取出一些信息,并设置sk_buff相应的参数,这些参数将被上层的网络协议使用,例如
skb
zhaqiwen
·
2012-07-04 15:00
数据结构
linux
list
网络协议
input
action
Linux网络协议栈(二) -- 套接字缓存(socket buffer)
Linux网络核心数据结构是套接字缓存(socketbuffer),简称
skb
。它代表一个要发送或处理的报文,并贯穿于整个协议栈。
zhaqiwen
·
2012-07-04 14:00
L4协议和raw ip处理
L4协议的注册:位于IPv4之上的L4协议是由net_protocol数据结构定义的1:structnet_protocol{2:int(*handler)(structsk_buff*
skb
);3:void
我是*李世民*
·
2012-06-02 19:00
mini2440网卡驱动DM9000之dm9000_start_xmit
/*调用时机:当网卡有数据需要发送的时候,该函数被调用*/staticintdm9000_start_xmit(structsk_buff*
skb
,structnet_device*dev){ unsignedlongflags
lucien_cc
·
2012-05-25 15:00
struct
IO
command
测试
存储
buffer
iostat中文详解
$iostat-d-k110Device:tpskB_read/
skB
_wrtn/
skB
_readkB_wrtnsda39.2921.141.4444133980729990031sda10.000.0
xuqq999
·
2012-05-24 14:39
iostat
centos
Linux高端内存映射(中)
都有自己的临时内核映射窗口,根据不同的需求,选择不同的窗口来创建映射,这些窗口都以枚举类型定义在km_type中enumkm_type{ KMAP_D(0)KM_BOUNCE_READ, KMAP_D(1)KM_
SKB
_SUNR
vanbreaker
·
2012-05-18 17:00
Linux高端内存映射(中)
根据不同的需求,选择不同的窗口来创建映射,这些窗口都以枚举类型定义在km_type中 enum km_type { KMAP_D(0) KM_BOUNCE_READ, KMAP_D(1) KM_
SKB
_S
xitong
·
2012-05-18 17:00
linux
网络子系统在链路层的收发过程剖析(三)
*queue=&__get_cpu_var(softnet_data); for(;;){ local_irq_disable();
skb
zdblw
·
2012-05-04 15:00
网络子系统在链路层的收发过程剖析(一)
1),
Skb
_buff/*Toallow64Kframetobepackedassingleskbwithoutfrag_list*/#defineMAX_
SKB
_FRAGS(65536/PAGE_SIZE
zdblw
·
2012-05-04 15:00
list
网络
IO
struct
header
UP
内核构造
skb
数据包的实现总结
http://blog.csdn.net/macrossdzh/article/details/5438306http://blog.chinaunix.net/space.php?uid=20779306&do=blog&id=184570http://bbs.chinaunix.net/thread-1941060-1-1.htmlhttp://bbs.routerclub.com/home.
lucien_cc
·
2012-05-02 19:00
多队列网卡简介以及Linux通过网卡发送数据包源码解读
数据包的实体在内核中以结构体sk_buff(
skb
),形如:多队列:一个网卡可以拥有多个队列接下来,看看TX引擎是如何工作的(注:对于发送和接收数据包有两个名词,分别应对TX,RX)解释:函数-dev_queue_xmit
yanghua_kobe
·
2012-04-21 21:00
c
linux
网络
user
buffer
引擎
warning: assignment from incompatible pointer type (注册hook时出现了)
在中的钩子函数的签名是:unsignedintnf_hookfn(unsignedinthooknum,structsk_buff**
skb
,conststructnet_device*in,conststructnet_device
nemo2011
·
2012-03-11 14:00
struct
hook
网络驱动移植之sk_buff结构体及其相关操作函数(下)
2、结构体相关操作函数 (1)、dev_alloc_
skb
实际上,函数dev_alloc_
skb
最终是调用__alloc_
skb
函数来分配数据缓冲区和sk_buff结构体的,如下图: 从dev_alloc_
skb
npy_lp
·
2012-02-16 22:00
linux
网络
struct
cache
null
NetWork
使用netlink机制在内核进程和用户空间进程通信
defineNETLINK_TEST21structsock*nl_sk=NULL;EXPORT_SYMBOL_GPL(nl_sk);voidnl_data_ready(structsk_buff*__
skb
alex_xhl
·
2012-02-05 10:00
struct
socket
Module
command
kill
input
误用kfree()释放
skb
导致内存泄露
前段时间写的一个转发模块在现网应用后几台设备出现了不同程度的内存泄露大约4-15天设备内存耗尽泄露速度因业务压力和网络丢包情况而不同经历了N次的代码review和一个不眠之夜后终于找到了原因在一处释放
skb
kernel_digger
·
2012-01-13 21:00
分析
skb
和网卡驱动的关系
1.发送的
skb
是什么样?
xiyu_1986
·
2012-01-04 13:00
netlink 内核与用户层互通信
skb
常用操作函数,比较容易弄混
skb
_put:
skb
->tail+=len,
skb
->len+=lenskb_pull:
skb
->data+=len,
skb
->len-=lenskb_push:
skb
echoisland
·
2011-12-21 15:00
function
socket
centos
Module
null
hook
网络数据包收发流程(四):协议栈之packet_type
进入函数netif_receive_
skb
()后,
skb
正式开始协议栈之旅。先上图,协议栈大致过程如下所示:跟OSI七层模型不同,linux根据包结构对网络进行分层。
174181597
·
2011-12-04 20:20
职场
休闲
netif_receive_
skb
函数解析
intnetif_receive_
skb
(structsk_buff*
skb
){//略去一些代码rcu_read_lock();//第一步:先处理ptype_all上所有的packet_type->func
174181597
·
2011-12-04 20:05
职场
休闲
linux协议栈
netif_receive_
skb
函数解析
intnetif_receive_
skb
(structsk_buff*
skb
){ //略去一些代码 rcu_read_lock(); //第一步:先处理ptype_all上所有的packet_type
174181597
·
2011-12-04 20:05
职场
休闲
函数解析
协议栈的几个关键函数
net\core\dev.c intnetif_receive_
skb
(structsk_buff*
skb
);接受数据接受数据包。
174181597
·
2011-12-04 20:18
职场
休闲
协议栈的几个关键函数
sock_init
. */ sk_init(); /* *InitializeskbuffSLABcache */
skb
_init(); /* *Initializetheprotocolsmodule. */
zkylqh123
·
2011-11-23 20:00
数据链路层3
5处理输入数据帧netif_receive_
skb
函数是napi_struct实例的poll函数使用的,帮助函数处理输入数据帧。
yuejiewc
·
2011-11-22 22:00
数据结构
优化
list
struct
网络
linux内核
深度探索套接字缓冲区 sk_buff
skb
http://blog.csdn.net/aaa6695798/article/details/4879271 套接字缓冲区用结构体structsk_buff表示,它用于在网络子系统中的各层之间传递数据,处于一个核心地位,非常之重要。它包含了一组成员数据用于承载网络数据,同时,也定义了在这些数据上操作的一组函数。下面是其完整的定义: structsk_buff{ structsk
echoisland
·
2011-11-17 13:00
cache
网络
struct
header
DST
destructor
IPsec问题一
首先接收一个IPsec包(tunnel模式)形式如下:IPa+ESP+IPb+L4 经过xfrm_rcv后变成IPb+L4,其中
skb
->sp保存的是esp(xfrm-state).,之后交给netif_rx
scottgly
·
2011-11-16 19:00
网络协议的初始化dev_add_pack
在数据包接收过程的那篇笔记中可以知道,在数据包的处理函数netif_receive_
skb
中,会先看ptype_all中是否有注册的协议,如果有,则调用相应的处理函数,然后再到ptype_base中,找到合适的协议
dianhuiren
·
2011-10-31 10:00
socket
struct
网络
网络协议
null
存储
ABAP常用的表,参数介绍
SKA1 总账科目主记录(科目表) 科目表层数据SKAT 总帐科目主记录(科目表:说明) 包括语言代码
SKB
1
foxeatapple
·
2011-10-13 15:00
Date
function
calendar
layout
语言
callback
SAP MM
GL部分: FAGLFLEXT 新总账汇总表 GLT0 旧总帐汇总表 SKA1 总账科目主记录 SKAT 总帐科目主记录(科目表:说明)
SKB
1 总帐科目主记录 (公司代码) 
bingxuecai
·
2011-10-06 21:00
SAP MM
SKB
几个复制函数的区别
1、
skb
_clone()
Skb
_clone()函数只是复制sk_buff结构,并不复制
skb
的数据缓冲区。Clone后的sk_buff结构与原始的sk_buff指向同一数据缓冲区。
scottgly
·
2011-09-26 12:00
cache
function
header
buffer
reference
Allocation
dm9000a驱动源码分析(三)
. */ staticint dm9000_start_xmit(structsk_buff*
skb
,structnet_device*dev) { unsignedlongflags;
jacobywu
·
2011-09-24 17:00
struct
IO
网络
command
NetWork
layer
Linux内核分析 - 网络[八]:IP协议
ip_rcv进入IP层报文接收函数 丢弃掉不是发往本机的报文,
skb
->pkt_type在网卡接收报文处理以太网头时会根据dstmac设置,协议栈的书会讲不是发往本机的广播报文会在二层被丢弃,实际上丢弃是发生在进入上层之初
qy532846454
·
2011-09-02 21:00
网络
struct
null
input
linux内核
ARMLINUX网卡驱动分析
网络协议接口层1功能:给上层协议提供透明的数据包发送和接收接口2定义在/include/linux/netdevice.h中3函数原型:int dev_queue_xmit(structsk_buff*
skb
lishaman
·
2011-09-02 09:00
网络数据包收发流程(四):协议栈之packet_type
进入函数netif_receive_
skb
()后,
skb
正式开始协议栈之旅。先上图,协议栈大致过程如下所示:跟OSI七层模型不同,linux根据包结构对网络进行分层。
jw212
·
2011-09-01 10:00
数据结构
list
网络
struct
socket
hook
修改Linux内核导致网络无法使用问题解决
linux2.6.37.6内核版本net/sched/sch_generic.c文件,在文件中添加:+#includestaticintpfifo_fast_enqueue(structsk_buff*
skb
Gavin_dinggengjia
·
2011-08-25 13:00
linux
struct
tcp
网络
linux内核
ip_queue_xmit函数
intip_queue_xmit(structsk_buff*
skb
,intipfragok) { structsock*sk=
skb
->sk; structinet_sock*inet
abc78400123
·
2011-08-17 19:00
struct
socket
header
null
Build
DST
linux2.6中xfrm框架的dst_output的处理过程
内核中ipsec的dst_output处理过程,当执行第一个dst_output时,这时会进入xfrm4_outpot,下面是这个函数的代码:intxfrm4_output(structsk_buff*
skb
gujing001
·
2011-08-05 00:00
linux
框架
struct
hook
DST
output
Linux内核实践 - 如何添加网络协议[二]:实现
但无论报文怎样的流动,核心是报文所在设备(
skb
->dev)的变化,相当于各层之间传递的交接棒。 按照上述思路,brcm协议接收的处理作为模块brc
qy532846454
·
2011-07-30 10:00
Linux内核中sk_buff分析
而sk_buff的内存布局可以分作3个段,第一个就是sk_buff自身,第二个是linear-databuff,第三个是paged-databuff(也就是
skb
_sh
thecloud
·
2011-07-15 22:00
linux
Linux内核中sk_buff分析
而sk_buff的内存布局可以分作3个段,第一个就是sk_buff自身,第二个是linear-databuff,第三个是paged-databuff(也就是
skb
_s
yming0221
·
2011-07-15 22:00
数据结构
cache
tcp
header
destructor
linux内核
Linux内核中sk_buff分析
而sk_buff的内存布局可以分作3个段,第一个就是sk_buff自身,第二个是linear-databuff,第三个是paged-databuff(也就是
skb
_sh
soboer
·
2011-07-15 22:00
linux
LINUX协议栈详解 流控TC
数据包发送是通过dev_queue_xmit实现的,if(q->enqueue){ rc=__dev_xmit_
skb
(
skb
,q,dev,txq);
hongchunhua
·
2011-07-14 17:32
LINUX内核协议栈
TCP/IP
LINUX协议栈详解 协议处理
__netif_receive_
skb
协议处理的开始,主要的数据结构是ptype_all和ptype_base,其中ptype_all是一个链表结构,ptype_base则是一个数组,并通过hash来type
hongchunhua
·
2011-07-13 23:06
LINUX内核协议栈
TCP/IP
教你修改以及重构
skb
一:内核态基于Netfilter构造数据包主要有两种方式:1.alloc_
skb
申请一个
skb
结构体,然后根据实际的应用填充不同的成员,或者基于当前数据包的
skb
, 调用
skb
_copy()
sahusoft
·
2011-07-13 22:00
struct
tcp
Module
null
hook
通过路径获取媒体文件信息
hi.baidu.com/luodaijun/blog/item/b487abaf8b0475c17dd92afd.html http://blog.sina.com.cn/s/blog_77dab8e20100
skb
7
wangxiaohigh
·
2011-07-12 16:00
文件
上一页
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
其他