1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên ứu các giải pháp chống tấn công dns trong hệ thống mạng điều khiển bằng phần mềm

84 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Các Giải Pháp Chống Tấn Công DNS Trong Hệ Thống Mạng Điều Khiển Bằng Phần Mềm
Tác giả Vũ Thành Tựu
Người hướng dẫn PGS.TS. Trương Thu Hương
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Kỹ Thuật Viễn Thông
Thể loại luận văn thạc sĩ
Năm xuất bản 2018
Thành phố Hà Nội
Định dạng
Số trang 84
Dung lượng 7,44 MB

Nội dung

Trang 1 VŨ THÀNH TỰUNGHIÊN CỨU CÁC GIẢI PHÁP CHỐNG TẤN CÔNG DNS TRONG HỆ THỐNG MẠNG ĐIỀU KHIỂN BẰNG PHẦN MỀMChuyên ngành: Kỹ thuật viễn thông LUẬN VĂN THẠC SĨ KỸ THUẬTKỸ THUẬT VIỄN THÔNG

Trang 1

VŨ THÀNH TỰU

NGHIÊN CỨU CÁC GIẢI PHÁP CHỐNG TẤN CÔNG DNS TRONG HỆ THỐNG MẠNG ĐIỀU KHIỂN

BẰNG PHẦN MỀM

Chuyên ngành: Kỹ thuật viễn thông

LUẬN VĂN THẠC SĨ KỸ THUẬT

KỸ THUẬT VIỄN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC:

PGS.TS TRƯƠNG THU HƯƠNG

HÀ NỘI – 2018

Trang 2

Defined Networking) ra đời như một gi i pháp cho h th ng mả ệ ố ạng trong tương lai Bên cạnh đó, SDN còn là lựa ch n cho vi c tri n khai các giọ ệ ể ải pháp đảm b o an ảninh mạng, trước s ự phứ ạc t p của ữnh ng cu c t n công không ngộ ấ ừng thay đổ ềi v cách thức cũng như độ nguy hại, ả trởc n nhi u hoề ạt động giao d ch, các d ch v ị ị ụ

m ng Hi n nay, d ch v máy ch DNS là m t ph n quan tr ng c a các nhà cung ạ ệ ị ụ ủ ộ ầ ọ ủ

c p d ch v ấ ị ụ cũng như các doanh nghiệp, b i v y viở ậ ệc đảm b o an toàn cho h ả ệthống DNS là vô cùng c p thi t Tuy nhiên, v i nh ng h n ch v b o m t c a ki n trúc ấ ế ớ ữ ạ ế ề ả ậ ủ ế

m ng truy n thạ ề ống đã để ộ l ra nh ng l h ng cho k t n công, nh ng t ữ ỗ ổ ẻ ấ ữ ổ chứ ội c t

ph m có th ạ ể thực hi n hành vi phá ho i t i nh ng h ệ ạ ớ ữ ệthống DNS, gây h u qu cho ậ ảcác doanh nghiệp, cơ quan, tổchức, các nhà cung c p d ch v T n công khuấ ị ụ ấ ếch đại DNS là m t trong nhi u ki u t n công nguy hiộ ề ể ấ ểm đang là mối đe dọa cho s an toàn ựcho các hệ ố th ng máy ch ủDNS

V i mớ ục đích nghiên cứu và tìm hiểu nguyên lý, cơ chế ủ c a các cu c tộ ấn công vào h ệ thống DNS và vi c áp d ng công ngh m ng SDN trong vi c phòng ệ ụ ệ ạ ệchống, tôi quyết định ch n nghiên cọ ứu đề tài “ Nghiên c u các gi i pháp ch ng t ứ ả ố ấn công DNS trong h ệ thố ng m ạng điề u khi n b ng ph n m m ể ằ ầ ề ” dướ ự hưới s ng d n c a ẫ ủPGS.TS Trương Thu Hương

Tôi xin cảm ơn PGS.TS Trương Thu Hương và các thành viên nhóm Security t i phòng nghiên cạ ứu Future Internet Labotary đã tận tình hướng d n và ẫgiúp đỡ để tôi có th hoàn thành tể ốt đề tài này Do kinh nghi m và ki n th c còn ệ ế ứchưa được sâu s c nên luắ ận văn còn nhiều thi u sót, mong quý th y cô ế ầ đánh giá và

Trang 3

góp ý để tôi có th hoàn thi n tể ệ ốt hơn luận văn này cũng như các đề tài nghiên c u ứsau này !

Xin chân thành cảm ơn

Trang 4

L I CAM K T Ờ Ế

Tôi xin cam đoan nội dung luận văn của tôi là do s tìm hi u và nghiên c u ự ể ứ

c a b n thân Các k t qu nghiên củ ả ế ả ứu cũng như ý tưởng c a các tác gi khácủ ả đều được trích d n c thẫ ụ ể Đề tài luận văn của tôi chưa được b o v t i b t k m t hả ệ ạ ấ ỳ ộ ội

đồng b o v luả ệ ận văn thạc sĩ nào trong nước và nước ngoài

Tác gi

u

Vũ Thành Tự

Trang 5

TÓM TẮT LUẬN VĂN

Trong luận văn này, tôi nghiên cứu v ki n trúc mề ế ạng định nghĩa bằng

ph n mầ ềm – SDN d a trên giao th c OpenFlow Bên cự ứ ạnh đó là mộ ốt s hình thức

t n công vào h ấ ệthống máy ch tên mi n DNS Xây d ng mô ph ng ki n trúc m ng ủ ề ự ỏ ế ạSDN/OpenFlow gi l p trong phòng ch ng t n công khuả ậ ố ấ ếch đại DNS H ệthống th ửnghi m này là n n t ng s d ng trong các phòng nghiên c u, ph c v nghiên cệ ề ả ử ụ ứ ụ ụ ứu khoa h c, t ọ ừ đó có thể phát tri n thêm nhi u gi i pháp phòng ch ng các cu c tể ề ả ố ộ ấn công khác, tối ưu mô hình và dần đưa vào thực tiễn

Nhiệm v chính c a Luận văn bao gồụ ủ m các n i dung: ộ

• T ng quan v ki n trúc SDN và giao th c OpenFlow ổ ề ế ứ

• T ng quan v h ổ ề ệthống máy ch tên mi n DNS ủ ề

bằng cách đặt ngưỡng gi i h n s bớ ạ ố ản tin và kích thước bản tin đến v i h th ng tớ ệ ố ại

m i thỗ ời điểm, th c hi n ch n Port 53, không ti p nhự ệ ặ ế ận lưu lượng tới khi vượt quá ngưỡng, ngăn chặ ấn t n công khuếch đại DNS

Trang 6

MỤ C LỤC

L I M Ờ Ở ĐẦU 1

L I CAM K TỜ Ế 3

TÓM T T LUẮ ẬN VĂN 4

M C L CỤ Ụ 5

DANH M C HÌNH VỤ Ẽ 7

DANH MC CÁC T Ừ VIẾT T T 9

CHƯƠNG 1 TỔ NG QUAN VỀ SDN VÀ OPENFLOW 10

1.1 T ng quan v công ngh SDN 10 ổ ề ệ 1.1.1 Định nghĩa 10

1.1.2 Ki n trúc c a SDN 11 ế ủ 1.1.3 So sánh ki n trúc m ng truy n th ng và ki n trúc SDN 12 ế ạ ề ố ế 1.1.4 L i ích c a SDN cung c p 14 ợ ủ ấ 1.1.5 ng d ng c a SDN 15 Ứ ụ ủ 1.2 Giao th c OpenFlow 16 ứ 1.2.1 Định nghĩa 16

1.2.2 Kiế n trúc c a OpenFlow Switch 17 ủ 1.2.3 Ho ạt độ ng c a OpenFlow Switch 19 ủ 1.3 Các bản tin trao đổ i gi a OpenFlow Switch và Controller [6] 24 ữ 1.3.1 B n tin PacketIn 24 ả 1.3.2 B n tin PacketOut 25 ả 1.3.3 B n tin FlowRemoved 27 ả 1.3.4 B n tin FlowMod 29 ả 1.3.5 B n tin StatsRequest 32 ả 1.3.6 B n tin StatsResponse 32 ả 1.4 K t lu n 33 ế ậ CHƯƠNG 2 TỔNG QUAN V DNS, CÁC HÌNH TH C T N CÔNG DNS VÀ CÁCH Ề Ứ Ấ PHÒNG CHỐNG 34

2.1 Gi i thi u v DNS 34 ớ ệ ề 2.1.1 DNS là gì? 34

2.1.2 Tên mi n 35 ề 2.1.3 DNS Server 37

2.2 Cách th c ho ứ ạt độ ng c a h ủ ệ thố ng DNS 39

2.3 Phân lo i Domain Name Server 42 ạ 2.4 Các hình th c t ứ ấn công DNS 43

2.4.1 DNS Cache Poisoning Attack.[13] 43

Trang 7

2.4.2 DNS Spoofing Attack 45

2.4.3 DNS Amplification Attack.[8] 48

2.5 Phòng ch ng t n công DNS 51 ố ấ 2.5.1 Phòng ch ng t ố ấ n công DNS Cache Poisoning 51

2.5.2 Phòng ch ng t ố ấ n công DNS Spoofing 51

2.5.3 Phòng ch ng t ố ấn công DNS Ampification[8] 52

2.6 K t lu n 52 ế ậ CHƯƠNG 3 MÔ PHỎNG KI N TRÚC M NG SDN/OPENFLOW S D NG TRONG Ế Ạ Ử Ụ PHÒNG CH NG TỐ Ấ N CÔNG KHUẾCH ĐẠI DNS 53

3.1 Gi l p ki n trúc m ng SDN/OpenFlow 53 ả ậ ế ạ 3.2 Cách th c ho ứ ạt độ ng c a h ủ ệ thố ng 57

3.2.1 Cách th c ho ứ ạt độ ng c a Controller 57 ủ 3.2.2 Cách ho ạt độ ng c a chuy ủ ể n m ch OpenFlow Switch.[4] 58 ạ 3.2.3 Cách th c ho ứ ạt động c a b ủ ộ kiểm soát lưu lượng sFlow- Network Monitoring 58

3.3 Xây d ng và v n hành h ự ậ ệ thố ng th nghi ử ệm 59

3.3.1 Xây d ng h ự ệ thống 59

3.3.2 Công c h ụ ỗ trợ 61

3.3.3 K ch b n phát t n công và gi i pháp gi m thi u t n công khu ị ả ấ ả ả ể ấ ếch đạ i DNS 71

3.4 K t qu xây d ng h ế ả ự ệ thố ng 73

3.4.1 T ng quan h ổ ệ thống 73

3.4.2 Tri n khai h ể ệ thống 75

3.5 K t qu mô ph ng t n công và gi m thi u t n công 77 ế ả ỏ ấ ả ể ấ 3.5.1 Phát lưu lượng bình thườ ng không có gi i pháp gi m thi u 77 ả ả ể 3.5.2 H ệ thố ng khi s d ng gi i pháp 78 ử ụ ả 3.6 K t Lu n 79 ế ậ CHƯƠNG 4 KẾT LU N 80

B NG Ả ĐỐI CHI U THU T NGẾ Ậ Ữ ANH - VI T 82

Trang 8

DANH MỤC HÌNH V

Hình 1.1 Sự phân tách trong ki n trúc m ng SDN 10 ế ạ Hình 1.2 Kiế n trúc m ng SDN 11 ạ Hình 1.3 So sánh mạ ng SDN v i mạ ớ ng truy n th ng 12 ề ố Hình 1.4 Kiến trúc OpenFlow Switch 17 Hình 1.5 Ví dụ ề v Flow table trong OpenFlow Switch 19 Hình 1.6 Ví dụ ề v ho ạt độ ng c a OpenFlow Switch 20 ủ Hình 1.7 Quá trình xử lý Pipeline trong Flow Table 21 Hình 1.8 Bản tin PacketIn 24 Hình 1.9 Cấ u trúc b n tin PacketIn 24 ả Hình 1.10 Bản tin PacketOut 25 Hình 1.11 Cấ u trúc b n tin PacketOut 26 ả Hình 1.12: Hoạ ộ t đ ng c a b n tin FlowRemoved 27 ủ ả Hình 1.13: Cấ u trúc b n tin FlowRemoved 28 ả Hình 1.14: Hoạ ộ t đ ng c a FlowMod 29 ủ Hình 1.15: Cấ u trúc b n tin FlowMod 30 ả Hình 1.16: Hoạ ộ t đ ng c a b n tin StatsRequest 32 ủ ả Hình 1.17: Cấ u trúc b n tin StatsRequest 32 ả Hình 1.18: Hoạ ộ t đ ng c a b n tin StatsResponse 33 ủ ả Hình 1.19: Phầ n body c a b n tin StatsResponse 33 ủ ả Hình 2.1 Ví d ụ ề v DNS 35 Hình 2.2 Cây phân cấ p tên mi n 36 ề Hình 2.3 Mô tả ề v DNS Server 38 Hình 2.4 Cách thức hoạ ộ t đ ng c a h th ng DNS 39 ủ ệ ố Hình 3.1 Kiế n trúc m ng SDN/OpenFlow gi l p 54 ạ ả ậ Hình 3.2 Board mạch NetFPGA 55 Hình 3.3 Kiế n trúc t ng th h th ng gi l p 57 ổ ể ệ ố ả ậ Hình 3.4: Cấ u trúc b n tin FlowMod 57 ả Hình 3.5 Cấ u trúc Agent- Collector c a sFlow 59 ủ Hình 3.6 Các tùy chọ ử ụng để n s d phát t n công 62 ấ Hình 3.7 Giao diệ n ph n m m Wireshark 64 ầ ề

Trang 9

Hình 3.8 Cử ổ ử ụng TCPReplay để a s s d phát l i gói tin 65 ạ Hình 3.9 Cử ổ ử ụng TCPReplay để a s s d phát l i gói tin 66 ạ Hình 3.10 Màn hình khở ộ i đ ng MobaXterm 67 Hình 3.11 Màn hình trợ giúp c a công c editcap 68 ủ ụ Hình 3.12: Giao diện Speedometer 69 Hình 3.13 Giao diệ n tr giúp c a Speedometer 70 ợ ủ Hình 3.14 Giao diệ n ho t đ ng c a Tcpdump 71 ạ ộ ủ Hình 3.15 Mô hình logic trên lý thuy t 73 ế Hình 3.16 Hệ ố th ng gi l p t n công trong m ng SDN- Security Rack 77 ả ậ ấ ạ Hình 3.17 Giao diệ n ph n m m Moba Xterm 78 ầ ề Hình 3.18 Kết quả sau n p code 79 ạ Hình 3.19 Các gói tin thu được trên Wireshark 80 Hình 3.20 Lưu lượ ng t ấn công khi chưa chạ y gi i pháp gi m thi u 82 ả ả ể Hình 3.21 Lưu lượ ng t n công khi ch y qua gi i pháp gi m thiểu 83 ấ ạ ả ả

Trang 10

DANH M C CÁC T Ụ ỪVIT T T

DNSSEC The Domain Name System Security Extensions Hệ Thống tên miền bảo mật mở rộng

FPGA Field Progammable Gate Array Cấu trúc mảng phần tử logic lập trình được

Trang 11

CHƯƠNG 1 TỔNG QUAN V SDN VÀ OPENFLOW

ra m ng có th ạ ể được lập trình và qu n lý m t cách t p trung ả ộ ậ

H ình 1.1 S phân tách trong ki n trúc m ng SDN ự ế ạ

Cơ chế điều khi n (Control Plane): Là thành phần điều khi n v i các giể ớ ải thuật và giao thức dùng để tính toá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 Data Plane Đố ới Switch thì Control Plane đơn giản là cơ chế ự ọi v t h c MAC thông qua việc Broadcast gói tin còn đố ới v i Router thì Control Plan là các giao thức định tuyến như OSPF, EIGRP, BGP, …

Trang 12

SDN là m t ki n trúc m ng linh ho t, d qu n lý, hi u su t cao, kh ộ ế ạ ạ ễ ả ệ ấ ả năng chị ỗi u l

và thích nghi tốt, … Điều đó làm cho công nghệ này th t s ậ ự lý tưởng cho các ng ứ

dụng đòi hỏi băng thông cao và cần s linh ho t hi n nay Mự ạ ệ ục đích cơ ả b n của truy n thông m ng là truy n t i thông tin t ề ạ ề ả ừ điểm này tới các điểm khác nhưng với SDN thì d u trong m ng s ữliệ ạ ẽ được truy n t i gi a các №de v i s h t ề ả ữ ớ ự ỗ trợ ừ các

ứng d ng và d ch v nên vi c truy n thông tr nên hi u qu và tụ ị ụ ệ ề ở ệ ả ối ưu hơn rất nhi u ề

giám sát s d ng trong

m t l p ph n mộ ớ ầ ềm đứng ch n gi a các ph n t mặ ữ ầ ử ạng và người qu n tr m ng (là ả ị ạngườ ấu hình và cài đặi c t chúng) L p ph n m m này cung cớ ầ ề ấp cho người qu n tr ả ị

m ng kh ạ ả năng điều khi n các thi t b m ng c a h thông qua m t giao di n phể ế ị ạ ủ ọ ộ ệ ần

m m thay vì phề ải tự ấ c u hình ph n cầ ứng và các tác động vật lý của thiết bị ạ m ng 1.1.2 Kiến trúc c a SDN ủ

ứ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 ể

Trang 13

Lớp điều khi nể : 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

Lớp cơ sở ạ ầ h t ng: 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.1.3 So sánh ki n trúc m ng truy n th ng và ki n trúc SDN ế ạ ề ố ế

Hình 1.3 So sánh m ng SDN v ạ ới mạ ng truy n th ng ề ố

Mô hình so sánh gi a ki n trúc m ng truy n th ng và ki n trúc SDN trên ữ ế ạ ề ố ế(hình 1.3) cho th y trong ki n trúc m ng truy n th ng Control Plane và Data Plane ấ ế ạ ề ốđều được ghép chung vào trong Network Node Trong đó Control Plane có nhiệm

v c u hình các №de m ng và lụ ấ ạ ập trình đường đi (định tuyến) để ậ v n chuy n Data ểFlow Data Flow (lu ng d u) s ồ ữ liệ ẽ được đẩy xu ng Data Plane thông qua các API ố

và chuy n ti p t i các thi t b ph n c ng dể ế ớ ế ị ầ ứ ựa trên các thông tin điều khi n trên ểControl Plane

Trong ki n trúc m ng truy n thế ạ ề ống khi chính sách Forwarding đã được thông qua thì cách duy nhất để điều ch nh l i các chính sách này theo ý mu n là phỉ ạ ố ải đi

Trang 14

c u hình l i trên t t c ấ ạ ấ ảthiế ị ật lý (Switch, Router, Firewall, …) Điềt b v u này không chỉ ấ m t th i gian mà còn khá là phi n toái b i trong ki n trúc h th ng m ng truy n ờ ề ở ế ệ ố ạ ề

thống đặc biệt đố ớ ệi v i h ốth ng m ng quy mô trong doanh nghi p thì viạ ệ ệc xác định

v trí thi t b và ti n hành cị ế ị ế ấu hình điều ch nh r t là ph c t p và có nhi u r i ro sai ỉ ấ ứ ạ ề ủsót có thể ảnh hưởng t i nhiớ ều ho t đ ng quan tr ng khác trong h ốạ ộ ọ ệth ng m ng ạ

Trong ki n trúc mế ạng SDN thì Control Plane được tách riêng ra kh i №de ỏ

m ng và là m t thành phạ ộ ần độ ậc l p trong SDN Stack Các b chuy n m ch SDN ộ ể ạđều được ki m soát bể ởi Network Operating System (NOS) để thu th p thông tin ậthông qua các API và chuy n ti p thông tin ể ế ấy vào Control Plane, đồng th i cung ờ

c p m t mô hình m ng trấ ộ ạ ừu tượng t i SDN Controller vớ ốn được cài đặt trong các

ứng d ng Nh th mà Controller có th ụ ờ ế ể khai thác đầy đủ thông tin mạng để ối ưu ttrình điều khi n lu ng (Flow Management) và h tr ể ồ ỗ ợ đáp ứng các yêu c u cầ ủa người dùng v ề khả năng ở ộm r ng và tính linh ho t Vi c qu n lý, cạ ệ ả ấu hình và điều ph i ốcác hoạt động trong h ệ thống m ng s thông qua m t giao di n ph n m m qu n lý ạ ẽ ộ ệ ầ ề ả

t p trung v i mô hình h ậ ớ ệthống m ng tạ ổng quan nên người qu n tr s làm vi c hiả ị ẽ ệ ệu

qu ả hơn và tránh được các s c l i phát sinh ự ố ỗ

Kiến trúc mạng SND cho phép điều khi n hoể ạt động c a m ng d a trên vi c ủ ạ ự ệđiều khi n hoể ạt động c a các Switch, s d ng các ngôn ng l p trình và có th ủ ử ụ ữ ậ ểthường xuyên thay đổ ằi b ng cách nạp các đoạn mã ngu n khác vào thay th SDN ồ ế

có l i th to l n mà các ki n trúc m ng hi n tợ ế ớ ế ạ ệ ại không có được Đó chính là tính

m m d o, kh ề ẻ ả năng mở ộ r ng và tính linh ho t c a m ng Các ki n trúc m ng hiạ ủ ạ ế ạ ện nay không cho phép can thi p vào hoệ ạt động c a các thi t b m ng, hoủ ế ị ạ ạt động của các thi t b này b ph ế ị ị ụ thuộc hoàn toàn vào nhà s n xuả ất quy định Chính vì th , r t ế ấkhó cho vi c thay th m t giao thệ ế ộ ức cũ bằng các giao th c m i và th nghiứ ớ ử ệm chúng trên các thi t b ế ị thật SDN thì ngượ ại, nó cho phép ngườ ậc l i l p trình có th ểcan thi p vào hoệ ạt động c a thi t b và qua ủ ế ị đó điều khi n thi t b ể ế ịhoạt động theo ý muốn Vi c này d dàng cho vi c nghiên cệ ễ ệ ứu cũng như triển khai các công ngh ệ

mới vào trong mạng mà không cần thay đổi về ph n c ng ầ ứ

Trang 15

1.1.4 L i ích c a SDN cung c p ợ ủ ấ

SDN là m t s n ph m mã ngu n m B i vì SDN tuân th các chu n m , v ộ ả ẩ ồ ở ở ủ ẩ ở ề

m t lý thuy t có th ặ ế ể hoạt động v i b t k ph n c ng m ng nào c a nhà cung c p ớ ấ ỳ ầ ứ ạ ủ ấ

T ừ quan điểm CNTT, điều này cho phép các t ổ chức có kh ả năng tránh việc nhà cung c p c ng nh c trong m t lo t s n ph m mấ ứ ắ ộ ạ ả ẩ ạng Điều này cho phép CNTT tr ởlên nhanh nh n r t lẹ ấ ớn bởi vì m t gi i pháp chu n m ộ ả ẩ ở như SDN đơn giản hóa nhiệm

v k t nụ ế ối đến các đám mây, các ứng d ng, và các thi t b khác nhau Và nó cho ụ ế ịphép người qu n tr m ng s d ng ph n m m cho nhi u công vi c h thư ng làm ả ị ạ ử ụ ầ ề ề ệ ọ ờ

b ng tay ằ

C ụthể ới các tính năng của mình, SDN đem lại các lợ, v i ích sau:

- 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- -yougrow (tr nh ng gì bas ả ữ ạn dùng) đểloại bỏ 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ở ạ ầng để nhanh chóng đạt đượ h 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

- Tuy nhiên, đi cùng những l i ích do SDN mang l i thì bợ ạ ản thân SDN cũng mang trong mình nhi u thi u sót m t vài khía c nh, SDN gi ng về ế Ở ộ ạ ố ới đám mây khi người ta nói v nó Song các doanh nghiề ệp đang gặp khó khăn trong việc x lý trên ửSDN và làm th ể nào để ế ti t ki m chi phí m ng trong khi c i thi n mệ ạ ả ệ ạng lưới hoạt

động t ng th Các nhà cung cổ ể ấp đã không trình bày thuyết phục các trường h p s ợ ử

Trang 16

d ng Càng v lâu thì nhụ ề ững người hoạch định CNTT tr lên b i r i, h s né tránh ở ố ố ọ ẽ

vi c xây d ng SDN ệ ự

SDN h a h n kh ứ ẹ ả năng ảo hóa h tạ ầng CNTT Cho đến nay, ph n l n nh t cầ ớ ấ ủa

cơ sở ạ ầ h t ng vẫn còn chưa đượ ảc o hóa là m ng T mạ ừ ột quan điểm nhanh g n, các ọdoanh nghi p s ệ ẽmuốn liên hi p l i và di chuy n vào và ra khệ ạ ể ỏi đám mây riêng nội

b (private cloud) và công c ng (publiộ ộ c cloud) Đây là nơi mà một công ngh linh ệ

hoạt như SDN đặ ất d u ch m h t Ch c ch n, t t c các hoấ ế ắ ắ ấ ả ạt động này n i v i m ng ố ớ ạ

và các s c có th ự ố ể được th c hiự ện “bằng tay” như bây giờ Nhưng trong tương lai, khung th i gian h n h p c a d án s ờ ạ ẹ ủ ự ẽ thúc đẩy CNTT tìm cách hi u qu ệ ả hơn để ấ c u hình và qu n lý m ng ả ạ

SND có ph i là m t công ngh hoàn thi n? Các nhà cung c p công ngh l n, ả ộ ệ ệ ấ ệ ớtrong khi th a nh n r ng SDN là mừ ậ ằ ột định hướng tương lai, song vẫn chưa thống

nh t v m t t p các chuấ ề ộ ậ ẩn tương tác chung cho tấ ảt c các s n ph m m ng, cho dù ả ẩ ạSDN là di s n mả ở Cho đến nh ng tranh ch p tiêu chuữ ấ ẩn được gi i quy t, doanh ả ếnghi p không th ệ ể đủkhả năng sống mà không có công ngh ệ như SDN (theo ý kiến

c a Google) s ủ ẽ đi về phía trước v i s phát tri n rớ ự ể ộng rãi Điều này không có nghĩa

là SDN không nên đượ ởc trên l trình CNTT c a b n Mộ ủ ạ ạng lưới được tương tác thông qua phần mềm sẽ đế n v i các doanh nghi p trong d ng này hay d ng khác ớ ệ ạ ạ1.1.5 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 ạ các doanh nghi p (Enterprises) ho c trong c cá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 ờng ế ầ ủ ấ ạ ỗ ịtrư

- Áp d ng trong m ng doanh nghi p ụ ạ ệ : Mô hình tập trung, điều khi n và d ể ựphòng t ng cự độ ủa SDN h ỗ trợ ệ vi c h i t d ộ ụ ữ liệu, voice, video, cũng như là việc truy c p t i b t k ậ ạ ấ ỳthời điểm nào, b t k ấ ỳ đâu Điều này được th c hi n thông qua ự ệ

vi c cho phép nhân viên IT th c thi chính sách nh t quán trên c ệ ự ấ ả cơ sở ạ ầ h t ng không dây và có dây Hơn nữa, SDN h tr vi c qu n lý và giám sát t ng tài ỗ ợ ệ ả ự độ

Trang 17

nguyên mạng, xác định b ng các h ằ ồ sơ cá nhân và các yêu cầu của ứng dụng, để

đảm b o tả ối ưu trải nghi m ngư i dùng v i kh ệ ờ ớ ả năng của m ng ạ

- Áp d ng trong Data Center (DC) ụ : Việc ảo hóa các th c th m ng c a kiự ể ạ ủ ến trúc SDN cho phép vi c m rệ ở ộng trong DC, di cư tự độ ng các máy o, tích h p chả ợ ặt chẽ hơn với kho lưu trữ ử ụ, s d ng server tốt hơn, sử ụng năng lượ d ng thấp hơn, và

tối ưu băng thông

- Áp d ụng đố ớ ị i v i d ch v ụ Cloud: Khi đượ ử ụng để ỗ trợ ột môi trườc s d h m 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à hand off linh hoạt hơn với 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

• M t giao th c chu n, b o mộ ứ ẩ ả ật để giao ti p gi a SDN controller và các ế ữthi t bế ị ạ m ng

OpenFlow là giao thức chu n m cho phép các nhà nghiên c u có th th ẩ ở ứ ể ửnghi m, ki m ch ng các giao th c m ng mệ ể ứ ứ ạ ới trong môi trường th c t v i quy mô ự ế ớlưu lượng th t, giúp cho vi c h c t p, nghiên cậ ệ ọ ậ ứu được d dàng và có th ki m ễ ể ểnghiệm được mà không c n các thi t b ầ ế ị thật ph c t p OpenFlow là giao th c giúp ứ ạ ứ

b ộ điều khi n có th giao ti p, cể ể ế ấu hình, điều khi n các b chuy n mể ộ ể ạch ở phía

Trang 18

dưới, cung c p m t giao diấ ộ ện đồng nh t cho các thi t b c a nhi u hãng khác nhau ấ ế ị ủ ề

có thể hoạt động được trên cùng m t bộ điềộ u khi n ể

1.2.2 Kiến trúc c a OpenFlow Switch ủ

M t thi t b chuy n mộ ế ị ể ạch OpenFlow bao g m ít nh t 3 thành ph n: ồ ấ ầ B ng luả ồng(Flow table), Kênh an toàn Secure Chanel ( ) và Giao th c Openflow (OpenFlow Protocol)

- 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 Nó có trách nhi m "nói chuy n" vệ ệ ới switch để ch ra r ng ph i x lý flow ra ỉ ằ ả ửsao, mỗi hành động tương ứng v i 1 flow-entry ớ

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

v i controller s d ng giao th c OpenFlow ch y qua Secure Sockets Layer (SSL), ớ ử ụ ứ ạ

để ử g i các commands và các packets

- OpenFlow Protocol: giao th c cung cứ ấp phương thức tiêu chu n m cho ẩ ở

một controller truyền thông v i thiớ ết bị

Hình 1.4 Kiế n trúc OpenFlow Switch

Trang 19

Có ba lo i t p h p các flow tables: ạ ậ ợ

• M t flow table s ghép các gói tin t i v i m t flow nhộ ẽ ớ ớ ộ ất định và ch ỉ

định các chức năng được th c hiự ện trên các gói tin đó Có th có nhi u flow tables ể ề

v n hành trong m t pipeline ậ ộ

• Một flow table có để chuy n m t lu ng vào m t Group Table, tể ộ ồ ộ ại đó

có thể kích ho t cùng m t lúc nhiạ ộ ều hành động ảnh hưởng t i mớ ột hoặc nhiều flow

• M t Meter Table có th kích ho t nhiộ ể ạ ều hành động liên quan t i hiớ ệu năng trên một flow

• M i flow-entry trong flow table có mỗ ột hành động tương ứng v i nó ớ

và gồm 3 trường:

o Packet header định nghĩa nên flow

o Hành động (Action) định nghĩa cách mà gói tin sẽ đượ ửc x lý

o Thống kê (Statistics) gi thông tin theo dõi v s lư ng gói tin và kích ữ ề ố ợthước theo bytes c a m i flow, th i gian k t lúc gói tin cuủ ỗ ờ ể ừ ối đưa vào flow (nh m mằ ục đích loại bỏ các flow đã ngừng hoạ ột đ ng)

M i flow-entry có mỗ ột hành động tương ứng v i nó, và có ba loớ ại hành động

định xem liệu flow có được đưa vào trong flow table hay không

• H y các gói tin củ ủa flow Hành động này được s d ng nh m mử ụ ằ ục đích bảo mật, như tấn công t ch i d ch v (DoS) ừ ố ị ụ

Trang 20

Hình 1.5 Ví d v Flow table trong OpenFlow Switch ụ ề

Các switch h ỗ trợ OpenFlow có 2 loại: OpenFLow-only và hybrid Switch OpenFlow-only ch hoỉ ạt động theo OpenFlow, nh ng switch loở ữ ại này, t t c ấ ả gói tin được x lý b i OpenFlow pipeline, và không th x lý theo các ử ở ể ửkhác

OpenFlow-OpenFlow-hybrid h ỗ trợ các hoạt động theo OpenFLow và chuy n mể ạch Ethernet thông thường, chuy n m ch l p 2 truy n th ng, cô lể ạ ớ ề ố ập VLAN, định tuy n ếLayer 3 ACL và x lý QoS Nh ng switch này cung c p mử ữ ấ ột cơ chế phân lo i bên ạngoài OpenFlow mà định tuyến lưu lượng ho c t i OpenFlow pipeline ho c chuy n ặ ớ ặ ể

mạch thông thường Ví d , m t switch có th s d ng VLAN tag ho c c ng ra cụ ộ ể ử ụ ặ ổ ủa gói tin để quyết định cách th c x lý s d ng pipeline ho c cách khác, ho c nó có ứ ử ử ụ ặ ặthể chuy n ti p t t c gói tin t i OpenFlow pipeline M t switch OpenFlow-hybrid ể ế ấ ả ớ ộ

có th ể cho phép gói tin đi từ OpenFlow pipeline t i chuy n mớ ể ạch thông thường thông qua các cổng reserved port như NORMAL hoặc FLOOD

1.2.3 Hoạt động c a OpenFlow Switch ủ

Giao th c OpenFlow mô t b n tin trao i gi a OpenFlow Controller và ứ ả ả đổ ữ

m t OpenFlow switch Giao thộ ức này được tri n khai trên Secure Socket Layer ể

Trang 21

(SSL) ho c Transport Layer Security (TLS), cung c p kênh OpenFlow b o mặ ấ ả ật Giao th c OpenFlow cho phép controller th c hi n các thao tác b sung, c p nhứ ự ệ ổ ậ ật

và xóa các hành động vào các flow entry trong các flow tables

Hình 1.6 Ví d v ho ụ ề ạt độ ng c a OpenFlow Switch ủ

i trong m ng SDN

- Quá trình xử lý pipeline trong Flow Table

Quá trình x ử lý pipeline trong switch được h t phiên b n openflow 1.1 ỗtrợ ừ ả[7] trở lên với đa bảng trong switch Quá trình pipeline c a m i Openflow switch ủ ỗbao g m nhi u flow tables, m i flow table bao g m nhi u flow entries ồ ề ỗ ồ ề

Trang 22

Hình 1 Quá trình x 7 ử lý Pipeline trong Flow Table

Quá trình x lý trong pipeline luôn bử ắt đầu v i x lý ingress b ng flow ớ ử ở ảtable đầu tiên, gói tin đầu tiên ph i match v i entry flow trong b ng flow table Các ả ớ ảingress flow table khác có thể được s d ng ph ử ụ ụ thuộc vào đầu ra khi match của

bảng đầu tiên Nếu đầu ra c a quá trình x lý ingress là chuy n ti p t i output port, ủ ử ể ế ớswitch OpenFlow có th th c hi n ti n trình x ể ự ệ ế ử lý egress theo output port đó Xửlý egress là tùy ch n, switch có th không h ọ ể ỗ trợ ấ b t kì b ng egress nào ho c có th ả ặ ểkhông c u hình s d ng chúng N u không có egress table nào, gói tin phấ ử ụ ế ải được x ử

lý b i output port, và h y h t là chuy n ti p gói tin ra bên ngoài switch N u có mở ầ ế ể ế ế ột egress table được c u hình là bấ ảng egress table đầu tiên, thì gói tin ph i match v i ả ớcác flow entry trong bảng đó, và các bảng egress còn l i có th ạ ể được sr d ng ph ụ ụthuộc vào đầu ra flow table ở

Khi được x lý bử ởi flow table, gói tin được match với các flow entry đểchọn ra flow entry phù h p N u mợ ế ột flow entry được tìm th y, instruction thi t l p ấ ế ậtrong flow entry đó được x lý Nh ng instruction này có th chuyử ữ ể ển hướng gói tin

tới flow table khác, nơi mà quá trình x lý lử ại đượ ặ ạc l p l i M t flow entry có th ộ ểchỉ chuyển hướng m t gói tin t i m t b ng flow table có s lộ ớ ộ ả ố ớn hơn table của chính

Trang 23

nó, hay nói cách khác là x lý trong pipeline ch có chuy n ti p ch không có quay ử ỉ ể ế ứ

lại Dĩ nhiên, các flow entry ủ c a b ng cu i cùng c a pipeline có th không có ả ố ủ ểinstruction Go-Table (t i b ng khác) N u flow entry match mà không chuyớ ả ế ển hướng gói tin t i b ng khác, tr ng thái hi n t i c a pipeline s d ng l i b ng này, ớ ả ạ ệ ạ ủ ẽ ừ ạ ở ảgói tin được x lý v i action liên k t trong vử ớ ế ới nó và thường được chuy n tiể ếp đi

N u m t gói tin không match v i flow entry trong b ng, b ng s b b qua ế ộ ớ ả ả ẽ ị ỏHành động trên b ng này ph ả ụ thuộc vào c u hình c a b ng Các instruction trong ấ ủ ảflow entry c a b ng này có th linh hoủ ả ể ạt xác định cách x lý các gói tin không ửmatch, tùy ch n họ ữu ích là drop gói tin, đưa tớ ải b ng khác ho c g i t i controller ặ ử ớthông qua kênh control channel thông qua gói tin packet-in

Trong các trường hợp gói tin không được x ử lý đầy đủ ở b i flow entry và x ử

lý pipeline ng ng l i mà không x lý action cho gói tin ho c g i t i m t b ng khác ừ ạ ử ặ ử ớ ộ ảHoặc n u không có action v i gói tin không match v i flow entry thì gói tin s b ế ớ ớ ẽ ịdrop N u TTL v n còn hi u l c, gói tin có th ế ẫ ệ ự ể được gửi tới controller

OpenFLow pipeline trên m i switch OpenFlow ỗ chứa m t ho c nhi u b ng ộ ặ ề ảflow tables, m i flowtable ch a nhi u flow entry Quá trình x lý trong pipeline ỗ ứ ề ửđịnh nghĩa cách mà các gói tin tương tác với các flow table này M t OpenFlow ộswitch yêu c u ph i có ít nh t m t ingress flow table, và có th có thêm nhi u flow ầ ả ấ ộ ể ềtable tùy ý OpenFlow switch v i ch m t flow table là có thớ ỉ ộ ể, trong trường h p này ợ

x ử lý trong pipeline là đơn giản nh ất

Các flow table được đánh số để các gói tin đi qua, bắt đầ ừ u t 0 Quá trình

x lý trong pipeline x y ra 2 tr ng thái: ingress processing và egress processing Tử ả ạ ất

c các table vả ới số nh ỏ hơn bảng flow đầu tiên egress phở ải được s d ng trong các ử ụbagnr ingress, và không b ng nào v i s ả ớ ố cao hơn hoặc b ng vằ ới egress table đầu tiên có thể được sử ụ d ng trong b ng ingress table ả

Một bảng flow table g m các flow entry: ồ

Trang 24

M i flow table g m các cỗ ồ ột sau:

ingress port và các packet header, và có thể các trường pipeline field thêm vào như metadata ch nh trong các bỉ đị ảng trước đó

• Priority: Mức đ ưu tiên củộ a flow entry

• Counters: đượ ậc c p nh t khi các gói tin đư c match ậ ợ

• Instructions: điều ch nh thi t l p action ho c x ỉ ế ậ ặ ửlý pipeline

• Timeouts: s ố lượng th i gian gi i h n ho c th i gian ch ờ ớ ạ ặ ờ ờ trước khi flow b vô hi u b i switch ị ệ ở

• Cookie: D ữliệu không rõ ràng được ch n b i switch Có th ọ ở ể được s ử

d ng bụ ởi controoler để ọ l c các flow entry nh howngr bả ởi các flow tĩnh, yêu cầu

chỉnh sửa hoặc xóa flow Không s d ng khi x ử ụ ửlý các gói tin

• Flags: Các flag thay đổ cách mà các flow entry đượi c qu n lý, ví d : ả ụ

c OFPFF_SEND_FLOW_REM t ng lo i b các b n tin b xóa cho flow entry ờ ự độ ạ ỏ ả ị

đó

M t entry flow trong bộ ảng được xác định bởi trường match fields và priority của nó: 2 trường này k t h p t o nên s duy nh t cho flow entry trong m t b ng Flow ế ợ ạ ự ấ ộ ảkhông kh p (t t c ớ ấ ả các trường đều không khớp) và có độ ưu tiên bằng 0 được g i là ọflow entry table-miss Instruction có th ể chứa các action được th c hi n trên gói tin ự ệ

ở ột vài điể m m c a c a pipeline Action set-field có th ch nh vi t m t s trư ng ủ ủ ể ỉ đị ế ộ ố ờheader

Trang 25

1.3 Các bản tin trao đổ i giữa OpenFlow Switch và Controller [6]

1.3.1 B n tin PacketIn ả

Hình 1.8 B n tin PacketIn ả

PacketIn là bản tin được g i t ử ừ switch lên Controller Có hai lý do đểthực

hiện điều này: M t gói tin match v i mộ ớ ột flow entry và flow entry đó có action gửi lên Controller ho c m t gói tin match v i table_miss và trong table_miss có action ặ ộ ớ

Trang 26

Buffer_id: Là giá tr b ị ộ đệm –lưu trữ gói tin được match mà đượ ử ục s d ng

bởi các datapath để các định v ị trí đệm c a gói tin Mủ ột gói tin được match có th ểđược đệm vào b m ho c không Khi mộ đệ ặ ột gói tin được đệm vào b m thì m t ộ đệ ộ

ph n d u cầ ữliệ ủa gói tin đó sẽ được n m trong ph n data c a b n tin PacketIn Nằ ầ ủ ả ếu gói tin không được đệm vào b m do b m không có s n ho c do yêu c u thì ộ đệ ộ đệ ẵ ặ ầtoàn b gói tin s n m trong ph n data cộ ẽ ằ ầ ủa gói tin PacketIn và khi đó trường buffer_id s ẽcó giá trị là OFP_NO_BUFFER

Total_len: ổng kích thước gói tin PacketIn

Reason: Có th là mể ột trong các giá trị sau:

• OFPR_ACTION=1: Action g i lên Controller ử

• OFPR_INVALID_TTL = 2: Gói tin có TTL không h p l ợ ệ

i gói tin này

Table_id: Table gử

cMatch: Phản ánh tiêu đề ủa gói tin

i dung c a gói tin

gói tin SYN_ACK lên Controller Vì vậy các flowentry trên Switch có trường actions = CONTROLLER: 65535

1.3.2 B n tin PacketOut ả

Hình 1.10 B n tin PacketOut ả

Trang 27

Bản tin PacketOut được g i t ử ừController tới Switch dung để hướng d n gói ẫtin đi như thế nào trong m ng Bạ ản tin này không dùng để thi t l p entry trên ế ậSwitch mà ch g i gói tin ra ngoài Switch Cỉ ử ấu trúc trường c a bủ ản tin được th ể

hiện như hình bên dưới:

Hình 1.11 C u trúc b n tin PacketOut ấ ả

Trong đó:

n c a giao th c openflow

Buffer_id: Là giá tr b ị ộ đệm –lưu trữ gói tin được match mà đượ ử ục s d ng

bởi các datapath để các định v ị trí đệm c a gói tin Mủ ột gói tin được match có th ểđược đệm vào b m ho c không Khi m t gói tộ đệ ặ ộ in được đệm vào b m thì m t ộ đệ ộ

ph n d u cầ ữliệ ủa gói tin đó sẽ được n m trong ph n data c a b n tin PacketIn Nằ ầ ủ ả ếu gói tin không được đệm vào b m do b m không có s n ho c do yêu c u thì ộ đệ ộ đệ ẵ ặ ầtoàn b gói tin s n m trong ph n data c a gói tin PacketIn và khi ộ ẽ ằ ầ ủ đó trường buffer_id s ẽcó giá trị là OFP_NO_BUFFER

Trang 28

c liên k t v i gói tin Nó có th là port tiêu

Action []: Là một danh sách các Action định nghĩa các gói tin nên được xử lý như thế nào b i Switch Nó có th là s a đở ể ử ổi gói tin, port đầu ra

ng d u c

c SYN_ACK, c ACK, c RST ra ngoài c ng Switch mà không thiờ ờ ờ ổ ết lập entry trên Switch

1.3.3 B n tin FlowRemoved ả

FlowRemoved là bản tin được g i t i Controller t Switch khi có flow entry ử ớ ừtrong flow table b xóa ị

Hình 1.12 : Hoạt độ ng c a b n tin FlowRemoved ủ ả

C u trúc bấ ản tin FlowRemoved được mô t ả như bên dưới:

Trang 29

Hình 1.13: C u trúc b n tin FlowRemoved ấ ả

Trong đó:

n c a giao th c openflow

Priority: Mức ưu tiên của flow entry b xóa ị

ng reason s có m t trong các giá tr

• OFPRR_DELETE = 2: b xóa b i flow mod ị ở

b xóa kh i table tính theo giây và nano giây ị ỏ

Idle_timeout: th i gian timeout cờ ủa flow entry đó Idle_timeout được định nghĩa là khoảng th i gian l n nh t gi a hai gói tin liên ti p c a m t flow ờ ớ ấ ữ ế ủ ộ

Trang 30

Hard_timeout: th i gian t n t i cờ ồ ạ ủa flow đó Hard_timeout được định nghĩa

là khoảng th i gian t n tờ ồ ại của flow trong flow table

Packet_count: S ố lượng gói tin mà match flow entry đó trước khi b xóa khị ỏi table

Byte_count: S ố lượng byte d ữ liệu mà match flow entry đó trước khi b xóa ị

khỏi table

bi t các flow entry nào trong table 2 b xóa và t ế ị ừ đó có các hành động x lý ti p ử ếtheo

1.3.4 B n tin FlowMod ả

Switch Nó được g i t Controller xu ng Switch cho phép Controller s a đ i tr ng ử ừ ố ử ổ ạthái của Openflow Switch

Hình 1.14: Ho ạ ộ t đ ng c a FlowMod ủ

C u trúc bấ ản tin FlowMod được mô t ả như bên dưới:

Trang 31

Hình 1.15: C u trúc b n tin FlowMod ấ ả

Cmd: Là m t trong các giá tr ộ ị sau:

Trang 32

Hard_timeout: th i gian t n t i cờ ồ ạ ủa flow đó Hard_timeout được định nghĩa

là khoảng th i gian t n tờ ồ ại của flow trong flow table

Priority: Mức ưu tiên của flow trong flow table, s càng cao thì mố ức ưu tiên càng cao Trường này ch s d ng trong b n tin OFPFC_ADD khi match và khi ỉ ử ụ ả

OFPFC_DELETE_STRICT khi match flow entries

Buffer_id: Ch ỉ ra gói tin được đệm ở Switch và g i lên Controller b ng b n ử ằ ảtin Packet_in M t bộ ản tin mà có buffer_id là tương đương với vi c g i hai b n tin ệ ử ảtuầ ựn t là b n tin flow mod và b n tin PacketOut v i yêu cả ả ớ ầu là Flow mod được x ử

lý trước

c ra ph m vi c a OFPFC_DELETE và

OFPFC_DELETE_STRICT

Flags: Là m t trong các giá tr sau: ộ ị

• OFPFF_SEND_FLOW_REM = 1 << 0: G i flow removed khi flow h t h n ử ế ạ

Trang 33

OFPFC_MODIFY dùng để ửa đổi flowentry trên table 1 Trườ s ng Cmd = OFPFC_DELETE dùng để xóa các flow entry trên table 2

1.3.5 B n tin StatsRequest ả

Bản tin StatsRequest được sử ụng để d yêu c u v thông tin cầ ề ủa từng flow,

t ng table trên Switch ừ

Trang 34

Hình 1.18: Ho ạ ộ t đ ng c a b n tin StatsResponse ủ ả

này l y t ng s flowentries nên trong ph n body

Hình 1.19: Ph n body c a b n tin StatsResponse ầ ủ ả

m t ng s flow entries trên Switch

1.4 Kế t luận

ng quan v ki n trúc m ng

SDN, giao th c OpenFlow và các bứ ản tin trao đổi gi a OpenFlow Switch và ữController tạo tiền đề cho các chương sau nghiên cứu sâu hơn về các gi i pháp ảnghiên c u phòng ch ng t n công DNS ứ ố ấ

Trang 35

CHƯƠNG 2 T NG QUAN V Ổ ỀDNS, CÁC HÌNH THC T N CÔNG DNS

và các máy ch ủ khác lưu giữ ả b n sao c a nó Vi c s d ng t p tin HOSTS.TXT có ủ ệ ử ụ ậcác như c điợ ểm như sau:

- Lưu lượng m ng và máy ch duy trì t p tin HOSTS.TXT b quá t i ạ ủ ậ ị ả

- Xung đột tên: Không th có 2 máy tính có cùng tên trong t p tin ể ậHOSTS.TXT, không có gì đảm bảo để ngăn chặn vi c t o 2 tên trùng nhau vì không ệ ạ

có cơ chế ỷ u quy n qu n lý tề ả ập tin nên có nguy cơ bị xung đột tên

- Không đảm b o s toàn v n: vi c duy trì m t t p tin trên m ng l n r t khó ả ự ẹ ệ ộ ậ ạ ớ ấkhăn Khi tập tin HOSTS.TXT v a c p nhừ ậ ật chưa kịp chuyển đến máy ch xa thì ủ ở

đã có sự thay đổ ịi đa ch trên m ng ỉ ạ

Do đó, dịch v ụ DNS ra đời nh m kh c phằ ắ ục các nhược điểm này D ch v ị ụDNS hoạt động theo mô hình Client-Server: ph n Server g i là máy ch ph c v ầ ọ ủ ụ ụtên hay còn gọi là Name Server, còn ph n Client là trình phân gi i tên - Resolver ầ ả

Trong phần này s ẽ đưa ra một số khái niệm cơ bản v DNS ề

2.1.1 DNS là gì?

V y DNS là gì? H ậ ệthống tên mi n DNS (Domain Name System [14] ề ) được

s dử ụng để ánh x tên miạ ền thành địa ch IP Vì v y, khi mu n liên h t i các máy, ỉ ậ ố ệ ớ

Trang 36

chúng ch c n s d ng chu i ký t d nh ỉ ầ ử ụ ỗ ự ễ ớ (domain name) như: http://www.microsoft.com, http://www.ibm.com…, thay vì sử ụng đị d a ch IP là ỉ

m t dãy s dài khó nh ộ ố ớ

DNS ph c v ụ ụ như một “Danh bạ điện thoại” để tìm trên Internet b ng cách ằ

d ch tên máy ch ị ủ máy tính thành địa chỉ IP

Ví dụ, www.example.com d ch thành 208.77.188.166 ị

H ệ thống tên miền này cũng sữ ụ d ng một file tên host.txt, lưu thông tin của

t t c các máy trong mấ ả ạng, nhưng chỉ được đặt trên máy làm máy ch tên mi n ủ ề(DNS) Khi đó, các Client trong mạng mu n truy xuố ất đến các Client khác, thì nó

IP nhất định c a m t trang web Vi c phân gi i t tên miủ ộ ệ ả ừ ền sang địa ch IP chính là ỉ

dịch vụ DNS

Trang 37

V y tên mi n là tên g i có tác dậ ề ọ ụng để thay th ế 1 địa ch IP dài và khó nh ỉ ớnhư: 123.45.67.89 trên internet thành một “Domain Name” hay “Tên Miền” có

d ng là abc.com H ạ ệ thống tên miền được phân c p theo d ng cây, v i g c cây ấ ạ ớ ố(Domain Root) s ẽ được bi u di n ch ể ễ ỉ là dấu “.” Nối tiếp với gốc sẽ là:

• Tên mi n c p m t (Top-ề ấ ộ level Domain): Xác định cho một nước, m t khu v c ộ ựhay một tổ chức Ví dụ: “.com”, “.edu”, ‘.net”, …

• Tên mi n c p hai (Second-level Domain): Rề ấ ất đa dạng, xác định cho m t ộcông ty, m t doanh nghi p, Ví dộ ệ ụ: “google.com”, “facebook.com”, …

• Tên mi n c p nh ề ấ ỏ hơn (Subdomain): Chia nhỏ hơn các tên miền c p hai ấ

Cách phân c p tên miấ ền được biểu di n trong hình 2.2 : ễ

Hình 2.2 Cây phân c p tên mi n ấ ề

Ý nghĩa của m t s ộ ố “đuôi” tên miền ph bi n : ổ ế

.com: Là kí hiệu vi t t t c a t ế ắ ủ ừ “Commercial”, nghĩa là thương mại

Là ph n m r ng tên mi n ph bi n nh t th gi i hi n nay H u h t các ầ ở ộ ề ổ ế ấ ế ớ ệ ầ ếdoanh nghiệp đều mong muốn đăng ký tên miền lo i này b i vì nó khạ ở ẳng định v ịthế cao c a doanh nghi p trên m ng Internet ủ ệ ạ

Trang 38

.net: Vi t t t c a t ế ắ ủ ừ “Network”, nghĩa là mạng lưới Thường đượ ử ụng c s d

b i các nhà cung c p d ch v ở ấ ị ụ Internet, các công ty kinh doanh website, thiế ết k website và các t ổ chức khác có liên h ệ trực tiếp đến h t ng Internet Ngoài ra, các ạ ầcông ty cũng thường ch n tên mi n NET cho các website trên m ng Intranet ọ ề ạ

.org: Vi t t t c a t ế ắ ủ ừ “Organization”, có nghĩa là tổ chức.Thường được s ử

d ng b i các t ụ ở ổchức phi lợi nhuận và các t ổchức liên kết thương mại

.info: Vi t t t c a t ế ắ ủ ừ “Information”, nghĩa là thông tin Thuờng được đặt tên cho các trang web “tài nguyên” có uy tín và là dấu hi u nh n bi t m t trang web tài ệ ậ ế ộnguyên Đây cũng là phần m r ng ph bi n nh t ngay sau các lo i tên mi n COM, ở ộ ổ ế ấ ạ ề.NET, ORG

.vn: Được hi u là vi t t t cể ế ắ ủa “Việt Nam”, là tên miền qu c gia Vi t Nam ố ệTên miền này được khuy n khích s d ng cho các doanh nghiế ử ụ ệp trong nước Nó có

s c m nh b o v ứ ạ ả ệ thương hiệu và khẳng định uy tín trên Internet v i khách hàng ớThường thì các doanh nghi p Vi t Nam luôn mong muệ ệ ốn được s h u tên mi n có ở ữ ềđuôi COM và VN

.name: Nghĩa là tên, là một lo i tên miạ ền đặc bi t ch s d ng cho các cá ệ ỉ ử ụnhân Nó thường được s dử ụng để ọi ngườ ễ m i d nh a ch email ớ đị ỉ hoặc website cá nhân c a mủ ột người nào đó và thường trình bày nh ng hình nh hay các thông tin ữ ả

cá nhân về người này

2.1.3 DNS Server

DNS Server hay còn được g i là Domain Name System là m t h thọ ộ ệ ống đặt tên theo th t cho máy tính, d ch v tham gia vào ứ ự ị ụ Internet Nó thực hi n phân giệ ải tên miền sang địa ch IP Máy ch này ch a các d u v tên miỉ ủ ứ ữ liệ ề ền và địa ch IP ỉtương ứng Nó liên k t nhiế ều thông tin đa dạng v i tên miớ ền được gán cho chúng sao cho người dùng có th s d ng tên miể ử ụ ền đó để tìm hi u các thông tin mà h c n ể ọ ầ

bi t H ế ệ thống máy ch tên miủ ền DNS cũng được phân c p, v i máy ch cao cấ ớ ủ ấp

nh t là Root Server do t ấ ổchức ICANN qu n lý, hi n tả ệ ại có 13 Root Server được đặt trên toàn th gi i Nhi m v c a Root Server s là x lý các yêu c u thông tin v ế ớ ệ ụ ủ ẽ ử ầ ề

Trang 39

Top-level Domain, nó s không ch a b n ghi nào v tên mi n mà ch ẽ ứ ả ề ề ỉ chứa địa ch ỉcác Top-level Domain Server Top-level Domain Server s là các máy ch ẽ ủchứ ảa b n ghi cho các tên mi n thuề ộc Top-level Domain

DNS Server có trách nhi m gán tên mi n và l p b n nh ng tên tệ ề ậ ả đồ ữ ới địa ch ỉ

IP bằng cách định rõ nh ng máy ch có th m quy n cho m i tên mi n Nh ng máy ữ ủ ẩ ề ỗ ề ữchủ có tên th m quyẩ ền được phân công ch u trách nhiị ệm đố ới v i tên mi n riêng c a ề ủ

h và lọ ần lượt có th ểchỉ đị nh tên máy ch ủ khác độc quy n c a h cho các tên miề ủ ọ ền

Trang 40

M i nhà cung c p d ch v v n hành và duy trì DNS server riêng c a mình, ỗ ấ ị ụ ậ ủ

n u m t trình duy t tìm kiế ộ ệ ếm địa ch c a m t website thì DNS server phân gi i tên ỉ ủ ộ ảwebsite này phải là DNS c a chính t ch c quủ ổ ứ ản lý website đó chứ không ph i c a ả ủ

một nhà cung cấp nào khác

DNS server là h ệ thống đảm b o cho quá trình truy cả ập và lưu trữ thông tin trên các website c a nhà cung củ ấp được thu n ti n, d dàng ph c v ậ ệ ễ ụ ụ cho người dùng tìm ki m các thông tin Nh h ế ờ ệthống này mà vi c truy c p Internet tr ệ ậ ở lên đơn giản

và d ễ dàng hơn

2.2 Cách th c hoứ ạ t đ ộ ng của h ệ thống DNS

Hình 3.3 biểu di n cách th c ễ ứ hoạ ột đ ng của hệ ố th ng DNS

[1 QUERY for ] www.google.com

USER

BROWSER

RECURSIVE DNS SERVER ROOT DNS SERVER

[2 QUERY for com ]

[3 IP Address of com ] nameserver

.com Top-Level Domain DNS SERVER

[8 IP Address of ] www.google.com

Bước 1: Máy tính gửi một yêu cầu phân giải đến máy chủ NS đã được cấu

hình, thông thường được đặt tại nhà cung cấp dịch vụ Internet của người dùng

Ngày đăng: 22/01/2024, 16:57

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w