Tải bản đầy đủ (.pdf) (64 trang)

Kỹ thuật an ninh mạng dùng OpenflowSDN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.54 MB, 64 trang )

Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

LỜI
Tôi

xin

CAM

ĐOAN

cam

n vănđoan
này lu


đư
ợc thực hiệ
n ớ


i sựhư
ớng dẫ
n khoa học củ
a
Các sốliệ
u, kế
t quảnghiên cứu trong luậ
n

công
ứu thực sự
trình
củ
a cá nhân nghiên
tôi,

TS.
văn

Trương
này
ực. là

Thu

Hươn

trung

Tôi xin chị

u trách nhiệ
m vềnghiên cứu của mình
Học viên

Nguyễ
n

1

Minh
ức

Đ

th


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN
MỤC LỤC


LỜI

CAM

ĐOAN
........................................................................................................... 1

MỤC LỤC ....................................................................................................................... 2
DANH SÁCH HÌNH VẼ, ỒĐ
THỊ............................................................................... 5
DANH SÁCH BẢNG BIỂU........................................................................................... 7
DANH SÁCH CÁC TỪ VIẾT TẮT ............................................................................. 8
LỜI NÓIẦUĐ................................................................................................................ 9
CHƢƠNG Ổ
1:
NG QUAN
T VỀCÔNG NGHỆOPENFLOW/SDN...................... 12
1.1 Mạ
ng lập

trình
ợc (Software-Defined
đƣ
Network) ......................................... 12

1.2 Công nghệOpenflow .......................................................................................... 13
1.2.1 Tổ
ng quan ..................................................................................................... 13
1.2.2 Kiế
n trúc Openflow ...................................................................................... 15

1.3 NetFPGA.............................................................................................................. 22
1.4 Kế
t luậ
n ................................................................................................................ 25
CHƢƠNG

2:
ẾT KẾ
THI
HỆTHỐNG



CÀI
ẶT CÔNG
Đ CỤ......................... 26

2.1 ồSơ
hệthống
đ của mộ
t ISP ............................................................................... 26
2.1.1 Các vấ
n ềđ
thƣ
ờng gặp vềbả
o mật trong ISP ........................................... 26
2.1.2 Yêu cầ
u thiế
t kếhệthống............................................................................. 27
2.1.3

ồhệSơ
thố
ng củ
đa một

đơn
ịISP .............................................................
v
28

2.2 ồSơ
khố
i hệ
đthống thửnghiệ
m ........................................................................ 31
2.3 Bộđi

u khiể
n mạng Controller (POX) ............................................................. 34
2.3.1 Giới thiệ
u tổng quan..................................................................................... 34
2.3.2ặ
t và
Cài
sửdụngđ
........................................................................................ 35
2.4 OpenvSwitch ....................................................................................................... 35
2.4.1 Giới thiệ
u tổng quan..................................................................................... 35
2



Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

2.4.2ặ
t và
Cài
sửdụngđ
........................................................................................ 35
2.5 Cấu hình hệthố
ng thửnghiệ
m .......................................................................... 38
2.5.1 Cấu hình OpenvSwitch ................................................................................ 38
2.5.2 Cấu hình POX Controller và thực hiệ
n kế
t nối tới OpenvSwitch ........... 40
2.6 Kế
t luậ
n ................................................................................................................ 41
CHƢƠNG


3: MODULE
CÁC QUAN TRỌNG VÀ CÁC KỊ
CH BẢN MÔ

PHỎNG ỂĐ
THỬ NGHIỆM HỆTHỐNG ................................................................ 42
3.1 Các bản

tinổ
i giữ
trao
a Controller
đ (POX) và OpenvSwitch ....................... 42

3.1.1 Bả
n tin StatisticRequest ............................................................................... 44
3.1.2 Bả
n tin StatisticResponse ............................................................................. 45
3.1.3 Bả
n tin FlowMod .......................................................................................... 46
3.2 GetStats Module .................................................................................................. 47
3.3 Flow Modification Module ................................................................................. 48
3.4 Xây dựng Testbed, kị
ch bản và chạy kiể
m thửhệthống ................................ 49
3.4.1 Xây dựng Testbed ......................................................................................... 49
3.4.2 Kị
ch bả
n mô phỏ

ng ...................................................................................... 51
3.4.3 Chạy thửnghiệ
m hệthống .......................................................................... 54
3.5 Kế
t luậ
n ................................................................................................................ 56
CHƢƠNG

4:
ỜI GIAN
THXỬ LÝ CỦA HỆTHỐNG



ĐÁNHẾT GIÁ
QUẢ

........................................................................................................................................ 57
4.1 Kế
t quảđo
............................................................................................................ 57
4.2 Nhậ
n

xét,

đánh

giá
ớng nâng

vàcaođƣa
chất ợ
ra

ng hệthố
các
ng....... 62


4.3 Kế
t luậ
n ................................................................................................................ 62
CHƢƠNG Ế
5.
T LUẬ
K
N

VÀ ỚHƢ
NG MỔRỘNG ỀĐ
TÀI ................................. 63
3

K


Luậ
n

văn

ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

TÀI LIỆU THAM KHẢO ........................................................................................... 64

4


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

DANH SÁCH HÌNH VẼ, ỒĐ
THỊ
Hình 1.1: Mô hình switch truyề
n thố
ng ......................................................................... 14

Hình 1.2: Cấ
u trúc OpenFlow Switch ............................................................................ 14
Hình 1.3: Kiế
n trúc OpenFlow ....................................................................................... 15
Hình 1.4: Flow-table Actions ......................................................................................... 16
Hình 1.5: Kiế
n trúc củ
a một OpenFlow Switch ............................................................. 20
Hình 1.6: Nề
n tả
ng NetFPGA ........................................................................................ 23
Hình 2.1: Kiể
u tấ
n

công

tràn
.......................................................................
băng thông
26

Hình 2.2: Kiể
u tấ
n công khảnăng
ửlý thiế
xt bị
............................................................ 27
Hình


2.3:
ồhệthốngSơ
hiệ
n tạ
đ
i của một

đơn
ịISP ...................................................
v
28

Hình

2.4:
ồđ
ềxuấ
t hệ

thố
ngđvới khối OpenFlow/SDN ......................................... 29

Hình

2.5:
ồđ

u nối trong
Sơ từđ
ng phòng Lab ............................................................. 30


Hình

2.6:
ồđ

u nối tạ

i phòng
đmáy chủ................................................................... 31

Hình

2.7:
ồkhối hệthố

ng thử
đnghiệ
m .................................................................... 32

Hình 2.8: Flow-table trong OpenvSwitch ...................................................................... 41
Hình 3.1: Các bả
n tin sửdụngểthố
đng kê và gửi lệ
nh từPOX xuống OpenvSwitch .. 42
Hình

3.2:
ồthuậ
t toán

Lưu
tổ
ng quan
đ của trình ứng dụ
ng trên Controller .................. 43

Hình 3.3: Cấ
u trúc bàn tin StatisticRequest-Flow.......................................................... 44
Hình 3.4: : Cấ
u trúc bả
n tin StatisticResponse –Flow .................................................. 45
Hình 3.5: Cấ
u

trúc
ờng match
trư
trong bả
n tin StatisticResponse ................................. 46

Hình 3.6: Cấ
u trúc bả
n tin FlowMod ............................................................................. 46
Hình

3.7:
ồthuậ
t toán
Lưu
củ

a khôi
đ chức

năng ............................................
GetStats
47

Hình

3.8:
ồthuậ
t toán
Lưu
củ
a khố
đi chức

năng

Flow
............................
Modificatio
48

Hình 3.9: Mô hình thửnghiệ
m phân tích dữliệ
u chạ
y qua hệthố
ng ............................ 49
Hình 3.10: Testbed mô phỏng tấ

n công ......................................................................... 50
Hình 3.11: Dữliệ
u

bình
ờng quathư
hệthố
ng ............................................................... 51

Hình 3.12: Dữliệ
u nghi ngờtấ
n công IP 119.15.167.27 ............................................... 51
Hình 3.13: Giao diệ
n phầ
n mề
m tấ
n công AttackPacket ............................................... 53
5


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ

ng dùng Openflow/SDN

Hình 3.14: Giao diệ
n

ngư
ời quả
n trị
.............................................................................. 54

Hình 3.15: Hệthống

đang

tộng
đ ho
bình
ờng.........................................................
thư
55

Hình

3.16:
ổi sốluồ
ng
Thay
lên 2000pps
đ .................................................................... 55


Hình 3.17: Giao diệ
n cả
nh báo hệthống khi có tấ
n công .............................................. 56

Đồthị4.1: SốFlow từmột nguồ
n

IP
ế
n Server
đ ố
i với dữliệ
đ
u

bình
ờng..............
thư
58

Đồthị4.2: SốFlow từmột nguồ
n

IP
ế
n Server
đ ố
i với dữliệ
đ

u tấ
n công ................... 58

Đồthị4.3: Tổng sốluồng tồn tạ
i trong hệthống ởhaiờngtrư
hợp ............................... 59
Đồthị4.4:

Băng
ế
n server
thông đ
ờng
trong
hợp ...............................................
hai trư
59

Đồthị4.5:
ồthịthể
Đ hiệ
n sốFlow theo thời gian khi hệthống

bình
ờng ...............
thư
60

Đồthị4.6:
ồthịmô

Đ tảhệthố
ng khi có dấ
u hiệ
u tấ
n công .......................................... 61
Đồthị4.7: Log hệthố
ng khi có cả
nh báo ...................................................................... 61

6


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

DANH SÁCH BẢNG BIỂU
Bả
ng 1.1: Cấ
u trúc Flow-Entry ...................................................................................... 16
Bả
ng 1.2: Các thành phầ

n trong Header Field của Flow-Entry ..................................... 17
Bả
ng 1.3: Các thành phầ
n

trong
ờng Counter
trư
củ
a Flow-Entry ................................. 17

Bả
ng 1.4: Một sốAction trong Flow-entry .................................................................... 18

Bả
ng 3.1: Các loạ
i thông tin

u khiể
đi
n củ
a bả
n tin FlowMod ..................................... 47
Bả
ng

3.2:

a chỉ
Tên,

IP của các thiế
đt bị...................................................................... 50

7


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

DANH SÁCH CÁC TỪ VIẾT TẮT
Từviế
t tắ
t

Thuậ
t ngữtiế
ng anh

Ý

SDN


Software Defined Network

Mạ
ng lậ
p

IP

Internet Protocol

Giao thức liên mạ
ng

MAC

Media Access Control

Đi

u khiể
n

SSL

Secure Sockets Layer

GUI

Graphical User Interface


Giao diệ
n

AP

Access Point

Đi

m truy cậ
p không dây

PC

Personal Computer
Very Important Person

Máy tính cá nhân

Controller

Bộđi

u khiể
n

Server, Client

Máy chủ

, máy trạ
m

Control Path

Mặ
tề
uđi
khiể
n

Data Path

Mặ
t dữliệ
u

StatsRequest

Bả
n tin yêu cầ
u thông số

StatsResponse

Bả
n tin trảlời thông số

FlowMod


Bả
n tin chỉ
nh sửa

Internet Service Provider

Nhà mạ
ng viễ
n thông

VIP

ISP

nghĩa
trình
ợc

đa ậ
truy
p
nh

Giao thức bả
o mậ
t cá mã
hóa thông tin

8


đư

ngư
ời dùng

Ngư
ời quan trọng


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN
LỜI

NÓI
ẦU

Đ

Ngày nay, cùng với sựphát triể
n nhanh chóng của các công nghệtiên tiế
n, nhu cầ

u
kế
t nối và chia sẻcủ
a

con
ời ngư
ngày

càng
ảvềtố
c
gia
ộ, đ
chấ
ttăng
ợng
lư cũng
c

tính thuậ
n tiệ
n. Các kiế
n trúc mạ
ng và các thiế
t bịmạ
ng

nh


cũầ
nđã
nào
ểlộ
ph
nhữ
đ
ng

như
ợc ể
m
đi như ứng
tính
nhắ
c, giá c
thành cao, thiế
u khảnăng ợ
tích
p nhiề
u chứch
năng,

cũng

u yêu
như
cầ
u hệnhu
thống mạ

ng
c phả
i

chóng các thông sốvềtrễ
,

đáp
ứng việ
c

thay
ổi nhanh đ

băngị
nhthông,
tuyế
n, QoS

đ
c biệ

t là vấ
n
đềbả
đo mậ
t.

Vấ
n ềbả

đo mậ
t càng quan trọ
ng và cấ
n thiế
t khi triể
n khai cho mộ
t nhà cung cấ
p dị
ch
vụmạ
ng và viễ
n thông.
Mạ
ng lậ
p
chuyể
n mạ
ch

trình
ợc hay SDN,
đưlà một kiế
n trúc mạ
ng mới, mà ởđó,

các
ế
t bị

thi


(Switch,
ẽđư

Router
c tách ra làm hai…)
phầ
n riêng
s biệ
t: Mặ
t phẳ
ng

đi

u khiể
n (Control Plane) và Mặ
t phẳ
ng dữliệ
u

(Data

Plane).
ợc triể
nContr

khai trên các server bên ngoài, chị
u trách nhiệ
m ề

đi
u khiể
n việ
c chuyể
n tiế
p gói tin
cũng

như
ức các
năng
ợpch
khác.
tích
Data Plane
h thực hiệ
n việ
c chuyể
n tiế
p các gói

tin dựa theo lệ
nh



Control

SDN sửdụ
ng giao thức


Với sựraời củ
đa Openflow, việ
c


thếcho các kiế
n trúc mạ
ng

đưa

ra.

Openflow
ểgiao tiế
p giữ
đ
a Control Plane và Data Plane.

Openflow
ợc bắ
tầ
đư

phát triể
n từnăm
dễdàng, thuậ
n tiệ
n


Plane

2008

iạ

họ
ct
Stanford, California, Mỹ
.

trao

i giữa Control
đ
Plane



đem

i. Các tậ
l
p

Pla

chínhờđó,
xác SDN

hơn.

tầ
u
đã
đợ
đư
Nh
c áp
bdụngểthay
đ
thông
ờng. Thựcthư
tếhiệ
n

nay

SDN
ợc triể
nđã
khai tạ
đư
i

rấ
t nhiề
u phòng Lab ởcácờng
trư


i họ
đc, các trung tâm nghiên cứu


Data
ởlên

đoàn
ớn như
l

do

các
ếmà

ưu

Google,

tầ

sửdụ
HP
ng kiế
nđã
trúc SDN
b trong

mạ

ng lõi của mình.
Xuấ
t phát và nắ
m bắ
t từcác vấ
n ềthự
đ c tếđang

y ra trong
x một

đơn
ịcung cậ
vp

dị
ch vụInternet (ISP-Internet Services Provider) với hàng loạ
t các ghi nhậ
n tấ
n công từ
Internet
ợc theo dõi đư
hàng ngày. Việ
c phân tích và phát hiệ
n các sựcốtấ
n công là vấ
n
đ
ềquan trọ
ng


cũng

như
ốt củ
a mỗ
then
i ISP nhằ
mch

m
đ bả
o toàn bộhệthố
ng ợcđư

9

t


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ

ng dùng Openflow/SDN

vậ
n hả
nh an toàn và ổn ị
nh
đnhấ
t
có những

phương

cũng

m thiể
như
u rủi gi
ro

ánệ
u quả
phòng
nhấ
t

tránh

Trong quá trình thực hiệ
n, do hạ
n chếvềmặ

t thời

gian

cho ể
khách
từđó

h

hi

cũng
ế
n thức, như
nên

ki
đ

tài không thểtránh khỏi những thiế
u sót. Em mong nhậ
n ợ
đư
c sựđóng ủagóp
thầ
y cô c
và các bạ
n ểđ
ềtài

ợc hoàn
đưthiệ
n
Em xin trân trọng cả
m

hơn.

ơn ầ
các
y, cô
th ờ
trong
ng ạ

họ
c Bách
trư
Khoa Hà Nộ
i,

Việ
n ệ
Đi
n TửViễ
n Thông trong suốt thời gian học cao học qua ạ
yđã
bả
o vàd
cung cấ

p
cho em những kiế
n thức nề
n tả
ng rấ
t có ích cho cuộ
c sống sau này. Em xin chân thành
cả
m

ơn

TS.

Trương
ời Thu
đã
ực tiế
p
tr
Hương,


ng dẫ
n em thự
ngư
c hiệ
n ồđ
án này.


Thầ
y cô không chỉgiúp
ỡ, tậ

tình chỉbả
o chúng em trong nghiên cứu, học tậ
p mà
còn

giúp
ỡ, chia sẻvớ
đ
i chúng em mọ
i mặ
t trong cuộc số
ng. Thầ
y cô sẽlà tấ
m

gương

sáng cho chúng em noi theo trong những ớc
bườ
đư
ng sắ
p tới.
Xin cả
m

ơn


các

anh,

em

trong ệ
Future
n TạQuang BửuNetwo

trong suốt thời gian thực hiệ
n ồđ
án đãỗtrợ
hcác công cụđểmô phỏng

cũng

liệ
u nghiên cứu
Xin cả
m ơn

Công
ổPhầ
n
tyNetNam
C

pđã

mộ
t số
cung
dựliệ
u thực
c tếđ
ểgiúp

em hoànồán.
thành
Cuố
i cùng, xin gửi lời cả
m
là nề
n tả
ng,
Sau

đ
ơn ắ
csâu
nhấ
t tới toàn
s thểgia


ời luôn
ngư

đình,

ốmẹ
, anh chịb
đã

theoộ
ngsát,
viên cho chúng
chăm
em.
sóc

đây
phầ
n mụ
clà
tiêu và bốcụ
c luậ
n

văn
ợc tổchứ
đư
c

như

đ

sau:


Mục tiêu:
 Nghiên cứu vềcông nghệOpenFlow/SDN, các vấ
n ềvề
đ kỹthuậ
t và ứng dụ
ng
trong hệthống mạ
ng
 Ứng dụng kỹthuậ
t OpenFlow/SDN vào việ
c bả
o mậ
t trong mô hình mạ
ng ISP,
cụthểlà phân tích dữliệ
u tấ
n

công

thống

10



nh báo
đưa
phát hiệ
ra

n cho quả
cn trịhệ

như


Luậ
n
Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

văn
ợc chia
đƣ
thành 5 chƣơng:

 Chƣơngổng1:
quan về
Tcông nghệOpenFlow/SDN
Chươngậ
p trung

này
giới t
thiệ
u vềcông nghệmạ
ng lậ
p

trình
ợc(SDN), đư
giao

thức OpenFlow và phầ
n cứng chuyể
n mạ
ch OpenFlow dùng NetFPGA
 Chƣơng ế
t2:
kếhệthố
Thi
ng

vàặt công
cài
cụ đ

Chươngẽđưa
này ra

shệthố


ng, mô
đhình của Internet Service Provider(ISP),
sơồthử
đ nghiệ
m, các thiế
t bịsửdụ
ng, cách cấ
u hình hệthống nhằ
m thực hiệ
n chức
năng tích
phân
dữliệ
u tấ
n công, chức

năngệ
n phát
các luồng tấ
nhi
cộng dựa trên sự

tăng ấ
t
cao

thư
ng củ
b
a sốlư

ợng phiên kế
t nối trong mạ
ng
 Chƣơng

3:

Các


Module
ng và các kị
ch quan
bả
n mô phỏ
tr
ng ểthử
đ

nghiệ
m hệthống
Trong

chương ẽtìm
này
hiể
u về
chúng
một sốbả
n ta

tin
sổi giữ
trao
a bộđi



khiể
n Controller và OpenFlow Switch, các khối chức

năng ựng


Testbed
xây d

như
ế
t quả
k chạ
y thửnghiệ
m trong việ
c phân tích dữliệ
u tấ
n công và phát hiệ
n ra dấ
u
hiệ
u tấ
n công xả

y ra trong mạ
ng
 Chƣơng
Thời 4:
gian xửlý hệthống
Chương



đánh
ế
t quả giá

này ế
t đưa
quảmô phỏ
ra
ng thự
các
c nghiệ
m
k và

k

đánh

giá

n




của ềtài
đ
 Chƣơngế
t luậ
5:
n và
K ớng hƣ
mởrộ
ng của ềđ
tài
Đưa ế
ra
t quảthu
k ợc qua
đưthời gian tìm hiể
u ềđ
tài
của ềtài
đ

trong

tương

cũng
ớng phát
như

triể
n hư

lai
Hà Nội,

tháng

năm

Học viên

Nguyễ
n
11

Minh
ức

Đ

201


Luậ
n

văn
ốt nghiệ
t

p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

CHƢƠNGTỔ
1:
NG QUAN VỀCÔNG NGHỆOPENFLOW/SDN
Chươngẽcung
này
cấ
p các
s kiế
n thức



n vềcông
b nghệmạ
ng lậ
p

trình
ợc

đư

(SDN), giao thức Openflow và phầ
n cứng của chuyể

n mạ
ch Openflow dùng NetFPGA.
1.1 Mạng lậ
p

trình
ợc (Software-Defined
đƣ
Network)

Các giao thức mạ
ng hiệ
n

nay

ngày
ợc hoàncàng
thiệ
n và hoạ
đư
t ộng
đổ
nị
nh.
đ

Những nghiên cứu vềgiao thức mạ
ng hay các loạ
i

rộng đểđáp
ứng nhu cầ
u ngày càng cao của

lưu
ợng mạ
ng
lư ngàyợc mở
càng

đ

con
ời. Tuy
ngư
nhiên việ
c nghiên cứu này

gặ
p phả
i những khó

khăn
ớn là khôngl
có một

môi
ờng mạ
trư
ng cụthểđểcó thểkiể

m

nghiệ
m sựchính

xác,

n vàtính
chứng minh
đúng
sựhiệ
u dụ
đ
ng củ
a các giao thức

mạ
ng. Với các mô hình mạ
ng hiệ
n tạ
i thì tính mởrộng và sựmề
m dẻ
o gầ
n

như

khôn

có vì trong mộ

t mô hình mạ
ng ta không thểtác

ngđ
ểđi
đ

u khiể
n các thiế
t bịnhư
mong muốn.
Nhưậ
y nả
vy sinh vấ
n ềđ
là cầ
n một mô hình mạ
ng có tính mề
m dẻ
o và khảnăng
mởrộng cao

hơn,
phép thựccho
hiệ
n cácổi, thay
tùy biế
n trong
đ mạ
ng mà không phụ


thuộ
c vào cấ
u hình các thiế
t bịphầ
n cứng
của mạ
ng lậ
p

đang
ửdụ
ng strên

đó.

Đây

ch

trình
ợc, SDN. đư

SDN là kiế
n trúc mạ
ng mới cho

phép

u khiể

n hoạ
đi
t ộng
đcủa mạ
ng dựa trên việ
c

đi

u khiể
n hoạ
t ộng
đcủa các Switch, sửdụng các ngôn ngữlậ
p trình và có thểthư
ờng
xuyên ổ
ithay
bằ
ng cách nạ
đp

các

n mã đo
nguồn khác vào thay thế
. SDN có lợi thếto

lớn mà các kiế
n trúc mạ
ng hiệ

n tạ
i

không
ợc.có
Đóđư
chính

m dẻ
o,là
khả tính

năng
ởrộ
ng
mvà tính linh hoạ
t củ
a mạ
ng. Các kiế
n trúc mạ
ng hiệ
n nay không cho phép
can thiệ
p vào hoạ
t ộng
đcủa các thiế
t bịmạ
ng, hoạ
tộ
ng

đcủa các thiế
t bịnày bịphụ
thuộ
c hoàn toàn vào nhà sả
n xuấ
t
giao thức

quy

nh. Chính
đ vì thế
, rấ
t khó cho việ
c thay thếmộ
t



ng cácbgiao thức mới và thửnghiệ
m chúng trên các thiế
t bịthậ
t. SDN

thìợc ngư
lạ
i, nó

cho
ời lậ

p phép
trình có thểcan
ngư
thiệ
p vào hoạ
t ộng
đcủ
a thiế
t bịvà

qua ề
đó
u khiể
nđi
thiế
t bịhoạ
t ộng
đtheo ý muốn. Việ
c này dễdàng cho việ
c nghiên

12


Luậ
n

văn
ốt nghiệ
t

p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

cứu ng
cũ như

n khai tri
các công nghệmới vào trong mạ
ng mà không cầ
n

thay

i về

đ

phầ
n cứng.
SDN [1] chính là mộ
t kiế
n trúc mạ
ng mang tính cách mạ
ng




là ủ
a tương

công nghệmạ
ng trong thời gian sắ
p tới.
1.2 Công nghệOpenflow
1.2.1 Tổng quan
Hiệ
n nay hầ
u như

không

chứng các giao thức mạ
ng mới
Kế
t quảlà hầ
u hế
t



phương
ực tếđể
pháp
thửnghiệ
m,nào
kiể
m


trong
ờng thự
môi
c tếvới
trư
quy

các
ởng mớ
ýi từ

cộngồ
ngđnghiên cứu

và kiể
m chứng. Openflow [2][3] là




ợng thậ
lưu
t.



không
ợc thửnghiệ
đưm


phương

n cho phép ti
các nhà nghiên cứu chạ
y các

giao thức thửnghiệ
m trên hệthống mạ
ng mà ta sửdụ
ng hàng ngày. Openflow dựa trên
nguyên tắ
c Ethernet Switch, với một Flow-table bên trong, và giao diệ
n chuẩ
n
thêm, xóa các flow-entries trong Flow-table. Mục

hóa


đ

đích
ủa việ
c cđưa
Openflow
ranhằ
m

khuyế

n khích các nhà sả
n xuấ
t thiế
t bịmạ
ng thêm chức

năng
Openflow vào các switch

của họđ
ểmang triể
n khai trong thực tế
. Openflow đang
ợc sử
đư
dụng rộ
ng rãi bởi
nhiề
u nhà nghiên cứu, các việ
n nghiên cứu trên thếgiới do nó có tính thực tếdựa trên
các ể
ưu
m: cho đi
phép các nhà nghiên cứu chạ
y các thửnghiệ
m trên các switch khác
nhau theo cùng một

cách


như ầ
nnhau,
cấ
u hình triể
nkhông
khai theo cấ
uc
hình từng

loạ
i switch, hoạ
tộ
ng
đởline-rate cùng với mậ
t ộport
đ lớn,

hơn
ữa các nhà
nsả
n xuấ
t

vẫ
n có thểgiữbí mậ
t vềthiế
t kếcác switch của họ. Ngoài việ
c cho phép các nhà
nghiên cứu


đánh

giá
ởng củ
acác
họtrong
ý tường
môi
lưu
ợng
trư
thếlư
giới thực,

Openflow còn là một công cụhữu hiệ
u cho triể
n khai các testbed qui mô rộng

như

GENI (Global Environment for Network Innovation, network/testbed gồm các tài
nguyên chung cho các nhà nghiên cứu, chia sẻtài nguyên bằ
ng
virtulization). GENI là kiế
n trúc mạ
ng có khảnăng

p

phương


o hóa- pháp

trình
l ợc. Mạ
ng đư
có khảnăng

lậ
p trình cầ
n có các phầ
n tửswitch/router có khảnăng

p trình
l ểxửlý các đ
packet cho

13


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ

ng dùng Openflow/SDN

nhiề
u thửnghiệ
m trên mạ
ngồ
ngđthời không ả
nh ởng

lẫ
n nhau. Openflow cho phép
ta có thểlậ
p

trình
ợc switch/router.
đư

Sựkhác nhau trong cấ
u trúc củ
a Switch truyề
n thố
ng và Switch hỗtrợcông nghệ
Openflow:

Hình 1.1:

Hình 1.2:




hình

Cấu

14

switch
thống

trúc

truyền

OpenFlow

Switch


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN


1.2.2 Kiế
n trúc Openflow

Hình 1.3: Kiến trúc OpenFlow
Openflow cung cấ
p mộ
t giao thức mở đ
ể lậ
p trình flow-table trong các
Switch/Router khác nhau. Ngư
ời quả
n trịmạ
ng có thểchia lưu
ợng lư
thành các luồ
ng
(flow) cho mạ
ng

thông
ờng và luồ
thư
ng cho việ
c nghiên cứu. Bằ
ng cách này, các nhà

nghiên cứu có thểthửcác giao thức ị
nhđtuyế
n, các mô hình bả

o mậ
t, các cách ị
đánh
a
chỉmới, thậ
m chí thay thếcho IP. Hình trên mô tảmộ
t Openflow Switch giao tiế
p với
mộ
t Controller thông qua kênh kế
t nối bả
o mậ
t SSL [4] sửdụ
ng giao thức Openflow.
Kênh bả
o mậ
t kế
t nố
i Switch với Controller sửdụ
ng giao thức Openflow cho phép các
lệ
nh và các gói tin đư
ợc truyề
n qua lạ
i giữa Controller và Switch. Giao thức Openflow là
mộ
t giao thức mởvà chuẩ
n hóa cho phép Controller giao tiế
p với switch. Mỗ
i Openflow

Switch chứa một flow-table gồm các flow-entry, mỗ
i flow-entry có mộ
t hoặ
c nhiề
u
action
ứng,tương
khi Switch nhậ
n ợ
đư
c flow

c ể
m
đi

giố
ng
đ

như
ảtrong

flow-t

entry, Switch sẽxửlý các gói tin củ
a flow đó theo
ứng. các action

15



Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

Hình 1.4: Flow-table Actions
Các Actions trong chuẩ
n Openflow
ợc mô tả
1.0
trong hình
đư
trên gồ
m có: chuyể
n
tiế
p

gói
ế
n Controller,

tin hủ
đy gói

đ
ế
n mộ
t hoặ
c nhiề
u cổng

tin,
ổi các
ờng
thay
trong
trư
gói tin,
đ chuyể
n gói tin

xác

nh củ
a Switch.
đ

Kiế
n trúc chung củ
a Openflow gồm hai thành phầ
n chính: Openflow Switch,

Controller.
 Thiế
t bịchuyể
n mạch (Openflow Switch)
 Bảngị
nhđdanh các luồng (Flow-table)
Vềmặ
t

ý
ởng, tư
Openflow dựa trên thực tếrằ
ng

các

switch

u chứa các


rou

bả
ng mô tảcác luồ
ng trong mạ
ng (Flow-table). Mặ
c dù Flow-table trên switch, router
hoặ
c củ

a các hãng khác nhau có thểkhác

nhau

nhưng
ực hiệ
n chúng
các chức

năng

ng nhau
gilà phụ
c vụcho hoạ
tộ
ng
đcủ
a các ứng dụ
ng. Trên Flow-table có chứa
đ

nh

nghĩa
ồng thông
các
tin trong
lu
mạ
ng (Flow-entry), các Flow-entry chứa các tham


sốgiúp

u khiể
đi
n các luồ
ng thông

t tin
cách

đi
n vàđúng
hợm
p lý trong
đmạ
ng.

Bảng
1: 1.
Cấu
trúc Flow-Entry
Header Fields

Counter

16

Actions


cùn


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

 Thành phần Header Fields
Header

Fields:

n header củađây
flow, phầ

n này ph
chứa các thông tin liên quan

tới ị

chỉđích,


a chỉnguồ
đ n, giao thức

đang
ực hiệ
n th
trên flow. Chi tiế
t các thông

tin ả
như
ng dư
ới bđây:
Bảng
2: 1.
Các
In Port

VLAN
ID

thành

Ethernet
SA DA

trong
-Entry Header

IP


Type

flow

phần

TCP/ UDP

SA DA Protocol Src port

đi

vào

Fi

-

In port : cổng

-

VLAN ID : ị
nhđdanh của VLAN mà switch đang

m trong
n

-


Ethernet SA/ Ethernet DA :ị

chỉMAC nguồ
n/

-

Ethernet Type : loạ
i gói tin Ethernet

-

IP SA/ IP DA : ị

chỉIP nguồn/

-

IP Protocol : giao thức sửdụ
ng

-

TCP/UDP Src port/ TCP/UDP Dst port : cổng nguồn/

Dst port

switch
đích


đích
đích

TCP/UDP

 Thành phần Counter
Counter là thành phầ
n thực hiệ
n các chức
flow, port, queue. Trong phạ
m

ới

năng
ống kê trên
thmột sốyế
u tố: table,

vi
ồán, ta
đchỉquan tâm tới thố
ng kê theo flow. Bả
ng

đây
ảvềcác
mô ờ
t

ngtrư
thông kê theo flow:
Bảng
3: Các
1.
thành

Tham sốCounter

Ý

phần

trong

nghĩa

trƣờng
-Entry

Độdài tham số
(Tính theo bit)

Thống kê theo flow
Received Gói tins

Sốgói nhậ
n ợ
đư
c


64

Received Bytes

Sốbyte nhậ
n ợ
đư
c

64

Duration (seconds)

Khoả
ng thời gian nhậ
n tính theo giây

32

Duration

Khoả
ng thời gian nhậ
n tính theo nano 32
17

Counte



Luậ
n

văn
ốt nghiệ
t
p cao học

(nanoseconds)

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

giây

 Thành phần Actions
Actions
ờng chứ

a các trư
mô tảtươngề
u tác
khiể
n cho đi
các flow. Nhờcó ờng
trư
này mà các flow khi tới switch sẽđư
ợc xửlý tiế
p. Nế

u một gói tin không tìm thấ
y hành
đ

ng cầ
n thực hiệ
n tiế
p theo thì nó sẽbịloạ
i bỏ. Có mộ
t sốhành

ngđ như
Bảng
4: 1.
Một
Tên Actions

Ý

số

Action
-entry

trong

sau:
Flow

nghĩa


Chuyể
n tiế
p gói tin (Forward)
ALL

Gửi gói tin ra tấ
t cảcác interface

CONTROLLER

Đóng

LOCAL

Gửi gói tin tới các switch cụ
c bộtrong stack

TABLE

Áp dụ
ng

IN-PORT

Gửi gói tin ra cổng vào

NORMAL

Xửlý gói tin sửdụng ờng

đưị
nhđ
tuyế
n hỗtrợtrên switch

FLOOD

Gửi gói tin theo minimum spanning tree mà không quan
tâm tới

gói
ửi lên Controller
và g
hành
ộng trong đ
Flow Table

interface
ế
n

ENQUEUE

Chuyể
n gói tin tới

DROP

Xóa mộ
t Flow Table entry


MODIFY-FIELD

Sửa tham sốtrong Flow Table entry

 Kênh

đ

hàng
ợi theo cổ
đ
ng

bảo
(Secure
mật
Channel):

Là giao diệ
n kế
t nố
i các Openflow Switch
ế
n Controller.
đ
Thông qua giao diệ
n
này, Controller cấ
u hình và quả

n lý các Switch, nhậ
n các sựkiệ
n từSwitch, gửi lệ
nh và
gói tin tới các Switch. Các giao diệ
n ợ
đư
c thực hiệ
n riêng biệ
t, tuy nhiên tấ
t cảcác bả
n
tin gửi qua kênh bả
o mậ
t phả
i ợ
đư
c đị
nh dạ
ng theo giao thức Openflow.
Giao thức Openflow hỗtrợ3 loạ
i bả
n

tin

18

sau


đây:


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

 Controller to Switch: Đư
ợc tạ
o bởi Controller và sửdụngểtrự
đc tiế
p quả
n lý
và kiể
m tra trạ
ng thái của Openflow Switch, có thểkhôngỏ
i sự
đòi
phả
n hồ
h
i từ

Switch, bao gồm các tin nhắ
n:
- Features Message:
Controller sẽgửi tin nhắ
n

khi

Transport

Layer
ợc thành lậ
p,
Secur

này
ế
n Switch.
đ Switch phả
i gửi phả
n hồi

xác

nh khảnăng
đ

hỗtrợcủ
a nó tới Controller.
- Configuaration Message: Controller có khảnăng

ế
p lậ
thi
p và cấ
u hình các
tham sốcủa Switch. Swicth sẽphả
n hồ
i 1 truy vấ
n từController.
- Modify-State Message: thông

p nàyđi
nhằ
m quả
n lý trạ
ng thái của Switch,
thêm hoặ
c xóa các flow-entry trong flow-table.
- Read-State Message: giúp Controller thu thậ
p sốliệ
u thống kê từcác flowtable, ports, các flow-entry riêng lẻ
.
- Send Packet Message:

đưa

các
ột cổng
gói
xác


nh ra
của Switch.
đm

- Barrier Message: ểđ
đ

m bả
o các tin nhắ
n phụthuộc ãđợ
đư
c đáp
ứng hoặ
c ểđ
nhậ
n thông báo cho các hoạ
tộng
đ

đã

hoàn

 Asynchronous Message: đư
ợc bắ
tầ

bởi


thành.
Switch,
ểcậ
p nhậ
dùng
t các sự đ

kiệ
n trong mạ
ng và trạ
ng thái củ
a Switch cho Controller:
- Packet - in Message: với các gói mà không có entry nào phù hợp, Switch sẽ
gửi tin nhắ
n này tới Controller
- Flow - Removed Message: khi 1 flow-entry
ọc xóa đu
khỏ
i flow-table
- Port - Status Message:

thay

i trạ
ng thái
đ cấ
u hình của các port

- Error Message: switch thông báo cho Controller các vấ
n lỗi có thểxả

y ra
trong quá trình hoạ
tộng.
đ
 Symmetic Message: ợ
đư
c gửi

đi

c do ho
Switch, hoặ
c do Controller mà không

cầ
n có yêu cầ
u:
- Hello : ợ
đư
c trao

i giữa Controller
đ
và Switch khi 1 kế
t nối ợ
đư
c khởiộ
ng
đ
- Echo Request/Reply: có thểsửdụngểchỉ

đraộtrễ
đ
,
của mộ
t kế
t nố
i Controller với switch.
19

băng ặ
cthông
khảnăngho


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

- Vendor: cung cấ
p các tiêu chuẩ
n cho switch
ểđáp

ứng
đ các chức

năng
ổsung b

trong các

p Openflow.
thông đi
 Openflow Switch.
Trong mạ
ng Openflow, có mộ
t thành phầ
n quan trọng không thểnhắ
c thiế
u là
Openflow Switch. Do sựkhác biệ
t



n vềphương
b
ức hoạ
t
th
ộng
đgiữa kiế
n trúc


mạ
ng SDN và các kiế
n trúc mạ
ng truyề
n thống nên các Openflow Switch có kiế
n trúc
cũng

như
ức năng
ch ệ
tkhác
hơn.bi

nTrong
này, em sẽgiớ
ph
i thiệ
u vềOpenflow

Switch và những thành phầ
n chính củ
a nó.
Openflow Switch có hai loạ
i: thiế
t bịcứng (Openflow Switch) và thiế
t bịmề
m
(OpenvSwitch) . Thiế

t bịcứng là các thiế
t bịcó các phầ
n cứng thực hiệ
n trực tiế
p việ
c
chuyể
n mạ
ch bằ
ng phầ
n cứng thậ
t. Thiế
t bịmề
m là các thiế
t bịhỗtrợchuyể
n mạ
ch
bằ
ng phầ
n mề
m.
Trong
ồánđ này,
ểthuậ
n tiệ
nđcho việ
c xây dựng mô hình thửnghiệ
m, em

đã



s

dụ
ng loạ
i thiế
t bịmề
m (OpenvSwitch).
OpenvSwitch là mộ
t loạ
i Switch nhiề
u tầ
ng ợcđư
xây dựng với mụ
c

đích
ửdụ
ng

s

trong những môi
ờng ả
otrư
hóaệ
nnhư
toán
đi OpenvSwitch

đám mây.
ợc xây dự
đư
ngể đ
có thểsửdụ
ng trên nhiề
u nề
n tả
ng khác nhau, có thểsửdụ
ng trong các máy chủcó nhiề
u
cạ
c mạ
ng hoặ
c sửdụ
ng trực tiế
p trên các Switch thương

i. OpenvSwitch m
cung cấ
p cho
ngư
ời nhiề
u

tính

năng
ểcó thể
khác

quả
n lý tố
tnhau
tài nguyên hệ
đ thố
ng mạ
ng ả
o hóa:

hỗtrợQoS, Firewall, chuẩ
n 802.Q

c biệ
…t là và
hỗtrợgiao
đ thức Openflow.

Hình 1.5:

Kiến
20

trúc

của chmột

OpenFlow


Luậ

n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

 Bộđi

u khiể
n mạ
ng (Controller).
Đối với các thiế
t bịSwitch, Router
biế
t

thông
ờng, khi nhậ
nthư

đư
c một gói tin nó sẽ

phương


i xử
pháp
lý gói
ph tin

ra
ộng sao,
đó
ợc ị
nh
đư
đ các
nghĩa
hành
dođ

sả
n xuấ
t.ối vớ
Đi Openflow Switch, khi nhậ
n ợ
đư
c các bả
n tin, nế
u trong flow-table
chưaị
nh
có nghĩa
đ
ềloạ

i bả
n vtinứngtương
thì Switch sẽphả
i gửi bả
n tin này lên phía
trên cho bộđi

u khiể
n. Tạ
i

đây,
ộđi

u khiể
bn sẽtiế
n hành thêm, sửa, xóa trên flow-

tableị
nh
và nghĩa
đ đ
ộnghành
tương
ứng cho bả
n tin. Có nhiề
u bộđi

u khiể
n ợ

đư
c
phát triể
n cho các ngôn ngữlậ
p trình khác nhau :
- Bộđi

u khiể
n POX dựa trên SDN Controller platform sửdụng ngôn ngữ
Python
ểphát triể
đn.
- Beacon dựa trên Java Openflow Controller platform sửdụng ngôn ngữJava

phát triể
n.
- Foodlight dựa trên Java.
- NOX dựa trên cảPython và C++, tuy nhiên hiệ
n nay không còn hỗtrợphát
triể
n ứng dụ
ng python nữa mà hoàn toàn là C++.
Các bộđi

u khiể
n

này

u là dạ

đ
ng mã nguồn mở, miễ
n phí, cung cấ
pầ
y
đủđ
thông

tin hỗtrợcho ờingư
lậ
p trình.
ềtài củ
Trong
a mình, em chọ
đn bộđi

u khiể
n POX do
tính dễsửdụ
ng, hiệ
u

năng
ổn ị
nh
cao,
đcủa ngôn ngữPython.

 Các sựkiệ
n của Controller:

Có thểnói, các thành phầ
n Controller là mộ
t tậ
p hợp ểđ
xửlý các sựkiệ
n củ
a
Controller (Controller event). Các sựkiệ
n ợ
đư
c hiể
u là tấ
t cảnhững gì thực hiệ
n trong
Controller hay trên mạ
ng

nhưng


ế
n cácliên
thành phầ
n quan
của Controller.
đ

Controller bao gồm mộ
t sốsựkiệ
n ợ

đư
c tích hợp sẵ
n, ánh xạvới các bả
n tin
Openflow nhậ
n đư
ợc tạ
i Controller:
- Datapath_join_event: xuấ
t hiệ
n khi có một

switch
ợc phát hiệ
nđư
trong mạ
ng.

- Datapath_leave_event: xuấ
t hiệ
n khi có một switch rời khỏi mạ
ng.
- Packet_in_event: ợ
đư
c gọ
i cho mỗ
i gói tin nhậ
n bởi Controller. Sựkiệ
n này bao
gồm: ID của switch, cổngế

n củ
đa gói tin, bộđệ
m gói tin.

21

đ


Luậ
n

văn
ốt nghiệ
t
p cao học

- Flow_mod_event: khi một

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN
dòngợng
lưu
ợcđư
thêm

vào hoặ
c sửa ổ


bởi

Controller.
- Flow_removed_event: khi một

dòng
ợng
lưu
ợcđư
quá hạ

n hoặ
c bịxóa bỏ
.

- Port_status_event: chỉra sựthay
ổi trạ
ng
đthái của các cổng (disable/enable, tốc
đ

, tên cổng).
- Port_stats_in: ợ
đư
c tăng ộ
lên
t switch nhậ
khi
n ợ
đư

c mộ
m t bả
n

tin

Port_st

ứng bả
n tin Port_starts_requets (bao gồm các giá trịtruy cậ
p hiệ
n tạ
i cho mộ
t cổ
ng
nhấ
tị
nh:
đrx, tx, lỗi…).
Ngoài ra, các thành phầ
n còn có thểtựxác

nh và
đchuyể
n các sựkiệ
n cấ
p
cho các thành phầ
n khác xửlý, các sựkiệ
n


đó

cao

hơn

là:

- Host_event: khi mộ
t host tham gia hoặ
c rời mạ
ng ờ
(thư
ng do time out) sựkiệ
n
này sẽđư
ợc

tăng

lên.

- Flow_in_event: khi một Packet_in_event
ợc nhậ
nđư
từmạ
ng, Flow_in_event
sau ợ
đó

c xửlýđư
bởi ứng dụng Routing.
- Link_event: khi mộ
t

link
ợc khám
đư

phá

i trong
hay
mạ
ng. thay đ

1.3 NetFPGA
NetFPGA [7] là mộ
t nề
n tả
ng phầ
n cứng giá rẻ
, ợ
đư
c thiế
t kếchủyế
u nhằ
m mụ
c
đích


là ụlàm
cho việ
c giả
công
ng dạ
y và c
nghiên cứu các thiế
t kếphầ
n cứng mạ
ng

như

bộđ

nh tuyế
n, bộchuyể
n mạ
ch, card mạ
ng ...
Do vậ
y NetFPGA có thểxây dựng làm Openflow Switch trong kiế
n trúc SDN tạ
i
các phòng Lab khu 618. Hiệ
n nay, với sựgiúp
ỡcủa đ
các sinh viên tạ
i phòng Lab, em

đãực th
nghiệ
m xây dựng hệthố
ng mô phỏng một khối chức
hình ISP

22

năng
ực hiệ
n th
trong mô


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

Hình 1.6:

Nền


tảng

NetFPGA

 Phầ
n cứng:
Cấ
u trúc phầ
n cứng của NetFPGA bao gồm:
- Xilinx VirtexTM-II pro 50
- 4x1 Gbps Ethernet ports sửdụ
ng lõi MAC mề
m
- 4.5 Mb SRAM và 64 Mb DDR2
- Một

chip

FPGA

- Kit NetFPGA giao tiế
p với

Spartan
ểlàm khối Control II
Logic cho
dùng
PCI interface
đ
máy tínhờngthông

bus PCI.

qua

đư

 Phầ
n mề
m.
Phầ
n mề
m ởđây ầ

n mề
mph

đi
u khiể
n NetFPGA, chúng bao gồm hệđi

u hành
Linux cho PC, driver cho kit NetFPGA, các phầ
n mề
m tạ
o ra giao diệ
n giữa ngư
ời
dùng và thiế
t bịmạ
ng.

 Xây dựng bộchuyể
n mạch trên nề
n tảng NetFPGA.
Đây



t gói phầ
m n mề
m mã mở của Linux, xây dựng một chuyể
n mạ
ch

Openflow bằ
ng phầ
n mề
m và có thểdownload từ website Openflow. Phầ
n mề
m
Openflow tham khả
o ợ
đư
c chia làm hai phầ
n: phầ
n

không ờigian
dùng (User-ngư

Space) và phầ

n không gian kernel (Kernel-Space).
Các process trong user-space giao tiế
p với bộđi

u khiể
n Openflow sửdụ
ng SSL đ

mã hóa thông tin. Giao thức Openflow chỉraị
nh đ
dạ
ng của gói tin giữa chuyể
n mạ
ch
23


Luậ
n

văn
ốt nghiệ
t
p cao học

Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

Openflow và bộđi


u khiể
n. Thông tin từbộchuyể
n mạ
ch tới bộđi

u khiể
n có thểlà
thông báo một flow mới ế

hoặ
c thông báo update trạ
ng
thông tin từbộđi

u khiể
n tới bộchuyể
n mạ
ch
đư
ợc

trao

i giữa cácđprocess của

thái
ờng link.
các



đư

như

u thêm
yêu
bớt các
c flow-entry

khôngời gian
dùng và kernel
ngư
module thông qua

các lời gọi hệthống IOCTL.
Kernel module chị
u trách nhiệ
m bả
o trì các flow-tables, xửlý gói tin và update các
sốliệ
u thố
ng kê. Mặ
cị
nh,
đkernel module của bộchuyể
n mạ
ch tham khả
o sẽtạ
o ra các

flow-table bằ
ng phầ
n mề
m và forward các gói tin qua card mạ
ng củ
a máy tính.
Kernel module có khảnăng
ởrộng
m bằ
ng cách cho phép các module phầ
n cứng
đăng
í các flow-table
k
thêm vào. Các flow-table của phầ
n cứng sẽcó quyề
n
hơn

ưu

tiên

các
-table củ
flow
a phầ
n mề
m. Các nhà phát triể
n có thểmởrộng hệthố

ng tham

khả
o bằ
ng cách thêm một NetFPGA Openflow Kernel Module. Kernel module này sẽ
sửdụng các interface củ
a kernel module tham khả

ểkế
t nối các flow-table củ
a cả
phầ
n cứng và phầ
n mề
m lạ
i với nhau.
Khi mộ
t

gói
ế
n kittin
NetFPGA,
đnế
u

gói

tin
ợc so sánh

này
trùng vớ
đư
i mộ
t flow-

entry

n tạ
iđã
trong flow-table
t
củ
a phầ
n cứng sẽđư
ợc forward trong phầ
n cứng với tố
c
đ
ộcao. Nế
u gói tin không trùng với mộ
t flow-entry nào trong flow-table, ví dụflow mới,
sau ẽgử
đó
i tới kernel
s module và kernel module sẽforward gói tin tới bộđi

u khiể
n.
Nế

u flow-table củ
a phầ
n cứngầ
y, đ
flow-entry mới sẽđư
ợc chèn vào flow-table củ
a
phầ
n mề
m. Những gói tin tiế
p theo thuộc những

flow
ếsẽkhông
như ợ
th
c xử
đư
lý ở

phầ
n cứng mà sẽđư
ợc forward lên phầ
n mề
m ể
đ
xửlý.
Đặ
c ể
m

đi
nổ
i bậ
t củ
a NetFPGA là có khảnăng
Openflow switch có hiệ
u

năng
ửdụ
ng lớ
s
n với


cung
p cho
ờicsử
ngư
dụ
ng mộ
t

băngốithông
đa
ên mỗitr
cổ
ngtcó thể

lên tới 1Gbps hoặ

c 10Gbps tùy theo từng phiên bả
n.ặ
c biệ
Đt

hơn,
ỗi trên
Kit

u có đ
m

một chip FPGA cung cấ
p cho các nhà nghiên cứu khảnăng ế
tùy
n thay

i
bi
ểxây
đđ
dựng, tùy biế
n các nề
n tả
nh khác nhau của Openflow switch. Tuy nhiên, phạ
m vi hoạ
t
đ

ng chủyế

u củ
a

NetFPGA

triể
n khai trên các mô hình mạ
ng lớn


ờng trong
phòng thí nghiệ
môi
m, chưa
trư
ẳnăng
có kh
hơn.

24


Luậ
n

văn
ốt nghiệ
t
p cao học


Kỹthuậ
t an ninh mạ
ng dùng Openflow/SDN

Trên Openflow Switch,
sau

các ừmộ
gói
t cổng mạ
tin
ng bấ
t đi
qua IC vào
Ethernet, t

khi
ợc xửlý
đư

nh đ
tuyế
n sẽđư
ợc ẩ

trởra mộ
t cổng mạ
ng khác. Quá trình này

xả

y ra liên tục

khi



các ể
gói
n mạ
ch. Ngoài
tin
ra, khố
đi
i chuyể
vào
n mạ
ch chuy
vẫ
n

phả
i xem xét và cậ
p nhậ
t các tín hiệ
u ề
uđi
khiể
n nhậ
n ợ
đư

c từkhố
iề
uđi
khiể
n qua PCI.
Với Tầ
n sốlàm việ
c hiệ
n tạ
i là 125 Mhz, chuyể
n mạ
ch có thểđáp
ứng

lưu
ợng

1Gbps x 2 (chiề
u) x 4 (cổ
ng) = 8Gbps toàn chuyể
n mạ
ch.
1.4 Kế
t luậ
n
Chương
mạ
ng lậ
p


2

đã

cho
ững kiế
n chúng
thức vềkiế
n trúc
tamạ
ng
nh
thếhệmới -

trình
ợc SDN, sự
đư
so sánh với kiế
n trúc mạ
ng

Openflow và phầ
n cứng

cũ.
ế
p theo là
Ti
giao thức


NetFPGA
ểcó thểtạ
o ra
đmộ
t bộchuyể
n mạ
ch Openflow.

25




×