- 3
- 0
- 约1.88万字
- 约 21页
- 2017-06-25 发布于河南
- 举报
linux下的sk_buff
Linux TCP/IP 协议栈的关键数据结构Socket
Buffer(sk_buff )
sk_buff 结构可能是 linux网络代码中最重要的数据结构,它表示接收或发送数据包的包头信息。
它在include/linux/skbuff.h中定义,并包含很多成员变量供网络代码中的各子系统使用。
这个结构在 linux 内核的发展过程中改动过很多次,或者是增加新的选项,或者是重新组织已存
在的成员变量以使得成员变量的布局更加清晰。它的成员变量可以大致分为以下几类:
Layout 布局
General 通用
Feature-specific 功能相关
Management functions 管理函数
这个结构被不同的网络层(MAC 或者其他二层链路协议,三层的 IP,四层的 TCP 或 UDP 等)使用,
并且其中的成员变量在结构从一层向另一层传递时改变。L4 向L3 传递前会添加一个 L4 的头部,
同样,L3 向L2 传递前,会添加一个 L3 的头部。添加头部比在不同层之间拷贝数据的效率更高。
由于在缓冲区的头部添加数据意味着要修改指向缓冲区的指针,这是个复杂的操作,所以内核提
供了一个函数 skb_reserve (在后面的章节中描述)来完成这个功能。协议栈中的每一层在
您可能关注的文档
最近下载
- 2025年进城考试音乐试题及答案.docx VIP
- 处方书写规范及点评培训课件.ppt VIP
- 2025年上半年中小学教师资格证考试音乐学科知识与教学能力真题(高级中学)附答案解析.pdf VIP
- 2022考研西医临综冲刺突破课程内部辅导讲义-生物化学(候英建).pdf VIP
- Esperoct 说明书 用户手册.pdf
- DB44_T 2731-2025 石油炼制工业有机溶剂危害治理卫生工程技术规范.docx VIP
- 2026年最新进城考试音乐试题及答案.doc VIP
- 振幅整合脑电图对神经内科意识障碍患者近期预后的预测价值.pptx VIP
- Y社区居家养老服务的现状问题及对策研究.docx VIP
- 芜湖-10kV线路低电压成因分析及治理措施分析.docx VIP
原创力文档

文档评论(0)