Đặt vấn đề Trong một kiến trúc mạng truyền thống phần dữ liệu (data plane) và phần điều khiển (control plane) đều cùng nằm trên một thiết bị vật lý, cơ chế chuyển tiếp lưu lượng nằm riêng trên mỗi thiết bị và mỗi thiết bị là độc lập với nhau, vì vậy không có khả năng hiển thị toàn bộ mạng (Hình 1. 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, điều khiển. Việc cấu hình các hệ thống mạng máy tính trên chính sách được định nghĩa trước để hiệu chỉnh lỗi, đáp ứng với các thay đổi và cân bằng tải trở thành những nhiệm vụ khó khăn. Chức năng điều khiển và truyền tải dữ liệu kết hợp, đi liền với nhau làm cho việc quản lý vận hành rất phức tạp.Thay vì chỉ cần thay đổi phần điều khiển thì ta bắt buộc phải cấu hình lại hoàn toàn thiết bị (cả phần dữ liệu lẫn phần điều khiển và phải làm trên từng thiết bị một cách thủ công mà không thể nào thay đổi đồng loạt toàn bộ cùng một lúc.1-Kiến trúc mạng truyền thống [8].
Phạm Anh Tuấn – CA17027510 Luận văn cao học Kỹ thuật viễn thông 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. Do hệ thống các thiết bị mạng truyền thống thường là các thiết bị đóng kín đắt tiền, trong đó phần mềm điều khiển và cấu hình được gắn liền với phần cứng và mỗi hãng sản xuất lại cung cấp một giao diện kết nối riêng làm cho độ phức tạp của mạng và khả năng tích hợp ngày càng trở lên khó kiểm soát. Việc độc quyền các công nghệ mạng làm cho việc thay thế và sửa đổi, bổ sung các tính năng mới cho thiết bị cũng gặp nhiều hạn chế. Các thiết bị cũng trở nên phức tạp và có nguy cơ chứa nhiều lỗ hổng, chẳng hạn như các phần mềm điều khiển routers có kích thước hơn 20 triệu dòng code với nguy cơ chứa đầy những lỗ hổng bảo mật nghiêm trọng.
Nhưng để thay thế hoặc cập nhật các bản vá mới cho thiết bị đòi hỏi phải làm trên từng thiết bị một gây ra rất nhiều khó khăn cho các quản trị viên và trong trường hợp xấu nào đó, quản trị viên hoàn toàn có thể bỏ quên một vài thiết bị có lỗ hổng chẳng hạn, điều này làm tăng các điểm yếu và nguy cơ an toàn cho mạng.2-Kiến trúc switch/router trong mạng truyền thống [7].2 ta thấy tại mỗi switch/router đều có một mặt phẳng quản lý riêng hỗ trợ cấu hình cho switch/router đó. Người quản trị sẽ sử dụng giao diện dòng lệnh (Command line interface (CLI)) và bộ giao thức SNMP (Simple Network Management Protocol) để kiểm tra vận hành các thiết bị mạng này. Phạm Anh Tuấn – CA17027511 Luận văn cao học Kỹ thuật viễn thông Các cấu trúc hiện tại của mạng truyền thông không thỏa mãn nhu cầu của người dùng hiện đại, của các công ty hay nhà khai thác mạng. Chúng ta sẽ phân tích cụ thể hơn một số giới hạn của mạng truyền thống, bao gồm: Tính phức tạp: Các kỹ thuật mạng ngày nay bao gồm các bộ giao thức rời rạc.
Những giao thức này dùng để nối các host với nhau một cách tin cậy, với khoảng cách, tốc độ liên lạc, mô hình (topo) bất kỳ. Để thỏa mãn nhu cầu kinh doanh và yêu cầu kỹ thuật các giao thức mạng được đã phát triển để hỗ trợ hiệu suất cũng như độ tin cậy cao hơn, có thể kết nối rộng hơn và độ bảo mật nghiêm ngặt hơn. Các giao thức này, về nguyên tắc, được tạo ra một cách cô lập, tuy nhiên mỗi giao thức giải quyết một vấn đề cụ thể. Điều này dẫn đến một trong những hạn chế chính của mạng hiện tại đó là tính phức tạp.
Ví dụ : để thêm vào hoặc dịch chuyển một thiết bị bất kỳ, người quản trị phải can thiệp đến một số thiết bị khác như : các bộ chuyển mạch, định tuyến, tường lửa… và phải cập nhật lại danh sách ACL (Access Control List), VLANs, QoS, và cả các cơ chế khác. Liên quan đến tính phức tạp này, các mạng hiện tại vì thế được xem như ở trạng thái “tĩnh” vì người quản trị phải cố gắng hạn chế đến mức thấp nhất những nguy cơ gián đoạn cung cấp dịch vụ. Tính tĩnh của mạng truyền thống: là một mâu thuẫn rất lớn đối với đặc tính “động” của môi trường server ngày nay, ở đó việc ảo hóa các server làm tăng số lượng host một cách chóng mặt, đồng thời nó làm thay đổi quan điểm về vị trí vật lý của các host. Trước ảo hóa, các ứng dụng đều nằm trên một server và trao đổi traffic với các client.
Ngày nay, các ứng dụng phân bố rời rạc trên một vài máy ảo (VM-Virtual Machine), những máy ảo này trao đổi các luồng dữ liệu với nhau. Các VM này “tái định cư” để làm tối ưu hóa và cân bằng tải trên server. Ngoài việc áp dụng kỹ thuật ảo hóa, nhiều công ty đã làm việc trên nền mạng hội tụ IP để truyền dữ liệu, thoại, video. Trong khi đó, hệ thống mạng hiện tại hỗ trợ các mức độ khác nhau của QoS cho các ứng dụng khác nhau và cung cấp những tài nguyên này hoàn toàn bằng tay.
Người quản trị cần phải cài đặt thiết bị của từng nhà cung cấp một cách riêng lẻ, và dĩ nhiên phải thiết lập các tham số như băng thông, QoS trên từng phiên làm việc cho mỗi ứng dụng. Do Phạm Anh Tuấn – CA17027512 Luận văn cao học Kỹ thuật viễn thông tính “tĩnh” của mình, mạng hiện tại không thể điều chỉnh một cách linh động so với những traffic luôn thay đổi của các ứng dụng và người dùng Các chính sách (policy) không đồng nhất: Để thực hiện các chính sách mạng, người quảntrị mạng cần phải cấu hình hàng ngàn thiết bị. Ví dụ mỗi lần áp dụng một máy ảo mới, phải tốn hàng giờ, thỉnh thoảng là hàng ngày để cấu hình lại các danh sách ACL trên toànmạng. Tính phức tạp của mạng hiện tại làm cho công việc này trở nên khó khăn đối vớicác nhà quản trị để có thể áp dụng một bộ phối hợp truy cập, hay quy tắc bảo mật, QoSvà các chính sách người dùng khác.
Không có khả năng mở rộng: Vì các nhu cầu đối với các Data Center tăng nhanh chóng, nên mạng cũng buộc phải tăng (kích thước) theo. Vì vậy mạng trở thành quá phức tạp với hàng trăm, hàng ngàn thiết bị, những thiết bị này lại cần phải được cấu hình và điều khiển. Các nhà quản trị cũng buộc phải dựa trên các dự báo về traffic để mở rộng mạng. Nhưng trong các Trung tâm dữ liệu ảo hóa ngày nay, traffic là khác niệm “động” không tưởng và gần như không thể dự báo trước.
Các nhà khai thác lớn như Google, Yahoo, Facebook… đã gặp phải các vấn đề phức tạp trong mở rộng kích thước mạng. Những nhà cung cấp dịch vụ này sử dụng các thuật toán xử lý song song ở quy mô lớn. Vì quy mô các ứng dụng đối với một người dùng cụ thể ngày càng tăng, số lượng các phần tử cần tính toán từ đó cũng tăng lên đến mức “bùng nổ” và các dữ liệu trao đổi giữa các node có thể đạt đến PB (Petabyte=1000TB). Quy mô như vậy là không thể thực hiện với cách cấu hình bằng tay.
Tính đa nhiệm cũng làm phức tạp bài toán hơn, vì mạng cần phục vụ nhiều nhóm người dùng với các ứng dụng khác nhau và các nhu cầu về hiệu suất khác nhau. Phụ thuộc vào nhà sản xuất: Các nhà mạng và các công ty cố gắng áp dụng các khả năng và dịch vụ mới trong việc đáp ứng các nhu cầu (những nhu cầu này thay đổi liên tục và rất nhanh) kinh doanh hoặc nhu cầu người dùng. Tuy nhiên khả năng của họ phụ thuộc vào các chu kỳ cập nhật firmware thiết bị của nhà sản xuất. Và điều đáng nói là những chu kỳ này có thể kéo dài lên đến 3 năm hoặc nhiều hơn nữa.
Ngoài ra việc thiếu các chuẩn hóa, hay giao diện mở làm giới hạn khả năng điều chỉnh mạng của các nhà mạng. Phạm Anh Tuấn – CA17027513 Luận văn cao học Kỹ thuật viễn thông Cùng với các thay đổi về mô hình lưu thông, sự gia tăng của các dịch vụ đám mây và nhu cầu phát triển của các nhà khai thác băng thông dịch vụ đưa ra một yêu cầu cần phải phát triển một giải pháp mới. Các nhà nghiên cứu đã nghiên cứu và phát triển một kiến trúc mạng điều khiển bởi phần mềm SDN mà ở đó 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), chuyển mạch (switch) để đạt được mục đích của người sử dụng. Khái niệm và cấu trúc mạng SDN 1.
Khái niệm Hiện nay có rất nhiều định nghĩa về mạng SDN nhưng theo ONF (Open Networking Foundation – một tổ chức phi lợi nhuận đang hỗ trợ việc phát triển SDN thông qua việc nghiên cứu các tiêu chuẩn mở phù hợp) thì mạng SDN được định nghĩa như sau: “Mạng định nghĩa mềm hay Sofware Defined Network (SDN) là một kiểu kiến trúc mạng mới, năng động, dễ quản lý, chi phí hiệu quả, dễ thích nghi và rất phù hợp với nhu cầu mạng ngày càng tăng hiện nay. Kiến trúc này phân tách phần điều khiển mạng (Control Plane) và chức năng vận chuyển dữ liệu (Forwarding Plane hay 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”. Công nghệ mạng được xác định bằng phần mềm (Software-defined network – SDN) là một cách tiếp cận theo hướng điện toán đám mây, tức là tập trung hóa việc quản trị thiết bị mạng, giảm thiểu công việc riêng lẻ, tốn nhiều thời gian trên từng thiết bị cụ thể, tạo điều kiện thuận lợi cho việc quản lý mạng và cho phép cấu hình mạng hiệu quả bằng các chương trình được lập trình để cải thiện hiệu suất và tăng cường khả năng giám sát mạng. SDN nhằm mục tiêu giải quyết vấn đề kiến trúc tĩnh, phi tập trung, phức tạp của các mạng truyền thống không phù hợp với yêu cầu về tính linh hoạt và xử lý sự cố dễ dàng của các hệ thống mạng hiện tại.
Phạm Anh Tuấn – CA17027514 Luận văn cao học Kỹ thuật viễn thông Hình 1.3- Sơ đồ mạng truyền thống và mạng SDN [2].