Đó là một thuật ngữ rộng bao gồm một số công cụ, công nghệ và phương pháp được sử dụng để tự động hóa các quy trình mạng.. o Trong mạng truyền thống các thiết bị mạng đóng cả vai trò l
Trang 1BÁO CÁO
GVHD: TS Nguyễn Việt Hà
Võ Tấn Trường 19200542 Nguyễn Thành Trung 19200539 Phan Lưu Chí Thành 19200492 Phạm Thị Minh Thư 19200510 Trương Minh Duy Thịnh 19200506
Trang 2M c l c ụ ụ
5 Giao thức OpenFlow
1 Phần mở đầu
2 Giới thiệu SDN
3 SDN Controller
6 Mô phỏng
4 Tổng quan về YAML, Jinja2, Python và Ansible
Trang 31 Phần mở đầu Chức năng định tuyến
Chức năng chuyển tiếp dữ liệu
Tự động hoá mạng là gì?
o Tự động hóa mạng là quá trình tự động hóa cấu hình, quản lý và vận hành của mạng máy tính Đó là một thuật
ngữ rộng bao gồm một số công cụ, công nghệ và phương pháp được sử dụng để tự động hóa các quy trình
mạng
Tại sao phải tự động hoá mạng?
o Trong mạng truyền thống các thiết bị mạng đóng cả vai trò logic trong định tuyến, điều khiển hoạt động của
mạng lẫn chuyển tiếp stream các gói tin, dữ liệu
o Thêm vào đó sự phát triển của các công nghệ ảo hóa cũng làm cho các công nghệ mạng truyền thống trở lên lỗi
thời.
o Điều đó dẫn đến nhu cầu có một sự thay đổi cách mạng trong công nghệ mạng thông qua tập trung hóa việc quản
trị.
=> Từ đó cho ra đời khái niệm mạng định nghĩa được bằng phần mềm (Software-defined network) hay SDN.
Trang 42 Giới thiệu SDN
o Là một kiến trúc có khả năng trừu tượng hóa các layer khác nhau của mạng, giúp mạng trở nên linh
hoạt hơn
o Một giải pháp giúp đơn giản hóa việc kiểm soát, quản lý mạng và cho phép đổi mới thông qua khả năng
lập trình mạng
Northbound interface: giao diện tương tác giữa
controller và lớp ứng dụng
Southbound interface: giao diện tương tác giữa
controller và các thiết bị Switch ở hạ tầng bên dưới có thể lập trình được
Mô hình hoạt động
Trang 5Khái niệm:
o Là phần trung gian nằm giữa các thiết bị mạng và
các ứng dụng mạng.
o Đóng vai trò giao tiếp, điều khiển kết nối giữa hai
thành phần và hoạt động của mạng.
3 SDN Controller
Chức năng:
o Sử dụng các giao thức đặc biệt để giao tiếp và gửi
thông báo đến các thiết bị chuyển mạch nơi xử lý chuyển tiếp các gói tin.
o Giao tiếp với các ứng dụng, các giải pháp ứng dụng
an toàn mạng hoặc bộ cân bằng tải
Trang 64 Tổng quan về YAML, Jinja2, Python và Ansible
YAML:
o YAML là một ngôn ngữ lập trình phổ biến vì nó dễ đọc và dễ hiểu
o Định dạng dữ liệu trung gian được thiết kế để người dùng và các ngôn ngữ lập trình cùng hiểu được
Trang 74 Tổng quan về YAML, Jinja2, Python và Ansible
Jinja2:
o Jinja2 là một ngôn ngữ tạo template cung cấp cho các lập trình viên Python, được tạo ra dựa trên ý
tưởng của Django template
o Jinja2 được sử dụng để tạo HTML, XML hoặc các định dạng file khác dựa trên nguyên tắc kết hợp các
dữ liệu vào các vị trí đã được đánh dấu trong văn bản
Trang 84 Tổng quan về YAML, Jinja2, Python và Ansible
Python:
o Là một ngôn ngữ lập trình được sử dụng rộng rãi trong các ứng dụng web phát triển phần mềm, khoa
học dữ liệu và máy học (Machine Learning)
Trang 94 Tổng quan về YAML, Jinja2, Python và Ansible
Ansible:
o Ansible là một nền tảng tự động hóa IT đơn giản giúp việc triển khai các ứng dụng vào hệ thống trở nên đơn
giản hơn.
o Một vài trường hợp sử dụng Ansible:
+ Quản lí cấu hình (hạ tầng: Server, Network)
+ Triển khai ứng dụng.
+ Cải thiện quản lí các thay đổi trong mạng.
+ Tự động hóa các tác vụ
Tự động hóa các tác vụ
Trang 10Khái niệm:
Giao thức OpenFlow mô tả quá trình trao đổi thông tin giữa OpenFlow Controller và OpenFlow Switch
+ Controller to Switch: bản tin này được bắt
đầu bởi controller, trong mô số trường hợp thì nó được bắt đầu bởi switch
5 Giao thức OpenFlow
Trang 116 Mô phỏng
Bước 1: Tạo 1 YAML chứa các Interface IDs và
VLAN ID với tên file là datavars.yml
Bước 2 : Tạo file Template mẫu với tên file là
port_mirror.j2
Bước 3:Dùng PyEZ để kết hợp hai file trên lại và load cấu hình
Bước 4 : Kết quả thu được
Sau khi có được kết quả ta sử dụng công cụ Ansible
để đẩy cấu hình đến thiết bị
Trang 12CẢM ƠN THẦY VÀ CÁC BẠN
ĐÃ LẮNG NGHE!
Tài liệu tham khảo:
• CCNA-200-301-vol2-Part5
• https://thinhcaominh.wordpress.com/2019/05/04/sdn-openflow-switch-trong-kien-truc-sdn/
• https://tek4.vn/sdn-controller-la-gi-va-co-y-nghia-nhu-nao-doi-voi-mang-sdn
• https://www.sdxcentral.com/artificial-intelligence/automation/definitions/programmability-network-automation-sdn-networks/
• Bài giảng Network Technology Chapter 1: Software Defined Networking Ph.D.Nguyen Viet Ha
Trang 13MỜI THẦY VÀ CÁC BẠN
ĐẶT CÂU HỎI!