c. Sự duy nhất của các địa chỉ
Chúng ta có thể phân biệt các yêu cầu duy nhất sau đây đối với các tên và các địa chỉ
mạng.
Duy nhất toàn cầu: một địa chỉ hoặc nhận dạng duy nhất toàn cầu đƣợc cho là xuất hiện gần nhƣ là một lần trên tồn thế giới. Ví dụ: các địa chỉ MAC IEEE 48 bit dùng trong mạng Ethernet và Token Ring. Biểu diễn nhị phân của các địa chỉ này phải đủ lớn để cung cấp cho tất cả các thiết bị toàn trên thế giới.
Duy nhất toàn mạng: một địa chỉ duy nhất toàn mạng đƣợc cho là duy nhất trong một mạng đã cho, nhƣng địa chỉ tƣơng tự có thể đƣợc sử dụng trong các mạng khác. Bằng
việc có các mạng khác nhau A và B, chúng ta ngụ ý rằng khơng có cặp nút nào thỏa mãn a
A và b B mà có thể truyền thơng đƣợc với nhau.
Duy nhất ở địa phƣơng: một địa chỉ duy nhất ở địa phƣơng có thể xuất hiện vài lần trong cùng một mạng, nhƣng nó phải là duy nhất trong một vùng lân cận đƣợc xác định phù hợp. Để minh họa điều này:
Đối với các địa chỉ MAC, nó là hợp lý để yêu cầu rằng chúng là duy nhất chỉ trong vùng lân cận hai bƣớc nhảy. Vấn đề xảy ra liên quan đến yêu cầu này đƣợc trình bày trong hình 4.2: nút C là một nút lân cận một bƣớc nhảy của nút B và là một nút lân cận hai bƣớc nhảy của nút A. Nếu nút A và nút C có cùng các địa chỉ MAC, thì nút B khơng thể luận ra một gói tin đang tới là từ máy phát nào, hoặc nút B cũng khơng thể truyền trực tiếp các gói của nó tới một máy thu dự kiến duy nhất.
Một ví dụ khác đƣợc cho bởi một mạng cảm biến với các loại cảm biến khác nhau nhƣ các cảm biến nhiệt độ, độ ẩm, và ánh sáng. Chúng ta có thể yêu cầu rằng khơng có 2 cảm biến nhiệt độ nào có cùng địa chỉ nhƣng một cảm biến nhiệt độ và một cảm biến độ ẩm thì có thể. Trong trƣờng hợp này, vùng lân cận đƣợc tạo thành bởi các cảm biến của cùng một loại.
133
d. Phân phối và ấn định địa chỉ
Việc ấn định địa chỉ có thể nảy sinh một ƣu tiên, (ví dụ: trong q trình sản xuất hoặc trƣớc khi triển khai mạng) hoặc theo yêu cầu, bằng cách sử dụng một giao thức ấn định địa
chỉ. Giao thức ấn định địa chỉ theo yêu cầu này có thể hoặc là tập trung hoặc là phân tán.
Trong một giải pháp tập trung, có một nút/ngƣời có quyền quản lý (các phần của) kho địa chỉ, trong khi đó ở các giải pháp phân tán, khơng có nút nào thể hiện nhƣ vậy. Thay vào đó, tất cả các nút tiềm năng thực hiện cùng một vai trò trong việc ấn định địa chỉ. Việc giải phóng/khơng phân phối địa chỉ thực hiện một vai trò quan trọng khi các địa chỉ duy nhất toàn mạng hoặc cục bộ đƣợc ấn định theo yêu cầu.
Trong việc ấn định địa chỉ phân tán, không thể luôn luôn cho phép việc đảm bảo là duy nhất trong toàn mạng tại tất cả các thời điểm. Một ngƣời có thể hoặc là quyết định đơn giản
bằng việc sống chung với vài xung đột địa chỉ hoặc là phát hiện và giải quyết chúng. Trong
trƣờng hợp thứ hai, ngƣời ta sự khác biệt giữa Việc phát hiện địa chỉ đúp (DAD: Duplicate
Address Detection) mạnh và yếu:
Ở DAD mạnh, ngƣời ta yêu cầu rằng nếu địa chỉ x đã đƣợc phân phối cho nút A tại
thời điểm t0 và sau đó lại đƣợc cấp phát cho nút B tại thời điểm t1, thì sau đó việc
cấp phát địa chỉ đúp này phải đƣợc phát hiện muộn nhất là tại thời điểm t1+T trong
đó Tlà một giới hạn thời gian cố định nào đó.
Trong DAD yếu, các địa chỉ đúp đƣợc chịu đựng miễn là chúng không gây nhiễu cho các phiên tiếp theo. Ví dụ: nếu hai mạng A và B kết hợp với nhau và một địa chỉ x đƣợc cấp phát trong cả hai mạng, khơng có hoạt độngnào xảy ra chừng nào
mà tất cả các gói tin từ các nút của mạng cũ A đƣợc nhắm tới x, đi tới nút trong
mạng A với địa chỉ x và không phải là nút với cùng một địa chỉ trong mạng khác.
Một ví dụ cho kiểu cấp phát địa chỉ tập trung là giao thức DHCP (Dynamic Host
Configuration Protocol) đƣợc biết đến từ thế giới Internet. Tuy nhiên, có một số vấn đề với các kiểu tập trung này:
Các giải pháp tập trung không phù hợp tốt với các mạng cảm biến. Số lƣợng tuyệt đối của các nút tạo ra lƣu lƣợng đáng kể, lƣu lƣợng này đƣợc hƣớng trực tiếp tới
một hoặc vài máy chủ (server) địa chỉ và khu vực xung quanh máy chủ trở thành
một điểm nóng. Điều này có thể đƣợc lợi dụng cho một số mở rộng bằng cách triển khai các kỹ thuật dựa trên các phân nhóm, trong các kỹ thuật đó việc chia sẻ tách rời của không gian địa chỉ đƣợc phân phối tới các chỉ huy phân nhóm, các chỉ huy phân nhóm này lại lần lƣợt cấp phát các địa chỉ này cho các thành viên của phân nhóm.
Nếu mạng đã bị chia tách trƣớc khi một nút mới gia nhập vào, thì máy chủ địachỉ
trung tâm có thể khơng tiếp cận đƣợc.
Giao thức DHCP yêu cầu các nút làm mới các địa chỉ của chúng theo chu kỳ để phát hiện sự không phân phối địa chỉ đột ngột.
134
e. Đánh địa chỉ phần mào đầu
Một trong các khía cạnh quantrọng nhất của các địa chỉ là số lƣợng các bit cần thiết cho
việc biểu diễn chúng hoặc phần màođầu (overhead) của chúng. Phần mào đầu này và do đó
năng lƣợng cần thiết để truyền thông tin địa chỉ liên quan đến hai yếu tố: (i) Tần số mà với tần số này các địa chỉ đƣợc sử dụng và (ii) kích thƣớc của việc biểu diễn chúng. Chúng ta xem ví dụ về các địa chỉ MAC. Có một số giao thức MAC nhƣ TRAMA hoặc SMACS thiết lập các
đƣờng kết nối dành riêng giữa hai nút cạnh nhau bằng cách ấn định các khe thời gian hoặc các
tần số khơng có xung đột. Nếu một đƣờng kết nối nhƣ vậy đƣợc sử dụng cho một gói dữ liệu, thì khơng cần thiết phải mang thơng tin địa chỉ trong các gói này bởi vì các nút nguồn và nút đích là hồn tồn đã cho.
Ngƣợc lại, trong các giao thức MAC dựa trên sự tranh chấp (ganh đua), tại một thời điểm đã cho bất cứ nút nào cũng có thể truyền tới các nút khác và thơng tin đánh địa chỉ do đó là yếu tố sống cịn để nhận dạng nguồn và đích và để tránh nghe lén. Vì vậy, càng ít bit
dùng cho một địa chỉ thì càng tốt. Chúng ta hãy nhìn vào sự khơng dung hịa (trade-offs) liên
quan ở đây:
Chẳng hạn, chúng ta chọn một địa chỉ duy nhất toàn cầu đƣợc ấn định ƣu tiên nhƣ trong Ethernet IEEE 802.3. Ở đó, 48 bit đƣợc sử dụng để cung cấp số lƣợng thiết bị hiện tại và đã biết trƣớc. Trong các mạng Ethernet các khung tƣơng đối lớn có kích thƣớc vài trăm byte đƣợc sử dụng, nên các địa chỉ 6-byte là một phần mào đầu không đáng kể, và một cấp phát địa chỉ ƣu tiên sẽ loại bỏ việc cần đến một giao thức cấp phát địa chỉ. Mặt khác, trong các mạng cảm biến khơng dây sẽ có nhiều gói dữ liệu nhỏ và vì thế một địa chỉ đơn 48 bit có thể sẽ lớn hơn dữ liệu.
Một địa chỉ duy nhất tồn mạng phải có một số lƣợng các bít đủ để cung cấp cho tất cả các nút trong mạng. Trong một mạng cảm biến với 10.000 nút, một địa chỉ gồm 14 bít là đủ. Tuy nhiên, để tối thiểu hóa số lƣợng của các bit địa chỉ, kích thƣớc của mạng phải đƣợc biết trƣớc. Một số dự trữ an toàn độ rộng trƣờng địa chỉ là quan
trọng nếu xảy ra việc triển khai đa pha, nghĩa là nếu các nút thêm vào mạng đƣợc
triển khai lâu sau khi mạng đã sẵn sàng cho việc sử dụng lần đầu tiên, ví dụ: để thay thế các nút có dự trữ năng lƣợng đã cạn kiệt.
Một địa chỉ duy nhất cục bộ phải là duy nhất trong một vùng lân cận nhất định,
vùng này thƣờng nhỏ hơn rất nhiều so với tồn mạng. Ví dụ: các địa chỉ MAC phải
là duy nhất trong một vùng hai bƣớc nhảy, vùng này có thể chứa vài tá nút, phụ thuộc vào mật độ nút. Do đó, các địa chỉ có thể sử dụng ít bit hơn đáng lẽ nó phải cần cho các địa chỉ duy nhất tồn mạng. Nói cách khác, bởi vì cấu trúc liên kết
mạng (topology) chính xác rất ít khi đƣợc biết trƣớc, nên một giao thức cấp phát địa
chỉ là cần thiết. Việc có ít bit địa chỉ hơn là điều quan trọng nếu số lƣợng của các bit dữ liệu trong một gói là nhỏ.
Có một sự khơng dung hịa ởđây, đó là việc sử dụng các địa chỉ MAC cục bộ ngắn hơn có thể tiết kiệm năng lƣợng đáng kể trong trƣờng hợp các gói dữ liệu nhỏ, nhƣng yêu cầu phần mào đầu là ở dƣới dạng các giao thức cấp phát/dàn xếp địa chỉ. Trong các mạng cảm biến với các nút phần lớn là không chuyển động, một giao thức nhƣ vậy là cần thiết để chạy
135
trƣờng hợp này, những lợi ích từ việc tiết kiệm các bit địa chỉ trong mỗi gói dữ liệu có thể có nhiều tác dụng hơn đối với giá thành của giao thức dàn xếp. Mặt khác, trong các mạng ad hoc và mạng cảm biến có khả năng di động cao, giao thức dàn xếp cần phải chạy thƣờng xuyên nhằm mục đích tiết kiệm năng lƣợng.
4.2.2 Quản lý tên và địa chỉ trong WSN
Chúng ta thấy rằng các địa chỉ MAC là không thể thiếu đƣợc nếu giao thức MAC sử dụng việc tránh nghe lén và chuyển sang chếđộ ngủ (sleep mode) một cách thƣờng xuyên có thể. Tuy nhiên, các địa chỉ MAC có cần phải duy nhất toàn mạng hay duy nhất tồn cầu khơng? Câu trả lời là “Khơng”, bởi vì phạm vi của một giao thức MAC là truyền thông giữa các nút gần nhau. Yêu cầu này đảm bảo rằng khơng có hai nút gần nhau nào của một nút đã đƣợc lựa chọn có cùng địa chỉMAC. Nhƣ đã thảo luận ởtrên, các địa chỉ duy nhất cục bộ có khảnăng là ngắn nhƣng cần một giao thức cấp phát địa chỉ. Vấn đềnày đƣợc đề cập đến trong phần sau. Làm cách nào mà các địa chỉ lớp cao, đặc biệt là các địa chỉ lớp mạng, mà dùng cho các giao thức định tuyến phải là duy nhất toàn mạng hoặc duy nhất toàn cầu? Chúng ta sẽ thảo luận ngắn gọn rằng việc thỏa mãn yêu cầu này là một nhiệm vụ cực khó. Chúng ta cũng tranh luận rằng yêu cầu này là không thực sự cần thiết trong các mạng cảm biến khơng dây bởi vì cuối cùng thì tồn mạng khơng phải là một bộsƣu tập của các nút thuộc những ngƣời sử dụng cá nhân mà các nút kết hợp với nhau để xử lý các tín hiệu và các sự kiện từmơi trƣờng vật lý. Sựtranh cãi chính đó là ngƣời sử dụng rốt cục quan tâm đến dữ liệu chứkhông quan tâm đến cá nhân các nút hay các nhóm nút mang dữ liệu đến. Đi xa hơn về vấn đề này, thì dữ liệu cũng có khả năng ảnh hƣởng đến hoạt động của các giao thức, mà các giao thức lại là cốt lõi của mạng dữ liệu tập trung. Các kiểu đánh địa chỉ dựa trên nội dung hoặc đánh địa chỉ tập trung vì thế rất quan trọng và sẽđƣợc thảo luận trong phần 4.2.3.
4.2.3. Các phương pháp đánh địa chỉ
Các mạng ad hoc và mạng cốđịnh truyền thống cung cấp các dịch vụ và các giao thức, chúng cho phép một sốlƣợng lớn những ngƣời sử dụng độc lập trao đổi dữ liệu với nhau và với phần còn lại của thế giới. Mặt khác, trong các mạng cảm biến không dây, các nút tƣơng tác với môi trƣờng vật lý, và chúng kết hợp với nhau, nghĩa là chúng không độc lập với nhau. Một ngƣời sử dụng của một mạng cảm biến không dây rốt cục muốn biết đôi điều về môi trƣờng vật lý mà mạng tƣơng tác với, nhƣng anh ta thƣờng không quan tâm đến các nút cảm biến cá nhân. Ví dụ: một ngƣời sử dụng muốn hỏi “hãy cho tôi biết nhiệt độ trong phịng 205 trong tịa nhà A3” thay vì “thu thập các giá trị nhiệt độ của nút cảm biến 13, 47, 2225, 14592, và 14593 và cho tôi giá trị trung bình của chúng”. Ngƣời ta thƣờng thích cho phép ngƣời sử dụng đặt tên cho dữ liệu họquan tâm đến chứ không phải là nút (hay tập hợp các nút) tạo ra dữ liệu. Trong các mạng dựa trên IP truyền thống, yêu cầu này tƣơng ứng với việc giới thiệu một hệ thống tên gọi nằm trên đỉnh của các địa chỉIP và để giới thiệu các dịch vụ ràng buộc phù hợp nhƣ DNS hoặc các dịch vụ thƣ mục khác, cung cấp một ánh xạ từ các tên (có ý nghĩa đối với ngƣời sử dụng) tới các địa chỉIP (có ý nghĩa đối với giao thức định tuyến). Tuy nhiên, trong các mạng cảm biến các mức khơng thƣ mục này có thể bị loại bỏ và các thuộc tính định rõ ngƣời sử dụng có thểđƣợc dùng một cách trực tiếp để tìm kiếm (các nhóm của) các nút. Ý tƣởng này thƣờng đƣợc gọi là đánh địa chỉ tập trung dữ liệu (data-centric addressing).
136
thức mạng (đặc biệt là định tuyến), đó cũng là một sự cho phép chủ yếu đối với các kỹ thuật xử lý trong mạng. Việc đánh địa chỉđịa lý có thể xem nhƣ một trƣờng hợp đặc biệt của việc đánh địa chỉ dựa trên nội dung. Ởđây, một số các thuộc tính định rõ ngƣời sử dụng chỉ đến các tọa độkhông gian. Đánh địa chỉđịa lý giả thuyết rằng mỗi nút biết vị trí của bản thân nó đối với một hệ thống tọa độ đã đƣợc thỏa thuận. Do đó, các kỹ thuật định vị là thiết yếu để làm việc với các địa chỉđịa lý. Mặt khác, các địa chỉđịa lý có thể hỗ trợ cho việc định tuyến. Cả hai cách đánh địa chỉ theo nội dung và theo địa lý đều không thay thếđƣợc các giao thức
MAC nhƣng chúng có thể sử dụng, ví dụnhƣ trong lớp mạng đểgiúp đỡ các quyết định định
tuyến.
a. Đánh địa chỉ dựa trên nội dung
Vài hệ thống đặt tên dựa theo nội dung hoặc dựa theo thuộc tính xuất hiện trong các tài
liệu. Trƣớc khi chuyển đến một thảo luận chung hơn, chúng ta biểu diễn một ví dụ về phƣơng pháp đặt tên mà đƣợc phát triển trong khái niệm của các mạng cảm biến không dây.
Ví dụ 4.2: Cơ chế đặt tên mức thấp:
Trong phƣơng pháp này, việc đánh địa chỉ dựa trên nội dung đƣợc tích hợp với định tuyến truyền tin trực tiếp. Trong một phạm vi nhỏ, trong truyền tin trực tiếp một nút thu phát ra thông điệp interest, thơng điệp này xác định một tậpcác thuộc tính dùng để mơ tảdữ
liệu mong muốn. Bản tin này đƣợc phân phát trong mạng. Các nút có thể cung cấp dữ liệu
cảm biến phù hợp với dữ liệu trong mô tả interest đƣợc gọi là các nút nguồn. Gói dữ liệu tạo
bởi nút nguồn di chuyển qua các nút trung gian để tới nút thu. Nút trung gian lƣu lại thông
điệp interest cùng với một (hoặc một tập) nút lân cận có thể (hƣớng vềphía bộ thu) trong bộ
nhớ đệm (interest cache). Sau khi nhận đƣợc gói dữ liệu, nút trung gian tìm trong bộ nhớ đệm
xem có interest phù hợp với dữ liệu nhận đƣợc khơng, nếu có nó chuyển tiếp gói dữ liệu đến nút lân cận liên quan (hƣớng về phía bộ thu).
Các gói tin dữ liệu và interest đƣợc biểu diễn nhƣ một tập các bộ toán tử giá trị thuộc