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

NGHIÊN cứu TÍCH hợp các GIẢI PHÁP bảo mật CHO hệ THỐNG MẠNG SDN

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 (4.76 MB, 94 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG


BÁO CÁO ĐỒ ÁN CHUYÊN NGÀNH
ĐỀ TÀI : NGHIÊN CỨU TÍCH HỢP CÁC GIẢI
PHÁP BẢO MẬT CHO HỆ THỐNG MẠNG
SDN

Giảng viên hướng dẫn: TS. Đàm Quang Hồng Hải
Sinh viên thực hiện:
 Võ Hoàng Phúc - 12520320
 Trần Trí Khang - 12520189


LỜI CẢM ƠN
Lời đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến Khoa “Mạng Máy Tính & Truyền
Thông” cũng như trường Đại Học Công Nghệ Thông Tin, TP. Hồ Chí Minh đã tạo mọi điều kiện
tốt nhất cho chúng em thực hiện đồ án chuyên ngành năm nay.
Tiếp theo, chúng em xin gửi lời cảm ơn chân thành và sâu sắc đến Thầy TS. Đàm Quang
Hồng Hải – người đã tận tình hướng dẫn, quan tâm chỉ bảo chúng em trong suốt thời gian thực
hiện đề tài. Ngoài ra, không quên cảm ơn quý thầy cô trong khoa đã tận tình giảng dạy, trang
bị cho chúng em những kiến thức quý báu trong những năm học vừa qua.
Cuối cùng, chúng em xin gởi lời biết ơn sâu sắc đến cha mẹ, bạn bè đã ủng hộ, giúp đỡ,
động viên chúng em trong suốt quá trình học cũng như thời gian làm đồ án.
Một lần nữa xin cảm ơn và rất mong nhận được sự đóng góp chân thành của các quý
thầy cô, bạn bè và độc giả.

Trang | 2



MỤC LỤC
LỜI CẢM ƠN ................................................................................................................................................................. 2
MỤC LỤC........................................................................................................................................................................ 3
MỤC LỤC HÌNH ẢNH................................................................................................................................................. 5
DANH MỤC TỪ VIẾT TẮT ......................................................................................................................................... 6
LỜI NÓI ĐẦU ................................................................................................................................................................ 7
CHƯƠNG I : TỔNG QUAN VỀ SDN – Software Defined Networking ....................................................... 8
I.

SỰ CẦN THIẾT CỦA MỘT KIẾN TRÚC MẠNG MỚI............................................................................ 8

II. SDN LÀ GÌ? TẠI SAO LẠI LÀ SDN?........................................................................................................... 8
III. ƯU ĐIỂM CỦA SDN ..................................................................................................................................... 10
IV. KIẾN TRÚC CỦA SDN ................................................................................................................................. 11
1.

Application layer: ...................................................................................................................................... 11

2.

Control layer: .............................................................................................................................................. 12

3.

Infrastructure layer: .................................................................................................................................. 12

V. CÁC BƯỚC TRIỂN KHAI SDN ................................................................................................................... 13
1.


Bước thứ nhất ............................................................................................................................................ 13

2.

Bước thứ 2................................................................................................................................................... 13

3.

Bước thứ 3................................................................................................................................................... 13

4.

Bước thứ 4................................................................................................................................................... 14

VI. CÁC THÁCH THỨC ĐẶT RA VỚI SDN................................................................................................... 14
VII. ỨNG DỤNG CỦA SDN ............................................................................................................................... 14
1.

Phạm vi doanh nghiệp ........................................................................................................................... 14

2.

Phạm vi các nhà cung cấp hạ tầng và dịch vụ viễn thông ........................................................ 15

VIII.

TƯƠNG LAI CỦA SDN ......................................................................................................................... 15

CHƯƠNG II : OPENFLOW ....................................................................................................................................... 16
I.


TỔNG QUAN VỀ OPENFLOW .................................................................................................................. 16

II. CÁC ĐẶC TRƯNG CỦA OPENFLOW...................................................................................................... 16
III. CẤU TẠO VÀ HOẠT ĐỘNG CỦA OPENFLOW ................................................................................... 17
IV. LỢI ÍCH KHI SỬ DỤNG OPENFLOW ...................................................................................................... 19
V. OPENFLOW VÀ OPENSTACK................................................................................................................... 20
1.

So sánh OpenFlow và OpenStack ...................................................................................................... 20
Trang | 3


2.

Các thành phần trong OpenFlow switch ......................................................................................... 21

CHƯƠNG III : CÁC VẤN ĐỀ BẢO MẬT TRONG SDN .................................................................................... 28
I.

CÁC MỐI NGUY HIỂM BẢO MẬT........................................................................................................... 28

1.

Các kiểu tấn công và mối đe dọa ....................................................................................................... 28

2.

Chi tiết về các kiểu tấn công ................................................................................................................ 30


a.

Spoofing ...................................................................................................................................................... 30

b.

Repudiatiton............................................................................................................................................... 32

c.

Information Disclosure ........................................................................................................................... 33

d.

Denial of Service ....................................................................................................................................... 35

e.

Elevation of Privilege ............................................................................................................................... 38

II. TÍCH HỢP CÁC GIẢI PHÁP BẢO MẬT CHO HỆ THỐNG MẠNG VÀ CƠ SỞ DỮ LIỆU .......... 39
1.

So sánh với việc tích hợp các giải pháp bảo mật cho hệ thống mạng truyền thống ..... 39

2.

Tích hợp các giải pháp bảo mật cho hệ thống mạng SDN ...................................................... 42

a.


Các giải pháp bảo mật tổng thể cho hệ thống mạng SDN ...................................................... 42

b.

Bảo mật Data Plane ................................................................................................................................. 44

c.

Bảo mật Control Plane : ......................................................................................................................... 47

d.

Bảo mật Application Plane : ................................................................................................................. 64

CHƯƠNG IV : TRIỂN KHAI TRONG MÔI TRƯỜNG ẢO MININET ............................................................. 66
I. GIỚI THIỆU VỀ CÁC CÔNG CỤ SỬ DỤNG TRONG DEMO VÀ CẤU HÌNH MÔ PHỎNG
MẠNG: .................................................................................................................................................................... 66
1.

Công cụ mô phỏng mạng Mininet .................................................................................................... 66

2.

OpenDaylight ............................................................................................................................................. 74

II. CÀI ĐẶT CÔNG CỤ : ................................................................................................................................... 74
1.

Cài đặt Mininet. ......................................................................................................................................... 74


2.

Cài đặt Opendaylight. ............................................................................................................................. 74

III. THỬ NGHIỆM MỘT SỐ TÍNH NĂNG BẢO MẬT ............................................................................... 75
1.

Triển khai mạng SDN với nhiều controller: ..................................................................................... 75

2.

Tấn công, phòng chống DoS cho mạng SDN................................................................................ 79

IV. KẾT QUẢ ......................................................................................................................................................... 85
CHƯƠNG IV : KẾT LUẬN ......................................................................................................................................... 86
I.

TÓM TẮT......................................................................................................................................................... 86
Trang | 4


II. ĐÁNH GIÁ ...................................................................................................................................................... 88
III. KẾT LUẬN ....................................................................................................................................................... 91
IV. HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI ......................................................................................... 92
TÀI LIỆU THAM KHẢO ............................................................................................................................................. 93

MỤC LỤC HÌNH ẢNH
Hình 1. Khó khăn cho người vận hành ................................................................................................................ 8
Hình 2. Controller quản lý tập trung các thiết bị switch thông qua API ................................................. 9

Hình 3. Quản lý tập trung thông qua controller duy nhất ......................................................................... 10
Hình 4. Cấu trúc của SDN – mô hình 1 ............................................................................................................. 11
Hình 5. Cấu trúc của SDN - mô hình 2 .............................................................................................................. 11
Hình 6. Một ví dụ về Flow Table .......................................................................................................................... 17
Hình 7. Các trường trong bảng flow và cách thức hoạt động.................................................................. 18
Hình 8. Cấu trúc của một switch OpenFlow .................................................................................................... 18
Hình 9. Mô hình Private Cloud trên nền OpenStack và SDN .................................................................... 20
Hình 10. Sơ đồ cơ chế hoạt động của một OpenFlow switch .................................................................. 21
Hình 11. Quá trình xử lý pipeline của OpenFlow ........................................................................................... 23
Hình 12. Các hành động xử lý đối với một entry trong bảng flow ......................................................... 23
Hình 13. Một mạng OpenFlow ............................................................................................................................. 27
Hình 14. Phân phối logical plane trong hệ thống mạng truyền thống................................................. 41
Hình 15. Các giải pháp bảo mật chung ............................................................................................................ 43
Hình 16. Sử dụng tường lửa để tăng cường an toàn cho các host trong SDN .................................. 47
Hình 17. Bảng mô tả các giải pháp đề xuất .................................................................................................... 48
Hình 18. Các loại controller ................................................................................................................................... 49
Hình 19. Các phiên bản controller hỗ trợ Replication và faul-tolerance trong SDN ........................ 51
Hình 20. Tích hợp bảo vệ mạng với Replication và Diversity.................................................................... 52
Hình 21. Sơ đồ tổng quan về kiến trúc của Security-Enhanced-Floodlight và cơ chế xác thực .. 59
Hình 22. Cơ chế phát hiện và luồng dữ liệu của lớp bảo mật SPHINX ................................................. 61
Hình 23. Bảo mật lớp Application ....................................................................................................................... 64
Hình 24. DenfenseFlow ........................................................................................................................................... 64
Hình 25. Trang đăng nhập OpenDaylight ........................................................................................................ 75
Hình 26. Mô hình mạng triển khai demo ......................................................................................................... 75
Hình 27. Hiển thị mô hình mạng trong OpenDaylight................................................................................ 77
Hình 28. Kiểm tra kết nối giữa các host ............................................................................................................ 77
Trang | 5


Hình 29. Bảng Flow hiển thị Action của h1 và h2.......................................................................................... 78

Hình 30. Kiểm tra kết nối giữa h1 và h2 ........................................................................................................... 78
Hình 31. Flow Table .................................................................................................................................................. 78
Hình 32. Kiểm tra kết nối giữa h1 và h3 ........................................................................................................... 79
Hình 33. Hiển thị mô hình mạng trong OpenDaylight................................................................................ 81
Hình 34. Kiểm tra IP h1 và h8 ............................................................................................................................... 81
Hình 35. Kiểm tra kết nối giữa các host ............................................................................................................ 81
Hình 36. Bảng Flow Table ...................................................................................................................................... 82
Hình 37. Công cụ tấn công DDoS ....................................................................................................................... 82
Hình 38. Bắt gói tin bằng Wireshark .................................................................................................................. 83
Hình 39. Công cụ System Monitor...................................................................................................................... 84
Hình 40. Công cụ đo băng thông mạng........................................................................................................... 84
Hình 41. Công cụ đo băng thông mạng........................................................................................................... 85
Hình 42. Mô hình thiết kế tích hợp bảo mật cho SDN ................................................................................ 88

DANH MỤC TỪ VIẾT TẮT
AAA

Authentication Authorization and Accounting

ACL

Access Control List

API

Application Programming Interface

BYOD

Bring-Your-Own-Device


DDoS

Distributed Denial of Service

DFD

Data Flow Diagram

IaaS

Infrastructure as a Service

IDS

Intrusion Detection System

ONF

Open Networking Foundation

SDN

Software-Defined Networking

SDO

Standard Organisation

SIEM


Security Information and Event Management

TCAM

Ternary Content-Addressable Memory

TLS

Transport Layer Security

Trang | 6


LỜI NÓI ĐẦU
Ngày nay mạng máy tính ngày càng phát triển vượt bậc. Nhu cầu mở rộng mạng ngày
càng tăng, đòi hỏi số lượng thiết bị ngày càng lớn gây ra nhiều khó khăn cho người quản trị. Hệ
thống mạng phức tạp, chính sách không nhất quán, khả năng mở rộng kém, chi phí cao, nhiều
nguy cơ về bảo mật. Sự phức tạp trong việc tích hợp các giải pháp bảo mật cho hệ thống mạng
là vấn đề được quan tâm hàng đầu. Công nghệ SDN - Software Defined Networking (Mạng
định nghĩa bằng phần mềm) ra đời như một giải pháp cho hệ thống mạng hiện nay.
Software-Defined Networking là một cách tiếp cận cơ bản khác với phương pháp thông
thường và có rất nhiều tiềm năng. Tuy nhiên, sự thay đổi trong cấu trúc mạng này có rất nhiều
tác động trọng yếu đến vấn đề bảo mật cho các nhà khai thác. Nó cũng đặt ra những thách thức
trong việc đảm bảo an ninh và an toàn dữ liệu trong thời gian tới.
Do đó nhóm quyết định chọn đề tài “Nghiên cứu tích hợp các giải pháp bảo mật cho
hệ thống mạng SDN”.
Mục đích chính nghiên cứu này là đưa ra cái nhìn tổng quan về một kiến trúc mạng hoàn
toàn mới, tìm hiểu các mối nguy hiểm đối với SDN và tích hợp các giải pháp bảo mật cho hệ
thống mạng này.

Đồ án này tập trung tìm hiểu các vấn để chính: Tìm hiểu về SDN và Openflow; Các mối
nguy hiểm bảo mật SDN; Tích hợp các giải pháp bảo mật cho hệ thống mạng truyền thống và
hệ thống mạng SDN; Kết luận và đánh giá.
Nội dung của đồ án được chia thành 5 chương:


Chương I : Tổng quan về SDN – Software Defined Networking



Chương II : OpenFlow



Chương III : Các vấn đề bảo mật trong SDN



Chương IV : Triển khai trong môi trường ảo Mininet



Chương V : Kết luận

Trang | 7


CHƯƠNG I : TỔNG QUAN VỀ SDN – Software Defined Networking
I. SỰ CẦN THIẾT CỦA MỘT KIẾN TRÚC MẠNG MỚI
Trong một kiến trúc mạng truyền thống data plane và control plane đều cùng nằm trên

một thiết bị vật lý (chế độ tự trị) và mỗi thiết bị độc lập với nhau, các chính sách chuyển tiếp lưu
lượng nằm riêng trên mỗi thiết bị, vì vậy không có khả năng hiển thị toàn bộ mạng, các chính
sách chuyển tiếp có thể không phải là tốt nhất.
Nếu số lượng thiết bị càng nhiều, càng gây nên sự phức tạp trong mạng và điều đó cũng
gây khó khăn cho người quản trị mạng trong quá trình vận hành và điều khiển.

Hình 1. Khó khăn cho người vận hành
Các thay đổi mô hình lưu thông, sự gia tăng của các dịch vụ đám mây và nhu cầu phát
triển của các nhà khai thác băng thông dịch vụ cần tìm ra giải pháp mới. Vì công nghệ mạng
truyền thống không thể đáp ứng những nhu cầu đó và nảy sinh các vấn đề. Các yếu tố hạn chế:


Phức tạp.



Chính sách không nhất quán.



Khả năng mở rộng quy mô kém.



Phụ thuộc vào nhà cung cấp.

II. SDN LÀ GÌ? TẠI SAO LẠI LÀ SDN?
Software-Definded Networking (SDN) là một cách tiếp cận mới trong việc thiết kế, xây
dựng và quản lý hệ thống mạng. Về cơ bản, SDN chia tách độc lập hai cơ chế hiện đang tồn tại
trong cùng một thiết bị mạng: Control Plane (cơ chế điều khiển, kiểm soát luồng mạng), Data

Plane (cơ chế chuyển tiếp dữ liệu, luồng dữ liệu) để có thể tối ưu hoạt động của hai cơ chế này.
Trang | 8


SDN dựa trên giao thức mã nguồn mở (Open Flow) và là kết quả nghiên cứu của Đại học
Stanford và California Berkeley. SDN tách việc định tuyến và chuyển tiếp các luồng dữ liệu riêng
rẽ và chuyển kiểm soát luồng sang thành phần mạng riêng có tên gọi là thiết bị kiểm soát luồng
(Flow Controller). Điều này cho phép luồng các gói dữ liệu đi qua mạng được kiểm soát theo lập
trình.

Hình 2. Controller quản lý tập trung các thiết bị switch thông qua API
Trong SDN, control plane được tách ra từ các thiết bị vật lý và chuyển đến các controller.
Controller này có thể nhìn thấy toàn bộ mạng và do đó cho phép các kỹ sư mạng làm cho chính
sách chuyển tiếp được tối ưu dựa trên toàn bộ mạng. Các controller tương tác với các thiết bị
mạng vật lý thông qua một giao thức chuẩn OpenFlow. Với SDN, việc quản lý mạng có thể được
thực hiện thông qua một giao diện duy nhất, trái ngược với việc cấu hình ở mỗi thiết bị mạng
riêng lẻ.

Trang | 9


Hình 3. Quản lý tập trung thông qua controller duy nhất

III. ƯU ĐIỂM CỦA SDN


Controller có thể được lập trình trực tiếp.




Mạng được điều chỉnh, thay đổi một cách nhanh chóng thông qua việc thay đổi trên
controller.



Mạng được quản lý tập trung do phần điều khiển được tập trung trên controller.



Cấu hình lớp cơ sở hạ tầng có thể được lập trình trên lớp ứng dụng và truyền đạt
xuống các lớp dưới.



Giảm CapEx: SDN giúp giảm thiểu các yêu cầu mua phần cứng theo mục đích xây
dựng các dịch vụ, phần cứng mạng trên cơ sở ASIC và hỗ trợ mô hình pay-as-yougrow (trả những gì bạn dùng) để tránh lãng phí cho việc dự phòng.



Giảm OpEx: thông qua các phần tử mạng đã được gia tăng khả năng lập trình, SDN
giúp dễ dàng thiết kế, triển khai, quản lý và mở rộng mạng. Khả năng phối hợp và dự
phòng tự động không những giảm thời gian quản lý tổng thể, mà còn giảm xác suất
lỗi do con người tới việc tối ưu khả năng và độ tin cậy của dịch vụ.



Truyền tải nhanh chóng và linh hoạt: giúp các tổ chức triển khai nhanh hơn các ứng
dụng, các dịch vụ và cơ sở hạ tầng để nhanh chóng đạt được các mục tiêu kinh doanh.




Cho phép thay đổi: cho phép các tổ chức tạo mới các kiểu ứng dụng, dịch vụ và mô
hình kinh doanh, để có thể tạo ra các luồng doanh thu mới và nhiều giá trị hơn từ
mạng.



Mở ra cơ hội cho các nhà cung cấp thiết bị trung gian khi phần điều khiển được tách
rời khỏi phần cứng.

T r a n g | 10


IV. KIẾN TRÚC CỦA SDN
Về cơ bản, SDN được chia làm ba phần lớn: phần ứng dụng (Application Layer), phần
điều khiển (Control Layer) và phần thiết bị hạ tầng (Infrastructure Layer). Các phần sẽ liên kết
với nhau thông qua giao thức hoặc các API.

Hình 4. Cấu trúc của SDN – mô hình 1

Hình 5. Cấu trúc của SDN - mô hình 2
1. Application layer:
Lớp ứng dụng: là các ứng dụng được triển khai trên mạng, kết nối tới lớp điều khiển
thông qua các API, cung cấp khả năng cho phép lớp ứng dụng lập trình lại (cấu hình lại) mạng
(điều chỉnh các tham số trễ, băng thông, định tuyến, …) thông qua lớp điều khiển lập trình giúp
cho hệ thống mạng để tối ưu hoạt động theo một yêu cầu nhất định.
T r a n g | 11


2. Control layer:

Lớp điều khiển: là nơi tập trung các controller thực hiện việc điều khiển cấu hình mạng
theo các yêu cầu từ lớp ứng dụng và khả năng của mạng. Các controller này có thể là các phần
mềm được lập trình.
Một Controller (bộ điều khiển) là một ứng dụng quản lý kiểm soát luồng lưu lượng trong
môi trường mạng. Đnể truyền thông điều khiển lớp cơ sở hạ tầng, lớp điều khiển sử dụng các
cơ chế như OpenFlow, ONOS, ForCES, PCEP, NETCONF, SNMP hoặc thông qua các cơ chế riêng
biệt. Hầu hết các SDN controller hiện nay dựa trên giao thức OpenFlow.
SDN controller hoạt động như một loại hệ điều hành (OS) cho mạng. Tất cả thông tin liên
lạc giữa các ứng dụng và các thiết bị phải đi qua controller. Controller sử dụng giao thức
OpenFlow để cấu hình các thiết bị mạng và chọn đường đi tốt nhất cho các lưu lượng ứng dụng.
Cùng với chức năng chính, nó có thể tiếp tục được mở rộng để thực hiện thêm các nhiệm vụ
quan trọng như định tuyến và truy cập mạng.
Vai trò:


Cung cấp API để có thể xây dựng các ứng dụng cho hệ thống mạng.



Thu nhận thông tin từ hệ thống mạng vật lý, điều khiển hệ thống mạng vật lý.

3. Infrastructure layer:
Lớp vật lý (lớp cơ sở hạ tầng) của hệ thống mạng, bao gồm các thiết bị mạng thực tế
(vật lý hay ảo hóa) thực hiện việc chuyển tiếp gói tin theo sự điều khiển của lớp điểu khiển. Một
thiết bị mạng có thể hoạt động theo sự điều khiển của nhiều controller khác nhau, điều này giúp
tăng cường khả năng ảo hóa của mạng.
So sánh với kiến trúc mạng truyền thống:


Trong hệ thống mạng truyền thống, các thiết bị mạng (Layer 2, layer 3) phải mang

trên mình nhiều chức năng để đảm bảo hoạt động. VD: Các chức năng của Layer
Switch hiện nay: VLAN, Spanning tree, Quality of Service, Security... và đa số các thiết
bị mạng và các giao thức này hoạt động độc lập với nhau vì mỗi nhà sản xuất cung
cấp các giải pháp mạng khác nhau. Những điều này tạo ra sự phân mảnh hệ thống
mạng, giảm hiệu năng hoạt động.



Với SDN, việc điều khiển được tập trung tại Controller Layer, các thiết bị mạng chỉ có
nhiệm vụ chuyển tiếp gói tin do đó sự khác biệt giữa những nhà sản xuất không ảnh
hưởng tới toàn hệ thống mạng. Điều này cũng giống như sự phát triển của máy tính
hiện nay, mỗi máy tính được cung cấp và sản xuất bởi những nhà sản xuất khác nhau
(Dell, HP, IBM, Apple, Google..), chạy các hệ điều hành khác nhau (Windows, MacOS,
Linux, Unix,...) nhưng đều có khả năng truy cập và sử dụng internet dựa trên giao thức
mạng TCP/IP.



Về phía người sử dụng, người dùng không phải có mặt trực tiếp tại các thiết bị mạng
để cấu hình cho các thiết bị mạng, họ chỉ cần thông qua các API đã được cung cấp
T r a n g | 12


cùng với một chút kiến thức về TCP/IP để có thể xây dựng ứng dụng cho toàn hệ
thống mạng. Với SDN, mọi thứ đều được quản lý tập trung. Điều này mang lại nhiều
lợi ích tuy nhiên cũng mở ra nhiều nguy cơ về bảo mật hơn so với hệ thống mạng
truyền thống.

V. CÁC BƯỚC TRIỂN KHAI SDN
Doanh nghiệp cần phải bắt đầu một cách thật chính xác. SDN là sự chuyển đổi từ một hệ

thống mạng có thể cấu hình sang một hệ thống mạng có thể lập trình. Do đó, có một số bước
mà doanh nghiệp buộc phải tuân theo.
1. Bước thứ nhất
Doanh nghiệp phải tích hợp mọi thiết bị, gồm bộ cân bằng tải, tường lửa, hệ thống truyền
thông, thiết bị không dây hoặc hệ thống lưu trữ… vào các SDN controller. Các nhà sản xuất SDN
có các công cụ có thể di dời cấu hình hiện thời sang các SDN controller cho doanh nghiệp. Mọi
thiết bị trên mạng đều phải hỗ trợ SDN. Đây là yếu tố rất quan trọng bởi vì bây giờ doanh nghiệp
đang tạo ra một chức năng mạng SDN duy nhất, phủ khắp mọi thiết bị của mọi nhà sản xuất và
nền tảng. Nhà quản trị phải đảm bảo tất cả thiết bị được chuyển đổi thông qua cập nhật phần
mềm IOS (phần mềm chuyển đổi), hoặc mua các thiết bị mới có hỗ trợ SDN.
Khi trang bị thiết bị mới, cần cẩn thận về việc các nhà sản xuất hỗ trợ công nghệ SDN nào
và công nghệ SDN nào là tốt nhất cho từng loại triển khai hệ thống khác nhau (thiết bị hỗ trợ
OpenFlow hay OpenStack). Chọn lựa giữa OpenFlow và OpenStack ngay từ ban đầu dựa trên hạ
tầng hiện thời của doanh nghiệp và loại mạng SDN mà doanh nghiệp cần.
Khi di dời, chuyển đổi cấu hình thiết bị, cẩn thận khi định nghĩa các chính sách để di dời
hoàn toàn, đủ các chính sách bảo mật cũng như đặt chúng vào SDN controller một cách hoàn
chỉnh.
2. Bước thứ 2
Chạy thử nghiệm cẩn thận và triển khai các SDN controller. Có thể tạo một môi trường
thử nghiệm gồm các thiết bị mạng giao tiếp được với SDN controller để chắc chắn mọi thứ đều
chạy tốt. Các thiết bị đều phải cùng chung một giao thức, hoặc OpenFlow hoặc OpenStack và
doanh nghiệp cần đảm bảo bước thứ 2 này là các thiết bị trong mạng và controller giao tiếp
thành công với nhau.
3. Bước thứ 3
Là bước quan trọng nhất, cấu hình SDN tương tác được với ứng dụng. Để ứng dụng hoàn
toàn tận dụng được mạng SDN, đầu tiên cần áp dụng các chính sách như ưu tiên lệnh thực thi
cao hơn lệnh báo cáo để cho luồng dữ liệu quan trọng nhất chạy mượt mà trong hệ thống mạng.
T r a n g | 13



Khi SDN đã sẵn sàng, có thể cho các ứng dụng gửi các bộ nhận diện bổ sung vào header, không
chỉ đơn giản là các giao thức, TCP/UDP và cổng dữ liệu nữa. Các SDN controller sẽ phải nhận
diện được các gói dữ liệu thông qua header mà không phải đọc toàn bộ dữ liệu để nhận diện
loại dữ liệu.
4. Bước thứ 4
Thiết lập bảo mật vào các lớp ứng dụng. Doanh nghiệp có thể thêm bảo mật dạng rule ở
lớp thứ 7 bằng cách đầu tiên là nhận diện tương tác ứng dụng thích hợp và không thích hợp,
sau đó áp dụng các rule bổ sung dựa trên hành vi (nếu hành vi này xuất hiện). Một khi đã thiết
lập được mạng SDN, nên giám sát mạng thông qua các SDN controller. Vài công ty tách chức
năng giám sát ra khỏi controller, ví dụ như tách riêng giám sát ứng dụng và giám sát gói dữ liệu.
Tách ra như vậy phải sử dụng các công cụ giám sát chạy ở cấp cao hơn và phải có giao diện của
controller, mạng và ứng dụng SDN. Doanh nghiệp cũng nên giám sát cả các chính sách bảo mật.

VI. CÁC THÁCH THỨC ĐẶT RA VỚI SDN


Hiệu suất và tính linh hoạt: Làm thế nào để lập trình chuyển mạch đạt được hiệu suất
cao nhất và linh hoạt?



Khả năng mở rộng: Làm thế nào để cho phép Controller cung cấp một cái nhìn toàn
bộ mạng?



Bảo mật: Làm thế nào để SDN được bảo vệ từ các cuộc tấn công?




Khả năng tương thích: Làm thế nào các giải pháp SDN được tích hợp vào mạng hiện
tại?



Liệu công nghệ SDN có thể thực hiện được không, khi mà thị trường Data Center còn
trì trệ?



Liệu SDN sẽ định hình tương lai cho hệ thống mạng như thế nào? Liệu giao thức
nguồn mở có đủ sức bật, hay vẫn chịu lép vế trước một giao thức nào khác?



Việc chuyển đổi sang hệ thống mạng mới này sẽ phải là một quá trình lâu dài, giống
như ảo hóa.

VII. ỨNG DỤNG CỦA SDN
Với những lợi ích mà mình đem lại, SDN có thể triển khai trong phạm vi doanh nghiệp
(Enterprises) hoặc nhà cung cấp hạ tầng và dịch vụ viễn thông để giải quyết các yêu cầu của các
nhà cung cấp tại mỗi phân khúc thị trường.
1. Phạm vi doanh nghiệp
Áp dụng trong mạng doanh nghiệp : Khi được sử dụng để hỗ trợ một môi trường đám
mây riêng hoặc tích hợp, SDN cho phép các tài nguyên mạng được cấp phát theo phương thức
linh hoạt cao, cho phép dự phòng nhanh các dịch vụ đám mây và chuyển giao linh hoạt hơn với
T r a n g | 14


các nhà cung cấp đám mây bên ngoài. Với các công cụ để quản lý an toàn các mạng ảo của

mình, các doanh nghiệp và các đơn vị kinh doanh sẽ tin vào các dịch vụ đám mây hơn.
2. Phạm vi các nhà cung cấp hạ tầng và dịch vụ viễn thông
SDN cung cấp cho các nhà mạng, các nhà cung cấp đám mây công cộng và các nhà cung
cấp dịch vụ khả năng mở rộng và tự động cần thiết để triển khai một mô hình tính toán có ích
cho ITaaS (IT-as-a-Service). Điều này được thực hiện thông qua việc đơn giản hóa triển khai các
dịch vụ tùy chọn và theo yêu cầu, cùng với việc chuyển dời sang mô mình self-service. Mô hình
tập trung, dự phòng và điều khiển tự động của SDN dễ dàng hỗ trợ cho thuê linh hoạt các tài
nguyên, đảm bảo tài nguyên mạng được triển khai tối ưu, giảm CapEx và OpEx, tăng giá trị và
tốc độ dịch vụ.

VIII. TƯƠNG LAI CỦA SDN
Hiện nay, SDN thực sự là một hướng đi được quan tâm đặc biệt trong cả nghiên cứu lẫn
ứng dụng. Có thể dễ dàng nhận ra rằng, SDN phù hợp với những môi trường hệ thống mạng
tập trung và có mức lưu lượng cực kỳ lớn bao gồm:


Các hệ thống mạng doanh nghiệp: Mạng Campus và mạng trung tâm dữ liệu (Data
Center)



Hệ thống mạng phục vụ điện toán đám mây - Cloud

SDN đã nhận được sự quan tâm từ những "gã khồng lồ" trong làng công nghệ khi cả
Google và Facebook đều đã tham gia nghiên cứu và xây dựng cho riêng mình những trung tâm
dữ liệu sử dụng SDN. Theo dự đoán trong một tương lai không xa, SDN sẽ xóa bỏ sự độc quyền
thương mại trong lĩnh vực thiết bị mạng vốn lâu nay bị CISCO nắm giữ và sẽ mở ra một cuộc
cách mạng như Apple đã làm ra iPhone.

T r a n g | 15



CHƯƠNG II : OPENFLOW
I. TỔNG QUAN VỀ OPENFLOW
Để tách biệt hẳn phần điều khiển ra khỏi phần chuyển tiếp và cung cấp khả năng lập trình
cho lớp điều khiển, ONF sử dụng giao thức OpenFlow. OpenFlow là tiêu chuẩn đầu tiên, cung
cấp khả năng truyền thông giữa các giao diện của lớp điều khiển và lớp chuyển tiếp trong kiến
trúc SDN. OpenFlow cho phép truy cập trực tiếp và điều khiển mặt phẳng chuyển tiếp của các
thiết bị mạng như switch và router, cả thiết bị vật lý và thiết bị ảo, do đó giúp di chuyển phần
điều khiển mạng ra khỏi các switch thực tế tới phần mềm điều khiển trung tâm.
Sự xuất hiện của OpenFlow thực sự là một cuộc cách mạng, đưa sự phát triển của SDN
lên một tầm cao mới. OpenFlow là giao thức hoạt động giữa tầng điều khiển (Control Layer) và
tầng vật lý (Infrastructure Layer). Trong kiến trúc của SDN, tất các các thiết bị được liên kết với
tầng điều khiển và thông qua OpenFlow. OpenFlow có 2 nhiệm vụ chính:


Giám sát hoạt động của các thiết bị mạng: Lưu lương mạng, trạng thái hoạt động của
các nút mạng, các thông tin cơ bản về các thiết bị …



Điều khiển hoạt động của thiết bị mạng: Điều khiển luồng dữ liệu (routing), Bảo mật,
Quality of Service...

Về cơ bản, OpenFlow cung cấp số lượng lớn các chức năng đã được định nghĩa và thông
qua bởi Open Networking Foundation (ONF). Các thiết bị mạng chỉ cần được thêm vào thư
viện của OpenFlow là có thể tham gia hoạt động trong mạng OpenFlow.
Một điểm rất mạnh của OpenFlow là có thể hoạt động tốt giữa cả các thiết bị mạng ảo
và thiết bị mạng vật lý. Sự tăng trưởng mạng mẽ của công nghệ ảo hóa hiện nay đã nâng cao
vai trò của các thiết bị mạng ảo, do đó, việc đồng bộ giữa các thiết bị mạng ảo và thực là điều

hết sức quan trọng.

II. CÁC ĐẶC TRƯNG CỦA OPENFLOW


OpenFlow có thể được sử dụng bởi ứng dụng phần mềm ngoài để điều khiển mặt
phẳng chuyển tiếp của các thiết bị mạng, giống như tập lệnh của CPU điều khiển một
hệ thống máy tính.



Giao thức OpenFlow được triển khai trên cả hai giao diện kết nối giữa các thiết bị cơ
sở hạ tầng mạng và phần mềm điều khiển SDN.



OpenFlow sử dụng khái niệm các “flow” (luồng) để nhận dạng lưu lượng mạng trên
cơ sở định nghĩa trước các qui tắc phù hợp (được lập trình tĩnh hoặc động bởi phần
T r a n g | 16


mềm điều khiển SDN). Giao thức này cũng cho phép định nghĩa cách mà lưu lượng
phải được truyền qua các thiết bị mạng trên cơ sở các tham số, chẳng hạn như mô
hình lưu lượng sử dụng, ứng dụng và tài nguyên đám mây. Do đó OpenFlow cho phép
mạng được lập trình trên cơ sở luồng lưu lượng. Một kiến trúc SDN trên cơ sở
OpenFlow cung cấp điều khiển ở mức cực kỳ chi tiết, cho phép mạng phản hồi sự thay
đổi theo thời gian thực của ứng dụng, người dùng và mức phiên. Mạng định tuyến
trên cơ sở IP hiện tại không cung cấp mức này của điều khiển, tất cả các luồng lưu
lượng giữa hai điểm cuối phải theo cùng một đường thông qua mạng, mặc dù yêu
cầu của chúng khác nhau.



Giao thức OpenFlow là một chìa khóa để cho phép các mạng định nghĩa bằng phần
mềm và cũng là giao thức tiêu chuẩn SDN duy nhất cho phép điều khiển mặt phẳng
chuyển tiếp của các thiết bị mạng. Từ việc áp dụng khởi đầu tới mạng trên cơ sở
Ethernet, các SDN trên cơ sở OpenFlow có thể được triển khai trên các mạng đang tồn
tại, cả vật lý và ảo hóa. - OpenFlow đang ngày càng được hỗ trợ rộng rãi bởi các nhà
cung cấp cơ sở hạ tầng khác nhau, thông qua việc triển khai một firmware đơn giản
hoặc nâng cấp phần mềm. Kiến trúc SDN trên cơ sở OpenFlow có thể tích hợp từ từ
với cơ sở hạ tầng hiện có của doanh nghiệp hoặc nhà khai thác mạng và cung cấp
phương thức tích hợp đơn giản cho các phần của mạng cần đến các chức năng SDN
nhất.

III. CẤU TẠO VÀ HOẠT ĐỘNG CỦA OPENFLOW
1. Cấu tạo
Một thiết bị OpenFlow bao gồm ít nhất 3 thành phần:

Hình 6. Một ví dụ về Flow Table

T r a n g | 17


Hình 7. Các trường trong bảng flow và cách thức hoạt động


Flow Table: một liên kết hành động với mỗi luồng, giúp thiết bị xử lý các luồng thế
nào.




Secure Channel: kênh kết nối thiết bị tới controller (controller), cho phép các lệnh và
các gói tin được gửi giữa controller và thiết bị,



OpenFlow Protocol: giao thức cung cấp phương thức tiêu chuẩn và mở cho một
controller truyền thông với thiết bị.

Hình 8. Cấu trúc của một switch OpenFlow
T r a n g | 18


2. Hoạt động
Trong router hay switch cổ điển, các gói tin chuyển tiếp nhanh chóng (data path) và các
quyết định định tuyến mức độ cao (control path) xảy ra trên cùng một thiết bị. OpenFlow Switch
tách hai chức năng đó ra. Phần data patth vẫn nằm trên switch, trong khi control path được
chuyển đến một controller riêng biệt, thường là một máy chủ tiêu chuẩn. OpenFlow Switch và
Controller giao tiếp thông qua giao thức OpenFlow, trong đó xác định các tin nhắn, chẳng hạn
như gói nhận được, gửi gói tin ra, sửa đổi bảng chuyển tiếp và nhận số liệu thống kê.
Các data path của một OpenFlow Switch được trình bày rõ ràng trong flow table; mỗi mục
flow table chứa một tập các trường gói tin phù hợp và một hành động (như gửi ra cổng, sửa đổi
trường hoặc hủy). Khi một OpenFlow Switch nhận được một gói tin nó chưa bao giờ thấy trước
đây mà không có trong flow table, nó sẽ gửi gói tin này đến bộ điều khiển. Controller sau đó
đưa ra quyết định về cách xử lý gói tin này. Nó có thể hủy (drop) các gói tin, hoặc nó có thể thêm
một flow entry chỉ đạo việc chuyển đổi trên làm thế nào để chuyển tiếp các gói tin tương tự
trong tương lai.

IV. LỢI ÍCH KHI SỬ DỤNG OPENFLOW
Công nghệ SDN trên cơ sở OpenFlow cho phép nhân viên IT giải quyết các ứng dụng
băng thông cao và biến đổi động hiện nay, khiến cho mạng thích ứng với các nhu cầu kinh

doanh thay đổi và làm giảm đáng kể các hoạt động và quản lý phức tạp. Những lợi ích mà các
doanh nghiệp và nhà khai thác mạng có thể đạt được thông qua kiến trúc SDN trên cơ sở
OpenFlow bao gồm:


Tập trung hóa điều khiển trong môi trường nhiều nhà cung cấp thiết bị: phần mềm
điều khiển SDN có thể điều khiển bất kỳ thiết bị mạng nào cho phép OpenFlow từ bất
kỳ nhà cung cấp thiết bị nào, bao gồm switch, router và các switch ảo.



Giảm sự phức tạp thông qua việc tự động hóa: kiến trúc SDN trên cơ sở OpenFlow
cung cấp một framework quản lý mạng tự động và linh hoạt. Từ framework này có thể
phát triển các công cụ tự động hóa các nhiệm vụ hiện đang được thực hiện bằng tay.



Tốc độ đổi mới cao hơn: việc áp dụng OpenFlow cho phép các nhà khai thác mạng
lập trình lại mạng trong thời gian thực để đạt được các nhu cầu kinh doanh và yêu cầu
từ người dùng cụ thể khi có sự thay đổi.



Gia tăng độ tin cậy và khả năng an ninh của mạng: các nhân viên IT có thể định nghĩa
các trạng thái cấu hình và chính sách ở mức cao và áp dụng tới cơ sở hạ tầng thông
qua OpenFlow. Kiến trúc SDN trên cơ sở OpenFlow cung cấp điều khiển và tầm nhìn
hoàn chỉnh trên mạng, nên có thể đảm bảo điều khiển truy nhập, định hình lưu lượng,
QoS, an ninh và các chính sách khác được thực thi nhất quán trên toàn bộ cơ sở hạ
T r a n g | 19



tầng mạng không dây và có dây, bao gồm cả các văn phòng chi nhánh, các cơ sở chính
và DC.


Điều khiển mạng chi tiết hơn: mô hình điều khiển trên cơ sở flow của OpenFlow cho
phép nhân viên IT áp dụng các chính sách tại mức chi tiết, bao gồm phiên, người dùng,
thiết bị và các mức ứng dụng trong một sự trừu tượng hóa cao, tự động điều chỉnh
thích hợp. - Tốt hơn với trải nghiệm người dùng: bằng việc tập trung hóa điều khiển
mạng và tạo ra trạng thái thông tin có sẵn cho các ứng dụng mức cao hơn, kiến trúc
SDN trên cơ sở OpenFlow có thể đáp ứng tốt hơn cho các nhu cầu thay đổi của người
dùng.

V. OPENFLOW VÀ OPENSTACK
1. So sánh OpenFlow và OpenStack
 OpenFlow :
-

Là một giao thức chuẩn cho SDN, nó giúp quản lý từ xa các switch từ một control
plane (controller) tập trung.


-

OpenStack :

Là một phần mềm mã nguồn mở được sử dụng để xây dựng Private Cloud và Public
Cloud.

-


OpenStack có khả năng cung cấp môi trường ảo hóa không chỉ phía server mà còn
xây dựng hệ thống mạng ảo hóa kết nỗi các máy ảo với nhau.

Hình 9. Mô hình Private Cloud trên nền OpenStack và SDN



Trong mô hình này, SDN được sử dụng để xây dựng một hệ thống mạng đồng bộ
giữa các switch vật lý và các switch ảo nhằm mục đích tạo ra các hệ thống mạng nhỏ
T r a n g | 20


hơn dựa trên các dành cho các máy ảo (Virtual Machine). Tất cả hệ thống mạng sẽ
được điều khiển bằng OpenFlow Controller, giúp nâng cao hiệu năng hoạt động của
các private cloud.
2. Các thành phần trong OpenFlow switch
a. Data Plane
Trong OpenFlow, data plane có khả năng xử lý và chuyển tiếp lưu lượng mạng. Các giao
thức được thiết kế để thích ứng với khái niệm mới mà không bị hạn chế đối với các công nghệ
vận chuyển như Ethernet và IP. Về mặt kỹ thuật, tiêu chuẩn OpenFlow chỉ xác định các chức năng
của các yếu tố chuyển tiếp và thực hiện một API hướng dẫn cho các cấp cao hơn. Để kiểm soát,
có thể sử dụng các ngôn ngữ được cung cấp bởi OpenFlow. Là một giao diện Southbound, nó
thiết lập một kết nối giữa hai plane nhưng không hạn chế tự do dữ liệu, kiểm soát và thiết kế
ứng dụng. Tuy nhiên, các đặc điểm kỹ thuật chuyển mạch và các yêu cầu cơ bản của nó cho ta
cái nhìn rõ ràng về cấu trúc data plane của OpenFlow. Để đơn giản ONF đưa bất kỳ đơn vị mà
chứa một data path và kết nối điều khiển như chuyển đổi OpenFlow, lớp hai và lớp ba với chức
năng định tuyến của mô hình OSI được chuyển đến control plane. Để đẩy nhanh tiến độ triển
khai, giải pháp OpenFlow switch có thể chứa cả định tuyến thông minh cổ điển và logic
OpenFlow độc lập. Tuy nhiên, trong tất cả các biến thể thì cấu trúc switch cơ bản vẫn giữ nguyên.


Hình 10. Sơ đồ cơ chế hoạt động của một OpenFlow switch
T r a n g | 21




OpenFlow Switches

Việc chuyển đổi OpenFlow có thể được chia thành nhiều thành phần luận lý:
các cổng vật lý và logic, các đường ống dẫn OpenFlow và các kênh truyền thông kiểm soát
OpenFlow.


OpenFlow Ports

Một OpenFlow Switch phải có ba loại cổng. Cổng vật lý và logic là các biến thể của tiêu
chuẩn. Loại thứ ba là cổng dành riêng. Ngược lại với các cổng vật lý (trên giao diện phần cứng
của thiết bị) cổng logic có số lượng rất nhiều. Nó được ánh xạ tới một cổng vật lý và được sử
dụng cho các dịch vụ mạng.
Cổng dành riêng là một loại cổng ảo đặc biệt ảnh hưởng đến hành vi giao nhận của
switch. Switch có thể đưa một số loại cổng dành riêng vào header của một Datagram OpenFlow
và phân biệt giữa lối vào và đi ra cổng trên các đường ống dẫn. Có một số loại cổng đáng chú ý
trong một switch OpenFlow. Các cổng CONTROLLER chỉ ra rằng một gói tin sẽ được chuyển tiếp
đến controller hoặc nếu CONTROLLER được viết như cổng xâm nhập, bắt nguồn từ một
controller. ALL là một tính năng chung có liên quan cho tất cả các cổng OpenFlow, FLOOD nghĩa
các hành vi tương tự như ALL trong các thiết bị lai. TABLE chỉ những gì có sẵn như cổng đi ra và
được sử dụng bởi các controller để biểu thị rằng một gói nên được xếp hàng và xử lý bởi các
đường ống bảng lưu lượng tiêu chuẩn.
OpenFlow bao gồm hàng đợi cổng truyền thống. Hàng đợi được gắn vào cổng logic và

vật lý đầu ra và được xác định bởi số nhận dạng đặc biệt. Các gói tin có thể được sắp xếp vào loại
hàng đợi khác nhau và được giao cho một cổng để tạo điều kiện các biện pháp QoS hoặc các
thuật toán.


OpenFlow Pipeline

Trái tim của mỗi switch OpenFlow là các đường ống dẫn OpenFlow, một dãy của một hoặc
nhiều bảng flow. Các bảng flow và các mục của chúng được lưu trữ trong Ternary Content
Addressable Memory (TCAM). TCAM cung cấp khả năng truy cập nhanh, nhưng khả năng lưu
trữ dữ liệu thấp. Các trường header của gói tin đến đều được so với mục trong trường tương
ứng. Thuộc tính có thể bao gồm MAC và IP nguồn và địa chỉ đích hoặc dữ liệu đặc biệt chèn vào
hành động trước bảng flow. Các trường phù hợp được thiết kế để có thể mở rộng và chứa bất
kỳ thành phần gói tin có thể so sánh. Có thể các trường wildcard liên quan cung cấp mở rộng
phù hợp. Các trường đếm thống kê về mỗi thành phần hợp lý của các thiết bị và số lượng gói
tin điều khiển hoặc thời gian cài đặt flow tables. Các gói tin được truyền xuống đường ống xử lí
đến khi sự phù hợp được tìm thấy trong một bảng. Nếu gói dữ liệu phù hợp nhiều lần trong một
bảng flow, chỉ mục với các ưu tiên cao nhất sẽ được chọn.

T r a n g | 22


Hình 11. Quá trình xử lý pipeline của OpenFlow

Hình 12. Các hành động xử lý đối với một entry trong bảng flow


Southbound Interface

Các giao thức OpenFlow tự đại diện cho southbound interface của các mạng, một phương

thức truyền thông tiêu chuẩn hóa lẫn nhau giữa các switch và controller. Trong giao diện
OpenFlow, kênh điều khiển từ xa cấu hình danh sách bảng và cung cấp các switch. Nó có thể mã
hóa các kênh với TLS, tuy nhiên do cân nhắc về hiệu suất, TCP cũng là một lựa chọn. Các giao
thức hỗ trợ ba loại gói tin cơ bản: controller-to-switch, không đồng bộ hoặc đối xứng.
Các đặc điểm kỹ thuật switch không chi tiết cách các controller phối hợp hành động hoặc
làm thế nào các cấu trúc liên kết được đồng bộ. Nếu kết nối với controller bị mất, việc chuyển
đổi ngay lập tức đi vào chế độ “fail secure” hoặc “fail standalone”, phụ thuộc vào sự hỗ trợ thiết
bị hoặc cấu hình.
T r a n g | 23


Trong chế độ fail secure, switch tiếp tục chuyển đổi hoạt động bằng cách sử dụng các
thông tin bảng flow nó đã giữ lại và hủy bất kỳ gói dữ liệu không rõ chỉ định cho các kênh điều
khiển. Trong fail standalone chuyển đổi trở lại hành vi chuyển mạch gốc, nếu sẵn sàng và lại tiếp
tục chức năng OpenFlow sau khi kết nối được khôi phục.
b. Control Plane
Control plane là bộ chỉ huy trung tâm trong SDN và một khía cạnh quan trọng trong sự
thành công và triển khai các phần mềm mạng được định nghĩa. Nó được đại diện bởi thành phần
kiểm soát các thiết bị. Do sự phát triển của các phần mềm và các yếu tố không bị ràng buộc bởi
OpenFlow hoặc bị hạn chế bởi các tiêu chuẩn, nhiều phiên bản triển khai đã được phát triển.
Mỗi phiên bản cố gắng để thành công trong tầm nhìn của một mạng lưới và thực hiện
tốt các khía cạnh khác nhau để phát triển. Hơn nữa, các công ty đang tiếp tục đề ra các controller
độc quyền của riêng của họ nhằm thích nghi với các thiết bị độc quyền.
OpenFlow Controllers
Controller có thể được chia thành hai loại riêng biệt. Loại thứ nhất là một controller vật lý
và loại thứ hai là logic tập trung với hiệu suất cá nhân cao liên kết với nhiều switch. Để đảm bảo
khả năng chịu lỗi và khả năng phục hồi, điều khiển phân tán sử dụng kết nối nhiều-nhiều. Để
đảm bảo tính nhất quán trong một switch, các ONF khuyến cáo rằng controller hoặc đồng bộ
chặt chẽ hoặc quản lý phần lớp của mạng trong khi trao đổi thông tin theo chiều ngang.
Controller hoặc vận hành trong chế độ proactive hoặc reactive. Trong chế độ proactive,

controller trước khi cài đặt các luồng dựa trên các cấu trúc liên kết được biết đến, trong đó tiết
kiệm thời gian trễ và làm giảm tắc nghẽn dòng chảy được tạo ra bởi controller yêu cầu. Trong
chế độ reactive, controller sẽ đợi cho đến khi một yêu cầu chuyển đổi về lưu lượng cho một gói
tin cụ thể.
Mặc dù một loạt các controller tồn tại, một vài triển khai có ảnh hưởng đặc biệt đã xuất
hiện.


NOX được dành cho cộng đồng nghiên cứu do Nicira khởi động và là controller mã
nguồn mở đầu tiên được thiết kế cho OpenFlow. Controller này sử dụng một cách tiếp
cận tương đối cơ bản và tập trung và có hai phiên bản tồn tại. NOX là phiên bản cổ
điển được viết bằng C ++ và dành riêng cho hiệu suất tối đa.



POX ít phức tạp hơn nhưng chậm hơn, viết bằng Python. Những phát triển trên các
controller có nhiều hiệu quả nhưng đã bị ngưng từ năm 2012. Tuy nhiên, một số
nghiên cứu cơ bản và giải pháp bảo mật đã được thực hiện trên cơ sở các phiên bản.



OpenDaylight là một controller mã nguồn mở và một nỗ lực hợp tác của một số thành
viên ONF và The Linux Foundation. Nó được thiết kế để tương thích với giao diện
Southbound của OpenFlow (ví dụ như các giao thức PCE hoặc cấu hình BGP) và được
T r a n g | 24


coi là một trong những ứng cử viên có tiềm năng lớn nhất về tiêu chuẩn API
Northbound.



Floodlight đã được phát triển từ controller Beacon và được duy trì bởi Big
Switch Networks. Nó có tính mô-đun cao, hỗ trợ đa xử lý song song và có chứa một
số thành phần ứng dụng đã được tích hợp như là đường dẫn tính toán và quản lý thiết
bị.



Một controller mới xuất bản và đáng chú ý là ONOS, được thiết kế đặc biệt dựa trên tính
sẵn có, khả năng mở rộng và hiệu suất. Nó là một controller phân bố tự nhiên và quản lý
tập trung.



RYU dựa trên Python, có các tài liệu tốt và được xác định. Nó hỗ trợ nhiều Southbound
interface cũng như các giao thức OF-switch. RYU trong cuộc cạnh tranh với
OpenDaylight, Floodlight, Trema và POX là ứng cử viên tốt nhất, dựa trên các tiêu chí như
mô đun, hỗ trợ giao diện điều khiển. Floodlight và OpenDaylight giữ vị trí thứ hai và thứ
ba tương ứng. Floodlight, NOX / POX, RYU là kiến trúc điều khiển tập trung, trong khi
OpenDaylight và ONOS cũng cung cấp chức năng phân phối thông qua phân nhóm.

SDN controller có thể được chia cắt thành bốn giao diện logic khác nhau mà nó cần để
duy trì.
T r a n g | 25


×