博客专栏  >  云计算/大数据   >  openVswitch(OVS)源代码分析

openVswitch(OVS)源代码分析

openVswitch,是一个开放的虚拟交换机(open virtual switch);它是实现网络虚拟化SDN的基础,它是在开源的Apache2.0许可下的产品级质量的多层虚拟交换标准。openVswitch较物理交换机而言有着更低的成本和更高的工作效率......

关注
42 已关注
12篇博文
  • openVswitch(OVS)源代码分析 upcall调用(一)

    看了下upcall()函数的大体实现,其中主线是用Linux内核中的NetLink通信机制。而其中涉及到一些其他知识点,大部分在前面已经分析过了,除了vlan知识。现在来想下为什么有upcall()函...

    2014-11-27 15:07
    3175
  • openVswitch(OVS)源代码分析 upcall调用(之linux中的NetLink通信机制)

    如果看了前面的源码分析的就会知道,在什么情况下会调用upcall函数呢?就是在一个数据包查找不到相应的流表项时,才会调用upcall函数(比如一个数据包第一次进入这个内核,里面没有为这个数据包设定相应...

    2014-11-04 19:13
    2443
  • openVswitch(OVS)源代码之linux RCU锁机制分析

    RCU是read copy udate的缩写,按照单词意思就知道这是一种针对数据的读、复制、修改的保护锁机制。锁机制原理: 第一、写数据的时候,不需要像读写锁那样等待所有锁的释放。而是...

    2014-10-15 19:07
    2753
  • openVswitch(OVS)源代码分析之工作流程(哈希桶结构体的解释)

    需要的流表项链表头结点比较少(total_nr_elements < 1024),那么不需要分配一个parts指针(一个parts数组指针元素有一个页大小的空间)来存储,如果total_nr_elem...

    2014-10-09 21:31
    3498
  • openVswitch(OVS)源代码的分析技巧(哈希桶结构体为例)

    于是在整个项目中进行搜索得,也可以理性的去分析下哪个函数会调用下面的flex_array申请函数,其实就是buckets内存申请函数(alloc_buckets)了;在该函数中有行代码为:bucket...

    2014-09-25 21:37
    3383
  • OVS datapath模块分析:packet处理流程

    这来主要看看ovs从网络接口收到packet后的一系列操作。      在内核模块启动的时候会初始化vport子系统(ovs_vport_init),各种vport类型,那么什么时候会调用相应的函数...

    2014-07-25 12:24
    2237
  • openVswitch(OVS)源代码分析之工作流程(flow流表查询)

    本文分析了openVswitch中的核心部分flow流表查询(flow_lookup),从流表查询的大体框架或者说理论开始一步一步的结合openVswitch中的数据结构图示(openVswitch的...

    2014-09-23 21:03
    7187
  • openVswitch(OVS)源代码分析之工作流程(key值得提取)

    我依然去简单分析key值得提取函数,有两个原因:第一、key值作为数据结构在openVswitch中是非常重要的,后期的一些流表查询和匹配都要用到key值;第二、想借机复习下内核网络协议栈的各层协议信...

    2014-09-22 20:53
    4168
  • openVswitch(OVS)源代码分析之工作流程(数据包处理)

    在openVswitch中数据包的处理是其核心技术,该技术分为三部分来实现:第一、根据skb数据包提取相关信息封装成key值;第二、根据提取到key值和skb数据包进行流表的匹配;第三、根据匹配到的流...

    2014-09-18 20:51
    6568
  • openVswitch(OVS)源代码分析之工作流程(收发数据包)

    加载网卡时把网卡绑定到openVswitch端口上(ovs-vsctl add-port br0 eth0),绑定后每当有数据包过来时,都会调用该函数,把数据包传送给这个函数去处理。而不是像开始那样(...

    2014-09-16 22:52
    7852
  • openVswitch(OVS)源代码分析之数据结构

    记得Pascal之父、结构化程序设计的先驱Niklaus Wirth最著名的一本书,书名叫作《算法 + 数据结构 = 程序》。还有位传奇的软件工程师Frederick P. Brooks曾经说过:“给...

    2014-09-10 22:18
    8500
  • openVswitch(OVS)源代码分析之简介

    云计算是个全世界的话题,所以也有全世界的能人异士来为实现这个云计算而奋斗。我现阶段遇到的有关云计算的技术就是openVswitch和docker技术。那就先从openVswitch开始介绍起,我会用一...

    2014-09-09 23:39
    9957
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部