Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

ip_conntrack的extend机制以及扩展

ip_conntrack的extend机制以及扩展

ip_conntrack为无状态无连接的IP增加了一个流记录机制,你可以把任何和一个流相关的东西放进去,但是放在哪里呢?原则上ip_conntrack应该是一个可以无限扩展的东西,但事实上,内核的设计者或者说Netfilter的ip_conntrack设计者并没有给用户程序员留下任何可以扩展它的接口和机制,你只能用现有的连接跟踪机制,虽然可以通过nf_ct_extend_register接口注册一个nf_ct_ext_type,但是这个接口也只是内核源码树...
利用nf_conntrack机制存储路由,省去每包路由查找

利用nf_conntrack机制存储路由,省去每包路由查找

IP是无连接的,因此IP路由是每包一路由的,数据包通过查找路由表获取路由,这是现代操作协议协议栈IP路由的默认处理方式。但是如果协议栈具有流识别能力,是不是可以基于流来路由呢?答案无疑是肯定的。设计思想在Linux的实现中,nf_conntrack可以做到基于流的IP路由,大致思想就是,仅仅针对一个流的第一个正向包和第一个反向包查找标准的IP路由表,将结果保存在conntrack项中,后续的属于同一流的数据包直接取出路由项来使用。背后的思想是:这可以省去查...
Linux路由表的抽象扩展应用于nf_conntrack

Linux路由表的抽象扩展应用于nf_conntrack

思想标准IP路由查找的过程为我们提供了一个极好的“匹配-动作”的例程。即匹配到一个路由项,然后将数据包发给该路由项指示的下一跳。如果我们把上面对IP路由查找的过程向上抽象一个层次,就会发现,其实它还可以有别的用。抽象后的表述为:以数据包的源地址或者目标地址为键值去查询一张表,查到结果项以后执行结果项指示的一个动作。一个结果项为:struct result_node { uint32 network; uint32 netma...
Qt实现Windows远程控制源代码

Qt实现Windows远程控制源代码

用Qt实现的Windows平台远程控制软件,包含源代码和编译后可以运行的程序,服务器端(被控端)为进程形式,客户端(主控端)为图形界面程序。客户端在连接时要设置服务器端的ip地址以及要显示的长度和宽度(不能超过服务器端屏幕分辨率)。推荐阅读:Ubuntu 环境下Gtk与QT编译环境安装与配置 http://www.linuxidc.com/Linux/2013-08/88539.htmLinux系统下QT环境搭建 http://www.linuxidc.c...
使用Python语言高效地处理一个文本文件

使用Python语言高效地处理一个文本文件

使用Python语言高效地处理一个文本文件:# -- encoding: utf-8 --# 脚本功能:在指定的文件中查找指定的字符串# 此脚本接受两个参数# 参数1:指定一个文件名,在这个文件中查找字符串# 参数2:指定一个字符串用于查找from sys import argvfrom os.path import exists# script - 脚本文件自己# file - 指定操作对象文件名称# string - 查找字符串script, file...
Groovy 2.3 trait语法介绍

Groovy 2.3 trait语法介绍

前几天,Groovy 2.3的第二个beta版本发布。Groovy 2.3最重要的新特性之一是trait语法。trait是一组可重用的方法和字段,可以将它们混入到一个或多个类中。一个类可以同时拥有多个trait而不需要使用多重继承(从而避免钻石问题)。Groovy 的详细介绍:请点这里Groovy 的下载地址:请点这里相关阅读:Gradle 打包 Groovy 脚本成 jar与上传到maven repository http://www.linuxidc....
<< 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 >>