Chương 1 – TỔNG QUAN 1.1 Tổng quan về vấn đề nghiên cứu CCN được biết là một kiến trúc mạng mới được thiết kế và bổ sung nhằm thay thế mạng Internet hiên nay vì quá tải. Với CCN, thành phần được quan tâm đầu tiên là nội dung và đối tượng chủ động là Receiver tức đầu cuối yêu cầu dữ liệu. Để giao tiếp, hoặc đơn giản là truyền đạt thông tin giữa hai đối tượng, giờ đây không cần quan tâm đến địa chỉ IP của nhau, mà đơn giản là Receiver gửi yêu cầu nội dung cần nhận, và quan tâm đến nội dung cần nhận là gì. Với cách tiếp cận này Reveiver là đầu cuối chủ động yêu cầu thông tin, cũng chính Receiver mới biết được thông tin khi nào được nhận xong.
Nếu trong mạng IP giữa điểm A và D thì chỉ có thể hình thành một liên kết để truyền nhận dữ liệu. Với CCN thì giữa A và D có thể hình thành nhiều đường truyền nhận dữ liệu và là đặc tính của mạng CCN. Một nội dung cụ thể thường phổ biến rộng rãi và được lưu trữ trên mạng, một liên kết CCN có thể có nhiều nguồn, nghĩa là một đoạn nội dung bắt nguồn từ nguồn A, trong khi các đoạn tiếp theo có thể bắt nguồn từ nguồn B. Vì vậy, trong đề tài này chúng tôi sẽ tiến hành “Nghiên cứu đa nguồn và đa đường truyền trong mạng CCN” và triển khai mô phỏng từ đó đưa ra đánh giá cụ thể.2 Các công trình nghiên cứu 1.1 Công trình nghiên cứu trong nước Luận văn “Nghiên cứu Video Streaming Cho Mạng Content Centric Networking” [1] năm 2015 của tác giả Nguyễn Văn Hữu Hoàng thực hiện trong môi trường CCN.
Luận văn cho ra kết quả nghiên cứu thực nghiệm video streaming hoạt động rất tốt trên mạng CCN, hỗ trợ định dạng mã hóa H.264, đây là định dạng rất phổ biến hiện nay, làm giảm đến 50% băng thông và kích thước file dữ liệu lưu trữ so với cách nén thông thường hiện nay. Tác giả đã xây dựng thành công plugin tích hợp vào VLC để phát video streaming CCN trên Android, và CCN cũng chưa có thư viện hỗ trợ các nền tảng di động khác như iOS hay Windows Phone, đây cũng là nhược điểm của mạng CCN. --- 4 Luận văn “Nghiên Cứu Tính Di Động Trong Mạng Content Centric Networking” [2] năm 2015 của tác giả Nguyễn Thị Yến vẫn nghiên cứu trong môi trường CCN. Thông qua thực hiện mô phỏng và dựa trên kết quả thu được, giải pháp điểm trung gian với ưu điểm có trung bình độ trễ thấp, tuy nhiên thời gian chuyển giao còn lớn do phải thực hiện hai lần tìm kiếm mà quá trình đó dữ liệu không được truyền đi, khi một máy di chuyển thực hiện kết nối tới vị trí mới thì chúng phải tìm đường về Server điểm tập trung để báo vị trí của chúng và từ Server tìm đường đi để báo tin cập nhật vị trí.
Luận văn cho ra kết luận: CCN được thiết kế để hỗ trợ tính di động của các yêu cầu dữ liệu tốt hơn so với mô hình mạng IP. Luận văn cũng chỉ ra hạn chế: mô hình thể thất bại nếu một chuyển giao khó khăn trong việc dự đoán đường đi. Nếu tuyến kết nối dài hơn trong quá trình người dùng di chuyển thì lưu lượng chuyển giao sẽ có độ trễ lớn hơn. Kết quả nghiên cứu của hai luận văn trên cho thấy ưu điểm và hạn chế của CCN.
Tuy nhiên hai luận văn trên cũng chưa tiến hành nghiên cứu trong môi trường đa nguồn, đa đường truyền trong CCN.2 Công trình nghiên cứu ngoài nước Bài báo “Multisource and Multipath File Transfers through Publish- Subscribe Internetworking”[15] năm 2013 của tác giả Yannis Thomas và các đồng sự đề cập đến Multisource và Multipath trên mmFTP (Multisource and multipath file transfer protocol). Tác giả bài báo mô tả cơ bản thiết kế và hoạt động của mmFTP, thử nghiệm sơ bộ kết quả thực hiện từ một nguyên mẫu thực hiện triển khai trong các thử nghiệm PlanetLab. mmFTP là một giao thức truyền tải tập tin nhận định hướng cho PSI kiến trúc. Nó hỗ trợ đa nguồn và đa đường truyền.
mmFTP kết hợp kỹ thuật phân phối nội dung vào một giao thức duy nhất mà không cần mạng lưới phức tạp báo hiệu hoặc thêm trạng thái cho các liên kết, do những lợi thế của kiến trúc PSI. Kết quả download mmFTP nhanh hơn FTP và ổn định hơn trong đa nguồn. Bài báo “Multi-source Multipath HTTP (mHTTP): A Proposal”[8] năm 2014 của tác giả Juhoon Kim và các đồng sự, mục tiêu của bài báo cho phép người sử dụng để thiết lập kết nối đồng thời với nhiều máy chủ để lấy một nội dung duy nhất. mHTTP được thiết kế để kết hợp các lợi thế thu được từ cơ sở hạ tầng mạng lưới phân --- 5 phối cung cấp bởi CDN với lợi thế của nhiều giao diện ở người dùng cuối cùng.
mHTTP mang lại lợi ích đáng kể cho phân phối nội dung end-to-end bằng cách sử dụng đa đường và đa nguồn dữ liệu trong Internet mà không có bất kỳ thay đổi nào trên các ứng dụng hiện có và mạng server-side stack. Kết quả của bài báo cho thấy rằng thời gian tải về bằng mHTTP của các đối tượng lớn là khá ngắn so với một HTTP và ổn định hơn truy cập bằng wifi. Với thực tế là HTTP chiếm hơn 60% của mạng lưới Internet ngày nay và phần lớn trong tổng số web máy chủ đang hoạt động trên nội dung phân phối. Kết quả nghiên cứu về đa nguồn và đa đường truyền của hai bài báo được thực trong môi trường CDN, cả hai chưa đề cập đến CCN.3 Kết luận chương Trong chương này trình bày về tổng quan vấn đề cần nghiền cứu và khảo sát các công trình đã đăng tải trong và ngoài nước liên quan đến đề tài luận văn, nêu những vấn đề còn tồn tại, chỉ ra những vấn đề mà đề tài luận văn quan tâm.
--- 6 Chương 2 - CƠ SỞ LÝ THUYẾT 2.1 Kiến trúc mạng CCN 2.1 Mạng CCN ra đời Các nguyên tắc kỹ thuật và kiến trúc của Internet ngày nay được tạo ra trong năm 1960 và những năm 70. Vấn đề kết nối mạng nhằm để giải quyết việc chia sẻ tài nguyên, giao tiếp giữa những người ở xa nhau, điều khiển từ xa,…thông qua giao thức IP. Khi sử dụng Internet thì người dùng cần phải biết địa chỉ và nội dung cần truy cập nên giao tiếp này gọi là từ host đến host. Vì ra đời đã lâu nên việc giao tiếp qua IP này phát sinh nhiều vấn đề ảnh hưởng đến người dùng, phát sinh từ sự không tương thích này giữa các mô hình: Tính sẵn sàng: Truy cập vào nội dung khó khăn, hoặc là phải sử dụng mạng CDN, mạng P2P hoặc là phải trả một chi phí cao để tăng băng thông.
Tính bảo mật: Nội dung dễ bị thất lạc, vị trí và thông tin kết nối không đáng tin cậy. Phụ thuộc vị trí: Bản đồ đường đi của nội dung đến host có cấu hình phức tạp và việc thực thi các dịch vụ mạng cũng phức tạp không kém. Trong quá trình giao tiếp từ host đến host ngày càng khó khăn nếu nhiều người cùng truy cập vào một lúc để lấy dữ liệu tại một vị trí sẽ gây ra tình trạng tắc nghẽn, server quá tải, người dùng truy cập khó khăn. IP Internet Hình 2.1: Quá trình truy cập tới sever trong giao thức IP --- 7 Mạng CCN ra đời năm 2009 để giải quyết các vấn đề từ IP đó là một mạng dựa trên tên dữ liệu, các gói dữ liệu chia thành các gói nhỏ và mỗi gói như vậy được gọi là một content chunk, giúp vận chuyển nội dung trên mạng dễ dàng hơn.
CNN tránh được nhiều lỗ hổng bảo mật khi tấn công IP vì CCN bảo mật nội dung chứ không phải kết nối khi dữ liệu được truyền đi. CCN cho phép kết nối nhiều thiết bị mạng đồng thời như wifi, ethernet,… Hình 2.2: Sự chuyển đổi giữa IP và CNN [2] 2.2 Kiến trúc mạng CCN Truyền thông trong mạng CCN được điều khiển bởi đầu nhận, còn được gọi là Receiver hoặc là Consumer, là thành phần cần truy cập dữ liệu từ mạng CCN. Để nhận được dữ liệu cần thiết, Receiver gửi các Interest packet ra mạng, packet này mang định danh của dữ liệu cần nhận. Trong mạng CCN, để nhận được dữ liệu cần thiết, Receiver không cần biết cụ thể địa chỉ nơi lưu trữ dữ liệu, nó chỉ cần gửi yêu cầu ra mạng, và mạng sẽ chịu trách nhiệm về việc định tuyến và chuyển dữ liệu có cùng định danh trong yêu cầu về cho Receiver.3: Mô hình mạng CCN [10].
Ví dụ: Receiver cần nhận dữ liệu có định danh ton/Audio/vd1. Receiver chỉ cần gửi Interest có định danh “ton/Audio/vd1.flac” ra Network, Router sẽ ghi lại Interface mà Interest được chuyển đến và sau đó sẽ có cơ chế chuyển tiếp Interest đến nguồn lưu trữ data cùng định danh của Interest. Sau khi tìm được đến Source lưu trữ dữ liệu, Source sẽ gửi data về đúng Receiver theo đánh dấu trong Router mà Interest đã đi qua.1 Định danh dữ liệu Định danh của dữ liệu là duy nhất trong mạng CCN. Tuy nhiên, định danh này không có ngữ nghĩa đối với các CCN Router, khi một gói Interest đến Router, Router sẽ không biết được định danh này có ý nghĩa như thế nào.
Nó chỉ so sánh và tìm ra Interface nào có chứa dữ liệu đó để chuyển tiếp Interest đến Source. Thiết kế tên trong mạng CCN được giả sử theo cấu trúc phân cấp giống như URL trong mạng Internet hiện nay. Ví dụ như một image có tên vd1.flac được tạo ra bởi ton có thể có định danh như sau: /ton/Audio/vd1. Kí hiệu “/” chỉ ra ranh giới giữa các thành phần của định danh, nó không phải là một phần của định danh dữ liệu cần truy cập.
--- 9 Như trên đã trình bày, Router không hiểu được định danh của dữ liệu, tuy nhiên nó có thể đọc được các dấu phân cách “/”, từ đó có thể tìm được các prefix, điều này được Router dùng trong định tuyến và chuyển tiếp các gói tin trong mạng CCN. Cấu trúc lưu trữ tên phân cấp như trên có ích trong việc tìm kiếm Source lưu trữ dữ liệu. Ví dụ: gói tin Interest có định danh / ton/Audio/vd1.flac/1/1 có nghĩa là gói tin 1, version 1, của file vd1.flac đã đi qua Router. Router sẽ ghi nhớ lại Interface đó, khi có Interest yêu cầu gói tin thứ 2 có tên / ton/Audio/vd1.
Vì có thể đọc được dấu phân cách “/”, Router sẽ tìm được Interest có prefix tương đương “/ton/Audio/vd1.flac/1” để gửi Interest.