Tải bản đầy đủ (.docx) (49 trang)

MÔ PHỎNG ĐÁNH GIÁ HIỆU QUẢ của kỹ THUẬT NETWORK CODING TRONG MẠNG vô TUYẾN (có code)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (444.18 KB, 49 trang )

ĐỒ ÁN TỐT NGHIỆP

MÔ PHỎNG ĐÁNH GIÁ HIỆU QUẢ
CỦA KỸ THUẬT NETWORK CODING
TRONG MẠNG VÔ TUYẾN


MỤC LỤC


DANH MỤC CÁC HÌNH VẼ


DANH MỤC CÁC TỪ VIẾT TẮT

ARQ

Automatic repeat request

Nodes

relays or routers

FEC

Forward Error Correction

MSS

Message Service


PRNC

Pseudo Random Network Coding

BS

Base Station

MS

Mobile Station

IP

Internet Protocol

IPTV

Internet Protocol Television


ĐỒ ÁN TỐT NGHIỆP
Trang 5/34

CHƯƠNG 1.

GIỚI THIỆU ĐỀ TÀI

1.1 ĐẶT VẤN ĐỀ


Với sự phát triển của lĩnh vực viễn thông hiện nay, các mạng không dây ở các
dạng khác nhau của viễn thông (kết nối dặm dài, cảm biến, mạng cộng đồng, v.v.) sẽ
là phương tiện truyền thông chủ đạo trong tương lai. Nhưng các triển khai không
dây hiện tại vẫn đang phải đối mặt với các giới hạn:băng thông,tốc độ mạng, độ tin
cậy của tín hiệu, nhiễu,… Đối với mạng không dây quy mô lớn để hoạt động bình
thường, cần những tiến bộ nghiên cứu về sự nâng cao băng thông và tăng tốc độ của
mạng cũng như độ bảo mật của thông tin gửi đi.
Mục đích nghiên cứu chính trong đề tài đồ án này tập trung vào phân tích, đánh
giá kỹ thuật Network coding qua hai thông số:thông lượng và tỷ lệ mất gói tin trong
quá trình truyền. Ngược lại với mã hóa nguồn, thay vì gửi liền các gói tin ngay sau
khi nhận được.Network coding cho phép các bộ định tuyến có thể nén thông tin bất
cứ khi nào có thể để giảm số lần truyền đi, sau đó phân phối các gói tin trong bộ
định tuyến cùng lúc mà không phải tốn một thời gian chờ.Chính nhờ cơ chế hoạt
động hiệu quả này đã giúp làm giảm một lượng đáng kể số lần phải gửi đi cũng như
số lần nhận gói tin của tất cả các nút trong mạng.Hơn thế nữa số lần gửi và nhận gói
tin ít hơn dịch trực tiếp nên mức tiêu thụ băng thông ít hơn giúp cho thông lượng
mạng cao hơn.
1.2 YÊU CẦU CỦA ĐỀ TÀI

1.1.1 Nhiệm vụ đặt ra:
Hiểu rõ lý thuyết về kỹ thuật Network coding như nguyên lý hoạt động chung
của mạng, các đại lượng đặc trưng của mạng và phương trình tính toán tổng quát
cho 2 vấn đề tính tỷ lệ mất gói tin, thông lượng. Thông qua những gì đã tìm hiểu
trước đó vẽ được lưu đồ giải thuật của kỹ thuật này, lưu đồ này bao gồm đầy đủ các
quá trình và trình tự như một mạng Network coding ứng dụng ngoài thực tế. Viết
code mô phỏng lại kỹ thuật Network coding trên matlab và xuất ra kết quả thu
được, trong kết quả hiển thị rõ các thông số như tỷ lệ mất gói tin và thông lượng của

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến



ĐỒ ÁN TỐT NGHIỆP
Trang 6/34

mạng. Dựa vào những kết quả thu được vẽ đồ thị đặc trưng cho tỷ lệ mất gói tin và
thông lượng theo tỷ lệ lỗi của gói tin ban đầu. Phân tích, đánh giá đồ thị thu được
xem quá trình vẽ có đúng với lý thuyết thực tế, có sai số nào và tỷ lệ sai số cụ thể là
bao nhiêu phần trăm so với thực tế. Yêu cầu của giai đoạn này phải nêu ra được ưu
điểm của kỹ thuật network coding so với các kỹ thuật khác, nhực điểm của network
coding hay những khó khăn còn vắng phải.
Từ những nhược điểm đã được nhắc tới trong phần phân tích đánh giá kỹ thuật
network coding. Đề xuất giải thuật cải tiến, yêu cầu của giải thuật này phải dựa trên
các tham số cố định đã có của mạng. Nếu có thay đổi thì phải giải thích rõ thay đổi
ở đâu và làm như thế nào để thay đổi. Những điểm thay đổi này có tác động như thế
nào đến gói tin được gửi và nhận hay không.
1.1.2 Chỉ tiêu thông số đặt ra của kỹ thuật Network coding
Hai thông số được tập trung khai thác trong đề tài này là tỷ lệ mất gói tin và thông
lượng trong quá trình gửi, nhận gói tin trong mạng vô tuyến. Thông qualý thuyết đặt
ra của kỹ thuật Network coding (đề cập trong chương 2) ta tiến hành giải quyết hai
thông số này với chỉ tiêu đặt ra như sau:
Tỷ lệ mất gói tin:Mỗi lần gửi đi gói tin từ máy chủ, người dùng nhận được gói
tin mà máy chủ gửi đi trong đó có một phần gói tin bị lỗi trong quá trình giải mã
hay thất lạc trong quá trình truyền. Tỷ lệ này được gọi là tỷ lệ mất gói tin. Tỷ lệ mất
gói tin thu được sau khi thực hiện mô phỏng bằng kỹ thuật Network coding phải tỷ
lệ thuận theo xác suất lỗi gói tin được đưa vào.
Thông lượng:Từ tỷ lệ mất gói tin đưa ra ở trên ta thấy, mỗi lần gửi đi gói tin từ
máy chủ ứng với nó đều có tỷ lệ mất gói tin nhất định. Ở đây, cứ mỗi lần giải mã
gói tin nếu bộ giải mã của nút trong mạng cần nhận gói tin phát hiện ra một gói tin
bị mất, hoặc có gói tin bị thất lạc thì nút này sẽ gửi lại một thông điệp cho máy chủ.

Thông điệp này, yêu cầu máy chủ gửi lại gói tin từ ban đầu đến khi nhận được gói
tin bị lỗi hay bị mất mới tiếp tục giải mã gói tin. Thông lượng của mạng thu được

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 7/34

sau khi thực hiện mô phỏng bằng kỹ thuật Network coding phải tỷ lệ nghịch tương
ứng theo xác suất lỗi gói tin được đưa vào.
1.3 Phương pháp thực hiện:

Ý tưởng là đưa ra trong đề tài đồ án với kỹ thuật Network coding đưa vào một
phương pháp dùng để ước tính xác suất giải mã sau khi nhận gói tin được mã hóa
trong mạng. Kết quả mô phỏng tương quan chặt chẽ với phu kết quả ước tính được.
Phương pháp được đề xuất này sử dụng để giảm trì hoãn khi phát đa hướng, thông
tin trong quá trình hoạt động của mạng.Thay vì dịch trực tiếp gói tin như các kỹ
thuật trước đó, tại mỗi nút trung gian trong mạng các gói tin được gửi đi ngay sau
khi vừa nhận được. Ngược lại với nó kỹ thuật Network coding sẽ đưa ra một
phương pháp mới mẻ hơn, giúp mạng hoạt động tốt hơn. Với network coding trong
đề tài đồ án này, đóng góp quan trọng nhất là tối ưu hóa thông lượng, băng thông,
thời gian truyền gói tin và tiêu hao năng lượng của mạng đến mức tốt nhất có thể.
Để có cái nhìn tổng quan hơn về những lợi ích mà kỹ thuật Network coding đem lại,
đề tài đồ án này sẽ tập chung vào phân tích và đánh giá mạng dựa theo hai thông số
là tỷ lệ mất gói tin và thông lượng trong mạngCụ thể như sau:
Tại bất kỳ nút trung gian nào được thực hiện trong quá trình mô phỏng kỹ thuật
Network coding chúng tasẽ đưa một hệ phương trình có khả năng tổng hợp nhiều
gói tin thành một gói tin duy nhất. Quá trình này gọi là quá trình mã hóa, sau khi có

được gói tin vừa mã hóa nút này mới gửi gói tin đến các nút liền kề với nó tới khi
đến được điểm mong muốn mới dừng lại. Tại nút muốn nhận gói tin sẽ giải ngược
lại với phương trình mã hóa ban đầu để nhận được gói tin mong muốn. Qúa trình
này được gọi là giải mã.
Ở quá trình mã hóa các nút đóng vai trò mã hóa gói tin còn có thể gắn tiêu đề
cho gói tin ấy, tiêu đề này có tác dụng gợi ý phương trình giải mã gói tin cho nút
cần nhận gói tin ấy. Khiến cho quá trình giải mã diễn ra một cách thuận lợi hơn,
nhanh hơn. Hoạt động của mạng cũng nhờ thế trở nên linh động hơn khi có thể có
nhiều phương trình mã hóa và giải nén hơn thay vì phải sử dụng duy nhất một kiểu

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 8/34

mã hóa và giải mã được quy định sẵn. Chính những tiêu đề này khiến cho tỷ lệ mất
gói giảm đi.Nhờ tỷ lệ mất gói tin giảm đi được đề cập phía trên chính là tiền đề để
cho thông lượng trong mạng được tăng lên đáng kể. Khi tỷ lệ mất gói tin giảm, số
lần gửi lại gói tin từ máy chủ hay nút trung gian cũng đồng loạt giảm theo.
1.4 Các công cụ hỗ trợ

Đề tài đồ án này được mô phỏng trực tiếp trên phần mềm matlab. Đây là phần
mềm cung cấp môi trường tính toán số và lập trình, do công ty MathWork thiết kế.
Matlab cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin,
thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương
trình máy tính viết trên nhiều ngôn ngữ lập trình khác.

Mô Phỏng Và Đánh Giá Hiệu Qủa

Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 9/34

CHƯƠNG 2.

LÝ THUYẾT CƠ BẢN

Trong phần này em sẽ giới thiệu sơ lược về lịch sử hình thành kỹ thuật Network
coding, sau đó mô tả mô hình mạng và trình bày các định nghĩa cơ bản cho kỹ thuật
này. Tiếp theo đó, sẽ là phần trình bày một khuân mẫu đại số cho các kết nối trong
mạng Multicast. Cuối cùng, là phần trình bày các thuật toán xác định và ngẫu nhiên
để xây dựng các mã mạng hiệu quả.
1.5 Lịch sử

Vào năm 2000, một nhóm các nhà nghiên cứu khoa học tại Đại học Hồng
KôngTrung Quốcđã công bố một báo cáo mang tên dòng chảy thông tin BNetwork,
nhằm thách thức ý tưởng cơ bản về lưu trữ và chuyển tiếp các gói tin trong các bộ
định tuyến trong mạng truyền thông. Bài báo là ý tưởng đầu tiên đề xuất rằng một
nút trung gian trong mạng có thể chuyển tiếp bất kỳ chức năng nào của các gói tin
đến, không nhất thiết phải giới hạn ở các bản sao của các gói tin này. Ví dụ, một nút
trung gian Bmix có thể nhận nhiều gói tin khác nhau để sau đó sử dụng các kết hợp
tuyến tính để trộn chúng lại thành một gói tin và chuyển tiếp đến các nút trung gian
liền kề sau nó. Cách đơn giản nhất để trộn chúng là chuyển tiếp một gói tin gửi đi
Xor của các gói tin đến. Các gói dữ liệu cần được trộn sao cho khi chuyển tiếp đến
các node còn nguyên vẹn và không có bất kỳ sự thay đổi nào, như thể chúng là hàng
hoá trong dòng hàng hóa, chẳng hạn như ô tô trên xa lộ và các gói tin được đóng gói
lại như đóng gói hàng hóa. Ý tưởng mới là các bit trong luồng thông tin không phải

là cố định, chúng có thể được pha trộn theo ý chúng ta muốn miễn là các máy nhận
đã nhận đủ được gói tin từ máy chủ chuyền đi.Ý tưởng mới này được gọi là
Network coding và điều đó cũng thú vị khi nó được thể hiện trong nghiên cứu ban
đầu. Nghiên cứu này chỉ ra rằng việc sử dụng Network coding có thể giúp tối đa
hóa tốc độ luồng thông tin trong các lần giao tiếp của mạng Multicast (từ một máy
chủ gửi đến nhiều máy chủ). Kể từ khi bài báo này đưa ra các ý tưởng và kết quả
khả quan về các gói dữ liệu có thể hữu ích hơn việc phân phối các gói tin ở dạng
ban đầu, chúng ta có thể cải thiện đáng kể hiệu quả sử dụng băng thông trong

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 10/34

Internet hiện tại bằng cách thực hiện mã hóa các gói tin lại thành một gói duy nhất
rồi mới chuyển tiếp đi.
Trong cả thập kỷ kể từ năm 2000, đã có rất nhiều các công trình nghiên cứu với
chất lượng hàng đầu về Network coding. Những công trình này đã khám phá ra
nhiều điều mới mẻ về chủ đề Network coding, thu hút sự quan tâm của nhiều nhóm
nghiên cứu và các học viên về lĩnh vực viễn thông, truyền thông và cộng đồng
mạng máy tính với một số lượng đáng kể các nghiên cứu về kỹ thuật Network
coding. Thay vì tập trung nhiều hơn vào việc tìm hiểu các thuộc tính lý thuyết cơ
bản và giới hạn của Network coding như các nghiên cứu trước đó. Bắt đầu từ năm
2003, nhiều nghiên cứu đã tập trung hơn vào những thách thức thực tế của nó,
những khó khăn, và giải pháp khắc phục. Nó đã trở nên rõ ràng rõ ràng rằng kỹ
thuật Network coding dựa trên nền tảng lý thuyết vững chắc, có khả năng tương đối
thực tế đối với hạ tầng mạng thực tế hiện nay hay các ứng dụng trong mạng. Trong
cả mạng không dây và Internet, chẳng hạn như lưu trữ phân phối và phân phối nội

dung hỗ trợ lẫn nhau giữa các trạm, kỹ thuật Network coding có một tiềm năng to
lớn khi xét về mặt lý thuyết. Kỹ thuật này ảnh hưởng đến việc thiết kế các giao thức
mạng ở những thế hệ tiếp theo.
2.1 Lý thuyết về mạng Multicast
Mạng Multicast là mạng được ứng dụng rộng rãi trong mạng viễn thông hiện

nay. Mulicast là nơi trao đổi dữ liệu thông tin trong một nhóm các nút của một cùng
nào đó trong mạng. Nó có thể phân phối một hoặc nhiều thông tin cùng lúc giữa
các nút ở trong mạng. Ngược lại với giao tiếp điểm với điểm của lớp vật lý, mạng
Multicast có thể ứng dụng như là mạng tạo liên kết đa hướng giữa các nút trong
mạng. Ở trong mạng này máy chủ có thể gửi gói tin dến nhiều nút hay nhiều nhóm
mạng multicast nhỏ hơn chỉ trong một lần truyền đơn. Bản sao của gói tin có thể
được tạo tự động trong các nút phần tử của mạng khác chẳng hạn như bộ định
tuyến, chuyển mạch và trạm cơ sở di động, nhưng chỉ dùng cho các nút phần tử
trong mạng hiện có của hệ thống.

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 11/34

Mạng Multicast có thể hoạt động tại các tầng liên kết mạng khác nhau bằng cách
chi nhóm các phần tử ở trong mạng viễn thông. Mạng cho phép đặt tên như thể địa
chỉ cho các nút phần tử trong mạng. Mạng hỗ trợ Multicast có thể thực hiện tại tầng
liên kết dữ liệu bằng cách sử dụng nhiều địa chỉ và chuyển đổi như địa chỉ Multicast
Ethernet, chế độ truyền không đồng bộ (ATM), các mạng ảo đa điểm (P2MP) hoặc
đa hướng Infiniband. Mạng Multicast cũng có thể thực hiện ở lớp Internet bằng
cách sử dụng IP multicast. Trong IP multicast, việc thực thi khái niệm multicast xảy

ra ở mức định tuyến IP, nơi mà mà các bộ đính tuyến tạo ra các đường dẫn phân
phối tối ưu cho các gói dữ liệu được gửi đến địa chỉ đích multicast.
Multicast thường được sử dụng trong các ứng dụng giao thức Internet(IP), hoặc
chuyền thông thông trực tuyến như IPTV.
Chú thích:
• Ethernet multicast
Các khung Ethernet có giá trị là 1 trong những bit được gắn vào địa chỉ của
các điểm trong mạng Multicast. Cơ chế này cấu thành mạng Multicast ở lớp liên
kết dữ liệu. Nhờ những địa chỉ IP multicast để đạt được giao tiếp cho một hoặc
nhiều IP trên mạng Ethernet. Bộ lọc của Ethernet nhận các gói tin sẽ chia nhỏ địa
chỉ IP multicast được khởi tạo bằng phần mềm xem gói tin có bị mất hay là đã
nhận đủ chưa.
• IP multicast
Là một kỹ thuật giao tiếp giữa một hay nhiều mạng IP. Các máy chủ gửi giao
thức quản lý đến một nhóm IP trong mạng và các IP trong nhóm này sẽ lưu lại
giao thức quản lý đó. Ví dụ trong trường hợp mạng IPTV khi người dùng muốn
thay đổi từ kênh truyền hình này sang kênh truyền hình khác. Với phát đa hướng
số người dùng lớn hơn bằng cách không yêu cầu có bao nhiêu người nhận. Mạng
multicast sử dụng hiệu quả bằng cách yêu cầu máy chủ gửi duy nhất một gói chỉ
một lần, ngay cả khi nó cần được gửi tới một số lượng lớn người dùng. Các nút
trong mạng sẽ tự động sao chép và trao đổi với nhau khi cần thiết.
Để hình dung rõ hơn về mạng multicast, quan sát hình ảnh minh họa như sau:

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 12/34


Hình 2-1: Mô hình mạng Multicast
Đây là mô hình mạng cánh bướm cổ điển, nó là mô hình nguyên thủy nhất để
hình dung về mạng Muticast. Các kỹ thuật mạng đã có và ngay cả kỹ thuật Network
coding cũng đều được phát triển dựa trên mô hình này. Với s được coi như là máy
chủ nguần phát gói tin p tới các node(hoặc máy chủ trung gian) của mạng. Gói tin p
được chuyển tới các nút (1,2,3,…k). Tại các nút này khi đã nhận được gói tin, nó có
thể sử dụng trực tiếp hoặc sao chép rồi chuyển tiếp đến các nút liền kề với nó. Hay
thâm chỉ nó còn có thể mã hóa nhiều gói tin tại đây và chuyển tiếp cho khác nút
khác nếu cần thiết được. Khả năng mã hóa này được đề cập đến trong kỹ thuật
Network coding (phần 2.4).

1.6 Các vấn đề nghiên cứu trong mạng Multicast

Trong mạng Multicast hiện nay, các mạng không dây ở các dạng khác nhau của
viễn thông (kết nối dặm dài, cảm biến, mạng cộng đồng, v.v.) sẽ là phương tiện

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 13/34

truyền thông chủ đạo trong tương lai. Nhưng các triển khai không dây hiện tại vẫn
đang phải đối mặt với các giới hạn:băng thông, tốc độ mạng, bảo mật,… Đối với
mạng không dây quy mô lớn để hoạt động bình thường, cần những tiến bộ nghiên
cứu về sự nâng cao băng thông và tốc độ mạng trong quá trình gửi, nhận gói tin.
1.7 Lý thuyết Network coding

Mạng truyền thông được thiết kế để cung cấp thông tin từ nút nguồn đến đích.

Cách truyền dữ liệu truyền thống sử dụng đường dẫn cho các kết nối vật lý hoặc kết
nối vô truyến và mạng Multicast được ứng dụng cho các thiết kế này. Khi dữ liệu
được định tuyến trên một đường truyền, mỗi nút trung gian chuyển tiếp các gói
nhận được qua đường truyền này để tới các nút trong mạng của nó. Trong một kết
nối mạng Multicast, các nút trung gian có thể sao chép các gói và chuyển tiếp chúng
đến một số nút khác ở trong mạng.Kỹ thuật Network coding cho phép các nút trung
gian tạo ra các gói dữ liệu mới bằng cách mã hóa một hay nhiều gói nhận được trên
các đường truyền của nút trong mạng. Kỹ thuật này cung cấp một số lợi ích, chẳng
hạn như tối ưu hóa thông lượng, băng thông, thời gian truyền gói tin và tiêu hao
năng lượng của mạng đến mức tốt nhất có thể.
1.1.3 Ưu điểm của kỹ thuật Network coding
Khác biệt với kỹ thuật chuyển tiếp truyền thống. Số lượng gói tin tối đa có thể
được gửi từ nguồn đến tập hợp các đầu cuối không thông qua mã hóa gói tin lại như
Network coding trong mạng truyền thông, tức là trong một mô hình truyền thông
trong đó mỗi nút trung gian chỉ có thể chuyển tiếp các gói tin đến. Dễ dàng nhận
thấy ưu điểm vượt trội hơn của kỹ thuật Network coding mã hóa là tỷ lệ mất gói tin
và số lần truyền gói tin luôn đưa ra kết quả tối ưu hơn rất nhiều về mặt lý thuyết.
Ưu điểm nàygiúp cho các nhà cung cấp mạng viễn thông nắm bắt lợi ích của các kỹ
thuật Network coding để tối ưu hóa thông lượng, băng thông, thời gian truyền gói
tin và tiêu hao năng lượng của mạng đến mức tốt nhất có thể.
1.1.4 Mã hóa gói tin
Chúng ta mô hình hóa mạng lưới thông tin liên lạc bằng một đồ thị định hướngG
(V, E), trong đó V là tập hợp các nút và E là tập hợp các cạnh trong G. Thông tin

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 14/34


giữa các nút mạng được truyền đi trong các gói tin. Giả định rằng mỗi gói là một
trong những phần tử của trường hữu hạn và có thể được biểu diễn bằng một véc tơ
nhị phân của các bit có chiều dài .Nếu giao tiếp giữa các nút trong mạng được thực
hiện theo từng vòng, như vậy ở mỗi vòng, mỗi cạnh trong mạng có thể truyền một
gói đơn. Lưu ý rằng, giả định này ngụ ý rằng tất cả các cạnh có cùng dung lượng
của một đơn vị mạng. Tuy nhiên, không dẫn đến mất tính tổng quát vì các cạnh của
dung lượng lớn hơn có thể được biểu diễn bằng nhiều cạnh song song có dung
lượng nhỏ hơn. Chúng ta định nghĩa kỹ thuật Network coding trong mạng
Multicast, bao gồm graph, một nút nguồnsvà một bộ của thiết bị đầu cuối.
Chúng ta xác định dung lượng của mạng Network codinglà trình bao bọc chặt
chẽ nhất trên lượng thông tin có thể được truyền từ nút nguồn đến tất cả các nút
đích trong một vòng truyền thông. Cụ thể hơn, với h (i) là số lượng gói tối đa có thể
được gửi từ tất cả các thiết bị đầu cuối trong vòng i. Sau đó, dung lượng của mạng
được định nghĩa như sau:
(1)
Ví dụ, mạng được mô tả trong hình 2-2(a) có thể cung cấp hai gói dữ liệu cho
mỗi đơn vị thời gian cho mỗi thiết bị đầu cuối, do đó dung lượng của nó bằng hai.

Hình 2-2: Mô hình mạng Network coding cơ bản

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 15/34

Thật vậy, sơ đồ Network coding được mô tả trong hình 2-2(d) có thể cung cấp hai
gói mới ở mọi vòng giao tiếp. Đối với mạng này, cho, với. Thuộc tính cuối cùng

được giữ cho bất kỳ mạng truyền thông tuần hoàn nào, nhưng nó không nhất thiết
phải giữ cho một mạng có chứa các tiến trình đang thực thi. Để rõ hơn về điều này,
ta có thể xem lại mạng Network coding với chu kỳ được mô tả trên Hình 2-2(a).
Đối với mạng này, rất dễ dàng để xác minh rằng một vònggiao tiếp là không đủ để
cung cấp hai gói cho cả hai thiết bị đầu cuối t1 và t2.Hình 2-2(b) cho thấy một sơ đồ
Network coding có thể truyền gói dữ liệu qua vòng, do đó dung lượng của mạng
bằng hai. Đặc biệt ở vòng đầu tiên, nút v3 chuyển tiếp gói tin mà nó nhận được qua
cạnh đến của nó. Sau đó, đối với mỗi vòng thứ , nút v3 tạo ra một gói mới bằng
cách tính toán lại với: và , và

Hình 2-3: Chu kỳ mã hóa Network coding
1.1.5 Giải mã gói tin
Trong phần này, chúng ta trình bày định nghĩa chính thức về mã mạng tuyến
tính. Để rõ ràng hơn, giả sử rằng đồ thị mạng bên dướilà tuần hoàn. Như đã thảo
luận ở trên, các mạng như vậy dễ phân tích hơn, bởi vì chúng ta chỉ cần xem xét
một vòng giao tiếp đơn lẻ. Cũng có thể giả định rằng chính xác một gói được gửi

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 16/34

qua mỗi cạnh trong mạng và mỗi nút phải nhận tất cả các gói từ các cạnh đến của
nút trước khi gửi một gói trên các cạnh đi của nút ấy.
Giả sử rằng chúng ta muốn truyền đi các gói tin h bằng trênmạng Multicast .
Chúng ta giả định rằng các nút nguồn s có cạnh đến, lập chỉ mục của , , ...,, và mỗi
thiết bị đầu cuối t có gói gửi tới từ cạnh đến và không có gói nào gửi từ cạnh đi.
Lưu ý rằng những giả định này có thể được thực hiện mà không mất tính tổng quát.

Thật vậy, giả sử rằng giả định thứ hai không giữ cho một sốt đầu cuối. Trong trường
hợp này, chúng ta có thể thêm một thiết bị đầu cuối mới được kết nối với theo cạnh
song song. Hình 5(a) mô tả một ví dụ về mạng đáp ứng các giả định này. Đối với
mỗi cạnh e chúng ta sẽ quy định rằng gói được truyền trên cạnh đó. Mỗi , của nút
nguồn sẽ quét các gói tin ban đầu để nhận biết kiểu mã hóa và đưa ra phương pháp
giải mã đã được quy định sẵn trong mạng.
Gọilà một cạnh của mạng mã hóa . và để thiết lập các cạnh đến trong của nút
đuôi , . Sau đó, chúng ta liên kết với mỗi cạnh một hệ số mã hóa .Các hệ số mã hóa
của các cạnh thuộc về , gói tin với gói tin được truyền trên cạnh như một hàm của
các gói được truyền trên các cạnh đến. Cụ thể, các gói tin bằng với
(2)
Định nghĩa(Mạng tuyến tính): Với là một mạng mã hóa và cho là một trường hữu
hạn. Thì, việc gán các hệ số mã hóa được cho bới công thức sau:
(3)
Hình 2-3(c) thể hiện các hệ số mã hóa cục bộ tạo thành mạng tuyến tính
mã cho mạng mã hóa được mô tả trong Hình 2-3(a). Mục tiêu của chúng ta là tìm
một tập hợp các hệ số mã hóa mạng cho phép mỗi bộ giải mã giải mã các gói gốc
từ các gói thu được thông qua các cạnh đến của nút. Phân phối thỏa mãn điều kiện
này được gọi là mã mạng khả thi cho . Ví dụ, ta có thể xem xét mạng được mô tả
trong Hình 2-3(a) và giả sử rằng tất cả các hoạt động được thực hiện trên trường .

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 17/34

Hình 2-4: Sơ đồ kỹ hiệu mã hóa
Nếu là một cạnh đi của các nút nguồn, thì đó là bằng:

(4)
2.2 Một số kỹ thuật khác đã từng được nghiên cứu

Để đối phó với các vấn đề xảy ra trong mạng truyền thông không dây. Trên thực
tế chất lượng mạng còn bị ảnh hưởng bởi rất nhiều các yếu tố khác nhau như: môi
trường(nhiệt độ, độ ẩm,…), phần mềm(virus, phần mềm độc hại,…), thiết bị đầu
cuối của khách hàng kém chất lượng,… Đã có rất nhiều nghiên cứu về kỹ thuật
truyền tải dữ liệu trong mạng Multicast.Có thể mô tả ngắn gọn về
các kỹ thuật này như:
1) End-to-end ARQ: Máy chủ gốc của mạng Multicast truyền lại lần lượt từng gói
cho đến khi nó nhận được phản hồi rằng gói tin gửi đi là chính xác và chúng đã
nhận đủ gói tin mình cần của tất cả các nút trong mạng Multicast. Tất cả các nút
trung gian của mạng chỉ đóng vai trò nhận và chuyển tiếp các gói tin đi đến các nút
liền kề sau nó.

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 18/34

2) End-to-end FEC: Tương tự như End-to-end ARQ, chỉ máy chủ tại gốc của
mạng Multicast mới có trách nhiệm truyền lại gói tin cho đến khi nó nhận được
phản hồi rằng các gói tin mà nó gửi đi và chúng đã nhận đủ gói tin mình cần của tất
cả các nút trong mạng Multicast. Tất cả các nút trung gian của mạng chỉ đóng vai
trò nhận và chuyển tiếp các gói tin đi đến các nút lân cận liền kề sau nó. Điểm khác
biệt duy nhất đối với các chương trình dựa trên kỹ thuật FEC, nó sử dụng kỹ thuật
mã hóa khối để tạo các gói mã hóa sau đó mới chuyển tiếp đến các nút lân cận liền
kề với nó.

3) Link-by-link ARQ: Mỗi nút trung gian trong mạng Multicast chịu trách nhiệm
truyền tải các gói tin đáng tin cậy đến các nút con liền kề sau nó. Nghĩa là, một nút
truyền lại gói tin mà nó nhận được từ máy chủ gốc cho đến khi gói tin được nhận
đúng và đủ bởi tất cả các nút con liền kề sau nó. Lưu ý rằng một số nút trong mạng
Multicast có thể nhận được nhiều hơn một bản sao của gói tin được gửi tới.

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 19/34

HIỆU NĂNG CỦA KỸ THUẬT NETWORK
CODING TRONG MẠNG MULTICAST

CHƯƠNG 3.

3.1 Mô hình Network coding.
Đây là mô hình Network coding cơ bản được đưa vào trong đề tài này để thực hiện

mô phỏng lại quá trình hoạt động của kỹ thuật Network coding trong mạng
Multicast.

Hình 3-5: Mô hình Network coding đưa vào mô phỏng
Theo như mô hình được đưa ra ở hình 4. Giả sử nút 1 đóng vai trò làm máy chủ,
máy chủ có nhiệm vụ gửi đi 2 gói tin và tới 2 nút liền kề với nó là nút 2,3. Nút 2 và
nút 3 ở đây đóng vai trò là nút nhận gói tin sau đó sao chép gói tin vừa nhận được
và gửi đến các nút 4, nút 6 và nút 7. Khi nút 4 nhận gói tin và tại đây nút này thực
hiện quy trình mã hóa hai gói tin này lại thành một gói tin duy nhất a. Sử đụng

phương pháp mã hóa đã được quy định sẵn trong Network coding, sau đó gói tin
này được gửi đến nút 5. Nút 5 sao chép và gửi gói tin vừa nhận được tới nút 6,7.
Tại nút 6 và nút 7, quy trình giải mã đươc tiến hành dựa trên phương pháp giải mã
được quy định sẵn trong Network coding. Nói cách khác hai nút này đang thực hiện

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 20/34

giải bài toán ngược so với quy trình mã hóa ban đầu để thu được gói tin mà nút ấy
muốn nhận. Tại nút 6: b = a , tại nút 7: a = a – b
1.8 Phân tích, đánh giá

Đối với một mạng viễn thông nói chung, có rất nhiều yếu tố ảnh hưởng tới chất
lượng của mạng như: môi trường, băng thông, tốc độ đường truyền, … Nhưng trong
đề tài đồ án này dể mô phỏng được kỹ thuật Network coding ta chỉ tập chung vào
hai thông số chính đó là tỷ lệ mất gói và thông lượng trong mạng, cụ thể như sau:
Gọilà số gói tin được gửi đi từ máy chủ của một cây con của chiều cao (máy
chủ gốc của nó) trước khi gói được nhận bởi tất cả các nút K của cây con, là xác
xuất mất gói tin trong quá trình truyền. Đối với nguồn gửi của một cây đa chiều cao,
ta có là số gói nhận được tại nguồn cho đến khi nhận được đủ gói tin từ các bộ thu
phát đa hướng (xem Hình 4-1).
Ta có:
(5)
Ở đây, theo định nghĩa trên.
Phương trình tính toán đệ quy chotrong kỹ thuật Network coding, ddầu tiên xét với
máy chủ gửi gói tin đi làs.Xác suất mà n gói được gửi đi và có i gói được nhận bởi

các node K được tính theo biểu thức sau:
(6)
Lưu ý rằng với gốc của sơ đồ cây Multicast, xác suất lỗi bằng không, suy ra ,
, và , ngược lại. Máy chủ s gửi các gói tin đến các nút K trung gian liền kề với nó,
đối với mỗi nút trung gian, xác suất tất cả các nút trung gian liền kề sau nó sẽ nhận
được gói tin tạo ra bởi. Vì một nút con K có tổn thất gói độc lập, xác suất mà tất cả
các nút liền kề nó nhận được một gói tin sẽ được cho theo , mà biểu diễn bằng điều
này là không hợp lý. Do đó bằng cách pha trộn tất cả các giá trị có thể của , sẽ có
được:

,

(7)

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 21/34

Do đó, có một phương trình đệ quy để tính toán cho Có thể thấy là độc lập với kỹ
thuật lỗi đầu cuối. Xác xuất mà một nút của mạng Multicast nhận được gói tin đã
pha trộn từ các gói tin gửi đi từ máy chủ s như sau:
(8)
Xác xuất mất gói tin trong quá trình truyền được tính như sau:
1.1.6 Tỷ lệ mất gói tin.
Tại bất kỳ nút trung gian nào trong mạng với kỹ thuật network coding sẽ đưa
một hệ phương trình có khả năng tổng hợp nhiều gói tin thành một gói tin duy nhất.
Quá trình này gọi là quá trình mã hóa, sau đó nút này mới gửi gói tin đến nút liền kề

với nó tới khi đến được điểm mong muốn mới dừng lại. Tại nút muốn nhận gói tin
sẽ giải ngược lại với phương trình mã hóa ban đầu để nhận được gói tin mong
muốn. Qúa trình này được gọi là giải mã.
Giả sử Tỷ lệ mất gói tin:
(9)
Đối với Network coding ta phải tính toán làm sao cho tổng số gói giải mã được
đạt giá thị càng lớn càng tốt, để có được tỷ lệ mất gói tin là thấp nhất.
1.1.7 Thông lượng
Như ta đã biết, với bất kỳ kỹ thuật nào thì những lần gửi đi gói tin từ máy chủ
ứng với nó đều có tỷ lệ mất gói tin nhất định. Ở đây, cứ mỗi lần giải mã gói tin nếu
bộ giải mã của nút trong mạng cần nhận gói tin phát hiện ra một gói tin bị mất, hoặc
có gói tin bị thất lạc thì nút này sẽ gửi lại một thông điệp cho máy chủ. Thông điệp
này, yêu cầu máy chủ gửi lại gói tin từ ban đầu đến khi nhận được gói tin bị lỗi hay
bị mất mới tiếp tục giải mã gói tin. Ta có công thức tính thông lượng mạng như sau:
(10)

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 22/34

Giả sử tốc độ truyền tải dữ liệu trong mạng là được cho sẵn từ ban đầu. Thông
lượng của mạng luôn luôn tỷ lệ nghịch với tỷ lệ mất gói tin trong đường truyền.
Thông lượng T càng cao thì tốc độ truyền càng cao, thời gian gửi và nhận gọi tin sẽ
nhanh hơn. Kỹ thuật Network coding trong bài này đang cố gắng làm tăng thông
lượng nên mà trong đó với là các hằng số tham gia vào phương trình này, nên ta sẽ
cố gắng làm sao cho tỷ số giảm ở mức thấp nhất có thể để tăng thông lượng của
mạng.


Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 23/34

1.9 Lưu đồ giải thuật Network coding
Begin

Thiết lập các số liệu ban đầu

Tạo các hệ số truyền

Tạo các mẫu liên kết

Tạo các hệ số truyền tại nút 0

Tính toán hao hụt đường truyền

Tính số gói nhận được tại từng node

Tính số gói bị mất trong quá trình giải mã tại nút 6 và nút 7

Tính tỷ lệ mất gói tại nút 6 và nút 7

Tính thông lượng mạng

Xuất kết quả tỷ lệ mất gói và thông lượng dưới dạng hình ảnh


End

Hình 3-6: Lưu đồ giải thuật chính
Lưu đồ giải thuật cho kỹ thuật Network coding được áp dụng trong đề tài đồ án này
được thực hiện theo hướng tuần tự của các chương trình con được lập trình sẵn thực
hiện các chức năng khác nhau. Để mô phỏng được trước hết ta phải tạo được gói tin

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 24/34

trong đường truyền, hệ số truyền, liên kết giữa các nút trong mạng và quan trọng
nhất đó là bộ mã hóa, giải mã gói tin.
Công đoạn tạo gói tin được nhập bằng tay trên phần mềm Matlab, các gói tin
phải đảm bảo yêu cầu có xác xuất lỗi bit là ngẫu nhiên không dự đoán trước được.
Mọi thông số đều được lập trình sẵn trên phần mềm Matlab nên hệ số ban đầu đưa
vào chương trình chỉ gồm số gói tin đưa vào mô phỏng. Khi nhận được số gói tin
cần đưa vào mô phỏng công việc còn lại như chuyển tiếp gói tin, mã hóa, giải nén,
đều được hoạt diễn ra một cách tự động trên máy tính.Tương tự như vậy các pháp
tính toán như tính hao hụt, tỷ lệ mất gói, thông lượng,… cũng sẽ được chạy tự động
trên máy tính.
Begin

Kiểm tra số gói tin cần phải tạo

Tạo gói tin


Tạo hệ số gói tin

Tạo tiêu đề gói tin

End
Hình 3-7: Lưu đồ giải thuật quá trình tạo gói tin bau đầu
Công đoạn tạo gói tin ban đầu được thực hiện bằng tay theo dạng ma trận. Mỗi
ma trận bao gồm 10 hàng và 1000 cột. Ở đây số lượng gói đưa vào trong 1 lần mô
phỏng sẽ là 10, và mỗi gói chứa 1000 bit. Xác sất lỗi gói tin được tạo trên những bit
nhị phân cơ bản này rồi mới được đưa vào mô phỏng.

Begin
Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


ĐỒ ÁN TỐT NGHIỆP
Trang 25/34

Nhập các dữ liệu cần đưa vào
Kiểm tra gói tin cuối được tạo
Tổng hợp gói tin trong nút
Đưa gói tin ra bộ truyền

End
Hình 3-8: Lưu đồ giải thuật quá trình mã hóa gói tin
Quá trình này được hoạt động hoàn toàn tự động trên máy tính và mỗi nút trong
mạng đều được cấp trương trình mã hóa. Điểm khác biệt ở đây chính là khâu kiểm
tra tiêu đề của gói tin nếu như gói tin gói tin đấy là gói tin cuối cùng thì thiết bị tại

sử dụng tại nút này sẽ thực hiện mã hóa gói tin, ngược lại nếu chưa phải là gói tin
cuối được nhận thì nó sẽ tiếp tục đợi cho đến khi nhận đủ hoặc yêu cầu máy chủ gửi
lại gói tin nếu phải chờ quá lâu. Trường hợp kiểm tra tiêu đề gói tin nếu thấy đây là
gói tin duy nhất nó được nhận thì gói tin ấy sẽ được gửi tiếp đến các nút liền kề phía
sau nó.
Khi mà nút kiểm tra thấy gói tin vừa được nhận là gói tin cuối cùng, nút này sẽ
chịu trách nhiệm mã hóa các gói tin thành một gói tin duy nhất sau đó đưa gói tin ra
bộ chờ truyền để chuẩn bị truyền gói tin đi.

Mô Phỏng Và Đánh Giá Hiệu Qủa
Của Kỹ Thuật Network Coding Trong Mạng Vô Tuyến


×