999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

OVS環境IPv4/v6數據包轉換

2018-01-20 06:42:04胡宇鴻高鴻峰韋旭勤蔣源
電腦知識與技術 2018年31期

胡宇鴻 高鴻峰 韋旭勤 蔣源

摘要:為實現數據中心虛擬主機在IPv4/6混合使用情況下IPv4與IPv6主機間的數據交換,在開源虛擬交換機(OVS)中匹配確定的v4地址規則,增加數據包轉換模塊,完成內嵌IPv4的IPv6地址的地址轉換和數據包轉換,匹配確定的v6地址到預定v4地址的數據包轉換。

關鍵詞:開源虛擬交換機;IPv4/v6;流表

中圖分類號:TP393.06? ? ? 文獻標識碼:A? ? ? 文章編號:1009-3044(2018)31-0036-02

隨著云計算被越來越多用戶接受,各類IT服務企業均大量建設和擴展數據中心,同時伴隨著IPv4地址的耗盡,IPv6技術在新建或擴展數據中心時被越來越多地采用,但是實現IPv4/v6在數據中心的完全融合、平滑過渡,仍然需要逐步實現。當前虛擬化技術廣泛地被應用到數據中心,虛擬交換機也越來越多地被用來通過標準接口和擴展編程實現服務器分布式管理和大規模網絡自動化。

基于此本文討論基于虛擬交換機環境下IPv4/v6的數據包轉換技術,實現虛擬交換機環境下IPv4/v6主機間的數據交換。

1 虛擬交換機

OpenVswitch是Apache2.0許可下的開源多層虛擬交換機,可實現對數據包的接收、分析和處理,是網絡虛擬化的重要組成部分,同時支持NetFlow、sFlow、SPAN、RSPAN等標準的管理接口和協議。通過與虛擬主機緊密結合能實現比物理交換機工作更高的工作效率,根據實際需求可同時虛擬出多個虛擬端口,與物理交換機相比具有更靈活、成本更低等優勢[1]。

1.1 Linux內核數據包處理流程

常規情況下數據報文由驅動程序處理后從物理網卡獲取數據,如數據報文目的不為本地,則根據路由信息從指定物理接口轉發出去;如報文需本地處理則按照分層原則逐層分析,最后通過用戶態與內核態接口將數據傳送到用戶態由上層應用繼續處理[2]。

在OVS運行條件下,當數據包從物理網卡進入后,需依據OVS虛擬網橋中虛擬端口(vport)所綁定的物理網絡接口信息決定報文是否經過vport進入OVS中,由OVS進行處理。

1.2 OVS組成及數據處理流程

OVS主要組成部件如圖2,ovsdb提供數據庫服務,存儲虛擬交換機的配置信息,利用OVSDB協議與管理端、vswitchd交換信息。vswitchd是OVS的核心部件,通過openflow可與controller通信,使用OVSDB協議與ovsdb-server通信,通過netlink和內核模塊通信,支持多個獨立的datapath網橋,通過更改flow table實現綁定和VLAN等功能[1]。Datapath是OVS的內核模塊,負責執行數據交換,把從接收端口收到的數據包在流表中進行匹配,并執行匹配到的動作。

2 OVS下IPv4/v6數據包轉換

2.1 OVS接收數據處理過程

當虛擬交換機收到數據包,首先完成報文頭的提取并計算key值,根據實際需求選擇使用外部控制器管理或本地流表,虛擬交換機根據key值從第一個流表開始和流表項進行匹配,如果匹配成功,則更新計數器并根據流表中對應的action找到其對應的操作方法,完成相應的動作;匹配不成功,則執行默認的動作或回到Linux內核網絡協議棧中繼續處理。詳細代碼處理過程如圖3[2]。

ovs_vport_receive_packets()接收到數據包后skb生成key值,如果出錯則調用ovs_dp_process_packet交付給datapath處理。正確則利用ovs_flow_tbl_lookup_stats()基于key值進行流表查找,返回匹配的流表項;若不存在匹配,則調用ovs_dp_upcall上傳至用戶空間進行匹配。匹配成功,則調用ovs_execute_actions執行對應的操作。

2.2 IPv4/v6的地址轉換

在本次實現中,當v4地址轉換為v6地址時采用內嵌IPv4的IPv6地址方案實現v4地址到v6地址的轉換[3]。根據預先設定的目標v6子網的方式選擇一個特定的/64前綴,然后加上4個設置為0的8位組構成/96特定網絡前綴,/96位的網絡前綴加上32位的v4地址構成完整的v6地址。

當v6地址轉換為v4地址時,因為v6地址的空間遠遠大于v4地址空間,本次實驗中采用預指定的方式構成v6地址到v4地址的對應。

數據包協議頭轉換如表1、表2[4]。

2.3 OVS中轉換過程的實現過程

目前OVS最新版本支持IPv4和IPv6基本功能,但是并未提供v4/v6數據包轉換的功能。根據OVS數據包接收處理流程,根據需要在匹配流標后轉到指定的action執行對應操作。

定義v4conv6和v6conv4的action。

/* OpenFlow 1.2, 1.3, and 1.4 actions. */

static conststruct ofpact_map of12[]? { OFPACT_HANDLE_V4TOV6, 30 },

static conststruct ofpact_map of12[]? { OFPACT_HANDLE_V6TOV4, 32 },

添加raw action type

enum ofp_raw_action_type {

……

/* OF1.2-1.4(28): void. */

OFPAT_RAW12_HANDLE_V4TOV6,

OFPAT_RAW12_HANDLE_V6TOV4,

……

}

添加HANDLE_V4TOV6的action的處理函數。

Static enum ofperr decode_OFPAT_RAW12_ HANDLE_V4 TOV6(struct ofpbuf *out)

static void encode_HANDLE_EXAMPLE (conststruct ofpact_null *null OVS_UNUSED, enum ofp_version ofp_version, struct ofpbuf *out)

static char *OVS_WARN_UNUSED_RESULT parse_ HANDLE_V4TOV6(char *arg OVS_UNUSED, struct ofpbuf *ofpacts, enum ofputil_protocol *usable_protocols OVS_UNUSED)

static void format_HANDLE_V4TOV6 (conststruct ofpact_null *a OVS_UNUSED, struct ds *s)

convert_IPV4_V6_addr具體實現

static void convert_IPV4_V6_addr(struct sk_buff *skb,__be32 s_ipv6[4],__be32 d_ipv6[4])

{

//按2.2中所述完成IPv4到IPv6報文頭轉換;

}

類似添加HANDLE_V6TOV4的action的處理函數。

static void convert_IPV4_V6_addr(struct sk_buff *skb,__be32 s_ipv4,__be32 d_ipv4)

{

//按2.2中所述完成IPv6到IPv4報文頭轉換;

}

3 結語

本文通過在OVS中實現IPv4和IPv6數據包轉換,為OVS與控制器結合對v4/v6數據包的靈活傳輸、處理及應用做好準備。

參考文獻:

[1] A Linux Foundation Collaborative Project Open vSwitch Documentation [EB/OL]. http://docs.openvswitch.org/en/latest/, 2016.

[2] 張若晨. 基于OpenvSwitch的代理虛擬交換機在SDN網絡中的實現與應用[D]. 廣州: 華南理工大學軟件學院, 2016: 17-22.

[3] BAO C, HUITEMA C, BAGNULO M, et al.IPv6 addressing of IPv4/IPv6 translators[S]. RFC 6052, 2010.

[4] LI X, BAO C, BAKER F. IP/ICMP translation algorithm[S]. RFC 6145, 2011.

主站蜘蛛池模板: 日韩AV手机在线观看蜜芽| 青青操国产| 一区二区影院| 极品私人尤物在线精品首页| 国内毛片视频| 免费毛片a| 天天综合网站| 国产在线精品99一区不卡| 日本高清有码人妻| 国产91视频观看| 国产精品无码作爱| 午夜三级在线| 国产91av在线| 久久久久青草大香线综合精品 | 精品国产99久久| 无码日韩人妻精品久久蜜桃| 欧美a网站| 99精品伊人久久久大香线蕉| 成人亚洲天堂| 女人av社区男人的天堂| 亚洲日产2021三区在线| 天堂成人av| igao国产精品| 97青草最新免费精品视频| 美女高潮全身流白浆福利区| 亚洲天堂视频在线播放| 青青草国产免费国产| www成人国产在线观看网站| 午夜色综合| 成人一级免费视频| 亚洲欧美国产高清va在线播放| 伊人91在线| 这里只有精品在线播放| 亚洲天堂网2014| 久久综合结合久久狠狠狠97色| 久久久精品无码一区二区三区| 欧美怡红院视频一区二区三区| 国产手机在线小视频免费观看| 国产美女叼嘿视频免费看| 91香蕉视频下载网站| 美女无遮挡免费视频网站| 狂欢视频在线观看不卡| 婷婷99视频精品全部在线观看 | 丁香婷婷久久| 国产香蕉国产精品偷在线观看 | 久久黄色免费电影| 十八禁美女裸体网站| 永久免费无码日韩视频| 免费看美女自慰的网站| 亚洲国产av无码综合原创国产| 亚洲一区二区三区国产精品| 久久国产V一级毛多内射| 91视频区| 日韩性网站| 亚洲欧美色中文字幕| 亚洲高清资源| 91九色视频网| 白浆视频在线观看| 91po国产在线精品免费观看| 国产色伊人| 国产十八禁在线观看免费| 亚洲精品自产拍在线观看APP| 久久久久国产一级毛片高清板| 丁香综合在线| 国产一区二区三区免费| 青青青国产视频| h视频在线播放| 精品国产Ⅴ无码大片在线观看81| 午夜人性色福利无码视频在线观看| 91黄色在线观看| 亚洲国产精品一区二区高清无码久久| 国产XXXX做受性欧美88| 日韩成人高清无码| 婷婷色一区二区三区| 亚洲色图在线观看| 黄片在线永久| 亚洲成人精品久久| a毛片基地免费大全| 9cao视频精品| 成人在线欧美| 国产精品久久精品| 国产免费怡红院视频|