Nghiên cứu về tầng mạng của mạng máy tính

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ứ

doc24 trang | Chia sẻ: huyen82 | Lượt xem: 1556 | Lượt tải: 0download
Tóm tắt tài liệu Nghiên cứu về tầng mạng của mạng máy tính, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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. Phần hai Tìm hiểu sâu hơn về tầng mạng Chương I Các kỹ thuật chọn đường trong mạng máy tính I - Tổng quan về kỹ thuật chọn đường trong mạng máy tính: Chọn đường (routing) là sự lựa chọn một con đường để truyền một đơn vị dữ liệu (một gói tin chẳng hạn) từ trạm nguồn đến trạm đích của nó. Một kỹ thuật chọn đường do vậy phải thực hiện 2 chức năng chính sau đây: + Quyết định chọn đường theo những tiêu chuẩn (tối ưu) nào đó. + Cập nhật thông tin chọn đường, tức là thông tin dùng cho chức năng trên. Có rất nhiều kỹ thuật chọn đường khác nhau. Sự phân biệt giữa chúng chủ yếu căn cứ vào các yếu tố liên quan đến 2 chức năng trên. các yếu tố đó thường là: (a) Sự phân tán của các chức năng chọn đường trên các nút của mạng. Dựa trên yếu tố này ta có kỹ thuật chọn đường tập trung (centralized routing) hoặc phân tán (distributed routing). (b) Sự thích nghi với trạng thái hiện hành của mạng. Dựa trên yếu tố này ta có kỹ thuật chọn đường tĩnh (static hay Fixed routing) hoặc thích nghi (adaptatif routing). (c) Các tiêu chuẩn (tối ưu) để chọn đường. Dựa trên các yếu tố (a) ta có kỹ thuật chon đường tập trung ( Centralized ruoting) họa phân tán ( Distibuted ruotting). Dựa trên yếu tố (b) ta có kỹ thuật chọn đường tĩnh ( Static hay Fixed routing) họa thích nghi (adaptatif ruoting). Các kỹ thuật chọn đường cùng loại (theo (a) và (b)) lại có thể phân biêt bởi yếu tố (c). tiêu chuẩn tối ưu để chọn đường được xác định bởi người quản lý hoặc người thiết kế mạng. Nó có thể là: - Độ trễ trung bình của việc chuyển gói tin. - Số lượng nút trung gian giữa nguồn và đích của gói tin. - Độ an toàn của việc truyền tin. - V.v… - Tổ hợp các tiêu chuẩn trên. Việc chọn tiêu chuẩn tối ưu như vậy phụ thuộc vào nhiều bối cảnh mạng (topo, 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: 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 trưng 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 nhưng 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à lưu 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 động): Kỹ thuật này thu hút sự quan tâm đặc biệt của những nhà thiết kế mạng do khả năng đáp ứng với trạng thái khác nhau của mạng. đây là một yếu tố rất quan trọng, đặc biệt đối với các ứng dụng thời gian thực, trong đó yêu cầu đầu tiên của người sử dụng là phải có khả năng cung cấp được các con đường khác nhau để dự phòng sự cố và thích nghi được nhanh chóng với các thay đổi trên mạng. Mức độ thích nghi của một kỹ thuật chọn đường được đặc trưng bởi sự trao đổi thông tin chọn đường trên mạng. đơn giản nhất là không trao đổi gì hết. Mỗi nút (hoặc trung tâm điều khiển trong trường hợp kỹ thuật tập trung) hoạt động một cách độc lập với thông tin riêng của mình để thích nghi với sự thay đổi của mạng theo một phương pháp nào đó. ở mức độ cao hơn, thông tin về trạng thái của mạng có thể được cung cấp từ các nút láng giềng hoặc từ tất cả các nút khác. thông thường, các thông tin được đo lường và sử dụng cho việc chọn đường bao gồm: - Các trạng thái của đường truyền - Các độ trễ truyền dẫn - Mức độ lưu thông - Các tài nguyên khả dụng -v.v… Khi có sự thay đổi trên mạng (ví dụ thay đổi topo do sự cố hoặc do sự phục hồi của một nút mạng, nối thêm một nút mới, v.v…, hoặc thay đổi về mức độ lưu thông) các thông tin trên cần phải được cập nhật. Thực tế cho thấy rằng phần lớn các kỹ thuật chọn đường phân tán và thích nghi đáp ứng nhanh với các “tin lành” nhưng lại đáp ứng chậm với các “tin xấu”. Chẳng hạn thông tin về sự cố của một đường truyền nằm trên một con đường đã chọn đôi khi không được truyền đi với tốc độ cần thiết làm cho các gói tin vẫn được gửi đến đường truyền đó gây ra hiện tượng tắc nghẽn. Tất nhiên cần phải có giải pháp cho vấn đề này. một hiện tượng khác cũng hay gặp đối với kỹ thuật chọn đường phân tán và thích nghi: các gói tin bị quấn 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. u v w z y x 1 2 2 5 3 3 1 1 2 Hình 1: sơ đồ mạng ví dụ 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 Nk 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. Dk(n) là độ dài từ nguồn tới nút n theo con đường ngắn nhất bao hàm trong Nk. 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: Bước 0 (khởi động) N0 = {1} D0(v) = l(1,v) v không Є N0 Bước k (tính và cập nhật) Nk = Nk-1 υ {w} Trong đó w thỏa mãn biểu thức: Dk-(w) = min Dk-1(v), v không Є Nk-1 Dk(v) = min [Dk-1(v), Dk-1(w) +l(w,v)] V không thuộc Nk Thuật toán dừng lại khi tất cả các nút đã nằm trong N. Cây các đường ngắn nhất 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). 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 Đích Nút kế tiếp 2 2 3 4 4 4 5 4 6 4 Lưu ý rằng giải thuật trên sử dụng thông tin tổng thể của mạng tại mỗi bước, vì thế nó thích hợp với kỹ thuật chọn đường tập trung. 2- Giải thuật cho kỹ thuật chọn đường phân tán (Ford & Fulkerson): Giải thuật này cho phép tìm tất cả các con đường “ngắn” nhất từ tất cả các nút tới một đích chung. Giải thuật thực hiện theo các bước lặp. Sau k bước mỗi nút được đánh dấu bởi cặp giá trị (nk(v), Dk(v)) trong đó: Dk(v) là độ dài cực tiểu (hiện tại) từ nút v tới đích; nk(v) là nút tiếp theo (hiện tại) trên con đường (tối ưu) từ nút v tới đích được tính ở bước k. Bước 0 (khởi động) D0(1) = 0 và tất cả các nút được đánh dấu (.,∞) Bước k (tính và cập nhật) Với mọi v khác 1 (đích), cập nhật Dk(v) như sau: Dk(v) = min[Dk-1(w) +l(v,w)] wЄ Nv trong đó Nv là tập hợp các nút láng giềng của v. cập nhật nk(v) như sau: nk(v) = w1 với w1 thỏa mãn biểu thức: Dk-1(w1)+l(v,w1) = min[Dk-1(w) +l(v,w)] wЄNv Quá trình lặp sẽ dừng lại khi cặp giá trị đánh dấu của mỗi nút giữ nguyên không thay đổi nữa. việc tính toán và cập nhật ở mỗi bước được thực hiện theo thứ tự số, tuy nhiên yếu tố thứ tự đó không ảnh hưởng đến sự hội tụ của giải thuật. Với sơ đồ mạng ví dụ trong hình 1, giải thuật sẽ kết thúc sau 3 bước và cho ta cây đường đi tối ưu và bảng chọn đường giống như kết quả của giải thuật Dijkstra (hình 2) Chương 2 Giao thức X25 PLP, truy nhập mạng từ trạm cuối, dịch vụ OSI cho tầng mạng, trường hợp không liên kết: I- Giao thức X25 PLP: X25 PLP định nghĩa 2 loại liên kết logic: -VC (Virtual Circuit) : là liên kết ảo có tính tạm thời được thiết lập và xóa bỏ bởi các thủ tục của X25 PLP. -PVC (Permanent Virtual Circuit) : là liên kết ảo được thiết lập vĩnh viễn trên 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) Q D 1 o P(S) o P(R) M User Data Channel Identifier D 1 o P(R) M P(S) o Q logical Channel Identifier User Data Logical (a) (b) Khuôn dạng gói tin dữ liệu thường: (a) dạng chuẩn-modulo 8 (b) dạng mở rộng-modulo 128 Hình 3: các khuôn dạng gói tin chủ yếu của X25 PLP 0 0 1 1 0 0 1 0 0 0 0/1 1/0 Packet. Type. Identifier Logical Channel Identifier Logical Channel Identifier Additional Information Interrupt User Data (max: 32 byte Interrupt Packet Control Packets o o 0/1 1/0 Sau đây là ý nghĩa các tham số dùng trong các gói tin X25 PLP • Logical Channel Identifier (LCI): số liệu của liên kết logic (VC hoặc PVC) • P(S): số hiệu của gói tin dữ liệu được gửi đi • 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: 0 0 0/1 1/0 1 1 1 0 0 0 0 0 Calling DTE address length Callext DTE address length DTE address (called) (calling) Facility length Facilities User Data(Max:16 bytes) Hình 4: khuôn dạng gói tin Call request - Calling (called) DTE address length: Độ dài của các địa chỉ của DTE yêu cầu (được yêu cầu), tính theo đơn vị nửa byte. - DTE address: ghi lần lượt địa chỉ các DTE với độ dài đã khai báo ở trên. - Facility length: độ dài vùng khai báo các thủ tục phụ (Facility) được dùng (1 byte). Facilities: khai báo lần lượt các thủ tục phụ được sử dụng. User Data: dữ liêu phụ, có tính chất thông báo, độ dài tối đa là 16 bytes. 3. Kiểm soát luồng dữ liệu trong X25 PLP: X25 PLP sử dụng cơ chế “cửa sổ” (window) để kiểm soát luồng dữ liệu (Data Flow Control) tại mỗi nút. ở mỗi hướng truyền dữ liệu trên mỗi liên kết, một cửa sổ được xác định như là một tập có thứ tự (modulo) của w số hiệu P(S) liên tiếp của các gói tin Data được 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. Lưu ý 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) nhưng 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: X25 PLP cung cấp hơn 40 thủ tục phụ (facility) cho người sử dụng. các thủ tục này một số có thể được cung cấp bởi mạng, nhưng một số khác lại có thể được dùng bởi một người sử dụng cụ thể theo yêu cầu. Một số thủ tục phụ được chọn để dùng trong một giai đoạn thỏa thuận trước, một số khác lại được yêu cầu trên từng liên kết và được khai báo trong gói tin Call Request (xem hình 4), lúc đó chúng chỉ có hiệu lực đối với liên kết đó. Bảng sau liệt kê một số thủ tục phụ quan trọng được cung cấp bởi mạng mặc dù việc sử dụng chúng là không bắt buộc (optional). Bảng 1: một số thủ tục phụ quan trọng của X25 PLP Tên thủ tục phụ Chức năng 1.Flow Control Parameter Negociation 2.throughput Class Negociation 3.Non Standard Default Packet Sizes 3.Non Standard Default Window sizes 4.end to end trasit Delay Negociation Fast select. 1.cho phép thương lượng về kích thước “cửa sổ” và độ dài tối đa của vùng User Data cho mỗi hướng của liên kết. 2.cho phép thương lượng về thông lượng của dữ liệu truyền qua một số liên kết, trong phạm vi từ 75 bps đến 48 Kbps. 3.cho phép thay đổi giá trị ngầm định của kích thước vùng User Data trong các gói tin Data (giá trị ngầm định ban đầu là 128 bytes). 3.cho phép thay đổi giá trị ngầm định của kích 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: 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 II. Truy nhập mạng từ trạm cuối: các chuẩn X.3, X.28 và X.9 Trong phần trên chúng ta đã xem xét giao thức X25 PLP với giả thiết rằng DTE nối mạng là những thiết bị có đủ độ “thông minh” (khả năng xử lý) để có thể cài đặt được các tầng giao thức khác nhau. Khả năng đó là hiện thực nếu DTE là một máy tính có cấu hình đủ mạnh. Tuy nhiên, có những trường hợp DTE không làm việc theo chế độ gói tin (packet mode) hoặc không đủ mạnh để cài đặt giao thức kiểu X25 PLP, chẳng hạn như trường hợp một trạm đầu cuối làm việc theo chế độ ký tự không đồng bộ (asynchronous character- mode terminal) nào đó. để cho các TDE loại này có thể truy nhập vào mạng, cần phải bổ sung một thiết bị phụ đảm nhiệm việc tập hợp các xâu ký tự từ trạm cuối thành các gói tin cho mạng và ngược lại. PAD X.3 C-DTE DCE DCE P-DTE X.28 X..29 X.25 X.25 Mạng X.25 C-DTE: character-mode DTE P-DTE: packet-mode DTE Hình 6: Minh họa quan hệ chức năng của các chuẩn X.3, X.25, X.28 và X.28 Thiết bị đó được gọi là PAD (packet Assembler – Disassembler). Lưu ý rằng PAD có thể là một thiết bị độc lập nhưng cũng có thể được ghép vào trong bản thân DTE hoặc nút của mạng (DCE). Các chức năng và thủ tục của một PAD được đặc tả trong khuyến nghị X.3 của CCITT. Ngoài ra, CCITT cũng đưa ra các khuyến nghị liên quan là X.28 (đặc tả giao diện giữa một trạm cuối hoạt động theo chế độ ký tự không đồng bộ và PAD) và X.29 (đặc tả tương tác giữa PAD và một DTE hoạt động theo chế độ gói tin ở xa). Hình 6 minh họa mối quan hệ chức năng của các chuẩn X.3, X.25, X.28 và X.29 trong trường hợp điển hình. III- Dịch vụ OSI cho tầng mạng: Cũng như đối với các tầng khác trong mô hình OSI, ngoài các giao thức ISO còn định nghĩa các dịch vụ mà tầng mạng cung cấp cho các thực thể ở tầng trên (giao vận) dưới dạng một tập các hàm dịch vụ nguyên thủy (service primitives) (xem bảng 2). • N-CONNECT. request (Called Address, Calling Address, Receipt Confirmation Selection, Expedited Data Selection, QOS – Parameter set, NS-User Data). • N-CONNECT. Indication (Called Address, Calling Address, Receipt Confirmation Selection, Expedited Data Selection, QOS – Parameter set, NS-User Data). • N- CONNECT. Response (Responding Address, Receip Confirmation Selection, Expedited Data Selection, QOS – Parameter set, NS-User Data). • N- CONNECT. Confirm (Responding Address, Receip Confirmation Selection, Expedited Data Selection, QOS – Parameter set, NS-User Data). • N-DIS CONNECT. Request (Reason, NS User Data, Responding Address) • N-DIS CONNECT. Indication (Originator, Reason, NS-User Data, Responding Address) • N- Data. Request (NS – User Data, Confirmation Request) • N- Data. Indication (NS – User Data, Confirmation Request) • N- Data- ACKNOWLEDGE. Request • N- Data- ACKNOWLEDGE. Indication • N- EXPEDITED – DATA. Request ( NS- User Data ) • N- EXPEDITED – DATA. Indication( NS- User Data ) • N- RESET.request ( Reason) • N- RESET. Indication (Originator, Reason) • N- RESET Response • N- RESET.confirm Called DTE Calling DTE X25 PLP Hình 7 : Sơ đồ minh họa quan hệ giữa các primitives dịch vụ và thủ tục của giao thức ở tầng 3 ( X25 PLP) Bảng 2. Các hàm dịch vụ nguyên thủy OSI cho tầng mạng Lưu ý rằng trong trường hợp mạng có liên kết ( connection – oriented), vịêc truyền thông được thực hiện qua 3 giai đoạn : thiết lập liên kết, truyền dữ liệu và giải phóng (xóa bỏ) liên kết khi không còn nhu cầu truyền thông. Trong bảng 2, 4 primitives đầu dành cho việc thiết lập liên kết (tầng 3). Ngoài các địa chỉ trạm yêu cầu (calling) và trạm được yêu cầu (called), còn có những tham số khác để cung cấp đủ thông tin điều khiển, kể cả phần thông báo nhanh (NS –User Data) cho việc thương lượng giữa hai bên để thiết lập liên kết. Tham số “chất lượng dịch vụ” (QOS – Quality of Service) cụ thể là thông lượng và độ trễ truyền dẫn (transit delay) của liên kết cần thiết lập. Hai Primitives tiếp theo (N – DISCONNECT.request, N – DISCONNECT. Indication) để phục vụ cho giai đoạn hủy bỏ liên kết. ở đây cần có tham số chỉ ra nguyên nhân (reason) và kẻ khởi xướng (Originator) của sự hủy bỏ liên kết này. Các Primitives N-DATA và N-EXPEDITED-DATA dùng cho giai đoạn truyền dữ liệu (thường hoặc khẩn). Tham số chính của chúng là vùng chứa dữ liệu cần truyền (NS-User Data). Hai Primitives N-DATA-ACKNOWLEDGE (request và indication) để phục vụ cho việc báo nhận tốt dữ liệu. Hai Primitives cuối cùng phục vụ cho việc khởi động lại (reset) liên kết, tham số của chúng cũng phải chỉ ra nguyên nhân và “kẻ khởi xướng” việc khởi động lại này. IV. Trường hợp không liên kết: Ngoài dịch vụ và giao thức chuẩn cho tầng mạng trong trường hợp có liên kết,ISO cũng đã định nghĩa các dịch vụ và giao thức cho tầng mạng trong trường hợp không liên kết (connectionless). • Về dịch vụ (ISO 8348/DAD1), chỉ có 2 primitives được định nghĩa, đó là: N-UNITDATA. Request (source address,destination address, quality of service, NS-User data). N-UNITDATA. indication (source address,destination address, quality of service, NS-User data). Trong đó “source address” và “destination address” là các địa chỉ liên mạng toàn cục (global internet address) định danh một cách duy nhất các hệ thống cuối (end system). “quality of service” bao gồm một tập các tham số đó là: - Transit delay: chỉ thời gian cần thiết giữa một N-UNITDATA. Request và N-UNITDATA. Indication tương ứng - Protection: bảo vệ tránh các truy nhập bất hợp pháp (có 4 options). - Cost Determinants: cho phép người dùng chỉ rõ tính chất của giá cước phương tiện được sử dụng (rẻ nhất hoặc đắt nhất chấp nhận được). - Residual Error Probablity: chỉ ra xác suất một NSDU có thể bị mất, bị trùng lập hoặc bị lỗi khi nhận. - Priority: độ ưu tiên đối với mỗi NSDU, đặc biệt khi cần loại bỏ chúng để phục hồi các tài nguyên. • về giao thức,ISO công bố chuẩn IP (Internet Protocal) (ISO 8473) để cung cấp các dịch vụ mạng không liên kết và cung cấp khả năng nối liên kết mạng (internetworking). IP sử dụng 2 loại đơn vị dữ liệu (PDU) là data PDU và error repert PDU. Lưu ý rằng IP của ISO được xây dựng dựa vào các khái niệm của giao thức IP của bộ quốc phòng Mỹ (Department of Defense-DOD). Chương 3 Công nghệ chuyển mạch nhanh Frame Relay và ATM Nhu cầu truyền thông đa phương tiện (tích hợp dữ liệu văn bản, đồ họa, hình ảnh, âm thanh) ngày càng đòi hỏi công nghệ truyền dẫn tốc độ cao. Các mạng công cộng chuyển mạch gói X25 với thông lượng tối đa 64 Kb/s như hiện nay rõ ràng không đáp ứng được nhu cầu nói trên. trong khi chờ đợi việc cải thiện hiệu năng của công nghệ X25, người ta tập trung vào việc tìm kiếm các công nghệ mới trong tương lai theo hướng cố gắng làm tăng tốc độ truyền mạch (switching) tại các nút mạng. FPS PVC PVCA Cell relay Frame relay ATM based (forB-ISDN) DQDB based (for SMDS) SVC (Q.931) SVC (Q.931) (LAP-D) (LAP-D) Or Fast Relay Chú thích: FPS: Fast Packet Switching ATM:Asynchronous Transfer Mode DQDB: distributed queue dual Bus (IEEE8026 for Man) B-ISEn:Broadband Integranted Services Digital Network SMDS: Switched multiegabit Data Service PVC: Permanent Virtual Circuit SVC: Switched Virtual Circuit LAP-D: Link Access Procedure – D channel Hình 8: phân loại các kỹ thuật chuyển mạch nhanh Các công nghệ thuộc loại này được đặt chung tên gọi là FPS (Fast Packet Switching) và được xây dựng dựa trên 2 kỹ thuật cơ bản là Frame Relay và Cell Relay (hình 5). điểm khác biệt đầu tiên giữa hai kỹ thuật này là: trong khi Frame Relay dùng các đơn vị dữ liệu có kích thước thay đổi (được gọi là Frame – khung) thì Cell Relay dùng các đơn vị có kích thước cố định (để phân biệt, được gọi là Cell- tế bào). Kỹ thuật Frame Relay cho phép vượt ngưỡng 64 Kb/s của X25 hiện nay, nhưng thông lượng tối đa cũng chỉ đạt tới 2Mb/s. trong khi đó kỹ thuật Cell Relay dựa trên phương thức truyền không đồng bộ (ATM) có thể cho phép thông lượng hàng trăm Mb/s. lưu ý rằng ngoài ATM, Cell Relay còn dựa tiêu chuẩn DQDB (tương ứng với chuẩn IEE802.6 cho mạng đô thị – MAN) dùng cáp quang cho topo dạng bus kép, chấp nhận cả hai phương thức truyền đồng bộ và không đồng bộ. Cả hai kỹ thuật Frame Relay và Cell Relay đều có thể được cài đặt cho các liên kết PVC (là liên kết logic thường trực, luôn sẵn sàng phục vụ) cũng như các liên kết SVC (là liên kết logic chỉ khả dụng khi có yêu cầu). Mặc dầu chưa đáp ứng được yêu cầu của truyền thông đa phương tiện, kỹ thuật Frame Relay vẫn là một giải pháp quá độ được lựa chọn trong khi chờ đợi kỹ thuật Cell Relay (ATM) được đưa vào ứng dụng rộng rãi. Dưới đây chúng ta sẽ lần lượt xem xét kỹ hơn cả hai kỹ thuật quan trọng này. I . Kỹ thuật Frame Relay Trong X25 chức năng dồn kênh (multiplexing) đối với các liên kết logic (Virtual circuits) chỉ đảm nhiệm việc kiểm soát lỗi cho các Frame gửi đi qua giao diện DTE/DCE cục bộ. Điều này làm tăng độ phức tạp trong việc phối hợp các thủ tục giữa hai tầng kề nhau, dẫn đến thông lượng bị hạn chế do tổng phí xử lý mỗi gói tin tăng lên. Trái lại, với Frame Relay, chức năng dồn kênh và chọn đường (Routing) được thực hiện ở tầng 2. hơn nữa, việc chọn đường cho các Frame lại rất đơn giản làm cho thông lượng có thể cao hơn nhiều so với kỹ thuật chuyển mạch gói. Khuôn dạng tổng quát của Frame dùng trong kỹ thuật Frame Relay cũng giống như Frame HDLC, chỉ có sự khác biệt trong nội dung của vùng thông tin điều khiển (Header) 8 16 (variable) 16 8 Flad Header Information FCS Flag DLCI: Data Link Connection Identifier CF: Congestion Forward CB: Congestion Backward DE: Discard Eligibility Hình 9: khuôn dạng frame dùng trong kỹ thuật Frame Relay Trong vùng Header của Frame có chứa tham số DLCL (Data Link connection Identifier) để định danh các liên kết dữ liệu được thiết lập. Mỗi khi một liên kết dữ liệu được thiết lập thì nó được gán một DLCL và giá trị này sẽ luôn được khai báo trong tất cả các Frame dữ liệu và Frame điều khiển liên quan đến liên kết đó. cũng giống như tham số VCL trong X25 PLP, DLCL chỉ có ý nghĩa cục bộ và được dùng để chọn đường (truyền tiếp cho Frame tới đích của nó). ậ mỗi nút, khi nhận được 1 Frame dữ liệu, chương trình điều khiển (Frame Handler) được cài ở đó sẽ đọc giá trị DLCL trong vùng header và kết hợp với số liệu của đường truyền vào (Incoming Link) để xác định đường truyền ra (Outgoing Link) và giá trị DLCL đi ra tương ứng. Giá trị DLCL mới này sẽ được ghi vào header của Frame và Frame sẽ được đưa vào hàng đợi để gửi tiếp đi trên đường ra đã chọn (xem hình 10). Vì nhiều liên kết dữ liệu (logic) có thể đồng thời phân chia cho một đường truyền vật lý, mặt khác các Frame liên quan đến một liên kết dữ liệu nào đó lại có thể được tạo ra ở các thời điểm ngẫu nhiên nên hiện tượng tắc nghẽn (congestion) có thể xảy ra đối với một đường truyền ra nào đó khi lưu thông trong mạng quá lớn. Các bit CF, CB và DE trong vùng header của Frame được dùng để kiểm soát hiện tượng tắc nghẽn. Mỗi khi Frame handler chuyển tiếp một Frame vào hàng đợi ra, nó phải kiểm tra kích thước của hàng đợi, nếu vượt quá một giới hạn cho trước thì nó thông báo tình trạng cho người sử dụng ở hai đầu liên kết bằng cách đặt giá trị cho bit CE hoặc CB tùy theo chiều đi hay chiều về của Frame. Khi Frame handler trong máy của người sử dụng cuối nhận được thông báo về tình trạng tắc nghẽn mạng, nó sẽ tạm thời giảm tốc độ gửi Frame của nó cho tới khi không còn tín hiệu về tắc nghẽn nữa. Tuy nhiên trong trường hợp quá tải nhiều thì phải thực hiện việc loại bỏ bớt các Frame. Frame handler Frame Relay Network Node (1) Link-out DLCI out Link-out DLCI out Link-out DLCI out 1 - - 3 6 5 . . . . . . Link (1) Routing table Link (2) Routing table Link (3) Routing ta._.

Các file đính kèm theo tài liệu này:

  • doc35665.doc
Tài liệu liên quan