自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Windeal

Linux、网络协议栈、网络通信

  • 博客(8)
  • 资源 (25)
  • 收藏
  • 关注

转载 linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法

转载自:Aric小屋 的博客linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法变量替换和变量默认值设置是紧密相关的,至少从概念出发是如此。参数扩张是将类似于变量的参数用它的值来替换。例如

2015-05-20 17:07:42 751

原创 unregister_netdevice: waiting for eth1 to become free?错误

dev_hold和dev_put是配对使用的,一个用来引用计数加一,一个用于引用计数减一。 查看模块代码,没有发现单独直接使用dev_hold的情况。那会不会是简介调用呢,仔细查找了好久,果然是间接调用。 在我们一些模块代码中,经常会通过dev_get_by_name来获取设备信息。而dev_get_by_name封装了dev_hold,导致引用计数加一。由于dev_get_by_name是内核提供的接口,不熟悉的coder很可能不晓得这点,也没有注意到需要调用dev_put.,于是便有了上

2015-05-19 16:29:09 15303 2

原创 深入理解Linux网络技术内幕——L4层协议与Raw IP的处理

我们简单了解下L4层协议和Raw IP是如何与IP层进行交互的。L4层协议L4层协议可以通过静态编译和模块配置两种方式加入内核。比较重要的协议如TCP、UDP、ICMP通常是静态编译至内核。一些不常用的或者比较特殊的协议,则是通过内核配置加入内核。如IGMP,SCTP,IPIP等等。L4层协议的注册L4层协议有net_protocol结构定义:/* This is us

2015-05-18 14:19:27 9053

原创 深入理解Linux网络技术内幕——IPv4 分段与重组

封包的分段和重组是IP协议最重要的工作之一。IPv4报头中有一个len字段(用于表示报文的总长度,单位:字节)占16bit,因此,封包的最大尺寸定义为64K,(2^16/1024=64)。但是,在实际网络传输中,没有几个网络接口能够传输64K这么大的封包,而是有一个MTU表示其最大传输单元。这样,当要传输的封包大于MTU时,就需要对封包进行分段。 这里需要说明,我们指的MTU,不仅

2015-05-18 11:07:18 3260

原创 深入理解Linux网络技术内幕——IPv4选项的处理

IP选项介绍IP首部中有4bit用于表示首部长度,其单位是4个字节,所以,IP首部的最大长度是15*4=60字节(4bit最大可以表示到15),而IP固定首部的长度是20字节,所以一个IP首部最大允许有40字节长度的选项。IP选项有两种格式 单字节和多字节对于多字节选项,其长度有length字段标识,另外其Optiondata并不是从32bit的边界开始的。Length

2015-05-14 16:31:50 4523

原创 深入理解Linux网络技术内幕——IPv4 报文的传输发送

报文传输,指的是报文离开本机,发往其他系统的过程。传输可以由L4层协议发起,也可以由报文转发发起。在深入理解Linux网络技术内幕——IPv4 报文的接收(转发与本地传递)一文中,我们可以看到,报文转发最后会调用dst_output与邻居子系统进行交互,然后传给设备驱动程序。 这里,我们从L4层协议发起的传输,最后也会经历这一过程(调用dst_output)。本文讨论的是L4层协议发起的传

2015-05-14 14:47:50 2374

原创 深入理解Linux网络技术内幕——IPv4 报文的接收(转发与本地传递)

我们知道,报文经过网卡驱动处理后,调用net_receive_skb传递给具体的协议处理函数,对于IPv4报文来说,其协议处理函数就是ip_rcv了,ip_rcv在进行一些健康检查等操作后,会调用ip_rcv_finish来处理报文。这也是IPv4协议对报文接收处理的开始。我们先看下ip_rcv_finish源代码:本地传递转发报文转发有下面几个步骤完成:1. 处理IP选项2. 确定封包可以被转发3.递减封包头部的TTL字段,如果TTL字段为0,则丢弃该封包4.根据路径相关MTU,在必要

2015-05-14 09:29:48 4861

原创 深入理解Linux网络技术内幕——IPv4 概念

我们可以大致看出数据在IPv4协议中的流向,接收报文 设备驱动处理完硬件介绍到的数据后,IPv4协议的ip_rcv函数(net_receive_skb调用)得到了属于IPv4的报文,接着调用ip_rcv_finish对报文进行分析。判断是该转发还是交付本地上层协议。 如果是本地报文,则传给ip_local_deliver处理,如果是转发,那就交付ip_forward进行转发处理。发送报文 对于接收到的属于转发的报文(来自ip_forward_finish)以及L4层传下来的报文,需要进行分析后传给

2015-05-13 15:51:38 1631

OpenStack企业云平台架构与实践.pdf

本书结合作者亲身经历的各类OpenStack的咨询、规划和实施经验,以循序渐进的方式,从理论和工程角度,讲述了如何将OpenStack(本质上只是一堆相关的进程和服务)变成企业可靠的、托管企业各类生产环境的云平台的方方面面,让OpenStack真正变成我们身边默默无闻但又实实在在的环境的一分子。本书分为10章,分别介绍了OpenStack与云,OpenStack社区,OpenStack与AWS、VMware、虚拟化管理工具,虚拟机管理程序与典型应用,OpenStack架构与组件,OpenStack部分组件安装示例,系统定制技术,OpenStack部署,第三方工具搭建OpenStack运行环境,九州云Animbus融合架构一体机解决方案等内容。

2018-04-25

TCP-IP详解卷2-实现.pdf

CP/IP详解·卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。《TCP/IP详解·卷2:实现》不仅说明了插口API和协议族的关系以及主机实现 与路由器实现的差别。还介绍了4.4BSD-Lite版的新的特点。《TCP/IP详解·卷2:实现》适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。

2018-04-13

UNIX环境高级编程 中文第3版

《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据新的标准对内容进行了修订和增补,反映了新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了众多应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。   《UNIX环境高级编程(第3版)》概念清晰,阐述精辟,对于所有层次UNIX/Linux程序员都是一本不可或缺的参考书。

2018-01-15

libev-官方手册

libev是高性能事件循环/事件模型的网络库,并且包含大量新特性。 它是继lievent和Event perl module之后的一套全新网络库。它追求的目标:速度更快,bug更少,特性更多,体积更小。

2017-06-12

彻底搞定C指针 高清版

姚云飞先生的大作《彻底搞定C指针》是互联网上中文C/C++界内为数不 多的专门阐述C指针问题的优秀文献资源之一。

2014-12-26

cntlm(设置全局域代理)

解决ISA+Windows域 环境下,一些无法设置域代理的软件无法连接网络的问题

2014-09-25

H.264编码源代码(单帧,简单易用)

H.264编码源代码,就几个文件,容易看懂,可以通过调用几个函数实现一个视频帧的编解码。

2014-03-31

算法分析与设计+王晓东

本书以算法设计策略为知识单元 系统地介绍计算机算法的设计方法与分析技巧 以期为计算机科学与技术学科的学生提供广泛而坚实的计算机算法基础

2014-03-11

学生成绩管理系统

学生成绩管理系统 VC6 可运行

2011-12-29

Tab控件的使用

Tab控件的使用

2011-12-29

CMMI3 开发规范文档

CMMI3 开发规范文档

2011-12-29

MFC类库详解MSDN

中文版的MFC类库详细解析。具有索引功能。能够较快地查询MFC基础类库。方便编程开发。

2011-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除