自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牛小然的收藏夹

以抄为主,创作为辅

  • 博客(22)
  • 收藏
  • 关注

转载 Linux中Kill进程的N种方法

ong long ago,曾有一个想法,就是完全脱离windows,使用linux生活、工作。以前迫于各种专业工具不支持linux,只能无奈的使用xp。最近工作内容是Android移植+单片机开发,android就不说了,必须用linux开发。单片机也找到一些linux的工具,于是乎有不少时间是在linux上进行开发工作。自然而然的,经常要进程管理。linux的进程管理手段丰富。想怎么杀进程都可以

2018-04-20 08:55:50 205

转载 htonl(), ntohl(), htons(), ntohs() 函数

在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs(),htons()这4个函数。网络字节顺序与本地字节顺序之间的转换函数:htonl()--"Host to Network Long"ntohl()--"Network to Host Long"htons()--"Host to Network Short"nto...

2018-04-12 09:30:16 291

转载 C语言中const关键字的用法

转载请注明出处http://blog.csdn.net/xingjiarong/article/details/47282255关键字const用来定义常量,如果一个变量被const修饰,那么它的值就不能再被改变,我想一定有人有这样的疑问,C语言中不是有#define吗,干嘛还要用const呢,我想事物的存在一定有它自己的道理,所以说const的存在一定有它的合理性,与预编译指令相比,const修...

2018-04-04 17:13:16 246

转载 while read line

循环中的重定向或许你应该在其他脚本中见过下面的这种写法:while read linedo       …done < file刚开始看到这种结构时,很难理解< file是如何与循环配合在一起工作的。因为循环内有很多条命令,而我们之前接触的重定向都是为一条命令工作的。这里有一个原则,这个原则掌握好了,这个问题就很简单了:对循环重定向的输入可适用于循环中的所有需要从标准输入读取数据的命令...

2018-03-21 08:46:08 1185

转载 bash 括号(小括号,双小括号,中括号,双中括号,大括号)

小括号()和大括号{}主要包括一下几种${var} $(cmd) ()和{} $((exp)) ${var:-string},${var:+string},${var:=string},${var:?string} $(var%pattern),$(var%%pattern),$(var#pattern),$(var##pattern)1.shell变量应用原型 ${var}2.变量替换 ${cm...

2018-03-17 15:17:50 406

原创 OVS源码ofpbuf与nlattr数据结构分析

在ovs-dpdk源码中,若在datapath classifier中未找到相应的flow匹配,则将初始化一个ofpbuf类型的action,然后通过handle_packet_upcall函数进入upcall流程,在ofproto classifier中通过调用xlate_action根据OpenFlow协议为action赋值,最后将该action向下“注入”到datapath classifi...

2018-03-17 13:23:10 1005

转载 BASH CHEATSHEET (中文速查表)

 # BASH CHEATSHEET (中文速查表) - by skywind (created on 2018/02/14) # Version: 28, Last Modified: 2018/02/26 04:08 # https://github.com/skywind3000/awesome-cheatsheets ##################################...

2018-02-26 08:55:33 4275 2

转载 linux中shell变量$#,$@,$0,$1,$2的含义解释

摘抄自:ABS_GUIDE下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdflinux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数...

2018-02-23 08:54:32 168

原创 OVS-DPDK Datapath Classifier

OVS-DPDK存在三层查询表/缓存。输入包首先将在EMC中进行匹配,若未匹配上那么将被送如dpcls。dpcls由一个元组空间查找算法(tuple space search TSS)实现,因此可对包头进行任意的逐位匹配。若包在dpcls中仍未匹配上那么将被送入openflow pipeline即ofproto classifier中进行处理,而该ofproto classifier由SDN控

2018-01-24 09:38:17 2076

原创 OVS源码pmd_thread_main分析

PMD线程在其轮询列表中持续轮询输入端口,在每一个端口上最多可同时收32个包(NETDEV_MAX_BURST),根据激活的流规则可将每一个收包进行分类。分类的目的是为了找到一个流,从而对包进行恰当的处理。包根据流进行分组,并且每一个分组将执行特定的动作。flow由dp_netdev_flow数据结构所定义,并保存在flow_table的hash表内,flow中主要有以下信息:

2018-01-23 16:08:29 1909

原创 openflow协议相关

OpenFlow交换机是一个由远程控制器通过OpenFlow协议控制的交换机,其组件如下:OpenFlow Pipeline处理决定了报文在各个Flow Table中如何相互作用,报文的pipeline处理流程如下:报文进入一个Flow Table后:1. 找到优先级最高的flow entry2. 施行指示:     i. 修改报文&更新匹配域(施行动作指示)

2018-01-20 15:27:48 422

转载 Open vSwitch系列之数据结构解析深入分析Hmap

作为Open vSwitch系列的第一篇文章,选择分析哪个数据结构我思考很久,最后还是选择比较常见而且很基础的结构hmap。在Open vSwitch世界中很多地方都是由hmap组织、关联起来的,因此我们将这部分分析透彻是很有必要的,而且这部分功能相对独立,也可以做日后一个技术积累,最后会有一个demo提供给大家。

2018-01-20 13:06:57 616

转载 Unix域套接字(Unix Domain Socket)介绍

在Linux系统中,有很多进程间通信方式,套接字(Socket)就是其中的一种。但传统的套接字的用法都是基于TCP/IP协议栈的,需要指定IP地址。如果不同主机上的两个进程进行通信,当然这样做没什么问题。但是,如果只需要在一台机器上的两个不同进程间通信,还要用到IP地址就有点大材小用了。其实很多人并不一定知道,对于套接字来说,还存在一种叫做Unix域套接字的类别,专门用来解决这个问题。其A

2018-01-20 13:05:07 3326

原创 OVS源码connmgr_run分析

connmgr即connect manager连接管理器,主要完成OVS网桥的连接管理。每一个网桥ofproto都有一个connmgr实体来管理连接。connmgr主要完成两种连接管理,一种是主动连接(即与控制器连接,作为客户端),一种是被动连接(主要提供ofctl等工具连接请求服务和snoop服务,作为服务端)。connmgr结构体中,all_conns是主动连接,services和snoops

2018-01-18 16:10:09 842

转载 OVS网桥建立和连接管理

前言Open vSwitch作为一个被广泛应用的虚拟交换机,除了完成流表匹配、数据转发等功能外,其自身对网桥的创建更新和连接管理也尤为重要,这是其高性能的保障。本文按照源码的行文思路,从网桥的创建、配置、更新到主动、被动连接管理,依次进行梳理学习。重要结构体:本文将按照下图主线进行分析。其中,会提到一系列有关联的结构体bridge、ofproto、connmgr、ofcon

2018-01-16 20:42:20 2153

转载 HowTo Set Virtual Network Attributes on a Virtual Function (SR-IOV)

his post describes how to set network attributes (VLAN,Priority and MAC) when using SR-IOV device or Para-Virtualized vNIC.(Make sure that ip-route2 standard Linux tool is installed on your machin

2018-01-16 13:52:59 625

原创 OVS源码bridge_run分析

bridge_run主要包含3个部分:bridge_init_ofproto, bridge_run__, bridge_reconfigure.bridge_init_ofproto主要进行ofproto_dpif_class的注册,该类是structofproto_class的具体实现.ofproto_init(const struct shash *iface_hints

2018-01-12 15:24:37 1117

转载 OVS常用命令与使用总结

转载自:http://blog.csdn.net/rocson001/article/details/73163041进程启动1.先准备ovs的工作目录,数据库存储路径等mkdir -p /etc/openvswitchmkdir -p /var/run/openvswitch122.先启动ovsdb-serverovsdb-server /etc/openvsw

2018-01-12 13:41:47 4764

转载 iptables详解

转载自:butbueatiful.blog.chinaunix.net防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。目前市面上比较常见的有

2018-01-12 11:27:07 135

转载 Libvirt学习总结

转载自:http://blog.csdn.net/gaoxingnengjisuan1.什么是libvirt    虚拟云实现的三部曲:虚拟化技术实现-->虚拟机管理-->集群资源管理(云管理)。各种不同的虚拟化技术都提供了基本的管理工具。比如,启动,停用,配置,连接控制台等。这样在构建云管理的时候就存在两个问题:    1) 如果采用混合虚拟技术,上层就需要对不同的虚

2018-01-12 09:01:35 2337

转载 内核态和用户态的区别

当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码中执行。当进程处于内核态时,执行的内核代码会使用当前进程的内核栈。每个进程都有自己的内核栈。当进程在执行用户自己的代码时,则称其处于用户运行态(用户态)。即此时处理器在特权级最低的(3级)用户代码中运行。当正在执行用户程序而突然被中断程序中断时,此时用户程序

2018-01-12 08:53:48 272

转载 OpenvSwitch完全使用手册

http://sdnhub.cn/index.php/openv-switch-full-guide/1 什么是OpenvSwitchOpenvSwitch,简称OVS是一个虚拟交换软件,主要用于虚拟机VM环境,作为一个虚拟交换机,支持Xen/XenServer, KVM, and VirtualBox多种虚拟化技术。OpenvSwitch还支持多个物理机的分布式环

2018-01-12 08:38:11 965

空空如也

空空如也

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

TA关注的人

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