原创 C++ STL 容器 vector

vector 是 C++ 對數據結構動態數組的實現。要使用 vector,請在程序頭添加: #include <vector> using name space std; vector 對象的定義與初始化 vector<in

原创 帶你深入理解矩陣乘法

爲了不浪費大家寶貴的時間,開頭我先簡要說明一下這篇博文對哪些讀者可能會有幫助 1、你是正在學習矩陣的乘法運算,覺得矩陣的乘法掌握起來很困難 2、你已經學會了矩陣乘法,但如果你在計算矩陣乘法時還在使用“一行乘一列得一數”的方法,那我強烈建議

原创 ovs入門實驗

ovs,全稱OpenvSwitch,是SDN網絡架構中目前使用的最爲頻繁的虛擬交換機。 本實驗教程帶你完成一個基礎的ovs入門實驗。 實驗環境:VMware,3臺Ubuntu14.04虛擬機,其中一臺爲裝有ovs的服務器,另外兩臺作爲客戶

原创 OpenvSwitch key模塊詳解

struct sw_flow_key { /*ip隧道層------------------------------------------------------------------------------------------

原创 sendip 快速入門

sendip是linux下的命令行發包工具 命令模式: sendip 網絡層 傳輸層 數據 domain 其中 domain 是目的主機,即此數據包的第一個路由目標,可使用網址和 ip。 常用命令參數: -d 要攜帶的數據。使用參數  r

原创 OpenvSwitch源碼安裝教程

OpenvSwitch是SDN網絡架構中目前使用最爲廣泛的虛擬交換機。 OpenvSwitch官網:www.openvswitch.org 官方文檔中有詳盡的安裝說明,但較爲繁瑣,這裏給出一個精簡的從源碼編譯安裝步驟。 實驗環境:ubun

原创 C++ 查找對象算法

C++ 的查找算法用於在一個指定序列中搜索一個指定值或者一個值序列。 算法1:查找特定元素 find (beg, end, val) 查找由迭代器beg和end所指示的序列中第一個等於val的元素,返回該元素的迭代器。 find_i

原创 OpenvSwitch 流表查詢詳解

sw_flow struct sw_flow { struct rcu_head rcu; struct { struct hlist_node node[2]; u32 hash; } flow_table, ufid_

原创 ftrace 使用快速入門

ftrace默認的安裝目錄爲 /sys/kernel/debug/tracing/ ftrace的基本操作方式就是向此目錄下的某些文件中寫入值,打開此目錄:                       ftrace的一般使用流程: 設置跟

原创 幾種排列生成算法的數學原理解析

對於有限數列: 易知其共有 n! 個不同的排列。爲了在枚舉這些排列時不遺漏,需要定義一種遍歷規則,這種遍歷規則便稱爲計數法。   計數法可分爲兩類:樹圖法、逆序法。 中介數: 中介數記錄了一個排列的全部信息,根據中介數可以確定的寫出一個

原创 C++重載vector按行輸入輸出

重載vector的輸入/輸出符,使得: 輸入:讀取一行輸入,以空格分開各元素。 輸出:輸出vector中的各元素,以空格分開,結尾不輸出空格。 #include<iostream> #include<vector> #include<s

原创 Ubuntu使用root用戶登陸圖形化界面

設置root賬戶密碼 sudo passwd root 修改配置文件 vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 添加新行 greeter-show-manual-login=

原创 C++讀取一行輸入到數組

#include<iostream> #include<string> #include<sstream> #include<vector> using namespace std; int main() { string lin

原创 generic netlink 編程快速入門

目錄   一、generic netlink 消息結構 二、接口搭建過程 kernel端程序的準備 1、定義想要傳送的消息種類 2、定義一組命令 3、爲每個命令定義一個響應函數 4、將命令與相應函數關聯起來 5、創建一個命令族 6、向內核

原创 C++ set 用法詳解

set 是數學中“集合”概念的實現,故 set 中不會存在任意兩個相同的元素。 定義 set<int> set_1 初始化 由於 set 中不允許有重複的元素,故 set 對象只接受列表初始化(C11 標準支持),如 set<int>