Các giao thức định tuyến trong mạng VANET (Routing)

Một phần của tài liệu Truyền thông đa phương tiện giữa các xe cộ di chuyển với tốc độ cao sử dụng sóng vô tuyến tầm gần chuyên dụng DSRC (Trang 44 - 51)

Giao thức định tuyến là không thể thiếu với mạng VANET. Nếu không có giao thức định tuyến thì không thể kết nối đƣợc tất cả các nút mạng với nhau cũng nhƣ truyền tải thông tin từ nút này đến nút khác. Giao thức định tuyến là phần mềm chạy vơi chức năng của tầng mạng, tầng giao vận trong mô hình TCP/IP. Giao thức định tuyến thực hiện việc trao đôi các gói tin giữa các nút trong mạng với nhau hoặc với các AP (Access point- điểm truy cập) nhằm biết đƣợc thông tin các nút mạng tham gia. Từ đó giao thức định tuyến sẽ quyết định đƣờng đi của của các kết nối [26].

Nhƣ vậy định tuyến là quá trình chỉ ra hƣớng, sự di chuyển của một gói dữ liệu từ mạng nguồn của chúng, hƣớng tới đích cuối cùng của chúng thông qua các nút trung gian.

Luận văn thạc sĩ kỹ thuật

2.1.2.1. Giao thức định tuyến trong mạng Ad-hoc. 2.1.2.1.1. Giao thức định tuyến Proactive

Là giao thức hoạt động dựa theo bảng định tuyến trong đó các nút sẽ duy trì một bảng định tuyến để biết thông tin về các nút còn lại do đó các nút sẽ biết đƣợc kiến trúc tổng thể của mạng.

2.1.2.1.2. Giao thức định tuyến Reactive

Là giao thức định tuyến dựa theo yêu cầu tức là đƣờng đi chỉ đƣợc xác định khi các nút có nhu cầu truyền gói tin. Phƣơng pháp này hạn chế đƣợc thông tin tiêu đề chọn đƣờng, nhƣng lại gây trễ lớn cho các khung truyền dẫn đầu tiên cũng nhƣ thời gian chọn đƣờng dẫn chậm.

2.1.2.1.3. Giao thức định tuyến Hybrid

Là giao thức lai giữa hai loại giao thức Reactive và proactive

2.1.2.1.4. Giao thức định tuyến dựa trên vị trí

Trong phƣơng thức này thì các nút mạng có thể tự xác định vị trí của nó cũng nhƣ vị trí của các nút mạng khác trong mạng.

Ý tƣởng cơ bản của giao thức này là truyền gói dữ liệu tới vị trí đã biết trƣớc của nút mục tiêu.

2.1.2.2. Giao thức định tuyến DSDV

DSDV (Destination-Sequenced Distance-Vector - Giao thức định tuyến vector khoảng cách tuần tự đích) là một biết thể của giao thức định tuyến Distance - Vector theo kiểu Proactive, dựa trên ý tƣởng của thuật toán định tuyến Bell-Man-Ford.

2.1.2.2.1. Quản lý bảng định tuyến.

Mỗi nút luôn duy trì một bảng định tuyến đến tất cả các nút khác trong mạng. Thông tin của một Entry trong bảng định tuyến gồm:

- Quản lý bảng định tuyến

- Địa chỉ nút đích

- Số Hop đến nút đích (Hop-count)

- Next Hop.

Luận văn thạc sĩ kỹ thuật

Để đảm bảo cho bảng định tuyến luôn phù hợp với những thay đổi trong mạng thì các nút phải thƣờng xuyên cập nhật bảng định tuyến theo một khoảng thời gian nhất định hoặc khi mạng có sự thay đổi. Nên các nút phải quảng bá thông tin định tuyến của nó cho các nút khác trong mạng bằng cách phát quảng bá những thay đổi trong bảng định tuyến của nó. Khi một nút nhận gói tin cập nhật bảng định tuyến nó sẽ kiểm tra số Sequence number của gói tin cập nhật, nếu số Sequence number trong gói tin cập nhật lớn hơn hoặc bằng số Sequence number trong bảng định tuyến và có số Hop-count nhỏ hơn thì nút đó sẽ cập nhật thông tin đó vào bảng định tuyến.

2.1.2.2.2. Cách thức cập nhật bảng định tuyến

Có hai cách cập nhật bảng định tuyến:

- Cách 1: cập nhật toàn bộ bảng định tuyến cho các nút hàng xóm và có thể truyền trong nhiều packet, gọi là full-dump.

- Cách 2: cập nhật các phần thay đổi trong bảng định tuyến của nó cho các nút hàng xóm và các thông tin thay đổi đó chỉ đƣợc gửi đi trong một gói. Cách này gọi là Incremental- update.

Nhƣ vậy kiểu cập nhật thứ nhất sẽ đƣợc sử dụng trong mạng ít ổn định, còn kiểu thứ hai sẽ đƣợc sử dụng trong mạng tƣơng đối ổn định để hàn chế lƣu lƣợng truyền trên mạng [26].

2.1.2.2.3. Quản lý sự thay đổi của Topology (cấu trúc liên kết)

Khi một nút di chuyển từ nơi này đến nơi khác thì các liên kết của nó với nút hàng xóm có thể không còn hiệu lực. Khi nút phát hiện liên kết đến next-hop của nó không còn tồn tại, thì đƣờng đi thông qua Next-hop đó lập tức sẽ có hop-count là vô cùng và số Sequence number đƣợc tăng 1. Sau đó nút sẽ phát quảng bá thông tin đó cho tất cả các nút trong mạng và các nút sẽ cập nhật lại bảng định tuyến của mình.

2.1.2.3. Giao thức đinh tuyến DSR

DSR (Dynamic Source Routing - Định tuyến nguồn động) cho phép mạng tự động tổ chức và cấu hình mà không cần đến sự quản trị hoặc cơ sở hạ tầng sẵn có của mạng.

Luận văn thạc sĩ kỹ thuật

- Cơ chế Route Discovery

- Cơ chế Route Maintenance

Nhờ hai cơ chế này mà các nút có thể tìm và duy trì đƣợc các đƣờng đi đến các nút trong mạng.

2.1.2.3.1. Cơ chế Route Discovery

Route Discovery cho phép các host trong mạng Ad-hoc tìm kiếm đƣờng đi dến đích một cách tự động thông qua các nút mạng trung gian. Tiến trình này sẽ phát quảng bá gói Route request (RREQ) lên mạng.

Khi một nút nhận gói RREQ thì nó tiến hành kiểm tra thông tin trong đó nhƣ sau:

Bƣớc 1: Kiểm tra xem đây có phải lần đầu tiên nhận gói RREQ có địa chỉ đích và số Request ID hay không. Nếu không phải thì nó sẽ loại bỏ gói tin này và không xử lý. Ngƣợc lại thì sang bƣớc 2.

Bƣớc 2: Kiểm tra trong trƣờng Source Route của gói RREQ đã có địa chỉ của nó hay chƣa. Nếu đã tồn tại thì sẽ loại bỏ và không xử lý. Ngƣợc lại thì qua bƣớc 3.

Bƣớc 3: Kiểm tra trong route cache của nó có đƣờng đi đến nút đích mà còn hiệu lực hay không. Nếu có đƣờng đi thì nó sẽ phản hồi lại cho nút nguồn bằng gói Route Reply (RREP) chƣa thông tin về đƣờng đi đến đích và kết thúc tiến trình. Nếu ngƣợc lại thì qua bƣớc 4.

Bƣớc 4: Nó kiểm tra địa chỉ đích cần tìm có trùng với địa chỉ của nó hay không? Nếu trùng thì gửi lại cho nguồn gói RREP chứa thông tin về đƣờng đi đến đích và kết thúc tiến trình. Ngƣợc lại thì nó sẽ phát Broadcast đến các nút hàng xóm của nó

Quá trình này cứ tiếp tục cho đến khi nút nguồn nhận đƣợc thông tin về đƣờng đi đến đích hoặc thông tin rằng không thể định tuyến đến đích.

Trong quá trình này, thì các nút sẽ học các con đƣờng đi đến các nút khác và lƣu trong route cache của mình:

Khi nút nguồn tìm kiếm đƣợc đƣờng đi đến nút đích thì nó cũng sẽ biết đƣợc đƣờng đi đến các nút trung gian.

Luận văn thạc sĩ kỹ thuật

- Trong quá trình phát Broadcast gói RREQ, các nút trung gian cũng sẽ biết đƣợc con đƣờng đi đến nút nguồn.

-Trong quá trình forward gói RREQ thì các nút trung gian biết đƣợc đƣờng đi tới nút đích.

2.1.2.3.2. Cơ chế Route maintenance

Trong giao thức DSR, các nút khi di chuyển gói tin trên mạng đều phải có nhiệm vụ xác nhận rằng gói tin đó đã chuyển đến Next hop hay chƣa? Trong một trƣờng hợp nào đó mà nút phát hiện rằng gói tin không thể truyền đến Next hop nó sẽ gửi gói Route Error (RERR) cho nút nguồn để thông báo tình trạng hiện thời của liên kết và địa chỉ của Next hop mà không thể chuyển đi. Khi nút nguồn nhận đƣợc gói RERR, nó sẽ xóa con đƣờng đi mà sử dụng liên kết bị hỏng trong route cache và tìm một đƣờng khác mà nó biết trong route cache hoặc sẽ khởi động một tín trình Route discovery mới nếu đƣờng đi này có nhu cầu sử dụng.

2.1.2.4. Giao thức định tuyến AODV

AODV (Ad hoc On Demand Distance Vector Định tuyến vector khoảng cách theo yêu cầu) là sự kết hợp giữa hai giao thức định tuyến DSDV và DSR. Trong giao thức này các nút chỉ tìm kiếm và duy trì thông tin đinh tuyến khi các nút có nhu cầu trao đổi dữ liệu.

Các cơ chế chính của AODV: 2.1.2.4.1. Cơ chế Route Discovery

Mỗi nút luông có hai bộ đếm (counter): bộ đếm số sequence number và bộ đếm broadcast ID. Số sequence number đƣợc tăng lên trong các trƣờng hợp:

- Trƣớc khi một nút khởi động tiến trình Route discovery, điều này chống sự xung đột với gói RREP trƣớc đó.

- Trƣớc khi một nút đích gửi gói RREP trả lời gói RREQ, nó sẽ cập nhật lại giá trị Sequence number lớn nhất của số Sequence number hiện hành mà nó lƣu giữ với số Sequence number trong gói RREQ..

- Khi có một sự thay đổi trong mạng cục bộ của nó (mạng cục bộ là các nút láng giềng).

Luận văn thạc sĩ kỹ thuật

Tiến trình Route Discovery đƣợc khởi động khi nào một nút muốn trao đổi dữ liệu với một nút khác mà trong bảng định tuyến của nó không có thông tin định tuyến đến nút đích đó. Khi đó tiến trình sẽ phát broadcast một gói RREQ cho các nút láng giềng. Khi các nút láng giềng nhận đƣợc gói RREQ thì nó sẽ kiểm tra tuần tự theo các bƣớc:

Bƣớc 1: xem gói RREQ đã đƣợc xử lý trƣớc đó hay chƣa? Nếu đã đƣợc xử lý thì nó sẽ loại bỏ tín hiệu đó và không xử lý thêm.Nếu ngƣợc lại chuyển qua bƣớc 2

Bƣớc 2: nếu trong bảng định tuyến của nó chứa đƣờng đi đến đích thì sẽ kiểm tra giá trị destination sequence number trong entry chứa thông tin về đƣờng đi với số destination sequence number trong gói RREQ, nếu số destination sequence number trong RREQ lớn hơn số sequence number trong entry thì nó sẽ không sử dụng thông tin trong entry của bảng định tuyến để trả lời cho nút nguồn mà nó sẽ tiếp tục phát broadcast gói RREQ đó đến các nút láng giềng của nó. Ngƣợc lại nó sẽ phát unicast gói RREP ngƣợc trở lại nút láng giềng mà nó đã nhận gói RREQ. Ngƣợc lại thì qua bƣớc 3.

Bƣớc 3: nếu trong bảng định tuyến của nó không có đƣờng đi đến đích thì nó sẽ tăng số hop-count lên 1, đồng thời nó sẽ tự động thiết lập một đƣờng đi ngƣợc (reverse path) từ nó đến nút nguồn bằng cách ghi nhận lại địa chỉ của nút láng giềng mà nó nhận gói RREQ lần đầu tiên. Entry chứa đƣờng đi ngƣợc này sẽ đƣợc tồn tại trong một khoảng thời gian đủ để gói RREQ tìm kiếm đƣờng đi đến đích và gói RREP phản hồi cho nút nguồn, sau đó entry này sẽ đƣợc xóa đi. Các thông tin bao gồm: địa chỉ đích, địa chỉ nguồn, số broadcast ID, thời gian timeout cho viêch chờ đợi thời gian nhận gói RREP, số sequence number của nút nguồn.

Sau đó sẽ phát broadcast đến nút hàng xóm của nó. Và quá trình cứ lặp lại cho đến khi gặp nút đích hoặc một nút trung gian mà các điều kiện thỏa mãn bƣớc 2. Trong quá trình trả về gói RREP, một nút có thể nhận cùng lúc nhiều gói RREP, khi đó nó chỉ xử lý gói RREP có số destination sequence number lớn nhất, hoặc nếu cùng số destination sequence number thì nó sẽ chọn gói RREP có số Hop-count nhỏ

Luận văn thạc sĩ kỹ thuật

nhất. Sau đó sẽ cập nhật các thông tin cần thiết vào bảng định tuyến của nó và chuyển gói RREP đi.

2.1.2.4.2. Cơ chế Route Maintenance

Khi một nút nhận thấy Next hop của nó không thể tìm thấy, thì nó sẽ phát một gói RREP khẩn cấp với số sequence number bằng số sequence number trƣớc đó cộng 1, và hop count bằng vô cùng và gửi đến tất cả các nút hàng xóm đang ở trạng thái active, những nút đó sẽ tiếp tục chuyển gói tin đó đến các nút hàng xóm… và cứ nhƣ vậy cho đến khi tất cả các nút trong mạng ở trang thái active nhận đƣợc gói tin này.

Sau khi nhận thông báo đo, các nút có thể khởi động lại tiến trình Route discovery nếu có nhu cầu định tuyến dữ liệu đến nút bị hỏng đó, để biết nút cần có nhu cầu định tuyến đến đích hay không thì nó sẽ kiểm tra ở các giao thức bên dƣới có kết nối nào đến nút đích mà còn mở hay không? Nếu thấy cần có nhu cầu định tuyến nó sẽ gửi một gói RREQ đến các nút hàng xóm để tìm đến địa chỉ đích. Để kiểm tra trạng thái một nút có active hay không? AODV sử dụng bộ timer. Một entry của bảng định tuyến sẽ bị xem là không active nếu nó không đƣợc sử dụng thƣờng xuyên.

2.1.2.4.3. Quản lý bảng định tuyến.

Một nút duy trì một entry trong bảng định tuyến cho một địa chỉ đích. Một entry chứa các thông tin:

- Địa chỉ đích

- Next hop

- Hop count

- Số sequence number của nút đích

- Các nút láng giềng ở trạng thái active

- Thời gian hết hạn của các entry

Trong mỗi entry của bảng định tuyến, địa chỉ của các nút láng giềng ở trạng thái active mà có định tuyến đến đích vẫn đƣợc lƣu giữ. Một nút láng giềng đƣợc đặt ở trạng thái là active nếu nó khởi tạo hoặc chuyển tiếp ít nhất một packet đến

Luận văn thạc sĩ kỹ thuật

nút đích trong giới hạn của active-timout. Thông tin này cần đƣợc lƣu giữ để giúp cho viêch thông báo môt link bị hỏng đến các nút active đƣợc thuận lợi. một entry của bảng định tuyến đƣợc xem là active nếu nó đƣợc sử dụng bởi các nút láng giềng ở trạng thái active.

Khi có một đƣờng đi mới đến một nút đích, thì nút nguồn sẽ so sánh số sequence number của đƣờng đi mới với số sequence number có trong entry tƣơng ứng vơi địa chỉ đích trong bảng định tuyến. Đƣờng đi mà có số sequence number lớn hơn sẽ đƣợc chọn. Nếu số sequence number bằng nhau, thì đƣờng nào có hop- count nhỏ hơn sẽ đƣợc chọn.

2.1.2.5. Giao thức định tuyến GPSR

GPSR (Greedy Perimeter Stateless Routing - định tuyến theo khoảng cách) là giao thức định tuyến dựa theo thông tin vị trí địa lý của các nút tham gia trong mạng không dây. Khi sử dụng giao thức này mỗi nút mạng sẽ định kỳ gửi các bản tin quảng bá 1-hop của nó_đƣợc gọi là beacon, chứa thông tin về nhận dạng ID và vị trí hiện tại của nút đó. Nhờ beacon này mỗi nút có thể duy trì một danh sách các nút lân cận ”hàng xóm” của nó. Khi không còn nhận đƣợc beacon hàng xóm đó trong một khoảng thời gian xác định, nó sẽ coi rằng đã mất liên lạc với nút đó và xóa nút đó khỏi danh sách hàng xóm.

Một phần của tài liệu Truyền thông đa phương tiện giữa các xe cộ di chuyển với tốc độ cao sử dụng sóng vô tuyến tầm gần chuyên dụng DSRC (Trang 44 - 51)

Tải bản đầy đủ (PDF)

(82 trang)