a) phần mềm trung gian và giải pháp dựa trên cụm. b) phần mềm trung gian và giải pháp dựa trên vật phủ. c) máy ảo và giải pháp dựa trên nhóm động
Nền tảng SenShare, hỗ trợ cả ảo hóa WSN-nút và cấp độ mạng. Chúng xem xét các ứng dụng TinyOS với lớp trừu tượng phần cứng nhúng. Các nguồn nút cảm biến cơ bản sau đó được truy cập bằng cách sử dụng lớp thời gian chạy trên đầu TinyOS. Do TinyOS hỗ trợ nhiều tác vụ cùng một lúc, ảo hóa cấp nút được thực hiện. Đối với ảo hóa cấp mạng, một mạng lớp phủ sử dụng bộ sưu tập giao thức cây (CTP) được tạo để nhóm các nút cảm biến thực hiện cùng một ứng dụng. Các nút cảm biến phân tán vật lý thực thi cùng một ứng dụng có thể được nhóm thành một mạng lớp phủ duy nhất. SenShare là giải pháp đầu tiên nhắm mục tiêu ảo hóa WSN tồn diện. Nó hỗ trợ ảo hóa cấp độ nút và mạng, mức độ ưu tiên của ứng dụng và tính khơng đồng nhất và nó độc lập với bất kỳ miền ứng dụng nào. Tuy nhiên, nó khơng độc lập với nền tảng vì chỉ các ứng dụng TinyOS được hỗ trợ.
Melete [22] là một phần mở rộng của Maté và hỗ trợ cả ảo hóa cấp độ nút và mạng. Việc thực thi đồng thời các tác vụ ứng dụng đạt được bằng cách thực hiện các cải tiến sau đây cho Maté: không gian lưu trữ và thực thi dành riêng cho các ứng dụng để cho phép đồng thời và giao thức phổ biến mã để cho phép lập trình (chọn) lại các nút cảm biến. Đối với ảo hóa cấp mạng, nó sử dụng kỹ thuật phân nhóm động của các nút cảm biến. Một nút cảm biến có thể là một phần của nhiều nhóm logic cùng một lúc. Cấu trúc liên kết mạng được hỗ trợ là một đồ thị được kết nối. Melete không hỗ trợ ưu tiên ứng dụng và khơng độc lập với nền tảng. Nó chỉ hỗ trợ một bộ ứng dụng hạn chế, nhưng nó giải quyết được sự thiếu đồng nhất.
Sensomax sử dụng các thiết bị Java SunSpot và khai thác khả năng của chúng để chạy các tác vụ ứng dụng đồng thời. Mỗi ứng dụng người dùng được lập trình như một tác nhân và nhiều tác nhân có thể nằm trên một nút cảm biến. Các đại lý được gửi
qua một trạm cơ sở và được truyền vào WSN bằng cách sử dụng phát sóng một bước. Ảo hóa cấp mạng sử dụng khái niệm cụm. WSN được chia thành nhiều cụm, mỗi cụm có một cụm chính riêng. Các loại chế độ giao tiếp khác nhau được cung cấp để cho phép giao tiếp giữa các thực thể mạng khác nhau.
Giải pháp (năm) Tách biệt giữa OS & nhiệm vụ Ứng dụng thời gian thực Mơ hình thực thi Ngơn ngữ lập trình Giao thức Cơ chế hình thành mạng Sensomax
(2013) Có Khơng Dựa theo
chủ đề Java Các thuật toán phân bổ nguồn lực dựa trên thị trường Cụm ShenShare (2012) Có Có Hướng sự kiện nesC Bộ sưu tập giao thức cây (CTP) Lớp phủ cấp mạng
Melete
(2006) Khơng Có Hướng
sự kiện TinyScript Thủ thuật
Kết nối đồ thị
CHƯƠNG 2: CÁC DỰ ÁN ẢO HÓA MẠNG
Từ lâu "mạng ảo" đã là cụm từ phổ biến, thu hút sự quan tâm của các nhà nghiên cứu mạng để mô tả các hoạt động trên mạng riêng ảo, mạng lớp phủ và mạng hoạt động hoặc lập trình. Trong phần này,tơi sẽ tóm tắt các đặc điểm chính của một loạt các kiến trúc mạng ảo và các dự án liên quan (ví dụ: mạng chồng chéo, mạng lập trình hoặc thiết kế lấy cảm hứng từ mạng riêng ảo). Mạng riêng ảo (VPN) là mạng truyền thông chuyên dụng của một hoặc nhiều doanh nghiệp được phân phối trên nhiều trang web và được kết nối qua các đường hầm trên các mạng truyền thông công cộng như Internet.
2.1 Đặc điểm
Do không có một thuật ngữ n được thiết lập cho việc ảo hóa mạng, một nhóm nghiên cứu đã sử dụng một bộ thuật ngữ riêng để mô tả công việc của họ. Tuy nhiên, một cuộc điều tra bí mật cho thấy một tập hợp các đặc tính quản lý quy định việc xây dựng các nguyên mẫu dưới đây.
2.1.1 Công nghệ mạng
Xác định ngầm các thuộc tính của các mạng ảo được triển khai trên một nền tảng mạng cụ thể bằng bộ đặc tính độc quyền của nó. Ví dụ: kiến trúc ảo hóa dựa trên các mạng có dây (ví dụ: X-Bone) có khả năng mở rộng hơn và khả thi về mặt băng thông hơn so với mạng dựa trên mạng khơng dây hoặc cảm biến.
2.1.2 Lớp ảo hóa
Đề cập đến các lớp trong ngăn xếp mạng nơi ảo hóa được thực hiện. Lớp ngăn xếp càng thấp thì khả năng một mạng ảo được triển khai trên nền tảng đó càng cao. Trong nhiều năm, các nhà nghiên cứu đã cố gắng ảo hóa các lớp khác nhau của ngăn xếp mạng, bắt đầu từ lớp vật lý (ví dụ: UCLP) và tiếp tục đến lớp ứng dụng (ví dụ: PlanetLab).
2.1.3 Miền kiến trúc
Miền này chỉ ra mục tiêu của miền ứng dụng và miền kiến trúc, đưa ra các lựa chọn thiết kế được thực hiện khi xây dựng các kiến trúc và dịch vụ có thể được cung
cấp trên các nền tảng đó. Ví dụ như : quản lý mạng ( VNRMS), mạng hoạt động ảo ( Net- Script) và mạng tái sản xuất (Genesis).
2.1.4 Mức độ chi tiết của ảo hóa
Mức độ chi tiết của ảo hóa đề cập đến mức độ chi tiết mà tại đó mỗi mạng ảo có thể tự quản lý. Ở một đầu của phổ này, ảo hóa nút tạo ra các mạng ảo bằng cách kết nối các máy ảo trên các nút khác nhau (ví dụ: PlanetLab). Ở đầu bên kia, CABO và NouVeau đưa ra tính chính thống thực, trong đó mỗi mạng ảo có một đặc thù quy định riêng của mạng gốc.
2.2 Công nghệ mạng
2.2.1 Mạng IP : X-Bone
X-Bone[25][26] lần đầu tiên được đề xuất như một hệ thống để triển khai, quản lý nhanh chóng và tự động các mạng lớp phủ bằng cách sử dụng việc đóng gói để cho phép ảo hóa mạng. Sau đó, ý tưởng này đã được mở rộng sang khái niệm về mạng ảo- Virtual Internet (VI), là một mạng IP bao gồm các liên kết ngầm giữa một tập hợp các bộ định tuyến và máy chủ ảo với sự phát hiện, triển khai và hỗ trợ giám sát tài nguyên động.
VI ảo hóa tất cả các thành phần của Internet: máy chủ, bộ định tuyến và liên kết giữa chúng. Một nút mạng đơn có thể tham gia như một máy chủ ảo - Virtual host (VH), bộ định tuyến ảo - Virtual Router (VR) hoặc nhiều nút trong số chúng đồng thời trong VI. Tất cả các thành phần tham gia vào VI phải hỗ trợ đa tầng vì ngay cả một máy chủ cơ sở có VH duy nhất cũng nhất thiết phải là thành viên của ít nhất hai mạng: Internet và lớp phủ VI. Địa chỉ trong mỗi VI là duy nhất và có thể được sử dụng lại trong lớp phủ khác, trừ khi khơng có nút chung được chia sẻ trong mạng cơ bản giữa hai VI. VI hoàn toàn tách rời mạng vật lý cơ bản khỏi các lớp phủ và nhiều VI có thể cùng tồn tại với nhau. VI cũng hỗ trợ đệ quy điều khiển để cho phép quản lý mạng phân chia và đệ quy mạng để xếp chồng VI lên nhau.
Gần đây, P2P-XBone [27] một phản ứng tổng hợp dựa trên sự liên kết ngang hàng của X-Bone, đã được đề xuất để cho phép kết nối hoặc ngắt kết nối giữa các nút tham gia từ VI. Nó cũng cho phép tạo và giải phóng các đường hầm IP động, và cấu hình định tuyến tùy chỉnh.
2.2.2 Mạng ATM: Tempest
Tempest [28] là một kiến trúc điều khiển mạng cho phép nhiều kiến trúc điều khiển không đồng nhất chạy đồng thời trên một mạng ATM vật lý đơn lẻ. Nó được coi là một tập hợp các chính sách, thuật tốn, cơ chế và quy trình để kiểm sốt và quản lý các thiết bị khác nhau trên mạng.
Tempest dựa trên khái niệm tổng đài [29], cho phép một công tắc ATM duy nhất được điều khiển bởi các bộ điều khiển cơ bản bằng cách phân vùng chặt chẽ các nguồn của cơng tắc đó với các bộ điều khiển. Tập hợp chuyển đổi - cho phép bộ điều khiển hoặc nhóm bộ điều khiển sở hữu mạng ảo. Bên thứ ba có thể thuê các mạng ảo như vậy từ nhà điều hành mạng Tempest để sử dụng chúng cho bất kỳ mục đích nào.
Khả năng lập trình trong Tempest được hỗ trợ ở hai mức độ chi tiết: đầu tiên, các bộ chuyển mạch hỗ trợ giới thiệu các kiến trúc điều khiển thay thế trong mạng; thứ hai, các dịch vụ có thể được cung cấp bằng cách tải tự động các chương trình vào mạng tùy chỉnh các kiến trúc điều khiển hiện có. Điều này cho phép người dùng có quyền kiểm sốt ứng dụng.
2.3 Lớp ảo hóa
2.3.1 Lớp vật lý UCLP
UCLP là một hệ thống quản lý và điều khiển mạng phân tán cho mạng CA * NET 4, cho phép người dùng cuối xem tài nguyên mạng dưới dạng đối tượng phần mềm và cho phép họ cung cấp và tự động cấu hình lại mạng quang (Layer 1). Người dùng có thể tham gia hoặc phân chia các đường dẫn quang (lightpaths) trong một miền hoặc trên nhiều miền quản lý độc lập để tạo các mạng logic IP tùy chỉnh.
UCLP có một cách tiếp cận mơ-đun để quản lý tài nguyên bằng cách giới thiệu ba lớp dịch vụ riêng biệ t[30][31].
Khách hàng và quản trị viên cấu hình và sử dụng tài nguyên UCLP cuối cùng thông qua lớp truy cập của người dùng. Lớp cung cấp các dịch vụ quản lý logic và dữ liệu dịch vụ liên quan đến các đường quang (lightpaths). Cuối cùng, lớp quản lý các tài nguyên liên quan đến tài nguyên vật lý thực tế.
UCLPv1.4[32] đã giới thiệu quá trình khám phá cấu trúc liên kết động và cho phép định tuyến tự động thơng qua các thuật tốn thơng minh bên cạnh các đường dẫn quang thủ cơng có sẵn. UCLPv2 sau đó đã mở rộng UCLP với việc sử dụng kiến trúc
hướng dịch vụ (SOA) và cơng nghệ quy trình kinh doanh với mục đích hình thành khung kiến trúc cơ bản để mở rộng UCLP[33][34] cho phép kết nối các công cụ, lát cắt thời gian và cảm biến, và để kết hợp các bộ định tuyến và chuyển mạch ảo.
2.3.2 Lớp liên kết VNET
VNET [35] là mạng phủ layer 2 dành cho các máy ảo (VM) thực hiện mạng LAN ảo (Vlan) trải rộng trên một khu vực rộng bằng giao thức ngầm lớp 2 (L2TP). Mỗi máy vật lý lưu trữ một máy ảo (VM) chạy một quy trình VNET chặn lưu lượng VM và chuyển nó đến điểm đích thích hợp. Đích đến là một VM khác có thể được liên hệ trực tiếp thơng qua VNET hoặc một địa chỉ bên ngoài lớp phủ. Lưu lượng truy cập cho một địa chỉ bên ngoài được định tuyến thông qua lớp phủ đến nút proxy VNET, chịu trách nhiệm tiêm các gói vào mạng thích hợp. Do đó, lớp phủ bao gồm một tập hợp các kết nối TCP hoặc các UDP ngang hàng (VNET links ) và một bộ quy tắc (VNET routes ) để kiểm soát định tuyến trên lớp phủ.
Do VNET hoạt động ở Lớp 2 nên không thể biết đến Lớp 3. Do đó các giao thức khác ngồi IP có thể được sử dụng. Ngồi ra, VNET cũng hỗ trợ di chuyển VM từ máy này sang máy khác mà khơng có bất kỳ sự tham gia nào từ VM VM OS và tất cả các kết nối vẫn mở sau khi di chuyển.
2.3.3 Lớp mạng AGAVE
Mục tiêu chính của dự án AGAVE[36-38] là cung cấp dịch vụ nhận biết QoS từ đầu đến cuối trên các mạng IP theo chủ đề của các cơ chế chuyển tiếp QoS như IntServ[39] và DiffServ[40][41]. Để đạt được điều này, AGAVE đề xuất một kiến trúc liên miền mới dựa trên khái niệm mới về mặt bằng mạng - Network Planes (NP), cho phép nhiều nhà cung cấp mạng IP (INP) xây dựng và cung cấp mạng song song (PI) phù hợp với dịch vụ đầu cuối yêu cầu.
Các NP là phần con của INP được tạo dựa trên các yêu cầu dịch vụ được mô tả bởi các SP. Một NP có thể được thiết kế để định tuyến, chuyển tiếp hoặc quản lý tài nguyên. Để cho phép các dịch vụ đầu cuối trên môi trường đa nhà cung cấp, các NP từ các INP khác nhau được kết nối với nhau để tạo thành PI dựa trên các thỏa thuận INP. Một trong những tính năng thú vị của AGAVE là nó khơng u cầu tất cả các NP tham gia PI phải đồng nhất dẫn đến tính linh hoạt cao hơn.
AGAVE thay thế cách tiếp cận cấu hình, cung cấp trung tâm nút theo hướng cấu hình dựa trên mạng tập trung hơn, đảm bảo tính nhất qn cấu hình giữa các INP tham gia và giảm lỗi cấu hình sai. Ngồi ra, nó hỗ trợ chức năng mô phỏng NP để đánh giá trạng thái của mạng và đánh giá tác động của việc giới thiệu NP mới trước khi chấp nhận các yêu cầu cung cấp kết nối IP mới.
2.3.4 Lớp ứng dụng VIOLIN
VIOLIN [42,43] là một mạng ảo cấp ứng dụng kiến trúc, nơi các mạng ảo bị cô lập được tạo trong phần mềm trên cơ sở hạ tầng lớp phủ (ví dụ: PlanetLab). Tận dụng những tiến bộ trong công nghệ VM, VIOLIN mở rộng ý tưởng về cách ly nút đơn trong máy ảo để cung cấp các mạng ảo bị cơ lập hồn tồn. VIOLIN bao gồm các bộ định tuyến ảo (vRouters), LAN (vlans) và máy chủ cuối (vhost), tất cả đều là các thực thể phần mềm được lưu trữ bởi các máy chủ lớp phủ. Cả vhost và vRouters đều là các máy ảo chạy trong các máy chủ lớp phủ vật lý. Một vlan được tạo bằng cách kết nối nhiều vhost bằng các bộ chuyển đổi ảo (vSwitches), trong khi vRouters kết nối nhiều vlan để tạo thành tổng mạng. VIOLIN cung cấp cách ly mạng liên quan đến: (i) quản trị, (ii) không gian địa chỉ và giao thức, (iii) tấn công và tác động lỗi và (iv) tài nguyên. Hiệu ứng kết hợp là một môi trường hạn chế, bảo mật và dành riêng có thể được sử dụng để triển khai các ứng dụng phân tán không đáng tin cậy và thực hiện các thử nghiệm mạng rủi ro.
2.4 Miền kiến trúc
2.4.1 Quản lý mạng: VNRMS
VNRMS [44-46] là một kiến trúc quản lý mạng ảo có thể tùy chỉnh, cung cấp mơi trường mạng và có thể lập trình để tạo ra nhiều cấp độ của mạng ảo thông qua việc lồng vào nhau từ một mạng vật lý (PN). Một mạng ảo bao gồm một số tài nguyên mạng ảo (VNR), trong đó mỗi VNR là một tập hợp con của tài nguyên mạng vật lý (PNR) trong mạng cơ sở. VNRMS cho phép khách hàng tham gia các VNR thông qua các đại lý tài nguyên đang hoạt động bằng hệ thống quản lý dựa trên khách hàng (CNRMS). Nhà cung cấp VNRMS có quyền truy cập vào tất cả các tài nguyên nhưng khách hàng chỉ có thể truy cập những tài nguyên thuộc mạng ảo của họ.
Để cho phép CNRMS chỉ quản lý một tập hợp tài nguyên trong PNR, cơ sở thông tin quản lý (MIB) của PNR đó được phân chia hợp lý thành nhiều MIB chung,
được gọi là MIBlets [47]. MIBlets cung cấp tầm nhìn trừu tượng và chọn lọc về các tài nguyên được phân bổ cho một mạng ảo cụ thể. Một tầm nhìn trừu tượng ẩn chứa các phần của giao diện tài nguyên không liên quan đến CNRMS. Một tầm nhìn chọn lọc hạn chế CNRMS chỉ truy cập các tài nguyên được phân bổ cho nó.
2.4.2 Mạng hoạt động ảo: NetScript
NetScript[48] là một hệ thống ngôn ngữ để lập trình động và triển khai phần mềm giao thức trong một mạng hoạt động. Đó là một ngơn ngữ được điển hình tạo ra sự trừu tượng ngôn ngữ phổ quát để nắm bắt khả năng lập trình mạng. Khơng giống như các kiến trúc mạng hoạt động khác có các gói chứa các chương trình hoạt động, các gói trong NetScript thì bị động. Các gói này được xử lý bằng phần mềm giao thức hoặc phần cứng khi chúng truyền qua mạng. Trong kiến trúc này, các ứng dụng xử lý gói hoạt động và các giao thức được tiêu chuẩn hóa có thể được kết hợp với nhau, tương tác và sử dụng các dịch vụ khác của nhau. Do đó, NetScript có thể được sử dụng để soạn thảo, cung cấp và quản lý trừu tượng mạng hoạt động ảo NetScript hỗ trợ tạo các định dạng gói tùy ý và thành phần động của giao thức chuẩn và hoạt động và nó có