Cấu trúc dữ liệu giao diện

Một phần của tài liệu Nghiên cứu giao thức định tuyến OSPF và ứng dụng trong mạng doanh nghiệp (Trang 29)

b. Giao thức thông tin định tuyến phiên bản RIPv2

3.4.1Cấu trúc dữ liệu giao diện

Các thành phần của cấu trúc số liệu giao diện bao gồm:

Địa chỉ IP và mặt nạ: là địa chỉ và mặt nạ được cấu hình cho giao diện. Area ID: là Area chứa giao diện.

Process ID: dùng để phân biệt các tiến trình OSPF chạy trên một Router. Router ID: dùng để nhận dạng Router.

Network type: là loại của mạng nối với giao diện.

Cost: là cost của các gói tin đi ra từ giao diện. Cost là một metric OSPF, được diễn tả bởi

16 bit nguyên không dáu có giá trih từ 1 đến 65535.

InfTrans Delay: là số giây các LSA ra khỏi giao diện với tuổi bị tăng lên.

State: là trạng thái chức năng của giao diện được trình bày ở phần sau.

Router Priority: 8 bit nguyên không dấu này có giá trị từ 0 đến 255 dùng để bầu cử DR

và BDR.

Hello Interval: là khoảng thời gian tính theo giây giữa các lần truyền các gói Hello trên

giao diện.

Router Dead Interval: là khoảng thời gian tính theo giây mà Router sẽ chờ để nghe các gói tin Hello từ một Neighbor trước khi nó coi rằng Neighbor này bị Down.

Wait Time: là khoảng thời gian Router sẽ chờ DR và BDR được quảng cáo trong gói tin

Hello trước khi bắt đầu lựa chọn DR và BDR. Chu kì Wait Time bằng Router Dead Interval.

Rxm Interval: là khoảng thời gian tính theo giây Router sẽ chời giữa các lần truyền của

các gói OSPF chưa được xác nhận.

Hello Time: là bộ định thời được lập bằng Hello Interval. Khi nó hết hiệu lực, gói tin

Hello được truyền lại từ giao diện.

Neighbor Router: Danh sách tất cả các Neighbor hợp lệ (có gói Hell được nhìn thấy trong

thời gian Router Dead Interval).

Autype: Mô tả loại nhận thực sự trong mạng. Autype có thể là Null (không nhận thực),

Simple Password, hoặc Cryptographic (Message diget).

Authentication Key: Nếu chế độ nhận thực là Simple password, Aukey là 64 bit. Nếu chế

độ nhận thực là Cryptographic, Aukey là Message digest. Chế độ Crytographic cho phép cấu hình nhiều khoá trên một giao diện.

3.4.2 Các trạng thái giao diện

Một giao diện OSPF sẽ chuyển đổi qua một số trạng thái khác nhau trước khi nó đủ khả năng làm việc. Các trạng thái đó bao gồm: Down, Point to Point, Waiting, DR, Backup, Drother, và loopback.

Hình 3.1 Sự chuyển đổi giữa các trạng thái giao diện OSPF

Biến cố vào Ýnghĩa biến cố IE1

IE2

IE3 (adsbygoogle = window.adsbygoogle || []).push({});

IE4

IE5

Các giao thức mức thấp chỉ báo rằng giao diện mạng đã sẵn sàng hoạt động.

Các giao thức mức thấp chỉ báo rằng giao diện mạng chưa sẵn sàng hoạt động.

Người quản lý mạng hoặc các giao thức mức thấp hơn chỉ ra rằng giao diện được loop up.

Người quản lý mạng hoặc các giao thức mức thấp hơn chỉ ra rằng giao diện được loop down.

Gói Hello nhận được chỉ ra rằn Neighbor gốc (Neighbor gửi gói Hello này) muốn trở thành DR hoặc BDR và trong mạng chưa có BDR.

IE6

Wait time đã hết hiệu lực.

IE7 IE8 IE9 IE10

Router được bầu cử là DR trong mạng này. Router được bầu cử là BDR trong mạng này.

Router không được bầu cử là DR hoặc BDR trong mạng này.

Một thay đổi xảy ra trong tập các Neighbor hợp lệ của mạng. Thay đổi này có thể là:

1. Thiết lập kết nối hai chiều với một Neighbor. 2. Mất kết nối hai chiều với một Neighbor.

3. Nhận một gói tin Hello chỉ ra rằng Neighbor gốc muốn trở thành DR hoặc BDR.

4. Nhận được gói tin Hello từ DR chỉ ra rằng Router này không muốn là DR nữa.

5. Nhận được gói tin Hello từ BDR chỉ ra rằng Router này không muốn làm BDR nữa.

6. Thời gian Router Dead Interval kết thúc mà không nhận được gói tin Hello từ DR hoặc BDR.

Down: Đây là trạng thái giao diện đầu tiên. Ở trạng thái này giao diện không làm việc.

Tất cả các tham số của giao diện được lập bằng giá trị ban đầu và không có lưu lượng được truyền hoặc nhận trên giao diên.

Point to Point: Trạng thái này chỉ thích hợp với các giao diện kết nối tới các mạng Point

to Point, Point to Multipoint và Virtual Link. Khi giao diện ở trạng thái này, nó đã đủ khả năng làm việc. Nó sẽ bắt đầu gửi các gói tin Hello và thiết lập Adjacency với Neighbor.

Waitting: Trạng thái này chỉ thích hợp với các giao diện nối tới các mạng Broadcast va

NBMA. Khi chuyển sang trạng thái này, nó bắt đầu gửi và nhận các gói tin Hello và lập

DR: Ở trạng thái này, Router là DR sẽ thiết lập Adjacency với các Router khác trong

mạng đa truy nhập.

Backup: Ở trạng thái này, Router là BDR sẽ thiết lập Adjacency với các Router khác. Drother: Ở trạng thái này, Router không là DR hay BDR. Nó sẽ thiết lập Adjacency với

chỉ DR và BDR trong khi vẫn theo dõi tất cả các Neighbor khác trong mạng.

Loopback: Ở trạng thái này, giao diện được loopback bằng phần mềm hoặc phần cứng. (adsbygoogle = window.adsbygoogle || []).push({});

Mặc dù các gói không thể truyền, địa chỉ giao diện vẫn được quảng cáo trong Router LSA để các gói kiểm tra có thể tìm đường tới giao diện.

3.5 DR,BDR là gì, quá trình bầu chọn DR và BDR

3.5.1 DR, BDR

DR (Designated Router): là DR của mạng mà giao diện gắn vào. DR này được ghi bởi Router ID của nó và địa chỉ của giao diện gắn vào mạng của DR.

BDR: là BDR của mạng mà giao diện gắn vào. BDR này được ghi bởi Router ID của nó

và địa chỉ của giao diện gắn vào mạng của BDR.

3.5.2 Qúa trình bầu chọn DR và BDR

1. OSPF chọn ngẫu nhiên 1 router và kiểm tra danh sách neighbor của nó.

2. Nếu 1 router có priority = 0. Thì router đó không tham gia vào quá tình bầu chọn. 3. Sau đó quá trình lựa chọn BR & BDR bắt đầu theo các mức ưu tiên sau:

a. Router có Priority cao nhất làm DR, cao thứ 2 làm BDR. Priority mặc định là 1. b. Nếu Priority bằng nhau thì xét Router ID, cao nhất làm DR, cao thứ 2 làm BDR. Router ID lấy từ:

- Trong trường hợp Router có cổng loopback, thì địa chỉ IP loopback cao nhất sẽ là Router ID.

- Trong trường hợp Router không có cổng loopback, địa chỉ IP vật lý cao nhất là Router ID.

Chú ý:

- Router nào khởi động đầu tiên sẽ là DR, và thứ 2 là BDR. - Nếu khởi động cùng một lúc thì tuân theo quy tắc trên. - DR bị mất, BDR lên thay, và bình chọn BDR mới.

3.6 Neighbor

3.6.1 Khái niệm Neighbor

-Các thiết bị được kết nối trực tiếp với nhau gọi là Neighbor

3.6.2 Cấu trúc dữ liệu Neighbor

Trong cấu trúc dữ liểu của Neghbor gồm các thành phần sau

Neighbor ID: là Router ID của Neighbor.

Neighbor IP: là địa chỉ IP của giao diện nối tới mạng của Neighbor. Khi một gói OSPF

Area ID: để hai Router trở thành các Neighbor của nhau, Area ID trong gói Hello nhận

được phait phù hợp với Area ID của giao diện nhận

Interface: là giao diện gắn vào mạng của mạng chưa Neighbor.

Neighbor Priority: là Router Priority của Neighbor được chỉ ra trong gói tib Hello. State: là trạng thái chức năng của Neighbor sẽ được trình bày ở phần sau.

Poll Interval: Gía trị này chỉ sử dụng đối với các Neighbor trong mạng NBMA. Vì các

Neighbor không thể tự động khám phá trong mạng NBMA nếu các Neighbor này ở trạng thái Down, do vậy gói Hello sẽ được gửi tới các Neighbor sau mỗi khoảng thời gian nhất định. Khoảng thời gian này gọi là Poll Interval.

Neighbor Options: là các khả năng OSPF tuỳ chọn được hỗ trợ Neighbor. Các tuỳ chọn

này được trình bày ở phần sau.

Anactivity Time: la Time có chuy kỳ là Router Dead Interval. Time được reset khi nhận (adsbygoogle = window.adsbygoogle || []).push({});

được gói tin Hello từ Neighbor. Nếu Inctivity Time hết hiệu lực mà chưa nhận được gói tin Hello, Neighbor sẽ được khai báo là Down.

Designated Router: Địa chỉ này chứa trong trường DR của gói tin Hello.

Backup Designate Router: Địa chỉ này chứa trong trương BDR của gói tin Hello.

Master / Slave: Quan hệ chủ- tớ (được thoả thuận trong trạng thái Exstart) thiết lập

Neighbor nào sẽ điều khiển việc đồng bộ cơ sở dữ liệu.

DD Sequence Number: là số trình tự gói Database Description (DD) đang được gửi tới

Neighbor.

Last Received Database Description Packet: Các bít Initilize, More, Master, các Option

và số trình tự của gói tin DD nhận được cuối cùng được ghi trong cơ sở dữ liệu Neighbor. Thông số này dùng để xác định gói tin DD tiếp theo có phải là bản sao của gói trước.

Link State Retransmission List: là danh sách các LSA đã được tràn lụt trên Adjacency

nhưng chưa được công nhận. LSA sẽ được truyền lại sau khoảng thời gian RxmInterval cho đến khi chúng nhận được công nhận hoặc Adjacency bị phá vỡ.

Database Summary List: là danh sách các LSA được gửi tới Neighbor trong gói DD

trong quá trình đồng bộ cơ sở dữ liệu. Các LSA tạo nên cơ sở dữ liệu trạng thái liên kết khi Router chuyển sang trạng thái Exchange.

Link State Request List: Là danh sách các LSA trong các gói DD của Neighbor “mới”

hơn các LSA trong cơ sở dữ liệu trạng thái liên kết. Các gói yêu cầu trạng thái liên kết được gửi tới Neighbor yêu cầu các bản copy của các LSA này. Khi nhận được các LSA yêu cầu trong các gói cập nhận trạng thái liên kết,danh sách yêu cầu trạng thái liên kết sẽ được rút dần cho đến hết.

3.6.3 Các trạng thái Neighbor

Một Router sẽ chuyển Router qua một số trạng thái trước khi Neighbor được coi là Full Adjacency. Các trạng thái đó bao gồm: Down, Attemt, Init, 2-Way, Extart, Exchange, Loadinh, và Full.

Down: là trạng thái đầu tiên của Neighbor khi cuộc hôi thoại (giữa Router và Neighbor)

chỉ ra rằng không có gói Hello nào được gửi từ Neighbor trong Router Dead Interval cuối cùng. Các gói Hello không gửi tới Neighbor bị Down trừ trường hợp các Neighbor này thuộc mạng NBMA. Trong trường hợp này, các gói Hello được gửi theo chu kỳ Poll Interval. Nếu Neighbor chuyển xuống trạng thái Down từ trạng thái cao hơn thì danh sách truyền lại trạng thái liên kết, mô tả cơ sở dữ liệu, và yêu cầu trạng thái liên kết bị xoá bỏ.

Attempt: trạng thái đầu tiên của Neighbor trong mạng NBMA, ở đây các Neighbor được

cấu hình bằng tay. Một Router (đủ khả năng để trở thành DR) sẽ chuyển một Neighbor sang trạng thái Attemp khi một giao diện nối tới Neighbor được kích hoạt đầu tiên khi Router là DR hoặc BDR. Một khi Router sẽ gửi các gói tin một Neighbor ở trạng thái Attempt theo chu kỳ HelloInterval thay vì PollInterval.

Hình 3.2 Sự chuyển đổi trạng thái từ Down sang Full

Init: Trạng thái này chỉ ra rằng đã nhận được gói Hello từ Neighbor trong Router Dead

Interval cuối cùng nhưng kết nối hai chiều chưa được thiết lập. Router sẽ chứa Router ID của tất cả các Neighbor ở trạng thái này hoặc trạng thái cao hơn trong trường hợp Neighbor của gói Hello.

2-Way: Trạng thái này chỉ ra rằng Router đã “nhìn thấy ” Router ID của nó trong trường

Neighbor của gói Hello mà Neighbor đã gửi tới. Điều này có nghĩa là kết nối hai chiều đã được thiết lập. Trong mạng đa truy nhập, Neighbor phải ở trạng thái này hoặc cao hơn để có thể được chọn là DR hoặc BDR. Việc nhận một gói DD từ một Neighbor ở trạng thái Init sẽ chuyển Neighbor này sang trạng thái 2-Way.

ExStart: Ở trạng thái này, Router và các Neighbor của nó thiết lập quan hệ Masterr/ Slave và xác định số trình tự DD đầu tiên để chuẩn bị cho việc trao đổi các gói DD. Neighbor có địa chỉ giao diện cao nhất sẽ là Master

Exchange: Router gửi các gói DD mô tả toàn bộ cơ sở dữ liệu trạng thái liên kết của nó tới các Neighbor đang ở trạng thái Exchange. Router cùng gửi các gói yêu cầu trạng thái liên kết tới các Neighbor ở trạng thái này để yêu cầu các LSA mới nhất.

Loading: Router sẽ gửi các gói yêu cầu trạng thái liên kết tới các Neighbor ở trạng thái này để yêu cầu các LSA mới hơn đã chỉ ra ở trạng thái Exchange nhưng chưa nhận được Full: Neighbor ở trạng thái này là Adjaenyce hoàn toàn và các Adjacency sẽ xuất hiện trong các Router LSA và Network LSA.

Hình 3.3 Sự chuyển đổi trạng thái từ Init sang Full (adsbygoogle = window.adsbygoogle || []).push({});

Biến cố vào Ý nghĩa

IE1

IE2

Chỉ xảy ra đối với các Neighbor kết nối với mạng NBMA, IE1 xảy ra bởi một trong các điều kiện sau:

1. Giao diện nối tới mạng NBMA được kích hoạt đầu tiên và Neighbor đủ điều kiện tham gia bầu cử DR.

2. Router là DR hoặc BDR,và Neighbor không đủ điều kiện tham gia bầu cử để trở thành DR

Một gói Hello hợp lệ được nhận từ Neighbor. Neighbor không thể liên lạc được nữa.

IE3 IE4 IE5 IE6 IE7 IE8 IE9 IE10 IE11

Router nhận nhìn thấy Router ID của nó đầu tiên trong gói Helli của Neighbor hoặc nhận được gói DD từ Neighbor.

Neighbor không thể thiết lập Adjacency. Xảy ra bởi một trong các điều kiện sau:

1. Trạng thái Neighbor chuyển trước tiên sang trạng thái 2-Way.

2. Trạng thái giao diện thay đổi.

Adjacency sẽ được hình thành với Neighbor này.

Quan hệ chủ tớ được thiết lập và số trình tự DD được trao đổi. Việc trao đổi các gói DD được hoàn thành.

Các khoản mục còn tồn tại trong danh sách yêu cầu trạng thái liên kết.

Danh sách yêu cầu trạng thái liên kết rỗng.

Adjaceny sẽ được phá vỡ và được Reset lại, IE12 xảy ra bởi một trong các điều kiện sau:

1. Nhận được gói DD có số trình tự DD không đúng

2. Nhận được gói DD có trường Option khác với trường Option của gói DD cuối cùng.

3. Nhận được gói DD khác ngoài gói đầu tiên có bit Init được thiết lập.

4. Nhận được gói yêu cầu một LSA không có trong cơ sở dữ liệu.

IE13

IE14 IE15

IE16

Nhận được một gói Hello từ Neighbor trong đó Router ID của Router nhận không có trong trường Neighbor.

Xảy ra trạng thái giao diện thay đổi

Adjacency với Neighbor này sẽ tiếp tục tồn tại hay tiếp tục hình thành

Adjacency với Neighbor này sẽ không tiếp tục tồn tại hay không tiếp tục hình thành.

Quyết định Ýnghĩa

DP1 (adsbygoogle = window.adsbygoogle || []).push({});

DP2

Một Adjacency sẽ được thiết lập với Neighbor hay không ? Một Adjacency sẽ được hình thành nếu một trong các điều kiện sau xảy ra:

1. Loại mạng là Point to Point. 2. Loại mạng là Point to Multipoint. 3. Loại mạng là liên kết ảo.

4. Router là DR trong mạng của Neighbor. 5. Router là BDR trong mạng của Neighbor. 6. Neighbor là DR.

7. Neighbor là BDR.

Danh sách yêu cầu trạng thái liên kết đối với Neighbor này rỗng không ?

Adjacency với Neighbor có tiếp tục tồn tại hay không?

3.6.4 Thiết lập mối quan hệ thân mật (Adjacency) của các Neighbor

Các Neighbor trong các mạng Point to Point, Point to Multipoint, và liên kết ảo luôn thiết lập Adjacency với nhau trừ phi các tham số trong các gói Hello của chúng không phù hợp.

Trong các mạng quảng bá và NBMA, DR và BDR sẽ thiết lập Adjacency với tất cả các Neighbor còn các Drother sẽ không thiết lập Adjacency với các Drother khác.

Quá trình xây dựng Adjacency sử dụng ba loại gói OSPF sau: 1. Gói mô tả cơ sở dữ liệu DD (loại 2).

2. Gói yêu cầu trạng thái liên kết (loại 3). 3. Gói cập nhật trạng thái liên kết loại 4).

Gói DD đặc biệt quan trọng trong quá trình xây dựng Adjacency. Các gói DD chứa Header của các LSA trong cơ sở dữ liệu trạng thái liên kết của Router gốc. Router nhận sẽ nhận các gói DD và kiểm tra các Header này để quyết định xem liệu nó đã có bản copy mới nhất của LSA trong cơ sở dữ liệu của nó. Ngoài ra gói DD còn chứa ba cờ được sử dụng để quản lý quá trình xây dựng Adjacency. Ba cờ đó là:

1. Bit I (Initial bit): I=1 chỉ ra rằng gói DD đầu tiên gửi.

2. Bit M (More bit): M=1 chỉ ra rằng đây không phải gói DD cuối cùng được gửi. 3. Bit MS (Master/ Slave bit):MS =1 chỉ ra rằng gói DD được gửi từ Router là

Master.

Khi cuộc đàm phán MasterSlave bắt đầu ở trạng thái Exstart, cả hai Neighbor sẽ cùng yêu

Một phần của tài liệu Nghiên cứu giao thức định tuyến OSPF và ứng dụng trong mạng doanh nghiệp (Trang 29)