国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于路由器虛擬化技術的SDN平臺研究與設計

2016-11-10 08:19黎文偉
光通信研究 2016年5期
關鍵詞:路由器報文交換機

黎文偉,吉 萌,戴 非

(1.武漢郵電科學研究院,武漢 430074; 2.武漢烽火網絡有限責任公司,武漢 430074;3.江西師范大學,南昌 330022)

基于路由器虛擬化技術的SDN平臺研究與設計

黎文偉1,2,吉 萌1,2,戴 非3

(1.武漢郵電科學研究院,武漢 430074; 2.武漢烽火網絡有限責任公司,武漢 430074;3.江西師范大學,南昌 330022)

將路由器虛擬化技術應用于SDN(軟件自定義網絡)中,既可以實現(xiàn)SDN對傳統(tǒng)電信流量的正常轉發(fā),還可以補充當前SDN技術對路由功能支持的不足。在SDN控制器中,擴展南向接口對虛擬路由器的管理和控制,并對路由表和流表進行轉換,進而控制虛擬路由器或Openflow交換機的數(shù)據轉發(fā)功能,可以彌補當前SDN控制器對路由功能支持的不足,并實現(xiàn)SDN流量和傳統(tǒng)電信流量的兼容轉發(fā)。文章在研究虛擬路由器和SDN控制器轉發(fā)功能的基礎上,提出了一種SDN平臺的設計方法和系統(tǒng),并實現(xiàn)了該平臺的基本路由功能,最后對系統(tǒng)調試和評測進行了分析。結果表明,該平臺具有通用性和靈活性好、易于與云計算技術結合等特點。

軟件自定義網絡;虛擬路由器;Openflow協(xié)議

0 引 言

SDN(軟件自定義網絡)[1]和NFV(網絡功能虛擬化)技術是當前網絡領域的發(fā)展熱點,SDN采用控制和轉發(fā)相分離的思想,可以實現(xiàn)網絡的靈活可控和更好的功能拓展。NFV技術可使網絡設備軟硬件解耦,使網絡功能在虛擬機內實現(xiàn)。虛擬化技術[2]是實現(xiàn)NFV的關鍵,隨著通用X86處理器性能的提高,在通用服務器上采用虛擬化技術實現(xiàn)網絡設備的虛擬化,特別是路由器的虛擬化,不僅可實現(xiàn)常規(guī)路由器的功能,還可將NFV和SDN技術結合起來,實現(xiàn)優(yōu)勢互補,并良好地應用于云計算中。

由于目前SDN控制器對三層路由功能支持較弱,導致其在城域網和廣域網中部署困難;而且基于流表的轉發(fā)行為對傳統(tǒng)電信網中某些需要特殊處理的協(xié)議報文支持不足。而虛擬路由器具有完善的三層路由轉發(fā)和協(xié)議報文處理功能,將虛擬路由器應用于SDN控制器中,可以彌補當前SDN控制器[3]的部分不足。對于數(shù)據轉發(fā)層面,由于當前Openflow協(xié)議還在演進和TCAM(三態(tài)內容尋址存儲區(qū))容量限制,Openflow硬件交換機還不成熟,因此轉發(fā)層面還是采用虛擬Openflow交換機,并配合虛擬路由器,完成數(shù)據層面的功能。

1 技術簡介

1.1 技術背景

SDN為新業(yè)務的部署和新協(xié)議的拓展提供了便捷。SDN的實現(xiàn)方式有多種,當前比較流行的是基于Openflow協(xié)議的實現(xiàn)方式。另外,隨著Intel VT技術的發(fā)展和X86處理器性能的改進,純軟件虛擬化技術的性能已經得到了提高,在通用服務器上實現(xiàn)的虛擬路由器已經可以滿足部分商用環(huán)境下所要求的數(shù)據吞吐量和轉發(fā)性能。因此為了彌補當前SDN控制器在三層路由功能方面的不足,并實現(xiàn)SDN流量和傳統(tǒng)電信流量的兼容轉發(fā),可以結合SDN控制器和虛擬路由器的各自優(yōu)勢。從傳統(tǒng)電信網絡流入SDN的流量,可以由SDN控制器控制Openflow虛擬交換機進行轉發(fā);由SDN流向傳統(tǒng)電信網絡的流量,可以由SDN控制器做出判別后,由虛擬路由器進行路徑計算與轉發(fā);傳統(tǒng)電信網絡內部的流量,由虛擬路由器進行轉發(fā);SDN內部的流量,由Openflow虛擬交換機進行轉發(fā)。

Openflow虛擬交換機和虛擬路由器均運行于虛擬機中,云計算系統(tǒng)可以很方便地對虛擬路由器和虛擬交換機進行管理,因而基于本方案實現(xiàn)SDN平臺的方法,不僅有利于SDN技術在現(xiàn)網環(huán)境下的推廣,還可以更好地推動SDN技術應用于云計算環(huán)境中。

1.2 技術框架

圖1所示為基于虛擬路由器的SDN平臺框架圖。圖中,虛擬機中運行虛擬路由器和Openflow虛擬交換機,外部Windows系統(tǒng)中運行SDN控制器。該方案還可結合Openstack的Neutron和Nova節(jié)點實現(xiàn)SDN在云計算系統(tǒng)下的應用。

圖1 基于虛擬路由器的SDN平臺框架圖

虛擬路由器基于Vx Works操作系統(tǒng),相比Linux操作系統(tǒng),Vx Works的實時性和安全性更好。Openflow虛擬交換機可采用pofswitch或Openflow vSwitch。SDN控制器可采用Floodlight。由于傳統(tǒng)電信網絡中路由器需要對某些協(xié)議報文進行包頭處理,而SDN控制器并沒完全提供協(xié)議報文包頭處理的功能,因而當前SDN[4]和電信網絡流量無法完全互通,為了實現(xiàn)流量互通,除了完善SDN控制器的路由協(xié)議功能外,還可在SDN控制器中維護路由表和流表,由它們生成轉發(fā)表,并決定電信網絡和傳統(tǒng)網絡交叉數(shù)據流量的轉發(fā)路徑。

2 SDN平臺設計

SDN平臺的設計包括兩個方面:SDN控制器和虛擬路由器Openflow API(可編程接口)層。SDN控制器除了負責控制Openflow虛擬交換機的轉發(fā)外,還要根據接收到的數(shù)據包判斷轉發(fā)類型,如果涉及到三層路由的轉發(fā)功能,可以將數(shù)據包交給虛擬路由器處理后,再通過SDN控制器生成流表,交由Openflow虛擬交換機轉發(fā)。

2.1 SDN控制器功能拓展

SDN控制器除了要控制Openflow虛擬交換機外,還要實現(xiàn)路由表和流表之間的轉換。傳統(tǒng)電信網絡運行著很多協(xié)議報文,如VLAN(虛擬局域網)、ARP(地址解析協(xié)議)和ICMP(Internet控制報文協(xié)議)等,有些協(xié)議報文到達轉發(fā)節(jié)點時要進行包頭的增減操作,而當前SDN控制器對這些報文的處理能力較弱,因而對這些協(xié)議報文,可以交由虛擬路由器計算出轉發(fā)路徑,形成路由表并由SDN控制器轉換成流表后,再由SDN控制器下發(fā)該流表控制虛擬Openflow交換機進行轉發(fā)。

圖2所示為數(shù)據包在SDN平臺中的流向,可以分為4種情況:傳統(tǒng)網絡內部流量;SDN內部流量;傳統(tǒng)網絡到SDN的流量;SDN到傳統(tǒng)網絡的流量。前兩種情況由于只涉及網絡內部流量交互,因而直接由虛擬路由器或虛擬Openflow交換機控制轉發(fā)即可。而后兩種情況由于涉及到SDN和傳統(tǒng)網絡之間的流量交互,因而其轉發(fā)行為可以由虛擬路由器所產生的路由表和SDN控制器所生成的流表來共同控制。

圖2 數(shù)據包在SDN平臺中的流向

2.2 封裝虛擬路由器Openflow API層

在虛擬路由器上封裝Openflow API層有兩個作用:一是SDN控制器通過Openflow API層完成與虛擬路由器之間的通信;二是虛擬路由器將需要轉發(fā)至SDN的數(shù)據包,由Openflow API層送至SDN控制器,然后由SDN控制器控制Openflow交換機完成轉發(fā)。

封裝虛擬路由器Openflow API層的框架如圖3所示。虛擬路由器下的代碼層包括BSP(板級支持包)、虛擬網卡驅動、MUX(一種驅動接口)、協(xié)議驅動程序、TCP/IP(傳輸控制協(xié)議/因特網協(xié)議)協(xié)議棧。在該圖中,Openflow API層對路由協(xié)議棧和驅動層的接口函數(shù)做封裝,并增加處理報文識別功能的函數(shù),即識別報文頭部端口、目的和源IP地址等,然后由協(xié)議棧處理生成轉發(fā)路徑后,判斷該報文是SDN還是傳統(tǒng)電信網絡流量,如果是SDN流量,則由虛擬路由器將報文交給SDN控制器,SDN控制器根據生成的轉發(fā)路徑進一步轉化為流表,并下發(fā)給Openflow交換機將數(shù)據包轉發(fā)出去。

圖3 封裝虛擬路由器API層框架

因而對于虛擬路由器的Openflow API層來說,關鍵是識別報文,判斷報文的源及目的,為此,Openflow API層可以直接從虛擬路由器的虛擬網卡驅動層統(tǒng)計和分析數(shù)據包,這樣可以監(jiān)控虛擬機內外的所有流量。

2.3 數(shù)據包的轉發(fā)過程

由于當前SDN控制器對三層路由功能支持不足,且對某些協(xié)議報文的處理能力較弱,因而其數(shù)據包的轉發(fā)過程不同于傳統(tǒng)路由器。傳統(tǒng)路由器包括主控卡、線卡和業(yè)務卡,數(shù)據包到達路由器端口時,首先由線卡判別是否可以直接進行轉發(fā),如果是某些不能進行直接轉發(fā)的協(xié)議報文,則將該數(shù)據包交給主控卡進行路由計算,再由主控卡控制轉發(fā)。而對于虛擬路由器來說,由于不存在線卡的概念,數(shù)據包到達虛擬路由器時,均由主控控制轉發(fā)。但是對于本SDN平臺而言,由于SDN控制器對三層路由功能支持較弱,因而虛擬路由器不僅要處理傳統(tǒng)電信網絡數(shù)據包的路由計算,還要處理來自SDN數(shù)據包的路由計算。數(shù)據包的轉發(fā)流程圖如圖4所示。

由圖4可以看出,服務器接收數(shù)據包后,數(shù)據包按照端口IP或MAC(媒體訪問控制)地址自動橋接到虛擬路由器或Openflow交換機的虛擬網卡上。其中Openflow交換機可以是Openflow vSwitch(OVS)。對于虛擬路由器來說,虛擬主控首先根據數(shù)據包端口地址判斷其流向,如果是傳統(tǒng)流量,則直接由虛擬主控計算路徑后,由虛擬路由器的虛擬網卡進行轉發(fā),如果是SDN流量,則將數(shù)據包交給Openflow虛擬交換機。Openflow虛擬交換機接收到的數(shù)據包來源于兩部分:一是虛擬路由器轉交過來的數(shù)據包,即傳統(tǒng)網絡流向SDN的數(shù)據包;二是Openflow虛擬交換機虛擬網卡接收到的來自服務器外部SDN的數(shù)據包。

圖4 數(shù)據包轉發(fā)流程圖

Openflow虛擬交換機對數(shù)據包的處理過程如下:首先Openflow虛擬交換機查詢緩存中的流表,如果有匹配項,則數(shù)據包直接由Openflow虛擬交換機的虛擬網卡進行轉發(fā),如果沒有匹配項,則Openflow虛擬交換機會向SDN控制器發(fā)送packet in消息,請求SDN控制器計算轉發(fā)路徑并生成流表;SDN控制器根據虛擬路由器路由表的情況,計算出數(shù)據包的轉發(fā)路徑,并根據轉發(fā)路徑所屬網段判斷數(shù)據包是否是SDN流量,如果是,則直接下發(fā)流表控制Openflow虛擬交換機將數(shù)據包轉發(fā)出去,如果不是,則將數(shù)據包交給虛擬路由器進行轉發(fā)。

3 SDN平臺的調試與評測

3.1 SDN平臺的調試

由于當前SDN控制器之間的規(guī)范不統(tǒng)一,本平臺不對SDN控制器之間的路由調試做描述。對于SDN平臺的調試,首先進行基本二三層數(shù)據包的收發(fā)功能調試,然后進行三層路由等協(xié)議包的調試,最后對數(shù)據包的吞吐量和轉發(fā)速率進行調試和測試。圖5所示為SDN平臺調試拓撲圖。

圖5 SDN平臺調試拓撲圖

虛擬路由器VR和Openflow虛擬交換機OVS可運行于同一服務器內。調試步驟如下:(1)對SDN控制器進行功能拓展并在封裝虛擬路由器的Openflow API層后,首先單獨對虛擬路由器進行功能調試,包括二三層數(shù)據包的收發(fā)、路由功能調試等,然后調試SDN控制器與虛擬路由器之間、虛擬路由器與Openflow虛擬交換機之間的通信,并觀察Openflow虛擬交換機流表和虛擬路由器路由表的狀態(tài)和關系。(2)利用思博倫儀表調試與測試虛擬路由器與Openflow虛擬交換機之間的二三層數(shù)據包收發(fā)情況。(3)利用思博倫儀表調試其與測試虛擬路由器以及Openflow虛擬交換機之間的路由功能,包括OSPF(開放式最短路徑優(yōu)先)、BGP(邊界網關協(xié)議)和RIP(路由信息協(xié)議)等。

只有虛擬路由器和SDN交換機的數(shù)據包能夠雙向互發(fā),并實現(xiàn)了路由功能,SDN平臺才實現(xiàn)了傳統(tǒng)網絡流量和SDN流量互通的基本功能。

3.2 SDN平臺的評測

對SDN平臺的評測可以與調試過程同步進行,除了測試SDN平臺最基本的二三層數(shù)據包收發(fā)功能外,最重要的是測試SDN平臺的三層路由功能,因為三層路由功能是實現(xiàn)當前SDN和傳統(tǒng)網絡[5]流量互通的關鍵。最后測試SDN平臺的系統(tǒng)吞吐量和轉發(fā)速率等指標。

三層路由測試包括許多方面,如互通性測試、OSPF路由重分配和OSPF認證等方面,其中OSPF點對點的互通性測試是基本。對于本SDN平臺來說,實現(xiàn)SDN流量和傳統(tǒng)網絡流量互通的關鍵是虛擬路由器和Openflow虛擬交換機能否建立路由鄰居關系。圖6所示為虛擬路由器和Openflow虛擬交換機之間不同網段OSPF的鄰居學習情況。

圖6 虛擬路由器與Openflow虛擬交換機之間OSPF測試

該圖為點對點網絡類型,其他網絡類型類似。其配置命令如下:

VR#router ospf 1

router-id 1.1.1.1

network 1.1.1.1 0.0.0.0 area 0

network 192.168.100.0 0.0.0.3 area 0

OVS#router ospf 1

router-id 2.2.2.2

network 2.2.2.2 0.0.0.0 area 0

network 192.168.100.0 0.0.0.3 area 0

配置完成后,在f0/0上啟動OSPF進程,并觀察虛擬路由器和Openflow虛擬交換機的鄰居建立關系和路由學習情況,其中Openflow虛擬交換機的鄰居學習由SDN控制器控制。

影響SDN平臺性能的因素有很多,包括系統(tǒng)的損耗、虛擬機調度的開銷、協(xié)議棧和驅動中斷的開銷等。但隨著Intel處理器性能的提升,由純軟件實現(xiàn)的SDN平臺性能會得到改善,另外對于虛擬路由器的虛擬網卡驅動,可以將中斷方式改為輪詢方式,以減少中斷處理64 k小包時過多的上下文切換時間,提高SDN平臺性能。

4 結束語

利用虛擬路由器和SDN技術相結合形成SDN平臺,可以使SDN流量和傳統(tǒng)網絡流量之間實現(xiàn)互通,解決當前SDN技術由于三層路由功能不足而在城域網和廣域網中應用受阻的問題。SDN三層路由功能的不足,主要是由于傳統(tǒng)網絡和SDN路由計算困難,而采用純軟件SDN平臺可以綜合路由表和流表來共同維護轉發(fā)表,進而實現(xiàn)不同網絡之間的路由學習功能。本文首先分析了SDN平臺的設計過程,然后對其調試和評測進行了研究。本文所述的虛擬路由器與SDN相結合的方案,可以實現(xiàn)SDN和傳統(tǒng)網絡流量的互通,為SDN技術的推廣和應用以及SDN技術在現(xiàn)網下的過渡方向提供了很好的技術借鑒,具有一定的理論指導和實踐意義。

[1]張朝昆,崔勇,唐翯翯,等.軟件定義網絡(SDN)研究進展[J].軟件學報,2015,26(1):62-81.

[2]梁飛.虛擬路由器平臺管理系統(tǒng)設計與關鍵技術研究[D].北京:北京郵電大學,2014.

[3]Shin M K,Nam K H,Kim H J.Software-defined networking(SDN):A reference architecture and open APIs[J].International Conference on IctConvergence,2012,36(3):440-448.

[4]Kurose James F,Ross Keith W.Computer Networking:A Top-Down Appproach[M].第四版.北京:機械工業(yè)出版社,2008.

[5]Wright G R,Stevens W R.TCP/IP IIIustrated Volume2:The Implementation[M].北京:機械工業(yè)出版社,2010.

Research and Design of SDN Platform Based on Router Virtualization Technology

LI Wen-wei1,2,JI Meng1,2,DAI Fei3
(1.Wuhan Research Institute of Posts and Telecommunications,Wuhan 430074,China; 2.Wuhan Fiber Home Networks Co.,Ltd.,Wuhan 430074,China; 3.Jiangxi Normal University,Nanchang 330022,China)

Applying router virtualization technology into SDN can not only forward traditional telecom traffic in SDN but also solve the problem of insufficient support of current SDN in fields of routing functions.In SDN controller,we can extend south interface to manage and control virtual router,and convert flow table and route table.Then we can control the data forwarding function of virtual router or Openflow switch.This method can make up the deficiencies of routing function in the current SDN controller,and achieve compatibility forwarding function of SDN traffic and traditional telecommunications traffic.This paper proposes a designing method and system of SDN platform based on the study of forwarding function of virtual router and SDN controller,which can realize basic routing functions.The system analysis result shows that the platform has features of excellent versatility,flexibility,and simple combining with cloud computing technologies.

SDN;virtual router;Openflow protocols

TP393

A

1005-8788(2016)05-0012-04

10.13756/j.gtxyj.2016.05.004

2016-04-26

黎文偉(1985-),男,湖北大悟人。碩士研究生,主要研究方向為通信與信息系統(tǒng)。

猜你喜歡
路由器報文交換機
基于J1939 協(xié)議多包報文的時序研究及應用
買千兆路由器看接口參數(shù)
維持生命
路由器每天都要關
路由器每天都要關
CTCS-2級報文數(shù)據管理需求分析和實現(xiàn)
淺析反駁類報文要點
基于地鐵交換機電源設計思考
修復損壞的交換機NOS
使用鏈路聚合進行交換機互聯(lián)
陆丰市| 扶绥县| 青河县| 濮阳县| 托克逊县| 旬阳县| 平远县| 安平县| 巴青县| 定襄县| 绥滨县| 嘉定区| 邵东县| 罗定市| 平安县| 温泉县| 台湾省| 长子县| 准格尔旗| 元江| 县级市| 神农架林区| 通许县| 深水埗区| 临桂县| 和龙市| 聂荣县| 长垣县| 深州市| 东平县| 微博| 湖州市| 马尔康县| 农安县| 平舆县| 宜宾县| 镇远县| 湘潭县| 济阳县| 如皋市| 和硕县|