Networks Business Online Việt Nam & International VH2

Mô phỏng mạng SDN (software defined networking) sử dụng mã nguồn mở – Tài liệu text

Đăng ngày 09 November, 2022 bởi admin

Mô phỏng mạng SDN (software defined networking) sử dụng mã nguồn mở

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 (1.21 MB, 68 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC NHA TRANG

ĐỖ VĂN KHOA

MÔ PHỎNG MẠNG SDN (SOFTWARE-DEFINED
NETWORKING) SỬ DỤNG MÃ NGUỒN MỞ

LUẬN VĂN THẠC SĨ

KHÁNH HÒA – 2020

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC NHA TRANG

ĐỖ VĂN KHOA

MÔ PHỎNG MẠNG SDN (SOFTWARE-DEFINED
NETWORKING) SỬ DỤNG MÃ NGUỒN MỞ
LUẬN VĂN THẠC SĨ

Ngành:

Công nghệ thông tin

Mã số:

8480201

Quyết định giao đề tài

514/QĐ-ĐHNT ngày 17/05/2019

Quyết định thành lập HĐ:

499/QĐ-ĐHNT ngày 25/05/2020

Ngày bảo vệ:

07/06/2020

Ngƣời hƣớng dẫn khoa học:

TS. TRẦN NGÔ NHƢ KHÁNH
Chủ tịch Hội đồng:
TS. NGUYỄN ĐỨC THUẦN
Phòng Đào tạo sau Đại học

KHÁNH HÒA – 2020

LỜI CAM ĐOAN
Tôi tên Đỗ Văn Khoa – hiện đang là học viên lớp cao học ngành Công nghệ Thông
tin – trường Đại học Nha Trang. Tôi xin cam đoan mọi kết quả của đề tài: “Mô phỏng
mạng SDN (Software-Defined Networking) sử dụng mã nguồn mở” là cơng trình
nghiên cứu của cá nhân tôi dưới sự hướng dẫn của TS. Trần Ngô Như Khánh và chưa
từng được công bố trong bất cứ cơng trình khoa học nào khác cho tới thời điểm này.
Những kết quả nghiên cứu của người khác và các số liệu được trích dẫn trong luận văn
đều được chú thích đầy đủ.
Tơi hồn tồn chịu trách nhiệm trước nhà trường về sự cam đoan này.

Lâm Đồng, Ngày 10 tháng 03 năm 2020
Tác giả luận văn

Đỗ Văn Khoa

i

LỜI CẢM ƠN
Trong suốt thời gian thực hiện đề tài, tơi đã nhận được sự giúp đỡ của q phịng
ban trường Đại học Nha Trang, Quý thầy cô trong khoa Công nghệ Thông tin trường Đại
học Nha Trang đã tạo điều kiện tốt nhất cho tơi được hồn thành đề tài. Đặc biệt là sự
hướng dẫn tận tình của TS. Trần Ngơ Như Khánh đã giúp tơi hồn thành tốt đề tài.
Để có đủ kiến thức và kỹ năng hồn thành đề tài tôi xin chân thành cảm ơn quý
thầy cô trường Đại học Nha Trang đã trang bị cho tơi trong suốt khóa học.
Tơi xin chân thành cảm ơn gia đình, bạn bè và đồng nghiệp đã ln ủng hộ, động
viên, tạo điều kiện, giúp đỡ để tơi có thể tập trung thực hiện việc học tập và nghiên cứu
trong suốt thời gian dài.
Mặc dù tơi đã có nhiều cố gắng hồn thiện luận văn, tuy nhiên khơng thể tránh khỏi
những thiếu sót, rất mong nhận được những đóng góp q báu của q thầy cơ và các
bạn.
Lâm Đồng, Ngày 10 tháng 03 năm 2020
Tác giả luận văn

Đỗ Văn Khoa

ii

MỤC LỤC

CHƢƠNG 1: TỔNG QUAN …………………………………………………………………………………………………….. 10
1.1.

Giới thiệu đề tài …………………………………………………………………………………………………………. 10

1.2.

Mục tiêu đề tài …………………………………………………………………………………………………………… 11

1.3.

Nội dung thực hiện…………………………………………………………………………………………………….. 12

1.4.

Một số nghiên cứu liên quan ………………………………………………………………………………………. 12

1.5.

Đóng góp của luận văn ………………………………………………………………………………………………. 12

CHƢƠNG 2: MẠNG ĐỊNH NGHĨA BẰNG PHẦN MỀM ………………………………………………………… 14
(SOFTWARE-DEFINED NETWORKING) ……………………………………………………………………………… 14
2.1.

Định nghĩa SDN ………………………………………………………………………………………………………… 14

2.2.

Kiến trúc của mạng SDN……………………………………………………………………………………………. 15

2.2.1.

Lớp ứng dụng (Application layer) ……………………………………………………………………….. 16

2.2.2.

Lớp điều khiển (Control layer) ……………………………………………………………………………. 16

2.2.3.

Lớp cơ sở hạ tầng (Infrastructure latyer)…………………………………………………………….. 17

2.3.

Những điểm khác nhau cơ bản giữa mạng truyển thống và mạng SDN ……………………….. 18

2.4.

Những ƣu điểm và những hạn chế của mạng SDN ………………………………………………………. 19

2.4.1.

Ƣu điểm……………………………………………………………………………………………………………… 19

2.4.2.

Hạn chế ……………………………………………………………………………………………………………… 21

2.5.

Phần điều khiển mạng và Chức năng vận chuyển dữ liệu ……………………………………………. 23

2.5.1.

Phần điều khiển mạng (Control Plane) ………………………………………………………………… 23

2.5.2.

Chức năng vận chuyển dữ liệu (Data Plane) ………………………………………………………… 24

2.6.

Giao thức OpenFlow ………………………………………………………………………………………………….. 24

2.6.1.

Các đặc trƣng của giao thức OpenFlow……………………………………………………………….. 27

2.6.2.

OpenFlow switch và OpenFlow Controller ………………………………………………………….. 28

2.6.3.

Đánh giá bảo mật OpenFlow ………………………………………………………………………………. 31

2.7.

Công cụ Mininet và các bộ điều khiển của SDN ………………………………………………………….. 32

2.7.1.

Công cụ Mininet …………………………………………………………………………………………………. 32

2.7.2.

Các bộ điều khiển của SDN …………………………………………………………………………………. 34

CHƢƠNG 3: MÔ PHỎNG MẠNG SDN. ………………………………………………………………………………….. 41
3.1.

Giới thiệu ………………………………………………………………………………………………………………….. 41

3.2.

Công cụ sử dụng………………………………………………………………………………………………………… 42

3.3.

Các thử nghiệm và đánh giá ………………………………………………………………………………………. 43

3.3.1.

So sánh giữa hai môi trƣờng thực thi…………………………………………………………………… 48
iii

3.3.2.

So sánh giữa các bộ điều khiển ……………………………………………………………………………. 57

3.3.3.

Kết quả ………………………………………………………………………………………………………………. 61

CHƢƠNG 4: TỔNG KẾT VÀ HƢỚNG PHÁT TRIỂN …………………………………………………………….. 63
4.1.

Tổng kết ……………………………………………………………………………………………………………………. 63

4.2.

Hƣớng phát triển ………………………………………………………………………………………………………. 64

TÀI LIỆU THAM KHẢO ………………………………………………………………………………………………………… 65

iv

DANH MỤC CHỮ VIẾT TẮT
SDN

Software-Defined Networking (Mạng định nghĩa bằng phần mềm)

ATM

Asynchronous transfer mode (Mạng chế độ truyền không đồng bộ)

NCP

Network control protocol (Giao thức điều khiển mạng)

API

Application programming interface (Giao diện lập trình ứng dụng)

ONF

Open Networking Foundation (Một tổ chức phi lợi nhuận)

PC

Personal Computer (Máy tính cá nhân)

RCP

Routing control platform (Nền tảng điều khiển định tuyến)

BGP

Border Gateway protocol (Giao thức tìm đường đi)

IETF

Internet Engineering Task Force (Là một tổ chức tiêu chuẩn mở, phát
triển và thúc đẩy các tiêu chuẩn Internet tự nguyện)

ONOS

Open Network Operating System (Hệ điều hành mã nguồn mở)

NETCONF

Network Configuration Protocol (Giao thức cấu hình mạng)

SNMP

Simple Network Management Protocol

MAC

Media Access Control (Kiểm soát truy cập phương tiện truyền thông)

IP

Internet Protocol (Địa chỉ giao thức Internet)

NOS

Network Operating System (Hệ điều hành mạng)

NAT

Network Address Translation (Bộ dịch địa chỉ mạng cho phép chuyển
đổi từ một địa chỉ IP này thành một địa chỉ IP khác)

FIB

Forwarding Information Base (Bảng chứa các thông tin chuyển tiếp)

OSPF

Open Shortest Path First (Là một giao thức định tuyến)

BGP

Border Gateway Protocol (Là một giao thức định tuyến)

EIGRP
CPU

Enhance Interio Gateway Routing Protocol (Là một giao thức định
tuyến)
Central Processing Unit (Bộ xử lý trung tâm)
v

SSH
VM

Secure Shell L(à một giao thức mạng dùng để thiết lập kết nối mạng
một cách bảo mật)
Virtual machine (Hệ thống máy ảo)

vi

DANH MỤC BẢNG
Bảng 3.1: Kết quả thử nghiệm của mô hình mạng đơn (Single) với bộ điều khiển mặc

định …………………………………………………………………………………………………………………… 48
Bảng 3.2: Kết quả thử nghiệm của mơ hình mạng cây (Tree) với bộ điều khiển mặc định
…………………………………………………………………………………………………………………………. 49
Bảng 3.3: Kết quả thử nghiệm của mơ hình mạng tuyến tính (Linear) với bộ điều khiển
mặc định ……………………………………………………………………………………………………………. 50
Bảng 3.4: Kết quả thử nghiệm của mơ hình mạng đơn (Single) với bộ điều khiển POX 51
Bảng 3.5: Kết quả thử nghiệm của mơ hình mạng cây (Tree) với bộ điều khiển POX …. 52
Bảng 3.6: Kết quả thử nghiệm của mô hình mạng tuyến tính (Linear) với bộ điều khiển
POX ………………………………………………………………………………………………………………….. 53
Bảng 3.7: Kết quả thử nghiệm của mơ hình mạng đơn (Single) với bộ điều khiển Ryu .. 54
Bảng 3.8: Kết quả thử nghiệm của mơ hình mạng cây (Tree) với bộ điều khiển Ryu ….. 55
Bảng 3.9: Kết quả thử nghiệm của mơ hình mạng tuyến tính (Linear) với bộ điều khiển
Ryu …………………………………………………………………………………………………………………… 56
Bảng 3.10: Kết quả thử nghiệm của mơ hình mạng cây (Tree) với mơi trường máy ảo .. 57
Bảng 3.11: Kết quả thử nghiệm của mô hình mạng tuyến tính (Linear) với mơi trường
máy ảo ………………………………………………………………………………………………………………. 58
Bảng 3.12: Kết quả thử nghiệm của mơ hình mạng cây (Tree) với môi trường máy
Raspberry ………………………………………………………………………………………………………….. 59
Bảng 3.13: Kết quả thử nghiệm của mơ hình mạng tuyến tính (Linear) với môi trường
máy Raspberry …………………………………………………………………………………………………… 60

vii

DANH MỤC HÌNH

Hình 2.1: Kiến trúc của SDN ……………………………………………………………………………….. 16
Hình 2.2: Kiến trúc tổng quan mạng SDN ……………………………………………………………… 18
Hình 2.3: Control plane và Data plane …………………………………………………………………… 23
Hình 2.4: Sơ đồ Giao thức OpenFlow …………………………………………………………………… 25

Hình 2.5: Sơ đồ tương tác giữa switch và controller theo giao thức OpenFlow ………….. 28
Hình 2.6: Cấu trúc OpenFlow Switch ……………………………………………………………………. 29
Hình 3.1: Cách tạo mơ hình mạng đơn (Single) ……………………………………………………… 44
Hình 3.2: Mơ hình mạng đơn (Single) …………………………………………………………………… 44
Hình 3.3: Cách tạo mơ hình mạng cây (Tree) …………………………………………………………. 45
Hình 3.4: Mơ hình mạng cây (Tree) ……………………………………………………………………… 46
Hình 3.5: Cách tạo mơ hình mạng tuyến tính (Linear) …………………………………………….. 47
Hình 3.6: Mơ hình mạng tuyến tính (Linear) ………………………………………………………….. 47

viii

DANH MỤC BIỂU ĐỒ
Biểu đồ 3.1: So sánh thời gian thực thi của mơ hình mạng đơn (Single) với bộ điều khiển
mặc định ……………………………………………………………………………………………………………. 48
Biểu đồ 3.2: So sánh thời gian thực thi của mơ hình mạng cây (Tree) với bộ điều khiển
mặc định ……………………………………………………………………………………………………………. 49
Biểu đồ 3.3: So sánh thời gian thực thi của mơ hình mạng tuyến tính (Linear) với bộ điều
khiển mặc định …………………………………………………………………………………………………… 50
Biểu đồ 3.4: So sánh thời gian thực thi của mơ hình mạng đơn (Single) với bộ điều khiển
POX ………………………………………………………………………………………………………………….. 51
Biểu đồ 3.5: So sánh thời gian thực thi của mơ hình mạng cây (Tree) với bộ điều khiển
POX ………………………………………………………………………………………………………………….. 52
Biểu đồ 3.6: So sánh thời gian thực thi của mơ hình mạng tuyến tính (Linear) với bộ điều
khiển POX …………………………………………………………………………………………………………. 53
Biểu đồ 3.7: So sánh thời gian thực thi của mơ hình mạng đơn (Single) với bộ điều khiển
Ryu …………………………………………………………………………………………………………………… 54
Biểu đồ 3.8: So sánh thời gian thực thi của mơ hình mạng cây (Tree) với bộ điều khiển
Ryu …………………………………………………………………………………………………………………… 55
Biểu đồ 3.9: So sánh thời gian thực thi của mơ hình mạng tuyến tính (Linear) với bộ điều

khiển Ryu ………………………………………………………………………………………………………….. 56
Biểu đồ 3.10: So sánh thời gian thực thi của mô hình mạng cây (Tree) với mơi trường
máy ảo ………………………………………………………………………………………………………………. 57
Biểu đồ 3.11: So sánh thời gian thực thi của mô hình mạng tuyến tính (Linear) với mơi
trường máy ảo ……………………………………………………………………………………………………. 58
Biểu đồ 3.12: So sánh thời gian thực thi của mơ hình mạng cây (Tree) với mơi trường
máy Raspberry …………………………………………………………………………………………………… 59
Biểu đồ 3.13: So sánh thời gian thực thi của mơ hình mạng tuyến tính (Linear) với mơi
trường máy Raspberry …………………………………………………………………………………………. 60

ix

CHƢƠNG 1: TỔNG QUAN
1.1.

Giới thiệu đề tài
Trong kiến trúc mạng truyền thống thành phần chuyển tiếp dữ liệu (Data plane)

và thành phần điều khiển (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. Khi số lượng thiết bị càng nhiều, thì càng gây nên sự
phức tạp trong mạng và làm khó khăn cho người quản trị mạng trong quá trình vận hành
và điều khiển. Trong bối cảnh này, một kiến trúc mạng mới đã được nghiên cứu và phát
triển với hướng tiếp cận là tách rời phần chuyển tiếp dữ liệu với phần điều khiển mạng,
nhiệm vụ điều khiển mạng được xử lý bởi các bộ điều khiển và các bộ điều khiển đó có
thể thao tác tới phần cứng, bộ nhớ và các chức năng của các thiết bị định tuyến (router),
thiết bị chuyển mạch (switch) để đạt được mục đích của người sử dụng. Do đó, mạng trở
nên linh hoạt hơn, hiệu suất sử dụng cao hơn và dễ quản lý hơn. [1]
Với sự phát triển nhanh chóng của cơng nghệ, ngày nay u cầu các ứng dụng
thường địi hỏi tính di động, ảo hóa để quản lý tập trung, cũng như đáp ứng nhanh chóng

những thay đổi theo nhu cầu của người dùng, vì vậy hệ thống mạng truyền thống không
thể đáp ứng được nhu cầu. Việc chuyển đổi từ IPv4 sang IPv6, đã bắt đầu từ hơn một
thập kỷ trước và vẫn chưa hoàn thành, trong khi thực tế IPv6 chỉ là một bản cập nhật giao
thức. Để đáp ứng được các mạng IP hiện tại, một giao thức định tuyến mới có thể mất từ
5 đến 10 năm để được thiết kế, đánh giá và triển khai đầy đủ. Tương tự, cách tiếp cận để
thay đổi kiến trúc Internet một cách mới hồn tồn (ví dụ: thay thế IP), được coi là một
nhiệm vụ khó khăn – đơn giản là khơng khả thi trong thực tế.
Mặc dù Mạng định nghĩa bằng phần mềm (SDN – Software-Defined Networking)
là một khái niệm mới, nhưng nó vẫn kế thừa các ý tưởng của mạng truyền thống. Cụ thể,
nó được xây dựng dựa trên ý tưởng các mạng có thể lập trình, ví dụ: Mạng – chế độ
truyền khơng đồng bộ (ATM-Asynchronous transfer mode) có thể lập trình và trên ý
tưởng cho phép phần điều khiển mạng (Control Plane) tách hẳn với chức năng vận
chuyển dữ liệu (Forwarding Plane hay Data Plane) như giao thức điều khiển mạng (NCPNetwork control protocol). [2]
10

Với mạng định nghĩa bằng phần mềm (SDN – Software-Defined Networking),
việc điều khiển được tập trung tại lớp điều khiển (Controller Layer), với ý tưởng tách
riêng phần điều khiển mạng (Control Plane) và chức năng vận chuyển dữ liệu (Data
Plane), điều này cho phép việc điều khiển mạng trở nên có thể lập trình được dễ dàng và
cơ sở hạ tầng mạng độc lập với các ứng dụng và dịch vụ mạng. 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 mà chỉ cần thơng qua các giao diện lập trình ứng dụng (API-Application
programming interface) là đã có thể xây dựng ứng dụng cho tồn hệ thống mạng. [1, 3]
Hiện nay, SDN thực sự là một chủ đề được quan tâm đặc biệt trong cả nghiên cứu
lẫn ứng dụng. Đây là một mơ hình quản lý tập trung có tính logic có thể kiểm sốt chuyển
tiếp trên các thiết bị như thiết bị định tuyến (Router) và thiết bị chuyển mạch (Switch).
SDN hứa hẹn là một công nghệ mạng mới hiệu quả hơn công nghệ mạng truyền thống về
phương diện hoạt động và quản lý mạng.
Với nhu cầu nghiên cứu, thử nghiệm và giảng dạy về cơng nghệ mạng SDN rất

lớn tuy nhiên gặp khó khăn chủ yếu do các thiết bị mạng (router, switch,…) hỗ trợ SDN
rất đắt tiền. Vì vậy việc sử dụng các công cụ giả lập mã nguồn mở được xem là giải pháp
thay thế. Đề tài tập trung triển khai thử nghiệm các mơ hình mạng SDN sử dụng cơng cụ
mô phỏng mã nguồn mở Mininet để so sánh, đánh giá việc triển khai này trên nhiều môi
trường phần cứng và các bộ điều khiển (controller) khác nhau[1, 4]
1.2.

Mục tiêu đề tài
Mục tiêu của đề tài là sử dụng mã nguồn mở trên nền tảng công cụ mô phỏng

Mininet để triển khai các mơ hình mạng SDN (mơ hình mạng đơn – Single, mơ hình
mạng cây – Tree và mơ hình mạng tuyến tính – Linear) trên nhiều mơi trường phần cứng
khác nhau (mơi trường ảo hóa và mơi trường máy tính Raspberry Pi) với các bộ điều
khiển khác nhau (bộ điều khiển mặc định – Default controller, bộ điều khiển POX – POX
controller và bộ điều khiển Ryu – Ryu controller). Cụ thể, đề tài sẽ thử nghiệm triển khai
các mơ hình mạng SDN với số nút mạng khác nhau và đánh giá về các tiêu chí như thời
gian thực thi, khả năng đáp ứng.

11

1.3.

Nội dung thực hiện
Các thử nghiệm được thực hiện để đánh giá khả năng mở rộng (scalability) của

công cụ mô phỏng Mininet trong việc thực thi các mơ hình mạng. Cụ thể, thời gian thực
thi từ lúc chạy (start) và dừng (stop) của các mơ hình mạng khác nhau sẽ được so sánh
trên hai môi trường phần cứng khác nhau và so sánh trên các bộ điều khiển khác nhau.
Đề tài thực hiện cài đặt công cụ Mininet với các bộ điều khiển khác nhau trên hai

môi trường phần cứng là máy tính dùng cơng cụ ảo hóa (VirtualBox Oracle VM) và máy
tính Raspberry Pi 3. Việc lập trình điều khiển sử dụng ngơn ngữ Python.
Các mơ hình mạng được sử dụng trong các thử nghiệm gồm: Mơ hình mạng đơn
(Single), mơ hình mạng cây (Tree) và mơ hình mạng tuyến tính (Linear) và các bộ điều
khiển SDN được sử dụng là: bộ điều khiển mặc định (Default controller), bộ điều khiển
POX (POX controller) và bộ điều khiển Ryu (Ryu controller).
1.4.

Một số nghiên cứu liên quan
Một nghiên cứu mô phỏng mạng SDN sử dụng Mininet trên những môi trường

mô phỏng khác nhau được phát triển bởi Faris Keti và Shavan Askar [5]. Cụ thể nghiên
cứu sử dụng hai môi trường mơ phỏng là hai máy tính với cấu hình khác nhau để so sánh
thời gian thực thi tạo mơ hình mạng cây (Tree) với số nút mạng khác nhau. Vipin Gupta,
Karamjeet Kaur and Sukhveer Kaur [6] đã nghiên cứu sử dụng máy tính Raspberry Pi
làm bộ chuyển mạch SDN với chi phí thấp. Kết quả cho thấy sử dụng Raspberry Pi làm
bộ chuyển mạch có thể đáp ứng được, thiết bị này có chi phí thấp và di động so với các
thiết bị khác trên thị trường. Trong tương lai có thể thử nghiệm SDN bao gồm các thiết bị
chuyển mạch và máy chủ lưu trữ bằng máy tính Raspberry Pi. Trong một nghiên cứu
khác Jehad Ali, Seungwoon Lee và Byeong-hee Roh [7] phân tích hiệu suất của các bộ
điều khiển POX và Ryu với các cấu trúc mạng SDN khác nhau. Nghiên cứu cho thấy
rằng hiệu suất của bộ điều khiển Ryu là cao hơn.
1.5.

Đóng góp của luận văn
Nghiên cứu đã thử nghiệm đánh giá việc mô phỏng mạng SDN sử dụng công cụ

Mininet bằng cách so sánh thời gian thực thi trên hai môi trường phần cứng khác nhau
12

(mơi trường ảo hóa và máy tính Raspberry Pi). Các thử nghiệm khả năng mở rộng này
được tiến hành trên ba kiểu mơ hình mạng (mơ hình mạng đơn, mơ hình mạng cây và mơ
hình mạng tuyến tính) với các bộ điều khiển (bộ điều khiển mặc định, bộ điều khiển POX
và bộ điều khiển Ryu). Kết quả cho thấy thông số môi trường phần cứng và số nút mạng
trong mơ hình ảnh hưởng đến thời gian thực thi của cả ba kiểu mơ hình. Tuy nhiên, cả hai
mơi trường mô phỏng điều đáp ứng được việc giả lập mạng SDN phục vụ nghiên cứu và
học tập ngay cả với số nút mạng lớn.
Trong các nghiên cứu tiếp theo, sẽ tiếp tục đánh giá hiệu suất của các mơ hình
mạng SDN như về băng thông, khả năng định tuyến và chuyển tiếp gói tin trên những
mơi trường giả lập và các bộ điều khiển khác nhau.

13

CHƢƠNG 2: MẠNG ĐỊNH NGHĨA BẰNG PHẦN MỀM
(SOFTWARE-DEFINED NETWORKING)
2.1.

Định nghĩa SDN
Hiện nay có rất nhiều định nghĩa về kiến trúc mạng SDN nhưng theo ONF ( Open

Networking Foundation ) – tổ chức phi lợi nhuận đang hỗ trợ cho việc phát triển, tiêu
chuẩn hóa và thương mại hóa SDN đã định nghĩa về SDN như sau: [8]
Mạng được định nghĩa bằng phần mềm (SDN) là một kiến trúc mạng với hướng
tiếp cận trong đó phần điều khiển mạng (Control Plane) và chức năng vận chuyển dữ liệu
(Data Plane) được tách rời nhau và phần điều khiển mạng có khả năng được lập trình trực
tiếp.
Theo định nghĩa này, SDN được xác định bởi hai đặc điểm: đó là tách rời phần
điều khiển mạng (Control Plane) với chức năng vận chuyển dữ liệu (Data Plane) và có

khả năng lập trình trên phần điều khiển. Tuy nhiên, cả hai đặc điểm trên trong SDN đều
khơng hồn tồn mới trong kiến trúc mạng, như chi tiết trong phần sau đây:
Thứ nhất: Một số nghiên cứu trước đây đã được thực hiện để thúc đẩy khả năng
lập trình mạng. Ví dụ ý tưởng về việc điều khiển một mạng theo cách thức thời gian thực
bằng phần mềm. SwitchWare là một giải pháp cho điều đó, cho phép các gói dữ liệu
truyền qua mạng để sửa đổi hoạt động của mạng một cách linh hoạt. Tương tự, các bộ
định tuyến phần mềm trên phần cứng PC thông thường, như Click, XORP, Quagga và
BIRD, cũng cố gắng tạo các bộ định tuyến phần mềm có thể mở rộng bằng cách lập trình
các thiết bị mạng.
Thứ hai: Ý tưởng tách rời phần điều khiển mạng (Control Plane) và chức năng
vận chuyển dữ liệu (Data Plane) khá phổ biến trong thập kỷ qua. Caesar và cộng sự, lần
đầu tiên trình bày một nền tảng điều khiển định tuyến ( Routing control platform – RCP)
vào năm 2004, trong đó giao thức tìm đường đi BGP (Border Gateway protocol) được
thay thế bằng điều khiển định tuyến tập trung để giảm độ phức tạp của việc tính tốn
đường đi. Trong cùng năm đó, IETF đã cho ra mắt một bộ khung (Framework) mà ở đó
phân tách phần điều khiển mạng và phần chuyển tiếp dữ liệu (ForCES). Vào năm 2006,
14

kiến trúc đường dẫn tính tốn yếu tố (PCE) đã được trình bày để tính tốn các đường dẫn
chuyển tiếp riêng biệt với chuyển tiếp gói thực tế trong mạng MPLS và GMPLS. Vào
năm 2007, Casado và cộng sự trình bày một thiết bị chuyển mạch (Ethernet Switch) được
bổ sung bộ điều khiển tập trung để quản lý việc tiếp nhận và định tuyến các luồng. Trong
sự phát triển của công nghệ mạng ngày này, nguyên tắc tách rời phần điều khiển mạng
(Control Plane) và chức năng vận chuyển dữ liệu (Data Plane) đã được phát triển và
nghiên cứu nhiều hơn. Các sản phẩm, thiết bị mạng thương mại cũng đã áp dụng ý tưởng
tách rời phần điều khiển mạng và chức năng vận chuyển dữ liệu. Ví dụ, trong bộ định
tuyến Cisco ASR 1000 và bộ chuyển mạch Nexus 7000, phần điều khiển mạng được tách
rời với chức năng vận chuyển dữ liệu và được mơ đun hóa.
Với mạng định nghĩa bằng phần mềm (SDN), tính độc đáo của nó nằm ở chỗ

cung cấp khả năng lập trình thơng qua việc tách rời phần điều khiển mạng và chức năng
vận chuyển dữ liệu. Cụ thể, SDN cung cấp các thiết bị mạng lập trình đơn giản thay vì
làm cho các thiết bị mạng phức tạp hơn như trong trường hợp mạng truyền thống. Hơn
nữa, SDN đề xuất tách phần điều khiển mạng và chức năng vận chuyển dữ liệu trong
thiết kế kiến trúc mạng. Với thiết kế này, việc điều khiển mạng có thể được thực hiện
riêng trên bộ điều khiển mà không ảnh hưởng đến luồng dữ liệu. Như vậy, bộ não của
mạng có thể được tách hẳn ra khỏi các thiết bị chuyển mạch và được đặt trên bộ điều
khiển. Đồng thời, các thiết bị chuyển mạch giờ đây có thể được điều khiển bên ngồi
bằng phần mềm mà khơng cần cấu hình trực tiếp. Việc tách rời phần điều khiển mạng và
chức năng vận chuyển dữ liệu khơng chỉ cung cấp một mơi trường lập trình đơn giản hơn
mà còn linh hoạt hơn cho phần mềm bên ngoài để xác định mạng.
2.2.

Kiến trúc của mạng SDN
Kiến trúc của SDN gồm 3 lớp riêng biệt (Hình 2.1): lớp ứng dụng (Application

layer), lớp điều khiển (Control layer), và lớp cơ sở hạ tầng (lớp chuyển tiếp)
(Infrastructure layer):

15

Hình 2.1: Kiến trúc của SDN [1]
Lớp ứng dụng (Application layer)
Là các ứng dụng kinh doanh được triển khai trên mạng, được 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 [1, 9].
Lớp ứng dụng cung cấp các giao diện có khả năng lập trình mở, cho phép các nhà
cung cấp dịch vụ điện toán đám mây cung cấp các dịch vụ đám mây cơng cộng tự động

và có khả năng mở cho các doanh nghiệp. Các tổ chức, doanh nghiệp có thể tạo ra một
“đám mây ảo” tách biệt thông qua hạ tầng cơ sở đám mây công cộng tự phục vụ, giúp họ
kiểm sốt hồn tồn cho các dịch vụ và các ứng dụng mới cho người sử dụng [1, 9].
2.2.1. Lớp điều khiển (Control layer)
Là nơi tập trung các bộ điều khiển 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 bộ điều khiển này có thể là các
phần mềm được lập trình. Ngồi ra để kết nối, điều khiển lớp cơ sở hạ tầng, lớp điều
16

khiển sử dụng các giao thức như OpenFlow, ONOS, NETCONF, SNMP hoặc thông qua
các cơ chế riêng biệt [1].
2.2.2. Lớp cơ sở hạ tầng (Infrastructure latyer)
Là 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 bộ điều khiển khác nhau, điều này giúp tăng cường khả năng ảo hóa của
mạng [1].
Như vậy Kiến trúc mạng SDN được định nghĩa với 4 trụ cột (Hình 2.2)
Phần điều khiển (control plane) và phần chuyển tiếp dữ liệu (data plane) của một
thiết bị mạng khơng cịn đi cặp với nhau như thường lệ mà được tách rời. Chức năng điều
khiển được loại bỏ khỏi các thiết bị mạng, lúc này các thiết bị mạng sẽ tập trung vào chức
năng vận chuyển gói tin đơn giản.
Các thiết bị mạng đưa ra quyết định chuyển tiếp dựa trên luồng dữ liệu, thay vì
dựa trên địa chỉ MAC đích hoặc IP đích. Một luồng dữ liệu được định nghĩa một tập hợp
các giá trị cần so khớp và tập hợp các hành động sẽ áp đặt lên các gói tin có các trường
tương ứng trong header khớp các giá trị. Trong kiến trúc SDN sử dụng giao thức
OpenFlow, luồng dữ liệu là tập hợp các gói tin được chuyển từ thiết bị nguồn sang thiết
bị đích. Tất cả các gói tin của luồng dữ liệu đều được áp dụng các chính sách dịch vụ
giống hệt nhau tại các thiết bị chuyển tiếp. Sự trừu tượng hóa của luồng dữ liệu cho phép
thống nhất hành vi của các loại thiết bị mạng khác nhau, bao gồm: bộ định tuyến, bộ

chuyển mạch, tường lửa và các thiết bị trung gian. Lập trình các luồng dữ liệu cho phép
sự linh hoạt chưa từng có so với trước đây là chỉ giới hạn trong khả năng thực thi của
bảng luồng dữ liệu (flow table).
Điều khiển logic được chuyển sang một thực thể bên ngoài, được gọi là bộ điều
khiển SDN hoặc hệ điều hành mạng (Network Operating System – NOS). NOS là một
nền tảng phần mềm chạy trên các máy chủ và cung cấp các tài nguyên cũng như các mức
độ trừu tượng cần thiết để cho việc lập trình các thiết bị chuyển tiếp một cách thuận lợi

17

nhờ vào mơ hình quản lý tập trung logic và sơ đồ tổng quát của hệ thống mạng ảo. Vì
vậy, mục đích của nó tương tự một hệ điều hành truyền thống.
Mạng có thể lập trình thơng qua các phần mềm ứng dụng chạy trên NOS, tương
tác với các thiết bị chuyển tiếp dữ liệu ở phía dưới. Đây là một đặc tính cơ bản của SDN,
được xem là phần giá trị nhất.

Hình 2.2: Kiến trúc tổng quan mạng SDN [2]
2.3.

Những điểm khác nhau cơ bản giữa mạng truyển thống và mạng SDN
Phần điều khiển mạng và phần vận chuyển dữ liệu trên mạng truyền thống đều

được tích hợp trong thiết bị mạng, trong khi đó đối với mạng định nghĩa bằng phần mềm
(SDN) thì phần điều khiển mạng được tách riêng khỏi thiết bị mạng và được chuyển đến
một nơi khác được gọi là bộ điều khiển SDN.

18

Phần thu thập và xử lý các thông tin: Đối với mạng truyền thống, phần này được
thực hiện ở tất cả các phần tử trong mạng. Còn trong mạng định nghĩa bằng phần mềm
(SDN) thì phần này được tập trung xử lý ở bộ điều khiển SDN.
Đối với mạng truyền thống phần điều khiển và phần vận chuyển dữ liệu cùng
nằm trên một thiết bị mạng vật lý, vì vậy khơng thể được lập trình bởi các ứng dụng, các
thiết bị mạng phải được cấu hình một cách riêng lẽ và thủ cơng. Trong khi đó đối
với mạng SDN phần điều khiển được tách rời với phần vận chuyển dữ liệu, do vậy mạng
có thể lập trình bởi các ứng dụng, bộ điều khiển SDN có thể tương tác đến tất cả các thiết
bị trong mạng.
Phần điều khiển mạng được tách rời và được tập trung ở bộ điều khiển SDN.
Điều này có nghĩa là các thiết bị mạng ở lớp thiết bị phần cứng không cần phải hiểu và
xử lý các giao thức phức tạp mà chúng chỉ nhận và vận chuyển dữ liệu theo một đường
nào đó dưới sự chỉ huy của bộ điều khiển SDN. Dựa vào bộ điều khiển SDN mà các nhà
khai thác và quản trị mạng có thể lập trình cấu hình trên đó thay vì phải thực hiện thủ
cơng hàng ngàn câu lệnh cấu hình trên các thiết bị riêng lẻ. Điều này giúp triển khai các
ứng dụng mới và các dịch vụ mạng một cách nhanh chóng và linh hoạt [1].
2.4.

Những ƣu điểm và những hạn chế của mạng SDN

2.4.1. Ƣu điểm
Mạng định nghĩa bằng phần mềm SDN, với sự tách rời vốn có của phần điều
khiển mạng và chức năng vận chuyển dữ liệu, cung cấp khả năng kiểm soát mạng tốt hơn
thơng qua lập trình. Mạng SDN khơng chỉ chuyển tiếp gói ở cấp chuyển đổi mà cịn liên
kết điều chỉnh ở mức liên kết dữ liệu, phá vỡ rào cản của lớp. Ngồi ra, với khả năng có
được trạng thái mạng tức thời, mạng SDN cho phép kiểm soát tập trung thời gian thực
của mạng dựa trên cả trạng thái mạng tức thời và chính sách do người dùng xác định.
Điều này tiếp tục mang đến lợi ích trong việc tối ưu hóa cấu hình mạng và cải thiện hiệu
suất mạng. Ưu điểm của SDN được chứng minh rõ hơn khi nó cung cấp một nền tảng
thuận tiện để thử nghiệm các kỹ thuật mới và các thiết kế mạng mới, do khả năng lập

trình mạng của nó và khả năng xác định các mạng ảo bị cô lập thông qua phần điều khiển
mạng. [8]
19

Nâng cao cấu hình: Trong quản lý mạng, cấu hình là một trong những chức năng
quan trọng nhất. Cụ thể, khi thiết bị mới được thêm vào mạng hiện có, cần phải có cấu
hình phù hợp để mạng được đồng bộ và đạt được hiệu suất tối đa. Tuy nhiên, do sự
không đồng nhất giữa các nhà sản xuất thiết bị mạng, cấu hình mạng hiện tại thường phải
xử lý thủ cơng, việc cấu hình thủ cơng này mất rất nhiều thời gian và dễ bị lỗi. Đồng thời,
cũng cần có đầu tư đáng kể để khắc phục sự cố mạng có lỗi cấu hình. Nhìn chung, người
ta chấp nhận rằng, với thiết kế mạng hiện tại, cấu hình tự động của mạng vẫn là một
thách thức lớn. Mạng SDN sẽ giúp khắc phục tình trạng này trong quản lý mạng. Trong
SDN, việc hợp nhất phần điều khiển mạng (Control Plane) trên tất cả các loại thiết bị
mạng, bao gồm các bộ chuyển mạch, bộ định tuyến, Bộ dịch địa chỉ mạng (NAT), tường
lửa và bộ cân bằng tải, cho phép tự động cấu hình các thiết bị mạng từ một nơi duy nhất
(gọi là bộ điều khiển SDN) và kiểm sốt bằng phần mềm. Như vậy, tồn bộ mạng có thể
được cấu hình theo chương trình và tối ưu hóa động dựa trên trạng thái mạng.
Cải thiện hiệu suất: Trong một mạng, một trong những mục tiêu chính là tối đa
hóa việc sử dụng cơ sở hạ tầng mạng được đầu tư. Tuy nhiên, do cùng tồn tại các công
nghệ và các bên liên quan khác nhau trong một mạng duy nhất, việc tối ưu hóa hiệu suất
của tồn bộ mạng là khó khăn. Các cách tiếp cận hiện tại thường tập trung vào việc tối ưu
hóa hiệu suất của một tập hợp các mạng con. Rõ ràng, phương pháp này, dựa trên thông
tin cục bộ mà không xem xét kiểm tra chéo, có thể dẫn đến hiệu suất dưới mức tối ưu. Sự
ra đời của mạng SDN mang đến cơ hội cải thiện hiệu suất trên toàn mạng. Cụ thể, SDN
cho phép điều khiển tập trung với chế độ xem mạng một cách tổng quát và điều khiển
phản hồi với thông tin được trao đổi giữa các lớp khác nhau trong kiến trúc mạng. Như
vậy, các vấn đề về tối ưu hóa hiệu năng đầy thách thức sẽ trở nên dễ quản lý hơn với các
thuật toán tập trung được thiết kế đúng. Theo các giải pháp mới cho các vấn đề trước đây,
như lập lịch lưu lượng dữ liệu, kiểm soát tắc nghẽn từ đầu đến cuối, định tuyến gói, cân

bằng tải, hoạt động hiệu quả năng lượng và Chất lượng dịch vụ (QoS ), có thể được phát
triển và dễ dàng triển khai để xác minh tính hiệu quả của chúng trong việc cải thiện hiệu
suất mạng.

20

Sự đổi mới: Ngày nay với sự phát triển liên tục của các ứng dụng mạng, mạng
trong tương lai nên khuyến khích đổi mới thay vì cố gắng dự đốn và đáp ứng các yêu
cầu của các ứng dụng trong tương lai. Thế nhưng, bất kỳ ý tưởng hoặc thiết kế mới nào
cũng phải đối mặt với những thách thức trong việc triển khai, thử nghiệm. Rào cản chính
phát sinh từ phần cứng độc quyền được sử dụng rộng rãi trong các thành phần mạng
thơng thường. Bên cạnh đó, ngay cả khi có thể thử nghiệm thì chúng cũng thường được
tiến hành trong một thử nghiệm đơn giản hóa riêng biệt. Những thử nghiệm này khơng đủ
khả năng để thích ứng với những ý tưởng mới hoặc thiết kế mạng sau này. SDN khuyến
khích đổi mới bằng cách cung cấp nền tảng mạng có thể lập trình để thực hiện, thử
nghiệm và triển khai các ý tưởng mới, ứng dụng mới và dịch vụ mới một cách thuận tiện
và linh hoạt. Khả năng cấu hình cao của SDN cung cấp sự phân tách rõ ràng giữa các
mạng ảo cho phép thử nghiệm trên môi trường thực. Việc triển khai các ý tưởng mới có
thể được thực hiện thơng qua q trình chuyển đổi liền mạch từ giai đoạn thử nghiệm
sang giai đoạn vận hành.
Với kiến trúc mạng SDN thì các bộ điều khiển có thể được lập trình trực tiếp.
Mạng có thể được điều chỉnh, thay đổi cấu hình một cách dễ dàng, linh hoạt thông qua bộ
điều khiển mà khơng cần phải cấu hình thay đổi trực tiếp trên các thiết bị mạng. Do phần
điều khiển mạng được tập trung trên bộ điều khiển nên mạng được quản lý một cách tập
trung. Việc 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 bên dưới. Do các thiết bị mạng có thể được ảo hóa nên SDN giúp giảm
thiểu các chi phí mua sắm phần cứng trong việc xây dựng, thi công các dịch vụ mạng.
Kiến trúc mạng SDN giúp người dùng dễ dàng thiết kế, triển khai, quản lý và mở rộng
mạng thông qua các phần tử mạng đã được gia tăng khả năng lập trình. Với sự phát triển

mạng mẽ của mạng SDN trong những năm gần đây đã mở ra cơ hội cho các nhà kinh
doanh cung cấp thiết bị mạng khi phần điều khiển được tách rời khỏi phần cứng [9].
2.4.2. Hạn chế
Hiện nay vấn đề bảo mật cũng là một thách thức không nhỏ đối với công nghệ
mạng SDN. SDN được quản lý tập trung bởi một bộ điều khiển (controller) duy nhất, do

21

đó nó là một mục tiêu được nhắm tới cho tin tặc (hacker). Một khi đã tấn công được vào
bộ điều khiển này thì kẻ tấn cơng có thể chiếm toàn bộ quyền điều khiển của mạng [10].
Việc chuyển đổi từ hệ thống mạng truyền thống 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. Một vấn đề nữa là khả năng tương thích
làm sao để các giải pháp SDN được tích hợp vào mạng hiện tại. Hiện tại, các hạ tầng
mạng truyền thống đang sử dụng khác rất nhiều so với các kiến trúc mạng phi tập trung
với phần điều khiển mạng và chức năng vận chuyển dữ liệu cùng nằm trên một thiết bị
mạng. Vì vậy, một câu hỏi đặt ra rất lớn cho các nhà nghiên cứu là liệu cơng nghệ mạng
SDN có thể thực hiện được khơng khi mà thị trường trung tâm dữ liệu (Data Center) đang
còn trì trệ [9].
Với những hứa hẹn trong tương lai về cấu hình nâng cao, hiệu suất được cải thiện
và khuyến khích đổi mới, mạng SDN vẫn cịn ở giai đoạn sơ khai. Nhiều vấn đề cơ bản
vẫn chưa được giải quyết triệt để bởi những lý do sau đây: [8]
Thứ nhất: Về vấn đề bảo mật, nếu tin tặc có thể tấn cơng vào hệ thống thì chúng
có thể truy cập các thiết lập và thay đổi chúng ở bất cứ nơi đâu và bất kỳ thời điểm nào.
Thứ hai: Quá trình triển khai mạng SDN là một quá trình lâu dài theo từng bước
một, chúng ta không thể thay thế một lúc tồn bộ các thiết bị hiện có thành OpenFlow
switch được bởi vì điều đó sẽ rất tốn kém.
SDN cung cấp một nền tảng cho các kỹ thuật mạng thông minh, tuy nhiên việc
chuyển từ mạng truyền thống sang SDN có thể gây gián đoạn. Các mối quan tâm phổ
biến bao gồm khả năng tương tác SDN với các thiết bị mạng cũ, thiếu chuyên gia hỗ trợ

kỹ thuật. Việc triển khai SDN hiện tại thường được giới hạn ở các thử nghiệm nhỏ
thường phục vụ cho mục đích nghiên cứu nên vẫn chưa được triển khai trong thực tế.

22

2.5.

Phần điều khiển mạng và Chức năng vận chuyển dữ liệu

Hình 2.3: Control plane và Data plane [11]
2.5.1. Phần điều khiển mạng (Control Plane)
Phần điều khiển mạng (Control Plane) hoạt động như một lớp trung gian giữa các
ứng dụng và chức năng vận chuyển dữ liệu (Data Plane). Phần điều khiển mạng trong
SDN được gọi là bộ điều khiển, nó là bộ não trong kiến trúc mạng SDN; Bộ điều khiển
giao tiếp với các ứng dụng và với các thiết bị chuyển tiếp thơng qua các API. Do đó,
trong bộ điều khiển, điều quan trọng là thiết kế giao diện và bộ điều khiển một cách thân
thiện và hiệu quả [12].
Control Plane là thành phần điều khiển mạng với các giải thuật và giao thức dùng
để tính tốn và lưu trữ các thông tin định tuyến lên bảng FIB (Forwarding Information
Base) nhằm xác định đường đi cho mỗi gói tin trong việc vận chuyển dữ liệu. Đối với bộ
23

514 / QĐ-ĐHNT ngày 17/05/2019 Quyết định xây dựng hợp đồng : 499 / QĐ-ĐHNT ngày 25/05/2020 Ngày bảo vệ : 07/06/2020 Ngƣời hƣớng dẫn khoa học : TS. TRẦN NGÔ NHƢ KHÁNHChủ tịch Hội đồng : TS. NGUYỄN ĐỨC THUẦNPhòng Đào tạo sau Đại họcKHÁNH HÒA – 2020L ỜI CAM ĐOANTôi tên Đỗ Văn Khoa – hiện đang là học viên lớp cao học ngành Công nghệ Thôngtin – trường Đại học Nha Trang. Tôi xin cam kết ràng buộc mọi tác dụng của đề tài : “ Mô phỏngmạng SDN ( Software-Defined Networking ) sử dụng mã nguồn mở ” là cơng trìnhnghiên cứu của cá thể tôi dưới sự hướng dẫn của TS. Trần Ngô Như Khánh và chưatừng được công bố trong bất kể cơng trình khoa học nào khác cho tới thời gian này. Những hiệu quả nghiên cứu và điều tra của người khác và những số liệu được trích dẫn trong luận vănđều được chú thích khá đầy đủ. Tơi hồn tồn chịu nghĩa vụ và trách nhiệm trước nhà trường về sự cam kết này. Lâm Đồng, Ngày 10 tháng 03 năm 2020T ác giả luận vănĐỗ Văn KhoaLỜI CẢM ƠNTrong suốt thời hạn thực thi đề tài, tơi đã nhận được sự giúp sức của q phịngban trường Đại học Nha Trang, Quý thầy cô trong khoa Công nghệ tin tức trường Đạihọc Nha Trang đã tạo điều kiện kèm theo tốt nhất cho tơi được hồn thành đề tài. Đặc biệt là sựhướng dẫn tận tình của TS. Trần Ngơ Như Khánh đã giúp tơi hồn thành tốt đề tài. Để có đủ kiến thức và kỹ năng và kỹ năng và kiến thức hồn thành đề tài tôi xin chân thành cảm ơn quýthầy cô trường Đại học Nha Trang đã trang bị cho tơi trong suốt khóa học. Tơi xin chân thành cảm ơn mái ấm gia đình, bè bạn và đồng nghiệp đã ln ủng hộ, độngviên, tạo điều kiện kèm theo, trợ giúp để tơi hoàn toàn có thể tập trung chuyên sâu triển khai việc học tập và nghiên cứutrong suốt thời hạn dài. Mặc dù tơi đã có nhiều nỗ lực hồn thiện luận văn, tuy nhiên khơng thể tránh khỏinhững thiếu sót, rất mong nhận được những góp phần q báu của q thầy cơ và cácbạn. Lâm Đồng, Ngày 10 tháng 03 năm 2020T ác giả luận vănĐỗ Văn KhoaiiMỤC LỤCCHƢƠNG 1 : TỔNG QUAN …………………………………………………………………………………………………….. 101.1. Giới thiệu đề tài …………………………………………………………………………………………………………. 101.2. Mục tiêu đề tài …………………………………………………………………………………………………………… 111.3. Nội dung triển khai …………………………………………………………………………………………………….. 121.4. Một số nghiên cứu và điều tra tương quan ………………………………………………………………………………………. 121.5. Đóng góp của luận văn ………………………………………………………………………………………………. 12CH ƢƠNG 2 : MẠNG ĐỊNH NGHĨA BẰNG PHẦN MỀM ………………………………………………………… 14 ( SOFTWARE-DEFINED NETWORKING ) ……………………………………………………………………………… 142.1. Định nghĩa SDN ………………………………………………………………………………………………………… 142.2. Kiến trúc của mạng SDN. …………………………………………………………………………………………… 152.2.1. Lớp ứng dụng ( Application layer ) ……………………………………………………………………….. 162.2.2. Lớp tinh chỉnh và điều khiển ( Control layer ) ……………………………………………………………………………. 162.2.3. Lớp hạ tầng ( Infrastructure latyer ) …………………………………………………………….. 172.3. Những điểm khác nhau cơ bản giữa mạng truyển thống và mạng SDN ……………………….. 182.4. Những ƣu điểm và những hạn chế của mạng SDN ………………………………………………………. 192.4.1. Ƣu điểm ……………………………………………………………………………………………………………… 192.4.2. Hạn chế ……………………………………………………………………………………………………………… 212.5. Phần điều khiển và tinh chỉnh mạng và Chức năng luân chuyển tài liệu ……………………………………………. 232.5.1. Phần tinh chỉnh và điều khiển mạng ( Control Plane ) ………………………………………………………………… 232.5.2. Chức năng luân chuyển tài liệu ( Data Plane ) ………………………………………………………… 242.6. Giao thức OpenFlow ………………………………………………………………………………………………….. 242.6.1. Các đặc trƣng của giao thức OpenFlow ……………………………………………………………….. 272.6.2. OpenFlow switch và OpenFlow Controller ………………………………………………………….. 282.6.3. Đánh giá bảo mật thông tin OpenFlow ………………………………………………………………………………. 312.7. Công cụ Mininet và những bộ tinh chỉnh và điều khiển của SDN ………………………………………………………….. 322.7.1. Công cụ Mininet …………………………………………………………………………………………………. 322.7.2. Các bộ điều khiển và tinh chỉnh của SDN …………………………………………………………………………………. 34CH ƢƠNG 3 : MÔ PHỎNG MẠNG SDN. ………………………………………………………………………………….. 413.1. Giới thiệu ………………………………………………………………………………………………………………….. 413.2. Công cụ sử dụng ………………………………………………………………………………………………………… 423.3. Các thử nghiệm và nhìn nhận ………………………………………………………………………………………. 433.3.1. So sánh giữa hai môi trƣờng thực thi …………………………………………………………………… 48 iii3. 3.2. So sánh giữa những bộ tinh chỉnh và điều khiển ……………………………………………………………………………. 573.3.3. Kết quả ………………………………………………………………………………………………………………. 61CH ƢƠNG 4 : TỔNG KẾT VÀ HƢỚNG PHÁT TRIỂN …………………………………………………………….. 634.1. Tổng kết ……………………………………………………………………………………………………………………. 634.2. Hƣớng tăng trưởng ………………………………………………………………………………………………………. 64T ÀI LIỆU THAM KHẢO ………………………………………………………………………………………………………… 65 ivDANH MỤC CHỮ VIẾT TẮTSDNSoftware-Defined Networking ( Mạng định nghĩa bằng ứng dụng ) ATMAsynchronous transfer mode ( Mạng chính sách truyền không đồng điệu ) NCPNetwork control protocol ( Giao thức tinh chỉnh và điều khiển mạng ) APIApplication programming interface ( Giao diện lập trình ứng dụng ) ONFOpen Networking Foundation ( Một tổ chức triển khai phi doanh thu ) PCPersonal Computer ( Máy tính cá thể ) RCPRouting control platform ( Nền tảng điều khiển và tinh chỉnh định tuyến ) BGPBorder Gateway protocol ( Giao thức tìm đường đi ) IETFInternet Engineering Task Force ( Là một tổ chức triển khai tiêu chuẩn mở, pháttriển và thôi thúc những tiêu chuẩn Internet tự nguyện ) ONOSOpen Network Operating System ( Hệ quản lý mã nguồn mở ) NETCONFNetwork Configuration Protocol ( Giao thức thông số kỹ thuật mạng ) SNMPSimple Network Management ProtocolMACMedia Access Control ( Kiểm soát truy vấn phương tiện đi lại truyền thông online ) IPInternet Protocol ( Địa chỉ giao thức Internet ) NOSNetwork Operating System ( Hệ quản lý mạng ) NATNetwork Address Translation ( Bộ dịch địa chỉ mạng được cho phép chuyểnđổi từ một địa chỉ IP này thành một địa chỉ IP khác ) FIBForwarding Information Base ( Bảng chứa những thông tin chuyển tiếp ) OSPFOpen Shortest Path First ( Là một giao thức định tuyến ) BGPBorder Gateway Protocol ( Là một giao thức định tuyến ) EIGRPCPUEnhance Interio Gateway Routing Protocol ( Là một giao thức địnhtuyến ) Central Processing Unit ( Bộ giải quyết và xử lý TT ) SSHVMSecure Shell L ( à một giao thức mạng dùng để thiết lập liên kết mạngmột cách bảo mật thông tin ) Virtual machine ( Hệ thống máy ảo ) viDANH MỤC BẢNGBảng 3.1 : Kết quả thử nghiệm của quy mô mạng đơn ( Single ) với bộ tinh chỉnh và điều khiển mặcđịnh …………………………………………………………………………………………………………………… 48B ảng 3.2 : Kết quả thử nghiệm của mơ hình mạng cây ( Tree ) với bộ điều khiển và tinh chỉnh mặc định …………………………………………………………………………………………………………………………. 49B ảng 3.3 : Kết quả thử nghiệm của mơ hình mạng tuyến tính ( Linear ) với bộ điều khiểnmặc định ……………………………………………………………………………………………………………. 50B ảng 3.4 : Kết quả thử nghiệm của mơ hình mạng đơn ( Single ) với bộ điều khiển và tinh chỉnh POX 51B ảng 3.5 : Kết quả thử nghiệm của mơ hình mạng cây ( Tree ) với bộ điều khiển và tinh chỉnh POX …. 52B ảng 3.6 : Kết quả thử nghiệm của quy mô mạng tuyến tính ( Linear ) với bộ điều khiểnPOX ………………………………………………………………………………………………………………….. 53B ảng 3.7 : Kết quả thử nghiệm của mơ hình mạng đơn ( Single ) với bộ tinh chỉnh và điều khiển Ryu .. 54B ảng 3.8 : Kết quả thử nghiệm của mơ hình mạng cây ( Tree ) với bộ điều khiển và tinh chỉnh Ryu ….. 55B ảng 3.9 : Kết quả thử nghiệm của mơ hình mạng tuyến tính ( Linear ) với bộ điều khiểnRyu …………………………………………………………………………………………………………………… 56B ảng 3.10 : Kết quả thử nghiệm của mơ hình mạng cây ( Tree ) với mơi trường máy ảo .. 57B ảng 3.11 : Kết quả thử nghiệm của quy mô mạng tuyến tính ( Linear ) với mơi trườngmáy ảo ………………………………………………………………………………………………………………. 58B ảng 3.12 : Kết quả thử nghiệm của mơ hình mạng cây ( Tree ) với thiên nhiên và môi trường máyRaspberry ………………………………………………………………………………………………………….. 59B ảng 3.13 : Kết quả thử nghiệm của mơ hình mạng tuyến tính ( Linear ) với môi trườngmáy Raspberry …………………………………………………………………………………………………… 60 viiDANH MỤC HÌNHHình 2.1 : Kiến trúc của SDN ……………………………………………………………………………….. 16H ình 2.2 : Kiến trúc tổng quan mạng SDN ……………………………………………………………… 18H ình 2.3 : Control plane và Data plane …………………………………………………………………… 23H ình 2.4 : Sơ đồ Giao thức OpenFlow …………………………………………………………………… 25H ình 2.5 : Sơ đồ tương tác giữa switch và controller theo giao thức OpenFlow ………….. 28H ình 2.6 : Cấu trúc OpenFlow Switch ……………………………………………………………………. 29H ình 3.1 : Cách tạo mơ hình mạng đơn ( Single ) ……………………………………………………… 44H ình 3.2 : Mơ hình mạng đơn ( Single ) …………………………………………………………………… 44H ình 3.3 : Cách tạo mơ hình mạng cây ( Tree ) …………………………………………………………. 45H ình 3.4 : Mơ hình mạng cây ( Tree ) ……………………………………………………………………… 46H ình 3.5 : Cách tạo mơ hình mạng tuyến tính ( Linear ) …………………………………………….. 47H ình 3.6 : Mơ hình mạng tuyến tính ( Linear ) ………………………………………………………….. 47 viiiDANH MỤC BIỂU ĐỒBiểu đồ 3.1 : So sánh thời hạn thực thi của mơ hình mạng đơn ( Single ) với bộ điều khiểnmặc định ……………………………………………………………………………………………………………. 48B iểu đồ 3.2 : So sánh thời hạn thực thi của mơ hình mạng cây ( Tree ) với bộ điều khiểnmặc định ……………………………………………………………………………………………………………. 49B iểu đồ 3.3 : So sánh thời hạn thực thi của mơ hình mạng tuyến tính ( Linear ) với bộ điềukhiển mặc định …………………………………………………………………………………………………… 50B iểu đồ 3.4 : So sánh thời hạn thực thi của mơ hình mạng đơn ( Single ) với bộ điều khiểnPOX ………………………………………………………………………………………………………………….. 51B iểu đồ 3.5 : So sánh thời hạn thực thi của mơ hình mạng cây ( Tree ) với bộ điều khiểnPOX ………………………………………………………………………………………………………………….. 52B iểu đồ 3.6 : So sánh thời hạn thực thi của mơ hình mạng tuyến tính ( Linear ) với bộ điềukhiển POX …………………………………………………………………………………………………………. 53B iểu đồ 3.7 : So sánh thời hạn thực thi của mơ hình mạng đơn ( Single ) với bộ điều khiểnRyu …………………………………………………………………………………………………………………… 54B iểu đồ 3.8 : So sánh thời hạn thực thi của mơ hình mạng cây ( Tree ) với bộ điều khiểnRyu …………………………………………………………………………………………………………………… 55B iểu đồ 3.9 : So sánh thời hạn thực thi của mơ hình mạng tuyến tính ( Linear ) với bộ điềukhiển Ryu ………………………………………………………………………………………………………….. 56B iểu đồ 3.10 : So sánh thời hạn thực thi của quy mô mạng cây ( Tree ) với mơi trườngmáy ảo ………………………………………………………………………………………………………………. 57B iểu đồ 3.11 : So sánh thời hạn thực thi của quy mô mạng tuyến tính ( Linear ) với mơitrường máy ảo ……………………………………………………………………………………………………. 58B iểu đồ 3.12 : So sánh thời hạn thực thi của mơ hình mạng cây ( Tree ) với mơi trườngmáy Raspberry …………………………………………………………………………………………………… 59B iểu đồ 3.13 : So sánh thời hạn thực thi của mơ hình mạng tuyến tính ( Linear ) với mơitrường máy Raspberry …………………………………………………………………………………………. 60 ixCHƢƠNG 1 : TỔNG QUAN1. 1. Giới thiệu đề tàiTrong kiến trúc mạng truyền thống cuội nguồn thành phần chuyển tiếp tài liệu ( Data plane ) và thành phần điều khiển và tinh chỉnh ( Control plane ) đều cùng nằm trên một thiết bị vật lý ( chính sách tựtrị ) và mỗi thiết bị độc lập với nhau. Khi số lượng thiết bị càng nhiều, thì càng gây nên sựphức tạp trong mạng và làm khó khăn vất vả cho người quản trị mạng trong quy trình vận hànhvà điều khiển và tinh chỉnh. Trong toàn cảnh này, một kiến trúc mạng mới đã được điều tra và nghiên cứu và pháttriển với hướng tiếp cận là tách rời phần chuyển tiếp tài liệu với phần tinh chỉnh và điều khiển mạng, trách nhiệm điều khiển và tinh chỉnh mạng được giải quyết và xử lý bởi những bộ tinh chỉnh và điều khiển và những bộ tinh chỉnh và điều khiển đó cóthể thao tác tới phần cứng, bộ nhớ và những công dụng của những thiết bị định tuyến ( router ), thiết bị chuyển mạch ( switch ) để đạt được mục tiêu của người sử dụng. Do đó, mạng trởnên linh động hơn, hiệu suất sử dụng cao hơn và dễ quản trị hơn. [ 1 ] Với sự tăng trưởng nhanh gọn của cơng nghệ, thời nay u cầu những ứng dụngthường địi hỏi tính di động, ảo hóa để quản trị tập trung chuyên sâu, cũng như phân phối nhanh chóngnhững đổi khác theo nhu yếu của người dùng, vì thế mạng lưới hệ thống mạng truyền thống cuội nguồn khôngthể phân phối được nhu yếu. Việc quy đổi từ IPv4 sang IPv6, đã khởi đầu từ hơn mộtthập kỷ trước và vẫn chưa triển khai xong, trong khi thực tiễn IPv6 chỉ là một bản update giaothức. Để cung ứng được những mạng IP hiện tại, một giao thức định tuyến mới hoàn toàn có thể mất từ5 đến 10 năm để được phong cách thiết kế, nhìn nhận và tiến hành không thiếu. Tương tự, cách tiếp cận đểthay đổi kiến trúc Internet một cách mới hồn tồn ( ví dụ : sửa chữa thay thế IP ), được coi là mộtnhiệm vụ khó khăn vất vả – đơn thuần là khơng khả thi trong trong thực tiễn. Mặc dù Mạng định nghĩa bằng ứng dụng ( SDN – Software-Defined Networking ) là một khái niệm mới, nhưng nó vẫn thừa kế những ý tưởng sáng tạo của mạng truyền thống cuội nguồn. Cụ thể, nó được kiến thiết xây dựng dựa trên sáng tạo độc đáo những mạng hoàn toàn có thể lập trình, ví dụ : Mạng – chế độtruyền khơng đồng điệu ( ATM-Asynchronous transfer mode ) hoàn toàn có thể lập trình và trên ýtưởng được cho phép phần tinh chỉnh và điều khiển mạng ( Control Plane ) tách hẳn với tính năng vậnchuyển dữ liệu ( Forwarding Plane hay Data Plane ) như giao thức tinh chỉnh và điều khiển mạng ( NCPNetwork control protocol ). [ 2 ] 10V ới mạng định nghĩa bằng ứng dụng ( SDN – Software-Defined Networking ), việc tinh chỉnh và điều khiển được tập trung chuyên sâu tại lớp tinh chỉnh và điều khiển ( Controller Layer ), với ý tưởng sáng tạo táchriêng phần tinh chỉnh và điều khiển mạng ( Control Plane ) và tính năng luân chuyển tài liệu ( DataPlane ), điều này được cho phép việc điều khiển và tinh chỉnh mạng trở nên hoàn toàn có thể lập trình được thuận tiện vàcơ sở hạ tầng mạng độc lập với những ứng dụng và dịch vụ mạng. Về phía người sử dụng, người dùng khơng phải xuất hiện trực tiếp tại những thiết bị mạng để thông số kỹ thuật cho những thiết bịmạng mà chỉ cần thơng qua những giao diện lập trình ứng dụng ( API-Applicationprogramming interface ) là đã hoàn toàn có thể thiết kế xây dựng ứng dụng cho tồn mạng lưới hệ thống mạng. [ 1, 3 ] Hiện nay, SDN thực sự là một chủ đề được chăm sóc đặc biệt quan trọng trong cả nghiên cứulẫn ứng dụng. Đây là một mơ hình quản trị tập trung chuyên sâu có tính logic hoàn toàn có thể kiểm sốt chuyểntiếp trên những thiết bị như thiết bị định tuyến ( Router ) và thiết bị chuyển mạch ( Switch ). SDN hứa hẹn là một công nghệ tiên tiến mạng mới hiệu suất cao hơn công nghệ tiên tiến mạng truyền thống lịch sử vềphương diện hoạt động giải trí và quản trị mạng. Với nhu yếu nghiên cứu và điều tra, thử nghiệm và giảng dạy về cơng nghệ mạng SDN rấtlớn tuy nhiên gặp khó khăn vất vả hầu hết do những thiết bị mạng ( router, switch, … ) tương hỗ SDNrất đắt tiền. Vì vậy việc sử dụng những công cụ giả lập mã nguồn mở được xem là giải phápthay thế. Đề tài tập trung chuyên sâu tiến hành thử nghiệm những mơ hình mạng SDN sử dụng cơng cụmô phỏng mã nguồn mở Mininet để so sánh, nhìn nhận việc tiến hành này trên nhiều môitrường phần cứng và những bộ tinh chỉnh và điều khiển ( controller ) khác nhau [ 1, 4 ] 1.2. Mục tiêu đề tàiMục tiêu của đề tài là sử dụng mã nguồn mở trên nền tảng công cụ mô phỏngMininet để tiến hành những mơ hình mạng SDN ( mơ hình mạng đơn – Single, mơ hìnhmạng cây – Tree và mơ hình mạng tuyến tính – Linear ) trên nhiều mơi trường phần cứngkhác nhau ( mơi trường ảo hóa và mơi trường máy tính Raspberry Pi ) với những bộ điềukhiển khác nhau ( bộ tinh chỉnh và điều khiển mặc định – Default controller, bộ điều khiển và tinh chỉnh POX – POXcontroller và bộ tinh chỉnh và điều khiển Ryu – Ryu controller ). Cụ thể, đề tài sẽ thử nghiệm triển khaicác mơ hình mạng SDN với số nút mạng khác nhau và nhìn nhận về những tiêu chuẩn như thờigian thực thi, năng lực cung ứng. 111.3. Nội dung thực hiệnCác thử nghiệm được triển khai để nhìn nhận năng lực lan rộng ra ( scalability ) củacông cụ mô phỏng Mininet trong việc thực thi những mơ hình mạng. Cụ thể, thời hạn thựcthi từ lúc chạy ( start ) và dừng ( stop ) của những mơ hình mạng khác nhau sẽ được so sánhtrên hai môi trường tự nhiên phần cứng khác nhau và so sánh trên những bộ tinh chỉnh và điều khiển khác nhau. Đề tài thực thi setup công cụ Mininet với những bộ điều khiển và tinh chỉnh khác nhau trên haimôi trường phần cứng là máy tính dùng cơng cụ ảo hóa ( VirtualBox Oracle VM ) và máytính Raspberry Pi 3. Việc lập trình tinh chỉnh và điều khiển sử dụng ngơn ngữ Python. Các mơ hình mạng được sử dụng trong những thử nghiệm gồm : Mơ hình mạng đơn ( Single ), mơ hình mạng cây ( Tree ) và mơ hình mạng tuyến tính ( Linear ) và những bộ điềukhiển SDN được sử dụng là : bộ điều khiển và tinh chỉnh mặc định ( Default controller ), bộ điều khiểnPOX ( POX controller ) và bộ điều khiển và tinh chỉnh Ryu ( Ryu controller ). 1.4. Một số điều tra và nghiên cứu liên quanMột nghiên cứu và điều tra mô phỏng mạng SDN sử dụng Mininet trên những môi trườngmô phỏng khác nhau được tăng trưởng bởi Faris Keti và Shavan Askar [ 5 ]. Cụ thể nghiêncứu sử dụng hai môi trường tự nhiên mơ phỏng là hai máy tính với thông số kỹ thuật khác nhau để so sánhthời gian thực thi tạo mơ hình mạng cây ( Tree ) với số nút mạng khác nhau. Vipin Gupta, Karamjeet Kaur and Sukhveer Kaur [ 6 ] đã nghiên cứu và điều tra sử dụng máy tính Raspberry Pilàm bộ chuyển mạch SDN với ngân sách thấp. Kết quả cho thấy sử dụng Raspberry Pi làmbộ chuyển mạch hoàn toàn có thể cung ứng được, thiết bị này có ngân sách thấp và di động so với cácthiết bị khác trên thị trường. Trong tương lai hoàn toàn có thể thử nghiệm SDN gồm có những thiết bịchuyển mạch và máy chủ tàng trữ bằng máy tính Raspberry Pi. Trong một nghiên cứukhác Jehad Ali, Seungwoon Lee và Byeong-hee Roh [ 7 ] nghiên cứu và phân tích hiệu suất của những bộđiều khiển POX và Ryu với những cấu trúc mạng SDN khác nhau. Nghiên cứu cho thấyrằng hiệu suất của bộ điều khiển và tinh chỉnh Ryu là cao hơn. 1.5. Đóng góp của luận vănNghiên cứu đã thử nghiệm nhìn nhận việc mô phỏng mạng SDN sử dụng công cụMininet bằng cách so sánh thời hạn thực thi trên hai môi trường tự nhiên phần cứng khác nhau12 ( mơi trường ảo hóa và máy tính Raspberry Pi ). Các thử nghiệm năng lực lan rộng ra nàyđược thực thi trên ba kiểu mơ hình mạng ( mơ hình mạng đơn, mơ hình mạng cây và mơhình mạng tuyến tính ) với những bộ tinh chỉnh và điều khiển ( bộ tinh chỉnh và điều khiển mặc định, bộ tinh chỉnh và điều khiển POXvà bộ tinh chỉnh và điều khiển Ryu ). Kết quả cho thấy thông số kỹ thuật thiên nhiên và môi trường phần cứng và số nút mạngtrong mơ hình ảnh hưởng đến thời hạn thực thi của cả ba kiểu mơ hình. Tuy nhiên, cả haimơi trường mô phỏng điều phân phối được việc giả lập mạng SDN ship hàng điều tra và nghiên cứu vàhọc tập ngay cả với số nút mạng lớn. Trong những nghiên cứu và điều tra tiếp theo, sẽ liên tục nhìn nhận hiệu suất của những mơ hìnhmạng SDN như về băng thông, năng lực định tuyến và chuyển tiếp gói tin trên nhữngmơi trường giả lập và những bộ tinh chỉnh và điều khiển khác nhau. 13CH ƢƠNG 2 : MẠNG ĐỊNH NGHĨA BẰNG PHẦN MỀM ( SOFTWARE-DEFINED NETWORKING ) 2.1. Định nghĩa SDNHiện nay có rất nhiều định nghĩa về kiến trúc mạng SDN nhưng theo ONF ( OpenNetworking Foundation ) – tổ chức triển khai phi doanh thu đang tương hỗ cho việc tăng trưởng, tiêuchuẩn hóa và thương mại hóa SDN đã định nghĩa về SDN như sau : [ 8 ] Mạng được định nghĩa bằng ứng dụng ( SDN ) là một kiến trúc mạng với hướngtiếp cận trong đó phần điều khiển và tinh chỉnh mạng ( Control Plane ) và tính năng luân chuyển tài liệu ( Data Plane ) được tách rời nhau và phần điều khiển và tinh chỉnh mạng có năng lực được lập trình trựctiếp. Theo định nghĩa này, SDN được xác lập bởi hai đặc thù : đó là tách rời phầnđiều khiển mạng ( Control Plane ) với tính năng luân chuyển tài liệu ( Data Plane ) và cókhả năng lập trình trên phần tinh chỉnh và điều khiển. Tuy nhiên, cả hai đặc thù trên trong SDN đềukhơng hồn tồn mới trong kiến trúc mạng, như cụ thể trong phần sau đây : Thứ nhất : Một số điều tra và nghiên cứu trước đây đã được triển khai để thôi thúc khả nănglập trình mạng. Ví dụ ý tưởng sáng tạo về việc tinh chỉnh và điều khiển một mạng theo phương pháp thời hạn thựcbằng ứng dụng. SwitchWare là một giải pháp cho điều đó, được cho phép những gói dữ liệutruyền qua mạng để sửa đổi hoạt động giải trí của mạng một cách linh động. Tương tự, những bộđịnh tuyến ứng dụng trên phần cứng PC thường thì, như Click, XORP, Quagga vàBIRD, cũng cố gắng nỗ lực tạo những bộ định tuyến ứng dụng hoàn toàn có thể lan rộng ra bằng cách lập trìnhcác thiết bị mạng. Thứ hai : Ý tưởng tách rời phần điều khiển và tinh chỉnh mạng ( Control Plane ) và chức năngvận chuyển tài liệu ( Data Plane ) khá thông dụng trong thập kỷ qua. Caesar và tập sự, lầnđầu tiên trình diễn một nền tảng điều khiển và tinh chỉnh định tuyến ( Routing control platform – RCP ) vào năm 2004, trong đó giao thức tìm đường đi BGP ( Border Gateway protocol ) đượcthay thế bằng điều khiển và tinh chỉnh định tuyến tập trung chuyên sâu để giảm độ phức tạp của việc tính tốnđường đi. Trong cùng năm đó, IETF đã cho ra đời một bộ khung ( Framework ) mà ở đóphân tách phần tinh chỉnh và điều khiển mạng và phần chuyển tiếp tài liệu ( ForCES ). Vào năm 2006,14 kiến trúc đường dẫn tính tốn yếu tố ( PCE ) đã được trình diễn để tính tốn những đường dẫnchuyển tiếp riêng không liên quan gì đến nhau với chuyển tiếp gói trong thực tiễn trong mạng MPLS và GMPLS. Vàonăm 2007, Casado và tập sự trình diễn một thiết bị chuyển mạch ( Ethernet Switch ) đượcbổ sung bộ tinh chỉnh và điều khiển tập trung chuyên sâu để quản trị việc đảm nhiệm và định tuyến những luồng. Trongsự tăng trưởng của công nghệ tiên tiến mạng ngày này, nguyên tắc tách rời phần điều khiển và tinh chỉnh mạng ( Control Plane ) và công dụng luân chuyển tài liệu ( Data Plane ) đã được tăng trưởng vànghiên cứu nhiều hơn. Các loại sản phẩm, thiết bị mạng thương mại cũng đã áp dụng ý tưởngtách rời phần tinh chỉnh và điều khiển mạng và tính năng luân chuyển tài liệu. Ví dụ, trong bộ địnhtuyến Cisco ASR 1000 và bộ chuyển mạch Nexus 7000, phần tinh chỉnh và điều khiển mạng được táchrời với công dụng luân chuyển tài liệu và được mơ đun hóa. Với mạng định nghĩa bằng ứng dụng ( SDN ), tính độc lạ của nó nằm ở chỗcung cấp năng lực lập trình thơng qua việc tách rời phần tinh chỉnh và điều khiển mạng và chức năngvận chuyển tài liệu. Cụ thể, SDN phân phối những thiết bị mạng lập trình đơn thuần thay vìlàm cho những thiết bị mạng phức tạp hơn như trong trường hợp mạng truyền thống cuội nguồn. Hơnnữa, SDN đề xuất kiến nghị tách phần tinh chỉnh và điều khiển mạng và công dụng luân chuyển tài liệu trongthiết kế kiến trúc mạng. Với phong cách thiết kế này, việc tinh chỉnh và điều khiển mạng hoàn toàn có thể được thực hiệnriêng trên bộ tinh chỉnh và điều khiển mà không ảnh hưởng tác động đến luồng tài liệu. Như vậy, bộ não củamạng hoàn toàn có thể được tách hẳn ra khỏi những thiết bị chuyển mạch và được đặt trên bộ điềukhiển. Đồng thời, những thiết bị chuyển mạch giờ đây hoàn toàn có thể được điều khiển và tinh chỉnh bên ngồibằng ứng dụng mà khơng cần thông số kỹ thuật trực tiếp. Việc tách rời phần điều khiển và tinh chỉnh mạng vàchức năng luân chuyển tài liệu khơng chỉ cung ứng một mơi trường lập trình đơn thuần hơnmà còn linh động hơn cho ứng dụng bên ngoài để xác lập mạng. 2.2. Kiến trúc của mạng SDNKiến trúc của SDN gồm 3 lớp riêng không liên quan gì đến nhau ( Hình 2.1 ) : lớp ứng dụng ( Applicationlayer ), lớp điều khiển và tinh chỉnh ( Control layer ), và lớp hạ tầng ( lớp chuyển tiếp ) ( Infrastructure layer ) : 15H ình 2.1 : Kiến trúc của SDN [ 1 ] Lớp ứng dụng ( Application layer ) Là những ứng dụng kinh doanh thương mại được tiến hành trên mạng, được liên kết tới lớpđiều khiển trải qua những API, phân phối năng lực được cho phép lớp ứng dụng lập trình lại ( thông số kỹ thuật lại ) mạng ( kiểm soát và điều chỉnh những tham số trễ, băng thông, định tuyến, … ) thông qualớp tinh chỉnh và điều khiển [ 1, 9 ]. Lớp ứng dụng cung ứng những giao diện có năng lực lập trình mở, được cho phép những nhàcung cấp dịch vụ điện toán đám mây phân phối những dịch vụ đám mây cơng cộng tự độngvà có năng lực mở cho những doanh nghiệp. Các tổ chức triển khai, doanh nghiệp hoàn toàn có thể tạo ra một “ đám mây ảo ” tách biệt trải qua hạ tầng cơ sở đám mây công cộng tự Giao hàng, giúp họkiểm sốt hồn tồn cho những dịch vụ và những ứng dụng mới cho người sử dụng [ 1, 9 ]. 2.2.1. Lớp tinh chỉnh và điều khiển ( Control layer ) Là nơi tập trung chuyên sâu những bộ điều khiển và tinh chỉnh triển khai việc tinh chỉnh và điều khiển thông số kỹ thuật mạng theocác nhu yếu từ lớp ứng dụng và năng lực của mạng. Các bộ tinh chỉnh và điều khiển này hoàn toàn có thể là cácphần mềm được lập trình. Ngồi ra để liên kết, tinh chỉnh và điều khiển lớp hạ tầng, lớp điều16khiển sử dụng những giao thức như OpenFlow, ONOS, NETCONF, SNMP hoặc thông quacác chính sách riêng không liên quan gì đến nhau [ 1 ]. 2.2.2. Lớp hạ tầng ( Infrastructure latyer ) Là những thiết bị mạng trong thực tiễn ( vật lý hay ảo hóa ) triển khai việc chuyển tiếp gói tintheo sự tinh chỉnh và điều khiển của lớp điểu khiển. Một thiết bị mạng hoàn toàn có thể hoạt động giải trí theo sự điềukhiển của nhiều bộ điều khiển và tinh chỉnh khác nhau, điều này giúp tăng cường năng lực ảo hóa củamạng [ 1 ]. Như vậy Kiến trúc mạng SDN được định nghĩa với 4 trụ cột ( Hình 2.2 ) Phần tinh chỉnh và điều khiển ( control plane ) và phần chuyển tiếp tài liệu ( data plane ) của mộtthiết bị mạng khơng cịn đi cặp với nhau như thường lệ mà được tách rời. Chức năng điềukhiển được vô hiệu khỏi những thiết bị mạng, lúc này những thiết bị mạng sẽ tập trung chuyên sâu vào chứcnăng luân chuyển gói tin đơn thuần. Các thiết bị mạng đưa ra quyết định hành động chuyển tiếp dựa trên luồng tài liệu, thay vìdựa trên địa chỉ MAC đích hoặc IP đích. Một luồng tài liệu được định nghĩa một tập hợpcác giá trị cần so khớp và tập hợp những hành vi sẽ áp đặt lên những gói tin có những trườngtương ứng trong header khớp những giá trị. Trong kiến trúc SDN sử dụng giao thứcOpenFlow, luồng tài liệu là tập hợp những gói tin được chuyển từ thiết bị nguồn sang thiếtbị đích. Tất cả những gói tin của luồng tài liệu đều được vận dụng những chủ trương dịch vụgiống hệt nhau tại những thiết bị chuyển tiếp. Sự trừu tượng hóa của luồng tài liệu cho phépthống nhất hành vi của những loại thiết bị mạng khác nhau, gồm có : bộ định tuyến, bộchuyển mạch, tường lửa và những thiết bị trung gian. Lập trình những luồng tài liệu cho phépsự linh động chưa từng có so với trước kia là chỉ số lượng giới hạn trong năng lực thực thi củabảng luồng tài liệu ( flow table ). Điều khiển logic được chuyển sang một thực thể bên ngoài, được gọi là bộ điềukhiển SDN hoặc hệ quản lý và điều hành mạng ( Network Operating System – NOS ). NOS là mộtnền tảng ứng dụng chạy trên những sever và cung ứng những tài nguyên cũng như những mứcđộ trừu tượng thiết yếu để cho việc lập trình những thiết bị chuyển tiếp một cách thuận lợi17nhờ vào mơ hình quản trị tập trung chuyên sâu logic và sơ đồ tổng quát của mạng lưới hệ thống mạng ảo. Vìvậy, mục tiêu của nó tựa như một hệ quản lý và điều hành truyền thống lịch sử. Mạng hoàn toàn có thể lập trình thơng qua những ứng dụng ứng dụng chạy trên NOS, tươngtác với những thiết bị chuyển tiếp tài liệu ở phía dưới. Đây là một đặc tính cơ bản của SDN, được xem là phần giá trị nhất. Hình 2.2 : Kiến trúc tổng quan mạng SDN [ 2 ] 2.3. Những điểm khác nhau cơ bản giữa mạng truyển thống và mạng SDNPhần điều khiển và tinh chỉnh mạng và phần luân chuyển tài liệu trên mạng truyền thống lịch sử đềuđược tích hợp trong thiết bị mạng, trong khi đó so với mạng định nghĩa bằng ứng dụng ( SDN ) thì phần tinh chỉnh và điều khiển mạng được tách riêng khỏi thiết bị mạng và được chuyển đếnmột nơi khác được gọi là bộ tinh chỉnh và điều khiển SDN. 18P hần tích lũy và giải quyết và xử lý những thông tin : Đối với mạng truyền thống cuội nguồn, phần này đượcthực hiện ở toàn bộ những thành phần trong mạng. Còn trong mạng định nghĩa bằng ứng dụng ( SDN ) thì phần này được tập trung chuyên sâu giải quyết và xử lý ở bộ điều khiển và tinh chỉnh SDN.Đối với mạng truyền thống lịch sử phần điều khiển và tinh chỉnh và phần luân chuyển tài liệu cùngnằm trên một thiết bị mạng vật lý, vì thế khơng thể được lập trình bởi những ứng dụng, cácthiết bị mạng phải được thông số kỹ thuật một cách riêng lẽ và thủ cơng. Trong khi đó đốivới mạng SDN phần tinh chỉnh và điều khiển được tách rời với phần luân chuyển tài liệu, do vậy mạngcó thể lập trình bởi những ứng dụng, bộ tinh chỉnh và điều khiển SDN hoàn toàn có thể tương tác đến tổng thể những thiếtbị trong mạng. Phần tinh chỉnh và điều khiển mạng được tách rời và được tập trung chuyên sâu ở bộ tinh chỉnh và điều khiển SDN.Điều này có nghĩa là những thiết bị mạng ở lớp thiết bị phần cứng không cần phải hiểu vàxử lý những giao thức phức tạp mà chúng chỉ nhận và luân chuyển tài liệu theo một đườngnào đó dưới sự chỉ huy của bộ điều khiển và tinh chỉnh SDN. Dựa vào bộ tinh chỉnh và điều khiển SDN mà những nhàkhai thác và quản trị mạng hoàn toàn có thể lập trình thông số kỹ thuật trên đó thay vì phải thực thi thủcơng hàng ngàn câu lệnh thông số kỹ thuật trên những thiết bị riêng không liên quan gì đến nhau. Điều này giúp tiến hành cácứng dụng mới và những dịch vụ mạng một cách nhanh gọn và linh động [ 1 ]. 2.4. Những ƣu điểm và những hạn chế của mạng SDN2. 4.1. Ƣu điểmMạng định nghĩa bằng ứng dụng SDN, với sự tách rời vốn có của phần điềukhiển mạng và tính năng luân chuyển tài liệu, cung ứng năng lực trấn áp mạng tốt hơnthơng qua lập trình. Mạng SDN khơng chỉ chuyển tiếp gói ở cấp quy đổi mà cịn liênkết kiểm soát và điều chỉnh ở mức link tài liệu, phá vỡ rào cản của lớp. Ngồi ra, với năng lực cóđược trạng thái mạng tức thời, mạng SDN được cho phép trấn áp tập trung chuyên sâu thời hạn thựccủa mạng dựa trên cả trạng thái mạng tức thời và chủ trương do người dùng xác lập. Điều này liên tục mang đến quyền lợi trong việc tối ưu hóa thông số kỹ thuật mạng và cải tổ hiệusuất mạng. Ưu điểm của SDN được chứng tỏ rõ hơn khi nó cung ứng một nền tảngthuận tiện để thử nghiệm những kỹ thuật mới và những phong cách thiết kế mạng mới, do năng lực lậptrình mạng của nó và năng lực xác lập những mạng ảo bị cô lập trải qua phần điều khiểnmạng. [ 8 ] 19N âng cao thông số kỹ thuật : Trong quản trị mạng, thông số kỹ thuật là một trong những chức năngquan trọng nhất. Cụ thể, khi thiết bị mới được thêm vào mạng hiện có, cần phải có cấuhình tương thích để mạng được đồng nhất và đạt được hiệu suất tối đa. Tuy nhiên, do sựkhông như nhau giữa những nhà phân phối thiết bị mạng, thông số kỹ thuật mạng hiện tại thường phảixử lý thủ cơng, việc thông số kỹ thuật thủ cơng này mất rất nhiều thời hạn và dễ bị lỗi. Đồng thời, cũng cần có góp vốn đầu tư đáng kể để khắc phục sự cố mạng có lỗi thông số kỹ thuật. Nhìn chung, ngườita gật đầu rằng, với phong cách thiết kế mạng hiện tại, thông số kỹ thuật tự động hóa của mạng vẫn là mộtthách thức lớn. Mạng SDN sẽ giúp khắc phục thực trạng này trong quản trị mạng. TrongSDN, việc hợp nhất phần tinh chỉnh và điều khiển mạng ( Control Plane ) trên tổng thể những loại thiết bịmạng, gồm có những bộ chuyển mạch, bộ định tuyến, Bộ dịch địa chỉ mạng ( NAT ), tườnglửa và bộ cân đối tải, được cho phép tự động hóa thông số kỹ thuật những thiết bị mạng từ một nơi duy nhất ( gọi là bộ điều khiển và tinh chỉnh SDN ) và kiểm sốt bằng ứng dụng. Như vậy, tồn bộ mạng có thểđược thông số kỹ thuật theo chương trình và tối ưu hóa động dựa trên trạng thái mạng. Cải thiện hiệu suất : Trong một mạng, một trong những tiềm năng chính là tối đahóa việc sử dụng hạ tầng mạng được góp vốn đầu tư. Tuy nhiên, do cùng sống sót những côngnghệ và những bên tương quan khác nhau trong một mạng duy nhất, việc tối ưu hóa hiệu suấtcủa tồn bộ mạng là khó khăn vất vả. Các cách tiếp cận hiện tại thường tập trung chuyên sâu vào việc tối ưuhóa hiệu suất của một tập hợp những mạng con. Rõ ràng, giải pháp này, dựa trên thôngtin cục bộ mà không xem xét kiểm tra chéo, hoàn toàn có thể dẫn đến hiệu suất dưới mức tối ưu. Sựra đời của mạng SDN mang đến thời cơ cải tổ hiệu suất trên toàn mạng. Cụ thể, SDNcho phép tinh chỉnh và điều khiển tập trung chuyên sâu với chính sách xem mạng một cách tổng quát và điều khiểnphản hồi với thông tin được trao đổi giữa những lớp khác nhau trong kiến trúc mạng. Nhưvậy, những yếu tố về tối ưu hóa hiệu năng đầy thử thách sẽ trở nên dễ quản trị hơn với cácthuật toán tập trung chuyên sâu được phong cách thiết kế đúng. Theo những giải pháp mới cho những yếu tố trước đây, như lập lịch lưu lượng tài liệu, trấn áp ùn tắc từ đầu đến cuối, định tuyến gói, cânbằng tải, hoạt động giải trí hiệu suất cao nguồn năng lượng và Chất lượng dịch vụ ( QoS ), hoàn toàn có thể được pháttriển và thuận tiện tiến hành để xác định tính hiệu suất cao của chúng trong việc cải tổ hiệusuất mạng. 20S ự thay đổi : Ngày nay với sự tăng trưởng liên tục của những ứng dụng mạng, mạngtrong tương lai nên khuyến khích thay đổi thay vì cố gắng nỗ lực dự đốn và cung ứng những yêucầu của những ứng dụng trong tương lai. Thế nhưng, bất kể ý tưởng sáng tạo hoặc phong cách thiết kế mới nàocũng phải đương đầu với những thử thách trong việc tiến hành, thử nghiệm. Rào cản chínhphát sinh từ phần cứng độc quyền được sử dụng thoáng đãng trong những thành phần mạngthơng thường. Bên cạnh đó, ngay cả khi hoàn toàn có thể thử nghiệm thì chúng cũng thường đượctiến hành trong một thử nghiệm đơn giản hóa riêng không liên quan gì đến nhau. Những thử nghiệm này khơng đủkhả năng để thích ứng với những sáng tạo độc đáo mới hoặc phong cách thiết kế mạng sau này. SDN khuyếnkhích thay đổi bằng cách phân phối nền tảng mạng hoàn toàn có thể lập trình để thực thi, thửnghiệm và tiến hành những sáng tạo độc đáo mới, ứng dụng mới và dịch vụ mới một cách thuận tiệnvà linh động. Khả năng thông số kỹ thuật cao của SDN cung ứng sự phân tách rõ ràng giữa cácmạng ảo được cho phép thử nghiệm trên thiên nhiên và môi trường thực. Việc tiến hành những ý tưởng sáng tạo mới cóthể được triển khai thơng qua q trình quy đổi liền mạch từ quy trình tiến độ thử nghiệmsang tiến trình quản lý và vận hành. Với kiến trúc mạng SDN thì những bộ điều khiển và tinh chỉnh hoàn toàn có thể được lập trình trực tiếp. Mạng hoàn toàn có thể được kiểm soát và điều chỉnh, biến hóa thông số kỹ thuật một cách thuận tiện, linh động trải qua bộđiều khiển mà khơng cần phải thông số kỹ thuật đổi khác trực tiếp trên những thiết bị mạng. Do phầnđiều khiển mạng được tập trung chuyên sâu trên bộ điều khiển và tinh chỉnh nên mạng được quản trị một cách tậptrung. Việc thông số kỹ thuật lớp hạ tầng hoàn toàn có thể được lập trình trên lớp ứng dụng và truyềnđạt xuống những lớp bên dưới. Do những thiết bị mạng hoàn toàn có thể được ảo hóa nên SDN giúp giảmthiểu những ngân sách shopping phần cứng trong việc kiến thiết xây dựng, xây đắp những dịch vụ mạng. Kiến trúc mạng SDN giúp người dùng thuận tiện phong cách thiết kế, tiến hành, quản trị và mở rộngmạng trải qua những thành phần mạng đã được ngày càng tăng năng lực lập trình. Với sự phát triểnmạng mẽ của mạng SDN trong những năm gần đây đã mở ra thời cơ cho những nhà kinhdoanh phân phối thiết bị mạng khi phần tinh chỉnh và điều khiển được tách rời khỏi phần cứng [ 9 ]. 2.4.2. Hạn chếHiện nay yếu tố bảo mật thông tin cũng là một thử thách không nhỏ so với công nghệmạng SDN. SDN được quản trị tập trung chuyên sâu bởi một bộ tinh chỉnh và điều khiển ( controller ) duy nhất, do21đó nó là một tiềm năng được nhắm tới cho tin tặc ( hacker ). Một khi đã tiến công được vàobộ điều khiển và tinh chỉnh này thì kẻ tấn cơng hoàn toàn có thể chiếm hàng loạt quyền điều khiển và tinh chỉnh của mạng [ 10 ]. Việc quy đổi từ mạng lưới hệ thống mạng truyền thống lịch sử sang mạng lưới hệ thống mạng mới này sẽphải là một quy trình lâu bền hơn, giống như ảo hóa. Một yếu tố nữa là năng lực tương thíchlàm sao để những giải pháp SDN được tích hợp vào mạng hiện tại. Hiện tại, những hạ tầngmạng truyền thống cuội nguồn đang sử dụng khác rất nhiều so với những kiến trúc mạng phi tập trungvới phần tinh chỉnh và điều khiển mạng và tính năng luân chuyển tài liệu cùng nằm trên một thiết bịmạng. Vì vậy, một câu hỏi đặt ra rất lớn cho những nhà nghiên cứu là liệu cơng nghệ mạngSDN hoàn toàn có thể triển khai được khơng khi mà thị trường TT tài liệu ( Data Center ) đangcòn ngưng trệ [ 9 ]. Với những hứa hẹn trong tương lai về thông số kỹ thuật nâng cao, hiệu suất được cải thiệnvà khuyến khích thay đổi, mạng SDN vẫn cịn ở quá trình sơ khai. Nhiều yếu tố cơ bảnvẫn chưa được xử lý triệt để bởi những nguyên do sau đây : [ 8 ] Thứ nhất : Về yếu tố bảo mật thông tin, nếu tin tặc hoàn toàn có thể tấn cơng vào mạng lưới hệ thống thì chúngcó thể truy vấn những thiết lập và đổi khác chúng ở bất kỳ nơi đâu và bất kể thời gian nào. Thứ hai : Quá trình tiến hành mạng SDN là một quy trình vĩnh viễn theo từng bướcmột, tất cả chúng ta không hề thay thế sửa chữa một lúc tồn bộ những thiết bị hiện có thành OpenFlowswitch được do tại điều đó sẽ rất tốn kém. SDN cung ứng một nền tảng cho những kỹ thuật mạng mưu trí, tuy nhiên việcchuyển từ mạng truyền thống cuội nguồn sang SDN hoàn toàn có thể gây gián đoạn. Các mối chăm sóc phổbiến gồm có năng lực tương tác SDN với những thiết bị mạng cũ, thiếu chuyên viên hỗ trợkỹ thuật. Việc tiến hành SDN hiện tại thường được số lượng giới hạn ở những thử nghiệm nhỏthường ship hàng cho mục tiêu điều tra và nghiên cứu nên vẫn chưa được tiến hành trong thực tiễn. 222.5. Phần điều khiển và tinh chỉnh mạng và Chức năng luân chuyển dữ liệuHình 2.3 : Control plane và Data plane [ 11 ] 2.5.1. Phần điều khiển và tinh chỉnh mạng ( Control Plane ) Phần tinh chỉnh và điều khiển mạng ( Control Plane ) hoạt động giải trí như một lớp trung gian giữa cácứng dụng và công dụng luân chuyển tài liệu ( Data Plane ). Phần tinh chỉnh và điều khiển mạng trongSDN được gọi là bộ điều khiển và tinh chỉnh, nó là bộ não trong kiến trúc mạng SDN ; Bộ điều khiểngiao tiếp với những ứng dụng và với những thiết bị chuyển tiếp thơng qua những API. Do đó, trong bộ tinh chỉnh và điều khiển, điều quan trọng là phong cách thiết kế giao diện và bộ tinh chỉnh và điều khiển một cách thânthiện và hiệu suất cao [ 12 ]. Control Plane là thành phần tinh chỉnh và điều khiển mạng với những giải thuật và giao thức dùngđể tính tốn và tàng trữ những thông tin định tuyến lên bảng FIB ( Forwarding InformationBase ) nhằm mục đích xác lập đường đi cho mỗi gói tin trong việc luân chuyển tài liệu. Đối với bộ23

Source: https://vh2.com.vn
Category : Tin Học