Website: Email : Tel (: 0918.775.368
Phần mở đầu
Giới thiệu chung về tầng mạng, vai trò và chức
năng của tầng mạng.
Cấu trúc của tầng mạng (Network layer) đợc nhiều chuyên gia đánh giá
là phức tạp nhất trong các tầng của mô hình OSI. Tầng mạng cung cấp phơng
tiện để truyền các đơn vị dữ liệu qua mạng, thậm chí qua một mạng của các
mạng (Network of Networks). Bởi vậy nó cần phải đáp ứng với nhiều kiểu mạng
và nhiều kiểu dịch vụ cung cấp bởi các mạng khác nhau. Các dịch vụ và giao
thức cho tầng mạng là phải phản ánh đợc tính phức tạp đó. Hai chức năng chủ
yếu của tầng mạng là chọn đờng (routing) và chuyển tiếp (relaying).
Ví dụ ta xét mạng chuyển mạch gói (packet switched network), bao
gồm tập hợp các nút chuyển mạch gói nối với nhau bởi các liên kết dữ liệu. Các
gói dữ lliệu đợc truyền từ một hệ thống mở tới một hệ thống mở khác trên mạng
để chọn đờng qua một chuỗi các nút. Mỗi nút nhận gói dữ liệu từ một đờng vào
(incoming link) rồi chuyển tiếp nó tới một đờng ra (outgoing link) hớng đến
đích của dữ liệu. Nh vậy là ở mỗi nút trung gian đó phải thực hiện các chức
năng chọn đờng và chuyển tiếp. Các chức năng đó phải thuộc tầng 3 vì chúng rõ
ràng ở trên tầng liên kết dữ liệu và để cung cấp một dịch vụ trong suốt cho tầng
giao vận (transport), phải ở dới tầng giao vận.
Ngoài hai chức năng quan trọng nói trên, tầng mạng cũng thực hiện một
số chức năng khác mà chúng ta cũng thấy ở nhiều tầng mạng: ví dụ nh thiết lập,
duy trì và giải phóng các liên kết logic (cho tầng mạng), kiểm soát lỗi, kiểm
soát luồng dữ liệu, dọn kênh/phân kênh, cắt/hợp dữ liệu v.v
Dới đây chúng ta sẽ xem xét một cách chi tiết hơn các kỹ thuật chọn đ-
ờng, sau đó sẽ đi vào một số giao thức cụ thể phổ dụng nhất cho tầng mạng.
Nguyễn Thị Hoài Vân 3
Lớp Tin học Kinh tế 43 A
Website: Email : Tel (: 0918.775.368
Phần hai
Tìm hiểu sâu hơn về tầng mạng
thông lợng, mục đích sử dụng, v.v). các tiêu chuẩn có thể thay đổi vì bối cảnh
mạng có thể thay đổi theo thời gian.
Dới đây chúng ta đi nghiên cứu vào các kỹ thuật chọn đờng:
Nguyễn Thị Hoài Vân 4
Lớp Tin học Kinh tế 43 A
Website: Email : Tel (: 0918.775.368
1. Kỹ thuật chọn đờng tập trung và kỹ thuật chọn đờng phân tán:
a) Kỹ thuật chọn đờng tập trung:
kỹ thuật này đợc đặc trng bởi sự tồn tại của một hoặc vài trung tâm điều khiển
mạng thực hiện việc chọn đờng, sau đó gửi các bảng chọn đờng (routing table) tới
tất cả các nút dọc theo con đờng đã đợc chọn đó. Trong trờng hợp này, thông tin
tổng thể của mạng cần dùng cho việc chọn đờng chỉ đợc cất giữ tại trung tâm điều
khiển mạng. Các nút mạng có thể không gửi bất kỳ thông tin nào về trạng thái của
chúng tới trung tâm, hoặc gửi theo định kỳ, hoặc chỉ gửi khi xảy ra một sự kiện
nào đó. Trung tâm điều khiển sẽ cập nhật các bảng chọn đờng dựa trên các thông
tin nhận đợc đó.
b) Kỹ thuật chọn đờng phân tán:
Trong kỹ thuật này không tồn tại các trung tâm điều khiển: quyết định
chọn đờng đợc thực hiện tại mỗi nút của mạng. điều này đòi hỏi việc trao đổi
thông tin giữa các nút, tùy theo mức độ thích nghi của giải thuật đợc sử dụng.
2. Kỹ thuật chọn đờng thích nghi và kỹ thuật chọn đờng không thích nghi:
a)Kỹ thuật chọn đờng không thích nghi (Hay kỹ thuật chọn đờng tĩnh):
Kỹ thuật này có thể là tập trung hoặc phân tán nhng nó không đáp ứng với mọi sự
thay đổi trên mạng. Trong trờng hợp này, việc chọn đờng đợc thực hiện mà không
có sự trao đổi thông tin, không đo lờng và không cập nhật thông tin. Tiêu chuẩn
(tối u) để chọn đờng và bản thân con đờng đợc chọn một lần là toàn cuộc, không
hề có sự thay đổi giữa chúng. Các kỹ thuật chọn đờng tĩnh rõ ràng là rất đơn giản,
do vậy đợc sử dụng rất rộng rãi, đặc biệt trong các mạng tơng đối ổn định, ít có
thay đổi về topo và lu thông trên mạng.
b)Kỹ thuật chọn đờng thích nghi (có khi còn gọi là kỹ thuật chọn đờng
trong mạng và không bao giờ tới đích. Phải có những giải pháp để đảm bảo không
bị quẩn (loopless) trong việc chọn đờng.
II. Các giải thuật tìm đờng tối u:
Bài toán tìm đờng đi tối u hay đờng đi ngắn nhất theo nghĩa tiêu chuẩn tối u đ-
ợc chọn, trong số các con đờng tồn tại giữa hai đờng đã đợc giải quyết từ lâu và
thuần túy toán học. Các giải thuật đó có thể áp dụng vào kỹ thuật chọn đờng trong
mạng với một ít thay đổi cho phù hợp với bối cảnh ứng dụng. ở đây chỉ chọn trình
bày 2 giải thuật điển hình: một cho kỹ thuật chọn đờng tập trung và một cho kỹ
thuật chọn đờng phân tán.
Xét sơ đồ mạng ví dụ trong hình 1, với giả thiết các liên kết là 2 chiều đồng
thời (full duplex) và giá cho cả 2 chiều đợc ghi bên cạnh mỗi liên kết.
1- Giải thuật cho kỹ thuật chọn đờng tập trung (Dịkstra):
Bài toán đặt ra là: tìm con đờng có độ dài (ở đây hiểu là giá) cực tiểu từ
một nút cho trớc (nguồn) tới mỗi nút còn lại của mạng (đích). Giải thuật Dijkstra
sẽ từng bớc kiến thiết một cây đờng ngắn nhất, có gốc tại nút nguồn, cho tới khi
nút xa nhất trong mạng đã đợc đa vào. ở bớc thứ k, các con đờng ngắn nhất tới k
nút gần nhất sẽ đợc tính. Các nút đó đợc định nghĩa thuộc một tập N.
Gọi: l(i,j) là độ dài của đờng nối trực tiếp 2 nút i và j.
l(i,j)= nếu đờng nối đó không tồn tại
N
k
là tập hợp tạo thành bởi k+1 phần tử : nguồn và k nút gần nguồn nhất sau
k bớc thực hiện giải thuật.
D
k
(n) là độ dài từ nguồn tới nút n theo con đờng ngắn nhất bao hàm trong N
k
.
Không mất tổng quát, giả sử nút 1 là nút nguồn. để tính các con đờng
ngắn nhất từ nút l tới nút còn lại của mạng, ta có các bớc đệ quy sau:
= N
k-1
{w}
Trong đó w thỏa mãn biểu thức: D
k-
(w) = min D
k-1
(v), v không N
k-1
D
k
(v) = min [D
k-1
(v), D
k-1
(w) +l(w,v)]
V không thuộc N
k
Thuật toán dừng lại khi tất cả các nút đã nằm trong N.
Nếu gọi M là số lợng nút của mạng (ở đây M=6) thì sau M bớc ta sẽ kiến
thiết đợc một cây các con đờng ngắn (tối u) nhất với một bảng chọn đờng cho
nút 1 (xem hình sau).
Đích Nút kế tiếp
2 2
3 4
4 4
5 4
6 4
k-1
(w) +l(v,w)]
w N
v
trong đó N
v
là tập hợp các nút láng giềng của v.
cập nhật n
k
(v) nh sau:
Nguyễn Thị Hoài Vân 7
Lớp Tin học Kinh tế 43 A
Cây các đờng ngắn nhất
5
1
1
2
1
2
2
1
4
3
6
Hình 2; K t quả giải thuật Dijkstra cho sơ đồ mạng trong hình 2 và nút nguồn là 1
Website: Email : Tel (: 0918.775.368
n
k
(v) = w
1
mạng không cần các thủ tục của X25 PLP
1. Các thủ tục chính của X25 PLP
X25 PLP có 6 thủ tục chính là:
- Call setup (thiết lập liên kết)
- Clearing (xóa bỏ liên kết)
- Data (truyền dữ liệu thờng)
- Interrupt (truyền dữ liệu khẩn)
- Reset (khởi động lại một liên kết)
- Restart (khởi động lại giao diện)
2- Khuôn dạng các gói tin X25 PLP
Các khuôn dạng gói tin chủ yếu của X25 PLP (hình 3)
Nguyễn Thị Hoài Vân 9
Lớp Tin học Kinh tế 43 A
Q D
1
o
P(S)
o
P(R)
M
User Data
Channel Identifier
D
1
o
P(R)
M
P(S)
o
Q
P(R):số hiệu của gói tin dữ liệu đang chờ để nhận
ở dạng chuẩn, các tham số P(S) và P(R) chiếm 3 bit (đánh số thứ tự theo
modulo 8). để tăng phạm vi đánh số thứ tự các gói tin dữ liệu, ta có thể sử dụng
dạng mở rộng, trong đó mỗi tham số P(S), P(R) chiếm 7 bit (đánh số thứ tự theo
modulo 128).
Packet Type Identifier (PTI): mã phân biệt các kiểu gói tin.
Tất cả các gói tin của X25 PLP đều có chứa tham số PTI, chỉ trừ duy nhất
gói tin dữ liệu thờng (Data PacKet) là không có.
Bit Q (Qualifier bit): dùng để định nghĩa thông tin chứa trong gói tin (ví
dụ để phân biệt dữ liệu ngời sử dụng và thông tin điều khiển.
Bit D (Delivery Comfirmation bit): để chỉ thị về cơ chế báo nhận gói tin (th-
ờng gọi là cơ chế bit D).
Khi D = 0 thì giá trị P(R) biểu thị sự báo nhận (Achnowledgment) gói tin
dữ liệu chỉ có ý nghĩa cục bộ, nghĩa là giữa DCE và DTE.
Còn khi D = 1 thì P(R) biểu thị một sự báo nhận gói tin dữ liệu từ nút- tới-
nút, nghĩa là giữa hai DTE (qua mạng).
Bit M (more Data bit): dùng khi có sự cắt/hợp dữ liệu xảy ra. Cụ thể là khi
kích thớc của đơn vị dữ liệu ở tầng 4 vợt quá độ dài tối đa cho phép của gói tin
X25 PLP, phải cắt nhỏ thành nhiều gói tin. Để bên nhận có thể tập hợp đủ các gói
tin đã bị cắt ra đó, dùng bit M để đánh dấu gói tin cuối cùng trong dãy các gói tin
đó. Nếu M = 0 thì vẫn còn có gói tin tiếp theo, nếu M =1 thì đây là gói tin cuối
cùng.
Dữ liệu của ngời sử dụng (User Data): đối với gói tin Interrupt thì vùng
này không đợc quá 32 bytes; còn đối với gói tin Data thì độ dài tối đa ngầm định
(default) là 128 bytes (tuy nhiên X25 PLP cung cấp một thủ tục phụ cho phép thay
đổi giá trị này).
Vùng Addition Information (thông tin bổ sung) trong các gói tin điều
khiển đợc xác định tùy kiểu gói tin cụ thể. Ví dụ, gói tin Call request có thêm các
thông tin bổ sung sau đây:
Nguyễn Thị Hoài Vân 10
phép truyền qua giao diện DTE/DCE. Nh vậy, cửa sổ đợc xác định bởi một giới
hạn trên và một giới hạn dới. Giới hạn trên là giá trị P(S) của gói tin đầu tiên trong
w gói tin nằm trong cửa sổ, còn giới hạn dới là giá trị P(S) của gói tin cuối cùng
trong w gói tin đợc phép đi qua giao diện.
Giá trị ngầm định (default) của w là 2 (cho mỗi hớng truyền). Có nghĩa là tại
mỗi thời điểm chỉ có tối đa 2 gói tin Data nằm trong cửa sổ, và chỉ các gói tin đó
đợc phép truyền đi. Tuy nhiên X25 PLP có một thủ tục phụ (facility) cho phép
thay đổi giá trị ngầm định đó.
Nguyên tắc kiểm soát luồng dữ liệu nh sau:
- Khi giá trị P(S) của gói tin Data nằm trong cửa sổ thì nó đợc truyền đi,
nếu không nó phải xếp hàng đợi để chờ cửa sổ dịch chuyển.
- Mỗi lần một gói tin Data đợc truyền đi thì cửa sổ đợc dịch chuyển, có
nghĩa là giới hạn trên và giới hạn dới của nó đợc dịch chuyển và những gói tin
Data nằm trong hàng đợi mà có giá trị P(S) thuộc cửa sổ mới sẽ đợc phép truyền
đi.
Lu ý rằng chỉ có các gói tin Data chịu sự kiểm soat này, còn các gói tin
Interrupt thì không.
4. Các thủ tục Reset và Restart của X25 PLP:
Thủ tục Reset nhằm khởi động lại một liên kết ảo (VC và PVC) ở tầng 3, cụ
thể là nó loại bỏ (trên cả 2 hớng của liên kết đó) tất cả các gói tin dữ liệu (Data,
Interrupt) và kéo giới hạn dới của cửa sổ về 0. các gói tin Data cần truyền đi sẽ đ-
ợc đánh số thứ tự lại từ 0. Reset khác với Clearing (xóa bỏ liên kết) ở chỗ Reset
chỉ dọn dẹp chứ không xóa bỏ liên kết đó, trong khi Clearing xóa bỏ hoàn toàn
liên kết đợc chỉ ra.
Thủ tục Restart nhằm khởi tạo lại toàn bộ tầng 3 của giao diện DTE/DCE
(họăc DTE/DTE), cụ thể là nó xóa bỏ (clearing) toàn bộ các liên kết tạm thời (VC)
nhng chỉ khởi động lại (Reset) các liên kết vĩnh viễn (PVC).
5.Các thủ tục phụ của X25 PLP:
Nguyễn Thị Hoài Vân 11
Lớp Tin học Kinh tế 43 A
thớc cửa sổ (giá trị ngầm định ban đầu w =
2)
4.cho phép điều khiển các ứng dụng hớng giao
tác (transaction-Oriented) trong đó ít nhất 1 (và
đôi khi chỉ có một) hành động hỏi/đáp xảy ra.
Khi facility này đợc dùng, vùng User Data
trong gói tin Call request có thể lên đến 128
bytes (thay vì 16 bytes nh thờng lệ).
Mỗi thủ tục phụ đợc khai báo trong vùng Facilities của gói tin Call
request (hình 4) đợc cấu trúc tổng quát nh sau:
Nguyễn Thị Hoài Vân 12
Lớp Tin học Kinh tế 43 A
Facility Code Field
Facility Parameter
Field
Ghi mã phân biệt các Facility (1 byte)
Ghi giá trị các tham số của Facility (kích thước vùng này
tùy vào số lượng và giá trị của các tham số của mỗi
Facility)
Hình 5