Ý tưởng của phương pháp này là truyền dữ liệu qua các nút cảm ứng bằng việc sử dụng lược đồ đặt tên cho dữ liệu. Mục đích chính của việc sử dụng lược đồ này là loại bỏ những hoạt động không cần thiết của định tuyến lớp mạng để tiết kiệm năng lượng. Directed Diffusion đưa ra việc sử dụng cặp giá trị thuộc tính cho dữ liệu và gửi yêu cầu đến các sensor dựa trên các cặp địa chỉ này. Để tạo ra một yêu cầu, người ta tạo ra các thông tin yêu cầu được xác định dùng các cặp giá trị thuộc tính như là tên vật thể, vị trí địa lý, khoảng thời gian… các thông tin này được quảng bá thông qua sink đến các nút lân cận. Mỗi một nút nhận được thông tin đó sẽ giữ lại để dùng sau này. Các thông tin được giữ lại này dùng để so sánh dữ liệu nhận được với giá trị trong thông tin đó. Các thông tin này cũng bao gồm các trường gradient. Gradient là đường trả lời đến nút lân cận từ nơi mà nhận được thông tin yêu cầu. Nó được mô tả bởi tốc độ dữ liệu, khoảng thời gian và thời gian mãn hạn nhận được từ các thông tin yêu cầu. Vì thế nhờ việc sử dụng các thông tin yêu cầu và gradient thiết lập được các đường truyền giữa sink và các nguồn. Có thể thiết lập được nhiều đường vì thế có thể chọn một trong số các đường đó bằng cách reinforcement. Node master gửi lại các bản tin gốc qua những đường đã được chọn với khoảng thời gian giữa hai sự kiện ngắn hơn vì vậy tăng cường nút nguồn trên đường đó để gửi dữ liệu đều đặn hơn.
Hình 1.11 Các pha của giao thức truyền tin trực tiếp
(a) truyền yêu cầu (interest) (b) thiết lập gradient ban đầu
(c) phân phối dữ liệu theo reinforcement
Trong Directed Diffusion ta cũng có thể sửa lại đường đi. Khi một đường giữa nguồn và sink hỏng thì cần phải tạo ra một đường mới hoặc đường thay thế. Trong trường hợp này, Directed Diffusion về cơ bản phải tái thiết lập lại sự củng cố bằng việc tìm giữa những đường khác mà đang gửi dữ liệu ở tốc độ thấp hơn. Ganesan có ý kiến áp dụng cơ chế đa đường, trong trường hợp một đường bị hỏng thì sẽ chọn một trong số các đường thay thế đó mà không cần tốn chi phí để tìm một đường khác. Trong trường hợp này tất nhiên sẽ có một số lượng lớn mào đầu để giữ cho những đường thay thế này tồn tại bằng cách dùng tốc độ dữ liệu thấp, cách này sẽ tiêu hao khá nhiều năng lượng nhưng sẽ tiết kiệm nhiều năng lượng hơn trong trường hợp một đường bị hỏng và phải chọn một đường mới khác.
Directed Diffusion khác SPIN ở cơ chế gửi dữ liệu theo yêu cầu. Trong Directed Diffusion, khi có dữ liệu nào đó thích hợp thì sink gửi yêu cầu đến các nút cảm ứng bằng việc flooding một vài nhiệm vụ. Với SPIN thì các sensor quảng bá các dữ liệu thích hợp cho phép các nút quan tâm yêu cầu dữ liệu đó. Directed Diffusion có nhiều ưu điểm, vì là tập trung dữ liệu nên tất cả các giao tiếp từ nút lân cận này đến nút lân cận khác không cần một cơ chế xác định nút. Ngoài nhiệm vụ cảm nhận thì mỗi một nút còn có thể tập trung và dự trữ dữ liệu. Dự trữ là một thuận lợi lớn trong sử dụng hiệu quả năng lượng và trễ. Hơn nữa, Directed Diffusion có hiệu quả sử dụng năng lượng cao vì nó hoạt động theo yêu cầu và không cần một cấu hình mạng duy trì toàn cầu.
Tuy nhiên Directed Diffusion không thể được áp dụng cho tất cả các ứng dụng của mạng cảm ứng vì nó dựa trên mô hình phân phối dữ liệu theo hướng đưa ra yêu cầu. Các ứng dụng mà yêu cầu phân phối dữ liệu liên tiếp đến sink sẽ không hoạt động hiệu quả với mô hình này. Vì vậy, Directed Diffusion không phải là một lựa chọn tốt cho giải thuật định tuyến cho các ứng dụng như là kiểm tra môi trường. Hơn nữa, lược đồ đặt tên dùng trong Directed Diffusion là không phải là một ứng dụng độc lập. Hơn nữa, quá trình phù hợp giữa dữ liệu và các yêu cầu đòi hỏi thêm các mào đầu ở các sensor.