Cùng với sự phát triển của máy tính, các công nghệ truyền dữ liệu vàviễn thông cũng phát triển không ngừng, sự kết hợp lý thú và hiệu quả caogiữa công nghệ truyền thông và máy tính tin h
Trang 1Chương 1 TỔNG QUAN VỀ MẠNG MÁY TÍNH
1.1 Giới thiệu chung.
Cùng với sự phát triển của máy tính, các công nghệ truyền dữ liệu vàviễn thông cũng phát triển không ngừng, sự kết hợp lý thú và hiệu quả caogiữa công nghệ truyền thông và máy tính (tin học) tạo ra nền tảng của Côngnghệ thông tin, cơ sở của hệ thống mạng máy tính một trong những thành tựutuyệt vời nhất mà con người đã tạo ra
Ngày nay, với công nghệ Internet mỗi người dù ở bất cứ nơi đâu đều cóthế tiếp cận được nguồn tài nguyên thông tin vô giá qua công cụ mạngInternet Như tỷ phú Bill Gates đã phát biểu đại ý, với mạng Internet thế giớingày nay nằm trên đầu ngón tay của bạn, dưòng như không gian và thời giangần như bị triệt tiêu Mạng Internet được phát triển trên cơ sở nhiều mạng
(Network Computer) liên kết với nhau tạo thành một mạng lưới có quy mô
toàn cầu, vì vậy để hiểu sâu sắc về các mô hình các mạng cơ bản sự kết nốigiữa chúng với nhau, trong chương này chúng ta sẽ lần lượt tìm hiểu về lịch
sử phát triển mạng, các khái niệm cơ bản nhất trong lý thuyết mạng máy tính
1.2 Lịch sử phát triển.
Từ những năm 60 của thế kỷ trước đã xuất hiện các mạng xử lý dữ liệu,trong đó các trạm cuối thụ động được nối vào các máy xử lý trung tâm Cácmáy trung tâm làm tất cả mọi việc từ khâu quản lý các thủ tục truyền dữ liệu,quản lý sự đồng bộ của các trạm cuối, đến việc theo dõi ngắt của các trạmcuối
Dần dần để giảm nhẹ nhiệm vụ của của máy xử lý trung tâm người tathêm vào các bộ tiền xử lý, đồng thời thêm vào các thiết bị “tập trung”(concentrator) và bộ “dồn kênh” (multiplexor) Hệ thống này được kết nốithành mạng truyền tin
Sự khác nhau giữa hai thiết bị trên là ở chỗ: bộ dồn kênh có khả năngchuyển song song các thông tin do trạm cuối gửi tới, còn bộ tập trung không
có khả năng đó nên phải dùng bộ nhớ đệm để lưu trữ tạm thời các thông tin
Trang 2Hình1.1 Sơ đồ mạng thời kỳ đầu
Trong những năm 70 của thế kỷ XX, các máy tính được nối với nhautrực tiếp thành mạng, đồng thời tại thời điểm này xuất hiện khái niệm mạngtruyền thông (communication network), trong đó các thành phần chính của nó
là các nút mạng, được gọi là bộ chuyển mạch
Các máy tính được nối thành mạng máy tính nhằm đạt tới các mục tiêuchính sau đây:
- Làm cho các tài nguyên có giá trị ngày càng cao (thiết bị, chương trình,
dữ liệu, … ) trở nên khả dụng đối với bất kỳ người sử dụng nào trên mạng( không cần quan tâm đến vị trí địa lý của tài nguyên và người sử dụng)
- Tăng độ tin cậy của hệ thống nhờ khả năng thay thế khi xảy ra sự cốđối với một máy tính nào đó
Từ thập kỷ 80 của thế kỷ trước trở đi thì việc kết nối mạng mới đượcthực hiện rộng rãi nhờ tỷ lệ giữa giá thành máy tính và chi phí truyền tin đãgiảm đi rõ rệt Trong giai đoạn này bắt đầu xuất hiện những thử nghiệm đầutiên về mạng diện rộng và mạng liên quốc gia Người sử dụng dùng các máytính độc lập bắt đầu chia sẻ các tập tin bằng cách dùng modem kết nối với cácmáy tính khác Cách thức này được gọi là điểm nối điểm, hay truyền theokiểu quay số Khái niệm này được mở rộng bằng cách dùng các máy tính làtrung tâm truyền tin trong một kết nối quay số Các máy tính này được gọi là
sàn thông báo (bulletin board) Các người dùng kết nối đến sàn thông báo
này, để lại đó hay lấy đi các thông điệp, cũng như gửi lên hay tải về các tậptin Hạn chế của hệ thống là có rất ít hướng truyền tin, và chỉ với những aibiết về sàn thông báo đó Ngoài ra, các máy tính tại sàn thông báo cần mộtmodem cho mỗi kết nối, khi số lượng kết nối tăng lên, hệ thống không thề đápứng được nhu cầu
Trang 3Qua các thập niên 1950, 1970, 1980 và 1990, Bộ Quốc phòng Hoa Kỳ đãphát triển các mạng diện rộng WAN tin cậy nhằm mục đích quân sự và khoahọc Công nghệ này khác truyền tin điểm nối điểm Nó cho phép nhiều máytính kết nối lại với nhau bằng các đường dẫn khác nhau Bản thân mạng sẽxác định dữ liệu di chuyển từ máy tính này đến máy tính khác như thế nào.Thay vì chỉ có thể thông tin với một máy tính tại một thời điểm, nó có thểthông tin với nhiều máy tính cùng lúc bằng cùng một kết nối WAN của BộQuốc phòng Hoa Kỳ về sau trở thành Internet.
1.3 Một số khái niệm cơ bản của mạng máy tính
1.3.1 Mạng máy tính là gì ?
Mạng máy tính là một hệ thống bao gồm nhiều máy tính và các thiết bịngoại vi được kết nối với nhau bằng các đường truyền vật lý theo một kiếntrúc nào đó nhằm thu thập và chia sẻ tài nguyên cho nhiều người sử dụng.Tài nguyên được hiểu bao gồm các thiết bị phần cứng và các thông tinhoặc dữ liệu
1.3.2 Đường truyền vật lý
Để truyền dữ liệu giữa các máy tính trong mạng cần thông qua môitrường truyền dẫn, hiện nay có nhiều phương tiện để thực hiện điều này nhưcap đồng trục, cap xoắn đôi, cap RJ, cap quang hoặc không dây bằng sóngđiện từ,…
1.3.3 Kiến trúc mạng
Kiến trúc mạng bao gồm hai thành phần là hình trạng mạng (topo mạng)
và giao thức mạng
Topo mạng Kiến trúc mạng
Giao thức mạng
Topo mạng là mô hình mô tả phương thức kết nối các thành phần trongmạng với nhau
Giao thức mạng là tập hợp các quy tắc, quy ước và các biện pháp thực thi
mà tất cả các thực thể tham gia truyền thông trên mạng phải tuân theo để bảođảm cho mạng hoạt động đồng bộ
1.3.4 Hệ điều hành mạng.
Hệ điều hành mạng (NOS – Network Operating Systems) là một hệ
Trang 4thống phần mềm được cài đặt trên mạng thực hiện các chức năng: giám sáttheo dõi quá trình hoạt động đồng bộ của mạng, quản lý tài nguyên và ngườidùng trên mạng, cung cấp các dịch vụ cơ bản cho người sử dụng.
Hệ điều hành mạng hiện nay được phát triển theo hai hướng chủ yếusau:
- Tôn trọng tính độc lập của các hệ điều hành cục bộ đã có trên cácmáy tính của mạng Lúc đó hệ điều hành mạng được gài đặt như một tập cácchương trình tiện ích chạy trên các máy tính khác nhau của mạng Giải phápnày dễ gài đặt, chi phí thấp và không vô hiệu hoá các phần mềm, phương thứcquản lý dữ liệu sẵn có trên các máy Tuy nhiên tính đồng bộ không cao, dovậy công việc quản trị mạng sẽ gặp nhiều khó khăn
- Bỏ qua các hệ điều hành cục bộ đã có trên các máy trạm và gài đặtmột hệ điều hành thuần nhất trên toàn mạng còn gọi là hệ điều hành phân tán(distributed operating system) Giải pháp này có độ tin cậy cao hơn, nhưngchi phí xây dựng và gài đặt, nâng cấp sẽ cao hơn
1.3.5 Địa chỉ mạng.
Để bảo đảm quá trình truyền thông trên mạng được thông suốt, cácgiao dịch đúng đối tượng, cần phải xác lập một hệ thống định danh các thựcthể tham gia mạng, trong đó mỗi đối tượng tham gia quá trình gửi và nhậnthông tin phải được xác định duy nhất tại thời điểm truyền tin Các hệ thốngđịnh danh như vậy gọi là địa chỉ mạng Có hai loại địa chỉ mạng
1.3.5.1. Địa chỉ vật lý MAC (Media Accesss Control address)
- Mỗi máy tính tham gia mạng được nối tiếp thông qua thiết bị cardmạng và được nhận diện bởi một địa chỉ vật lý MAC
- Các địa chi MAC được các nhà sản xuất Card mạng ấn định trướccho sản phẩm của mình
- Địa chỉ MAC không nhằm xác định vị trí không gian của cácthực thể tham gia mạng
Cấu trúc của địa chỉ MAC có độ dài 48 bits chia làm 2 phần:
Organizational Unique Identifier (OUI) (NIC Card, Interfaces) Vendor Assigned
Hình 1.2 Cấu trúc địa chỉ MAC
Phần OUI do tổ chức IEEE phân phối cho các nhà sản xuất có độ dài 24bít được biểu diễn bởi 6 số dạng hệ thập lục phân
Trang 5Phần NIC do các nhà sản xuất ấn định trên các sản phẩm của mình có
độ dài 24 bít và cũng được biểu diễn bởi 6 dạng hệ thập lục phân
Hai phần trên bảo đảm cho tính duy nhất của địa chỉ MAC cho mọi sảnphẩm mạng Ví dụ trên một card mạng do công ty Cisco sản xuất có địa chỉMAC như sau:
Organizational UniqueIdentifier (OUI)
Vendor Assigned (NIC Card, Interfaces)
Hình 1.3 Ví dụ hệ thống địa chỉ MAC của CISCO
1.3.5.2. Địa chỉ giao thức mạng IP (Internet Protocol – IP Address) hay còn gọi là địa chỉ logic.
- Địa chỉ IP của các mạng cục bộ có thể do người quản trị xác định
và phải duy nhất trên mạng
- Địa chỉ IP khi tham gia mạng Internet phải do tổ chức quốc tếphân phối và cũng phải bảo đảm tính duy nhất
- Địa chỉ IP tham gia quá trình định tuyến để truyền các thông tintrên mạng từ địa chỉ gửi đến địa chỉ nhận
Hiện nay tồn tại hai hệ thống địa chỉ IP:
IPv4 là địa chỉ IP dùng 32 bit chia thành 4 octet mỗi octet có 8 bit tương
đương với 1 byte Mỗi octet được cách nhau bởi dấu "." và các bit được đánhdấu từ trái sang phải IPv4 có 3 thành phần chính:
1 byte (8 bits) 1 byte (8 bits) 1 byte (8 bits) 1 byte (8 bits)
Class E 1 1 1 1 0 Reverved for future use
Trong đó: Class bit là bit nhận dạng lớp
Net ID là địa chỉ mạng
Host ID là địa chỉ máy chủ
Trang 6Địa chỉ IPv4 có thể quản lý được 232 = 4,294,967,296 địa chỉ
Địa chỉ Ipv4 có thể dễ dàng chuyển đổi sang dạng thập phân được biểu diễn bởi nhóm 4 số:
Hình 1.5 Chuyển đổi địa chỉ IP
IPv6 là địa chỉ IP 128 bít nhị phân tức là có thể quản lý được 3 x1038 =340,282,366,920,938,463,463,374,607,431,768,211,456 địa chỉ
Địa chỉ Ipv6 có thể được biểu diễn bởi 8 nhóm số hệ thập lục phân
Trang 7Hình 1.6 Cấu trúc địa chỉ IPV6
1.3.6 Các thành phần cơ bản của mạng máy tính
Để xây dựng một mạng máy tính cần phải có một số thành phần cơ bảnsau đây:
1.3.6.1 Máy chủ (Server): là các máy tính chuyên dụng có chức năng lưu
trữ và quản lý tài nguyên trên mạng, trong một số trường hợp có thể dùng mộtmáy thông thường để thay thế với những mạng có quy mô nhỏ
Hình 1.7 Máy chủ 1.3.6.2 Máy trạm (WorkStation): là các máy tính cá nhân kế nối vào
mạng
1.3.6.3 Card mạng là card giao tiếp để các máy trong mạng có thể trao
đổi được dữ liệu, thông tin với nhau
001 NLA (32) SLA (16) Interface ID (EUI-64)
Link Local Use Address
Subnet (16) Interface ID (EUI-64) 000… 000 (38)
Site Local Use Address
Multicast Address FFFF if host is IPv4 only; 0 if IPv6 capable
Trang 8Hình 1.9 Card mạng
1.3.6.4. Các thiết bị kết nối:
- Bộ tập trung HUB là thiết bị chuyển tín hiệu cho nhiều đầu ra
Hình 1.10 Cisco 116C Ethernet Hub
- Bộ chuyển mạch Switch là thiết bị chuyển tín hiệu cho nhiều ra cóthêm chức năng kích hoạt, một số loại có khả năng định tuyến
Hình 1.11 Smart Switch LinkSys SLM 2008
- Bộ định tuyến Router là thiết bị có khả năng định tuyến theo hệ thốngđịa chỉ IP để truyền dữ liệu theo các hướng khác nhau trên mạng
1.4 Phân loại mạng máy tính
Hiện nay có rất nhiều quan điểm dùng để phân loại mạng, căn cứ vào cáctiêu chí khác nhau như về topo mạng, khoảng cách địa lý, kỹ thuật hoặc mụcđích sử dụng mạng để phân loại Trong tiết này chúng ta sẽ đề cập đến mộtvài phương thức phân loại phổ biến nhất
1.4.1 Phân loại theo topo mạng Lấy tiêu chuẩn là hình trạng mạng để
phân loại, người ta chia làm 4 loại chính sau:
Trang 95.1.1 Mạng hình sao – Star topology là loại mạng được thiết kế theo
mô hình sau:
Hình 1.13 Mạng hình sao
Nguyên tắc làm việc là khi một dữ liệu cần chuyển lên mạng nó sẽ đượctruyền đến Hub ở trung tâm rồi được sẻ cho các thực thể khác trên mạng đồngthời, căn cứ vào địa chỉ đích các máy sẽ tiến hành xử lý dữ liệu được gửi cho
nó Mô hình mạng loại này có ưu điểm hạn chế hiện tượng xung đột, dễ thiết
kế cài đặt, có thể dễ dàng mở rộng thêm các máy và thiết bị khi cần thiết, pháthiện và hiệu chỉnh các lỗi trên mạng nhanh chóng, không làm ảnh hưởng đếncác thành phần khác của mạng Tuy nhiên cũng có hai nhược điểm là phải cóHub, số lượng cáp lớn làm tăng chi phí và bán kính mạng không lớn, vì cácmáy và thiết bị chỉ có thể ddawt cách Hub từ 120-180 m
5.1.2 Mạng hình tuyến – Bus topology.
Hình 1.14 Mạng hình tuyến
Mỗi khi một trạm cần chuyển dữ liệu lên mạng, dữ liệu sẽ được đưa lênmột đường cap dùng chung, các máy trạm sẽ lần lượt kiểm tra xem có dữ liệunào gửi cho mình thì xử lý, không thì bỏ qua Ở hai đầu mạng có linh kiệnphản xạ tín hiệu, bảo đảm cho dữ liệu có một thời gian tồn tại trên mạng đủlớn để các trạm đích đủ điều kiện xử lý Mạng hình tuyến có khả năng mởrộng bán kính khá lớn, tiết kiệm được đường cap do chế độ dùng chungđường truyền, nhược điểm dễ xảy ra xung đột trên đường truyền, quá trình
mở rộng mạng tương đối khó khăn, việc phát hiện và xử lý các lỗi kết nối dođường truyền nhiều trường hợp không đơn giản
5.1.3 Mạng hình vòng – Ring topology
Trang 10Hình 1.15 Mạng hình vòng.
Các máy trạm trong mạng được kết nối vào một đường truyền chung khép kín, khi dữ liệu được đẩy lên mạng sẽ được truyền theo một chiều nhất định (ngược hoặc thuận theo chiều kim đồng hồ), các máy đích sẽ nhận và xử
lý Để bảo đảm độ tin cậy người ta thường thiết kế một số đường truyền song song, Ưu và nhược điểm của mạng hình vòng gần giống với mạng hình tuyến, tuy nhiên khi cần mở rộng và khắc phục các sự cố kết nối vật lý thường gặp khó khăn khi kiểm tra tính khép kín của hình vòng
5.1.4 Mạng dạng hỗn hợp Trong thực tế, để có thể phát huy các ưu
điểm của từng loại trên đồng thời hạn chế tối đa các nhược điểm của chúng, người ta thường thiết kế dạng hỗn hợp
Trang 11
Hình 1.16 Mạng hỗn hợp Bus-star
Hình 1.17 Mạng hỗn hợp Star-bus
5.2 Phân loại mạng theo khoảng cách địa lý Theo tiêu chí khoảng
cách và qui mô mạng có thể phân thành các loại sau:
5.2.1 Mạng cục bộ - LAN (Local Area Network)
Thông thường là mạng của một công ty được lắp đặt trong một toà nhà, một khu vực (trường học hay cơ quan chẳng hạn) có khoảng cách cỡ chừng vài km Chúng nối các máy chủ và các máy trạm trong các văn phòng và nhà máy để chia sẻ tài nguyên và trao đổi thông tin LAN có 3 đặc điểm:
- Giới hạn về tầm cỡ phạm vi hoạt động từ vài mét cho đến 1 km
- Thường dùng kỹ thuật đơn giản chỉ có một đường dây cáp (cable) nối
tất cả máy Vận tốc truyền dữ liệu thông thường là 10 Mbps, 100 Mbps, 1 Gbps, và gần đây là 10 Gbps
- Kiến trúc topo mạng kiểu LAN thông dụng bao gồm:
o Mạng tuyến Các máy nối nhau một cách liên tục thành một hàng
từ máy này sang máy kia Ví dụ của nó là Ethernet (chuẩn IEEE 802.3)
o Mạng vòng Các máy nối nhau như trên và máy cuối lại được nối ngược trở lại với máy đầu tiên tạo thành vòng kín Thí dụ mạng
vòng thẻ bài IBM (IBM token ring)
o Mạng hình sao
5.2.2 Mạng đô thị - MAN (Metropolitan Area Network).
Trang 12Là mạng có cỡ lớn hơn LAN, phạm vi vài km Nó có thể bao gồm nhómcác văn phòng gần nhau trong thành phố, nó có thể là công cộng hay tư nhân
và có đặc điểm:
- Chỉ có tối đa hai dây cáp nối
- Không dùng các kỹ thuật chuyển mạch.
- Có thể hỗ trợ chung vận chuyển dữ liệu và đàm thoại, hay ngay cảtruyền hình Ngày nay người ta có thể dùng kỹ thuật cáp quang (fiber optical)
để truyền tín hiệu Vận tốc hiện nay thể đạt đến 10 Gbps
5.2.3 Mạng diện rộng – WAN (Wide Area Network).
Là loại mạng dùng trong vùng địa lý lớn thường cho quốc gia hay cả lụcđịa, phạm vi vài trăm cho đến vài ngàn km Chúng bao gồm tập họp các máynhằm chạy các chương trình có khối lượng và tốc độ tính toán cao cho người
dùng Các máy trong mạng thường gọi là máy lưu trữ (host) hay còn có tên là máy chủ và máy đầu cuối (end system) Các máy chính được nối nhau bởi các mạng truyền thông con (communication subnet) hay gọn hơn là mạng con (subnet) Nhiệm vụ của mạng con là chuyển tải các thông điệp (message) từ
máy chủ này sang máy chủ khác
Mạng con thường có hai thành phần chính:
- Các đường dây vận chuyển còn gọi là mạch (circuit), kênh (channel), hay đường trung chuyển (trunk)
- Các thiết bị chuyển mạch Đây là loại máy tính chuyện biệt hoá dùng
để nối hai hay nhiều đường trung chuyển nhằm di chuyển các dữ liệu giữa các
máy Khi dữ liệu đến trong các đường vào (incoming), thiết bị chuyển mạch này phải chọn (theo thuật toán đã định) một đường ra ( outgoing) để gửi dữ
liệu đó đi Tên gọi của thiết bị này là nút chuyển gói (packet switching node)
hay hệ thống trung chuyển (intermediate system) Máy tính dùng cho việc chuyển mạch gọi là "bộ chọn đường" hay "bộ định tuyến" (router)
Hầu hết các WAN bao gồm nhiều đường cáp hay là đường dây điệnthoại, mỗi đường dây như vậy nối với một cặp bộ định tuyến Nếu hai bộ địnhtuyến không nối chung đường dây thì chúng sẽ liên lạc nhau bằng cách giántiếp qua nhiều bộ định truyến trung gian khác Khi bộ định tuyến nhận đượcmột gói dữ liệu thì nó sẽ chứa gói này cho đến khi đường dây ra cần cho gói
đó được trống thì nó sẽ chuyển gói đó đi Trường hợp này ta gọi là nguyên lýmạng con điểm nối điểm, hay nguyên lý mạng con chứa và chuyển tiếp
(store-and-forward), hay nguyên lý mạng con nối chuyển gói.
5.2.4 Mạng toàn cầu GAN (Global Area Network).
Là một mạng rộng lớn, không hạn chế về quy mô và khoảng cách địa lý,
có thể nằm trải rộng qua nhiều quốc gia và vùng lãnh thổ, mạng này có thể
Trang 13mạng tính tích hợp dữ liệu trên các kênh truyền dữ liệu, liên kết nhiều mạngcon thành mạng vừa, nhiều mạng vừa thành mạng lớn, Mạng Internet hiệnnay là một ví dụ điển hình về mạng GAN.
5.3 Phân loại theo kỹ thuật chuyển mạch
Các dữ liệu truyền trên mạng khi đi qua các nút trung gian theo nguyên
lý một đường vào (incoming) và có thể có nhiều đường ra (outgoing), quá
trình điều khiển tín hiệu theo một số kỹ thuật gọi là kỹ chuyển mạch Theotiêu chí này có thể phân mạng thành các loại sau:
5.3.1 Mạng chuyển mạch kênh.
Khi có hai máy cần trao đổi thông tin với nhau thì giữa chúng sẽ đượcthiết lập một kênh cố định và được duy trì cho đến khi một trong hai bên ngắtliên lạc
Hình 1.18 Kỹ thuật chuyển mạch kênh
Đặc điểm chính của kỹ thuật này là:
Độ tin cậy rất cao: một khi kênh nối đã hoàn tất thì sự thất thoát tínhiệu gần như không đáng kể
Băng thông cố định Đối với kiểu nối này thì vận tốc chuyển thông tin
là một hằng số và chỉ phụ thuộc vào đặc tính vật lý cũng như các thông số càiđặt của các thiết bị
Trang 14 Có thể dùng kỹ thuật này vào những nơi cần vận tốc chuyển dữ liệu
cao hoặc nơi nào cần truy nhập dữ liệu với thời gian thực (realtime data access)
Tuy nhiên, phải tiêu tốn thời gian để thiết lập kênh liên lạc Mặt kháccác vận chuyển này sẽ lấy nhiều tài nguyên và chúng được cấp cho mộtđường nối dây cho tới khi dùng xong hay có lệnh huỷ Nói cách khác, cácđường kết nối dữ liệu khác nếu trong thời gian mở đường nối mà gặp phải cácnút đều đang bận dùng cho đường nối truớc đó thì buộc phải đợi cho tới khicác nút này được giải phóng
5.3.2 Mạng chuyển mạch thông báo.
Thông báo (Message) là một đơn vị thông tin có chứa thông tin đích cầngửi đến Căn cứ vào thông tin này mỗi nút trung gian có thể chuyển thông báođến các nút kế tiếp và chuyển dần đến đích Tuỳ theo cấu trúc mạng các thôngbáo có thể đi theo nhiều đường khác nhau để đến đích
Như vậy với kỹ thuật chuyển mạch này không nhất thiết phải thiết lậpmột kênh cố định mà tuỳ theo hiện trạng mạng để chuyển thông tin đến đích,quá trình phân bố tài nguyên và đường truyền đạt hiệu suất cao hơn
Tuy nhiên do kích thước của các thông báo không được quy định chặtchẽ nên nhiều thông báo quá lớn sẽ xảy ra hiện tượng chiếm dụng đườngtruyền gây nên tắc nghẽn trên toàn mạng
Hình 1.19 Kỹ thuật chuyển mạch thông báo 5.3.3 Mạng chuyển mạch gói.
Khác với kỹ thuật chuyển mạch thông báo, mỗi thông báo quá dài sẽđược chia thành nhiều phần nhỏ hơn gọi là gói tin (hay khung) có khuôn dạngquy định trước Mỗi gói tin có chứa các thông tin điều khiển, trong đó có chứađịa chỉ của nguồn (người gửi) và đích (người nhận) Các gói tin tin thuộc vềmột thông báo nào đó có thể được gửi qua mạng để đến đích bằng nhiều
Trang 15đường khác nhau.
Để thực hiện kĩ thuật chuyển mạch gói người ta xây dựng một loại giaothức thoả mãn 3 điều kiện sau:
Dữ liệu cần vận chuyển được chia nhỏ ra thành các gói (hay khung) có
kích thước (size) và định dạng (format) xác định.
Mỗi gói như vậy sẽ được chuyển riêng rẽ và có thể đến nơi nhận bằng
các đường truyền theo các định tuyến (route) khác nhau Như vậy, chúng có
thể dịch chuyển trong cùng thời điểm
Khi toàn bộ các gói dữ liệu đã đến nơi nhận thì chúng sẽ được hợp lạithành dữ liệu ban đầu
Mỗi gói dữ liệu có kích thước được định nghĩa từ trước (đối với giaothức TCP/IP thì kích thước tối đa của nó là 1500 bytes) và thường bao gồm 3phần:
Phần tiêu đề (header): chứa địa chỉ máy gửi, địa chỉ máy nhận và các
thông tin về loại giao thức sử dụng và số thứ tự của gói
Phần tải dữ liệu (data hay payload): là một trong những đoạn dữ liệu
gốc đã được cắt nhỏ
Phần đuôi (trailer): bao gồm tín hiệu kết thúc gói và thông tin sửa lỗi
dữ liệu (data correction)
5.3.4 Kỹ thuật chuyển mạch gói ảo.
Tương tự như kỹ thuật chuyển mạch gói, kỹ thuật này cũng cắt thông
báo ra làm nhiều gói (hay khung) nhưng khác ở chỗ là các gói này sẽ được
vận chuyển trên cùng một tuyến Tuyến này được tìm ra xác định bởi lúc khởiđộng Tránh được việc lựa chọn đường truyền mới (định tuyến) cho mỗi gói
khi di chuyển như trong trường hợp chuyển mạch gói.
Khi khởi động thì một thuật toán đặc biệt sẽ giúp các nút xếp đặt mộtđường nối xác định giữa các nút trung chuyển để có thể chuyển dữ liệu từmáy nguồn tới máy đích gọi là một mạch ảo được mở ra và đường nối nàyđược ghi nhớ để sau này các gói sẽ được chuyển theo cùng con đường đó.Mỗi nút trung chuyển (hay thiết bị định tuyến) phải nhớ nơi nào để khinhận các gói của một mạch ảo đang mở về thì chuyển các gói đó đi cho đúng
Nói rõ hơn, mỗi thiết bị định tuyến (router) sẽ giữ bảng ghi nhớ đường ra
(hay nút ra) cho mỗi mạch ảo đã được mở
Để làm được như vậy, trên mỗi gói của của một mạch ảo sẽ có chứa
thêm thông tin (hay chỉ số) để xác định mạch ảo đó và gọi là số mạch ảo
(virtual circuit number) trong phần đầu của nó Do đó, mỗi khi một gói được
thiết bị định tuyến nhận về thì thiết bị đó sẽ biết được chính xác đườngchuyển nào nó tới và dường chuyển nào (hay số mạch ảo nào) để chuyển đi
Trang 16Như trên, các nút sẽ không dành riêng cho một cuộc chuyển tải mà cóthể dùng để chuyển tải các gói ở các mạch ảo khác.
5.4 Phân loại theo mục tiêu sử dụng mạng
Gần đây một số kiểu mạng được phân loại theo mục tiêu sử dụng sau:
HAN = Home Area Network
PAN = Personal Area Network
WLAN = Wireless LAN; WPAN = Wireless-PAN
SAN = Storage Area Network
DAN = Departmental Area Network
NAN = Neighborhood Area Network
VPN = Virtual Private Network
VAN = Value-added Network
VLAN = Virtual-LAN
SOHO = Small Office, Home Office
Trang 17Chương 2 KIẾN TRÚC PHÂN TẦNG VÀ MÔ HÌNH OSI
2.1 Giới thiệu chung.
Như chương trên đã trình bày, giao thức là một thành phần rất quantrọng của kiến trúc mạng máy tính, việc xây dựng giao thức hoạt động trênmạng ngày càng trở nên cấp thiết khi mà các hệ thống mạng ngày càng đóngvai trò quan trọng trong cuộc sống
Khi mới ra đời, việc thiết kế mạng lưới truyền thông là hoàn toàn donhững nhà kinh doanh tự phát triển và dưới sự khống chế của bản quyền về
kỹ thuật, chẳng hạn như những tiêu chuẩn về giao thức truyền thông trong
"Kiến trúc hệ thống mạng truyền thông" (System network architecture) củaIBM, appletalk của Apple, netware của Novell Inc và DECnet của DigitalEquipment Corporation OSI là một cố gắng của các tổ chức trong côngnghiệp hòng giải quyết mâu thuẫn giữa các nhà kinh doanh, để tất cả có thểcùng đồng tình với một tiêu chuẩn về kỹ thuật mạng truyền thông, đồng thờitạo điều kiện cho các sản phẩm của những nhà kinh doanh khả năng liên tác
(phối hợp và làm việc) với nhau (interoperability) Tại thời điểm đó, các mạng truyền thông lớn hỗ trợ nhiều bộ giao thức truyền thông (network protocol suites) khác nhau là một hiện tượng bình thường, đồng thời vấn đề
nhiều thiết bị mạng không giao lưu được với nhau, vì thiếu một giao thứcchung, cũng không hiếm
Vì vậy các hệ thống giao thức chỉ phù hợp cho các mạng có quy mô nhỏ
và phụ thuộc vào các chuyên gia, công ty thiết kế giải pháp, mô hình liênmạng rất khó có thể được thực hiện
2.2 Kiến trúc phân tầng.
Hệ thống giao thức là một trong các thành phần cốt lõi để thiết kế mạngmáy tính, do vậy cần được xây dựng theo một mô hình thống nhất Mỗi hệthống mạng máy tính hiện nay đều được coi như cấu trúc đa tầng giao thức.Trong đó mỗi tầng cung cấp một số dịch vụ nhất định Mô hình đó được gọi
là kiến trúc phân tầng
Nguyên tắc của kiến trúc phân tầng là mỗi hệ thống trong mạng đều cócấu trúc tầng (số lượng và chức năng của mỗi tầng là như nhau) Sau khi đãxác định tầng và chức năng của mỗi tầng thì công việc quan trọng tiếp theo làđịnh nghĩa mối quan hệ giữa hai tầng liền kề và mối quan hệ giữa hai tầngđồng mức ở hai hệ thống kết nối với nhau Trong thực tế, dữ liệu không được
Trang 18truyền trực tiếp từ tầng i của hệ thống này sang tầng i của hệ thống khác (trừtầng thấp nhất liên hệ trực tiếp với đường truyền vật lý) Như vậy việc kết nốigiữa hai hệ thống được thực hiện thông qua hai loại liên kết: liên kết vật lý ởtầng thấp nhất và liên kết logic (liên kết ảo) ở các tầng cao hơn
Một điểm cần đặc biệt chú ý là, trong kiên trúc phân tầng tồn tại hai dạng liên kết: liên kết giữa hai tầng đồng mức- liên kết ngang và liên kết giữa hai tầng liền kề - liên kế dọc Các liên kết hai chiều hoặc xảy ra đồng thời hoặc độc lập nhau
ở đó dữ liệu được truyền qua đường truyền vật lý
Bên hệ thống nhận, trình tự sẽ diễn ra ngược lại Qua mỗi tầng PCI tươngứng sẽ được phân tích và sau đó cắt bỏ khỏi các PDU trước khi gửi lên cáctầng trên
Trang 19
2.3 Mô hình OSI.
Mô hình giao thức “Kết nối các hệ thống mở” (Open Systems Interconnection, viết tắt là OSI) là một nỗ lực tiêu chuẩn hóa mạng máy tính
do Tổ chức tiêu chuẩn hoá quốc tế (ISO), cùng với với Bộ phận Tiêu chuẩn
Hoá Viễn thông của ITU (ITU-T) tiến hành từ năm 1982
Mô hình OSI phân chia chức năng của một giao thức ra thành một chuỗicác tầng cấp Mỗi một tầng cấp có một đặc tính là nó chỉ sử dụng chức năngcủa tầng dưới nó, đồng thời chỉ cho phép tầng trên sử dụng các chức năng củamình Một hệ thống cài đặt các giao thức bao gồm một chuỗi các tầng nói trênđược gọi là “chồng giao thức” (protocol stack) Chồng giao thức có thể đượccài đặt trên phần cứng, hoặc phần mềm, hoặc là tổ hợp của cả hai Thôngthường thì chỉ có những tầng thấp hơn là được cài đặt trong phần cứng, cònnhững tầng khác được cài đặt trong phần mềm
Mô hình OSI được xây dựng gồm 7 tầng giao thức, hệ thống này đượcxây dựng theo các nguyên tắc sau:
Các tầng có tính độc lập tương đối với nhau và thực hiện các chứcnăng riêng biệt;
Có thể chia một tầng thành các tầng con khi cần thiết;
Cho phép huỷ bỏ các tầng con nếu thấy không cần thiết;
Bảo đảm liên kết cho nhiều hệ thống mạng khác nhau;
Thích ứng với nhu cầu phát triển các công nghệ mới trong tươnglai
Mô hình OSI này chỉ được ngành công nghiệp mạng và công nghệ thôngtin tôn trọng một cách tương đối Tính năng chính của nó là quy định về giaodiện giữa các tầng cấp, tức là qui định đặc tả về phương pháp các tầng liên lạcvới nhau Điều này có nghĩa là cho dù các tầng cấp được soạn thảo và thiết kếbởi các nhà sản xuất, hoặc công ty, khác nhau nhưng khi được lắp ráp lại,chúng sẽ làm việc một cách dung hòa (với giả thiết là các đặc tả được thấuđáo một cách đúng đắn) Trong cộng đồng TCP/IP, các đặc tả này thườngđược biết đến với cái tên RFC (Requests for Comments tức là "Đề nghị duyệt
thảo và bình luận") Trong cộng đồng OSI, chúng là các tiêu chuẩn ISO (ISO standards).
Thường thì những phần thực thi của giao thức sẽ được sắp xếp theo tầngcấp, tương tự như đặc tả của giao thức đề ra, song bên cạnh đó, có nhữngtrường hợp ngoại lệ, còn được gọi là "đường cắt ngắn" (fast path) Trong kiếntạo "đường cắt ngắn", các giao dịch thông dụng nhất, mà hệ thống cho phép,được cài đặt như một thành phần đơn, trong đó tính năng của nhiều tầng được
Trang 20gộp lại làm một.
Việc phân chia hợp lý các chức năng của giao thức khiến việc suy xét vềchức năng và hoạt động của các chồng giao thức dễ dàng hơn, từ đó tạo điềukiện cho việc thiết kế các chồng giao thức tỉ mỉ, chi tiết, song có độ tin cậycao Mỗi tầng cấp thi hành và cung cấp các dịch vụ cho tầng ngay trên nó,đồng thời đòi hỏi dịch vụ của tầng ngay dưới nó Như đã nói ở trên, một thựcthi bao gồm nhiều tầng cấp trong mô hình OSI, thường được gọi là một
"chồng giao thức"
Hình 2.2 Nguyên lý làm việc theo tầng giao thức
Mô hình tham chiếu OSI là một cấu trúc phả hệ có 7 tầng, nó xác địnhcác yêu cầu cho sự giao tiếp giữa hai máy tính Mô hình này đã được định
nghĩa bởi Tổ chức tiêu chuẩn hoá quốc tế (International Organization for Standardization) trong tiêu chuẩn số 7498-1 ( ISO standard 7498-1) Mục đích
của mô hình là cho phép sự tương giao (interoperability) giữa các hệ máy ()
đa dạng được cung cấp bởi các nhà sản xuất khác nhau Mô hình cho phép tất
cả các thành phần của mạng hoạt động hòa đồng, bất kể thành phần ấy do aitạo dựng Vào những năm cuối thập niên 1980, ISO đã tiến cử việc thực thi
mô hình OSI như một tiêu chuẩn mạng
So sánh mô hình OSI với quy trình giải quyết công việc trong một công
ty kinh doanh như sau:
Trang 21Hình 2.3 Minh hoạ mô hình giao thức
Tại thời điểm đó, TCP/IP đã được sử dụng phổ biến trong nhiều năm.TCP/IP là nền tảng của ARPANET, và các mạng khác - là những cái đượctiến hóa và trở thành Internet
Hiện nay chỉ có một phần của mô hình OSI được sử dụng Nhiều ngườitin rằng đại bộ phận các đặc tả của OSI quá phức tạp và việc cài đặt đầy đủcác chức năng của nó sẽ đòi hỏi một lượng thời gian quá dài, cho dù có nhiềungười nhiệt tình ủng hộ mô hình OSI đi chăng nữa
Mặt khác, có nhiều người lại cho rằng, ưu điểm đáng kể nhất trong toàn
bộ cố gắng của công trình mạng truyền thông của ISO là nó đã thất bại trước
Trang 22khi gây ra quá nhiều tổn thất.
Để dễ hình dung ta có thể mô tả cách đóng gói dữ liệu ở máy gửi qua cáctầng giao thức trong mô hình OSI như sau:
Hình 2.4 Minh hoạ đóng gói theo giao thức
Ta có thể tóm tắt chức năng của các tầng như trong bảng sau:
xa, quản lý CSDL dùng chung và một số dịch
vụ khác về thông tin, theo mô hình dữ liệuphân tán
5
Phiên – Session Đóng vai trò "kiểm soát viên" hội thoại
(dialog) của mạng với nhiệm vụ thiết lập, duy
trì và đồng bộ hóa tính liên tác giữa hai bêngửi và nhận Huỷ bỏ các phiên truyền thônggiữa các ứng dụng
4 Giao vận – Nhận dữ liệu từ tầng phiên, cắt chúng thành
Trang 23Transport những đơn vị nhỏ nếu cần, gửi chúng xuống
tầng mạng và kiểm tra rằng các đơn vị nàyđến được đầu nhận Kiểm soát luồng dữ liệu,thực hiện việc cắt/ ghép kênh dữ liệu nếu cần
3
Mạng – Network Điều khiển vận hành của mạng con Xác định
mở đầu và kết thúc của một cuộc truyền dữliệu Thực hiện việc chọn đường và chuyểntiếp gói tin với công nghệ chuyển mạch thíchhợp
2
Liên kết dữ liệu –
Datalink
Nhiệm vụ chính là chuyển dạng của dữ liệu
thành các khung dữ liệu (data frames) theo
các thuật toán nhằm mục đích phát hiện, điềuchỉnh và giải quyết các vấn đề như hỏng, mất
và trùng lập các khung dữ liệu
1
Vật lý – Physical Thực hiện các chức năng cần thiết để truyền
luồng dữ liệu dưới dạng bit đi qua các môi
trường vật lý
2.3.1 Tầng Vật lý.
2.3.1.1 Vai trò chức năng của tầng Vật lý.
Như trên đã trình bày, nhiệm vụ của tầng Vật lý là thực hiện việc truyềncác dòng bits phi cấu trúc qua đường truyền vật lý nhờ các phương tiện cơ,điện quang,…
Khác với các tầng khác, tầng Vật lý là tầng thấp nhất, giao tiếp vớiđường truyền Các dòng dữ liệu ở tầng này không có cấu trúc, không có phầnHeader chứa thông tin điều khiển Giao thức của tầng Vật lý quy định phươngthức chuyển đổi dòng dữ liệu sang các dạng tín hiệu cho phù hợp với đườngtruyền Vật lý
Hình 2.5 Kết nối thiết bị tầng Vật lý
Trong mô hình trên là thiết bị Modem chuyển đổi từ tín hiệu
số sang tương tự và ngược lại
Trang 24Thiết bị Transduce chuyển đổi từ tin hiệu số sang tín hiệuquan và ngược lại
Trong mô hình trên hệ thống A và B được nối với nhau bằng một đoạncap đồng trục và một đoạn cap quang Modem C chuyển từ tín hiệu số sangtín hiệu tương tự, Modem D chuyển từ tín hiệu tương tự sang tín hiệu số vàqua Transduce E lại chuyển sang xung ánh sáng để truyền qua cap quang.Cuối cùng, Transduce F lại chuyển xung ánh sáng sang dạng tín hiệu số ở hệthống B
Các thực thể tham gia mạng ở đây ngoài hai hệ thống A và B, ta thấycòn có các thiết bị biến đổi và chuyển tiếp để có thể thực hiện được việctruyền tín hiệu trong các môi trường vật lý khác nhau Do vậy tầng Vật lý tồntại giữa các thực thể đó để quy định về phương thức (đồng bộ, phi đồng bộ)
về tốc độ truyền,… Các chuẩn cho tầng Vật lý sẽ phải bao gồm không chỉ cácphần tử giao tiếp giữa các thực thể mà còn đặc tả giao diện với đường truyền
2.3.1.2 Các chuẩn giao diện vật lý.
Các thiết bị tham gia tầng Vật lý được chia làm hai loại: Thiết bị đầu
cuối dữ liệu DTE (Data Terminal Equipment) và Thiết bị đầu cuối kênh dữ liệu DCE (Data Circuit Terminating Equiment).
DTE có thể được hiểu là các máy tính tham gia mạng, các máy trạm, cácthiết bị thu thập và xử lý dữ liệu của người dùng,…
DCE là các thiết bị nối DTE với các đường truyền thông mạng DCE cóthể là Modem, Transduce, Multiplexor,… hoặc các thiếp nào đó (máy tínhchẳng hạn, trong trường hợp nó đóng vai trò là nút mạng trung gian)
1 DATA SIGNALS
- Transmitted Data (BA)
- Received Data (BB)
DTE ® DCEDCE ® DTE
- Dữ liệu được tạo bởi DTE
- Dữ liệu nhận được bởi DTE
2 CONTROL SIGNALS
- Request to Send (CA)
- Clear to Send (CB)
- Data Set Ready (CC)
- Data Terminal Ready (CD)
- Ring Indicator (CE)
- Carrier Detect (CF)
- Signal Quality Detector
DTE ® DCEDCE ® DTE
DCE ® DTEDTE ® DCEDTE ® DCEDCE ® DTE
DCE ® DTE
- DTE muốn truyền dữ liệu
- DCE sẵn sàng để truyền trảlời cho Request to Sent
- DCE sẵn sàng làm việc
- DTE sẵn sàng làm việc
- Chỉ ra rằng DCE đang nhậnmột carrier signal
- Khẳng định khi có căn cứ đểtin rằng dữ liệu nhận được bịlỗi
- Khẳng định để chọn tốc độ
Trang 25- Data Signal Rate Selector
(CI)
DTE ® DCE dữ liệu.- Clocking signal, các chuyển
đổi ON và OFF xảy ra ởtrung tâm của mỗi phần tử tínhiệu
- Clocking signal như trên,liên quan tới mạch BA
- Clocking signal như trên,liên quan tới mạch BB
- Nối với khung máy và cóthể với đất bên ngoài
4 GROUND
- Protective Ground (AA)
- Signal Ground (AB)
NANA
Thiết lập tiếp đất khung chotất cả các mạch
2.3.2 Tầng Liên kết dữ liệu.
2.3.2.1 Vai trò chức năng của tầng Liên kết dữ liệu.
Tầng Liên kết dữ liệu cung cấp dịch vụ chuyển dữ liệu qua các liên kếtvật lý Việc chuyển đó có thể đáng tin cậy hoặc không đáng tin cậy; nhiềugiao thức liên kết dữ liệu không có acknowledgement (các thông điệp báorằng đã nhận được một frame và đã chấp nhận frame đó), một số giao thứcliên kết dữ liệu thậm chí còn không có bất cứ dạng checksum nào để kiểm tralỗi truyền Trong các trường hợp đó, các giao thức ở các tầng cao hơn phảicung cấp các chức năng điều khiển lưu lượng (flow control), kiểm lỗi, và xác nhận và truyền lại (acknowledgments and retransmission).
Tầng này đôi khi được chia thành hai tầng con Tầng con thứ nhất có tên
Điều khiển Liên kết Lôgic (Logical Link Control, viết tắt là LLC) Tầng con này dồn kênh (multiplex) các giao thức hoạt động phía trên tầng liên kết dữ
liệu, và theo tùy chọn có thể cung cấp chức năng điều khiển lưu lượng,acknowledgment, và khôi phục lỗi
Tầng con thứ hai có tên Điều khiển Truy nhập Môi trường (Media Access Control, viết tắt là MAC) Tầng con này quyết định tại mỗi thời điểm
ai sẽ được phép truy nhập môi trường truyền dẫn Có hai dạng điều khiển truynhập môi trường: điều khiển phân tán và điều khiển tập trung
2.3.2.2 Giao thức tầng Liên kết dữ liệu
Để thực hiện các chức năng trên người ta xây dựng rất nhiều giao thức
co tầng Liên kết dữ liệu, được gọi chung là DLP (Data Link Protocol) CácDLP được chia thành 2 loại dị bộ (Assynchronous DLP) và đồng bộ(Synchronous DLP)
Trang 26a- DLP dị bộ Các DLP dị bộ thường sử dụng phương thức dị bộ, trong
đó có các bit đặc biệt gọi là START và STOP được dùng để tách các xâu bitbiểu diễn các ký tự trong dòng bit cần truyền đi Phương thức này được gọi là
“dị bộ” vì không cần sự đồng bộ liên tục giữa người gửi và người nhận tin
Nó cho phép một ký tự dữ liệu được truyền đi bất cứ lúc nào mà không cầnquan tâm đến các tín hiệu đồng bộ trước đó
Stop 1010 1100 0010 1110 0001 0101 0101 1111 Start
Hình 2.6 Gói tin trong giao thức dị bộ
Hình 2.6a Gói tin trong giao thức dị bộ
b- DLP đồng bộ Khác với DLP dị bộ các giao thức đồng bộ xây dựng
việc trao đổi dữ liệu, đồng bộ ở hai mức:
- Ở mức vật lý: để giữ đồng bộ giữa đồng hồ của người gửi và người
Data link Protocol DLPs
Character-Oriented Bit-Oriented
Trang 27nhận, người ta ghi các tín hiệu đồng hồ kèm theo trong dãy dữ liệu cần traođổi.
- Ở mức liên kết dữ liệu: để phân biệt dữ liệu người ta sử dụng các “cờ”hoặc quy định kích thước để phân biệt dữ liệu và các vùng thông tin điềukhiển khác
Các DLP hướng ký tự được xây dựng dựa trên các bộ mã ký tự chuẩnnào đó (như ASCII), còn các DLP hướng bit dựa vào cấu trúc nhị phân để xâydựng các phần tử của giao thức và khi nhận dữ liệu sẽ được tiếp nhận lần lượttừng bit một
2.3.2.3 Giao thức hướng ký tự (Character Oriented Bit protocol )
Các giao thức loại này xuất hiện từ những năm 60 của thế kỷ trước và
giờ đây vẫn còn được sử dụng Trong số đó loại BSC (Binary Synchronous Control) được ISO lấy làm cơ sở để xây dựng giao thức hướng ký tự chuẩn
quốc tế với tên gọi Basic Mode Các ký tự dùng cho các chuẩn này được lấytheo bộ mã chuẩn EBCDIC (đối với BSC) hoặc bộ mã chuẩn ASCII (đối vớiBasic mode của ISO)
Tập hợp các ký tự khoá theo hướng này bao gồm:
SOH (Start Of Header): để chỉ bắt đầu của phần header của một đơn vịthông tin chuẩn
STX (Start Of Text): để chỉ kết thúc của phần header và bắt đầu của phần
dữ liệu
ETX (End Of Text): để chỉ kết thúc của phần dữ liệu
EOT (End Of Transmission): để chỉ kết thúc của việc truyền của mộthoặc nhiều đơn vị dữ liệu và giải phóng liên kết
ETB (End of Transmission Block): để chỉ sự kết thúc của một khối dữliệu, trong trường hợp dữ liệu được chia làm nhiều khối
ENQ (Enquiry): để yêu cầu phúc đáp từ một trạm ở xa
DLE (Data Link Escape): dùng để thay đổi ý nghĩa của các ký tự điềukhiển truyền tin khác
ACK (Acknowledge): để báo cho người gửi biết đã nhận tốt thông tin
NAK (Negative Acknowledge): để báo cho người gửi biết tiếp nhậnthông tin không tốt
SYN (Synchronous Idle): ký tự đồng bộ, dùng để duy trì sự đồng bộ giữangười gửi và người nhận
BBC (Block Check Character): là 8 bit kiểm tra lỗi theo kiểu bit chẵn lẻ (theo chiều dọc) cho các ký tự thuộc vùng text trường hợp Basic Mode hoặc
16 bit kiểm tra lỗi theo phương pháp CRC-16 cho vùng text trường hợp BSC Kích thước vùng text trong cả hai trường hợp đều được giới hạn để đảm
Trang 28bảo được kiểm soát lỗi khi truyền.
Một đơn vị dữ liệu (Frame) dùng trong giao thức này có khuôn dạng
tổng quát như sau:
Trong trường hợp dữ liệu (vùng Text) quá dài có thể tách thành nhiềukhối (block) ví dụ tách thành 3 khung truyền chứa dữ liệu là Text1, Text2,Text3 như sau:
Hình 2.7 Khung truyền liên kết dữ liệu hướng ký tự
Ngoài các Frame dữ liệu còn có các Frame điều khiển việc thiết lập, giảiphóng liên kết, kiểm soat lỗi, báo nhận, để trao đổi thông tin điều khiểngiữa các trạm.
Trang 29Host A Host B
ENQ
ACK Text1
ACK Text2
ACK EOT
ENQ ACK
TextB ACK
EOT
Hình 2.9 Dạng thông thường
Trang 30Như trên ta nhận thấy quá trình trao đổi dữ liệu giữa hai host A và Bđược thực hiện một cách tuần tự, sau mỗi lần truyền đều có phản hổi từ trạmnhận, khi phát hiện lỗi sẽ thực hiện việc truyền lại ngay, tuy nhiên do quátrình hồi đáp nên cũng ảnh hưởng đến tốc độ truyền Để khắc phục nhượcđiểm này, quá trình trao đổi dữ liệu có thể được thực hiện như sau:
Hình 2.10 Dạng hội thoại
Khi host B nhận được yêu cầu liên kết, nó phản hồi bằng khung truyềnACK, host A sẽ thực hiện truyền khung Text1, host B nhận được sẽ thực hiệnviệc kiểm soát lỗi, nếu phát hiện lỗi, nó sẽ phát đi khung NAK, ngược lại nótruyền khung TextB ngầm thông báo rằng đã nhận tốt khung Text1, trạm Atiếp tục truyền khung Text2,… Rõ rằng với cách thức này đã giảm đi đáng kểmột các giao dịch giữa hai trạm làm tăng tốc độ thực hiện
ENQ
ACK Text1
Text2
ACK EOT
TextB
Trang 31Hình 2.11 Minh hoạ quá trình truyền Packet B bị lỗi 2.3.2.4 Giao thức hướng bit (HDLC- High Data LinkControl)
HDLC là giao thức chuẩn cho tầng Liên kết dữ liệu có vị trí quan trọngnhất được phát triển ISO (ISO 3309, ISO 4335) để sử dụng cho cả hai trườnghợp điểm - điểm và nhiều điểm Nó cho phép khai thác hai chiều đồng thời
(Full duplex) HDLC là giao thức hướng bit, các phần tử của nó được xây
dựng theo cấu trúc nhị phân và khi nhận dữ liệu sẽ được tiếp nhận từng bit
một Ở đây đơn vị dữ liệu cũng được gọi là khung truyền (Frame).
Một khung truyền HDLC có khuôn dạng tổng quát như sau:
Flag Address Control Information Fcs Flag
8 8/16 8/16 16/32 8
Address là vùng ghi địa chỉ trạm đích của frame.
Control là vùng định danh các frame khác nhau.
Information là vùng ghi thông tin, dữ liệu cần truyền.
FCS ( Frame Check Sequence ) là vùng ghi mã kiểm soát lỗi cho nội
dung nằm giữa hai Flag
Lưu ý: HDLC có 2 dạng, một dạng chuẩn và dạng mở rộng có kích thướclớn hơn
Ví dụ chèn bit “0”
Giả sử các bit dữ liệu cần gửi:
.111111111111011111101111110 Chèn các bit “0” vào sau 5 bit “1” liên tiếp
Trang 32HDLC có 3 loại Frames chính:
Loại U (Unnumbered frame) dùng để thiết lập liên kết theo các phương
thức hoạt động khác nhau và để giải phóng liên kết khi cần thiết Đây là loạiFrame điều khiển
Loại I ( Information frame) dùng để chứa thông tin cần truyền đi của
người sử dụng hoặc từ tầng trên chuyển xuống và được đánh số thứ tự đểkiểm soát
Loại S ( Supervisory ) đây là Frame điều khiển được sử dụng để kiểm soát
luồng dữ liệu trong quá trình truyền tin
Các frame thuộc loại khác nhau được định danh trong vùng “Control”chiếm 8/16 bit Sau đây ta chỉ ra một số loại frame chính, phân tích cấu trúc
Hình 2.13 Bảng các loại Frames HDLC với 8 bit vùng Control
Loại U: có 5 bit định danh M nên có 32 loại khác nhau
Loại I: chỉ có 1 loại
Loại S: có 2 bit định danh S nên có 4 loại khác nhau
Hình 2.14 Các tham số loại Frames HDLC với 16 bit vùng Control
Trong đó:
- N(S) là số thứ tự của Frame Information được gửi đi
- N(R) là số thứ tự của Frame Information mà trạm gửi đang chờ đểnhận, đồng thời ám chỉ rằng đã nhận tốt tất cả Frames Information cho tới sốthứ tự N(R)-1
- Bit P/F (Poll/Final) có giá trị P nếu đó là Frame yêu cầu và F nếu đó làFrame trả lời được dùng để trả quyền truyền tin (P=1) cho trạm đích Riêngđối với phương thức trả lời chuẩn (SNRM) thì F=1 còn để chỉ đây là Framecuối cùng trong dãy Frame của trạm “tớ” Sau đó trạm “tớ” sẽ ngừng việctruyền tin cho đến khi được sự cho phép của trạm “chủ”
Một số loại Frames dạng U phổ dụng nhất được định danh bởi các bít M được quy định như sau:
Trang 33Các bit định danh M
0 0 0 0 1 SNRM Set Normal Response Mode thiết lậpphương thức trả lời chuẩn
1 1 0 0 0 SARM Set Assynchronous Response Modethiết lập phương thức trả lời dị bộ.
Set Asynchronous Balanced ResponseMode thiết lập phương thức trả lời dị
bộ cân bằng
0 0 0 1 0 DISC Disconnect giải phóng liên kết
0 0 1 1 0 UA Unnumbered Acknowledgment dùngđể trả lời cho các Frame dạng U khác.
Hình 2.15 Bảng giá trị các bit định danh loại U
Khác với giao thức hướng ký tự, giao thức hướng bit xác định phươngthức trao đổi dữ liệu thông qua các Frame dạng U trước khi thực hiện các quátrình gửi và nhận dữ liệu giữa 2 trạm Cụ thể:
a- Phương thức trả lời chuẩn SNRM được sử dụng trong trường hợp cấuhình không cân bằng, nghĩa là có chỉ định một trạm điều khiển chung (gọi làtrạm “chủ” ) các trạm bị điều khiển gọi là trạm “ tớ “ các trạm “ tớ ” chỉ đượctruyền tin khi trạm “ chủ “ cho phép
b- Phương thức trả lời dị bộ SARM được sử dụng trong trường hợp cấuhình không cân bằng như trên nhưng nới rộng quyền của trạm “ tớ “ hơn Cáctrạm được quyền truyền tin không nhất thiết phải được sự cho phép của trạm “chủ “
c- Phương thức trả lời dị bộ cân bằng SABM được sử dụng trong trườnghợp điểm-điẻm, hai chiều trong đó các trạm đóng vai trò tương đương khôngphân chia thành “ chủ/tớ “
d- Frame Disc được sử dụng để giải phóng liên kết khi cần thiết
e- Frame UA được dùng để trả lời các Frame U khác
Reject
Yêu cầu truyền hoặc truyền lại các Framedạng Information có số hiệu bắt đầu N(R)trở đi, đồng thời thông báo rằng các Frame
Trang 34cho đến N(R)-1 nhận tốt.
10
RNRReceive Not
Ready
Thông báo cho trạm gửi biết tạm thời chưasẵn sàng nhận thông tin, đồng thời thôngbáo các Frame có số hiệu cho đến N(R)-1nhận tốt
11
SRJSelectiveReject
Yêu cầu truyền hoặc truyền lại Frame có sốhiệu N(R), đồng thời thông báo cho trạmgửi biết đã nhận tốt các Frames có số hiệucho đến N(R)-1
Hình 2.16 Bảng giá trị các bit định danh loại S
Hình 2.17 Các tình huống trao đổi thông tin theo phương thức SABM
Hình 2.18 Minh hoạ các tình huống trao đổi thông tin
Trang 352.3.3 Tầng Mạng.
2.3.3.1 Vai trò chức năng của tầng Mạng.
Hai chức năng chủ yếu của tầng Mạng là chọn (Routing) và chuyển tiếp (Replaying) Các gói dữ liệu được truyền từ hệ thống mở này đến một hệ
thống mở khác phải 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 (outging link) hướng đến đích của dữ liệu
Ngo i ài ra tầng này chịu tránh nhiệm đáp ứng các yêu cầu dịch vụ từ tầngGiao vận và đưa ra những yêu cầu dịch vụ đối với tầng Liên kết dữ liệu
Để thực hiện các chức năng trên tầng Mạng đánh địa chỉ cho các thôngđiệp và dịch các địa chỉ lôgic và tên sang địa chỉ vật lý Tầng này còn quản lýnhững vấn đề về giao thông và khống chế sự tắc nghẽn của các gói dữ liệu
Về căn bản, tầng Mạng chịu tránh nhiệm phân phát các gói dữ liệu từ
đầu này sang đầu kia (end-to-end, từ nguồn đến đích), trong khi tầng Liên kết
dữ liệu lại chịu trách nhiệm phân phát gói dữ liệu từ nút này sang nút khác
(hop-to-hop, giữa hai nút mạng trung gian có đường liên kết (link) trực tiếp).
Tầng Mạng cung cấp các phương tiện có tính chức năng và qui trình đểtruyền các chuỗi dữ liệu có độ dài đa dạng từ nguồn tới đích, qua một hay
nhiều mạng máy tính, trong khi vẫn duy trì chất lượng dịch vụ (quality of service) đòi hỏi bởi tầng Giao vận.
2.3.3.2 Các kỹ thuật chọn đường trong mạng máy tính.
Chọn đường là sự lựa chọn một con đường để truyền một đơn vị dữ liệu
từ trạm nguồn đến trạm đích của nó Một kỹ thuật như vậy phải thực hiện haichức năng chính sau:
(i) Quyết định chọn đường theo một tiêu chuẩn tối ưu nào đó;
(ii) Cập nhật thông tin chọn đường, tức là lưu trữ và quản lý các thôngtin phục vụ cho chức năng (i)
Kỹ thuật chọn đường tập trung hoặc phân tán Kỹ thuật chọn đường tập
trung đượ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 bảng chọn đường (routing table)
tới tất cả các nút dọc theo con đường đã 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 được cất giữ tạitrung tâm điều khiển mạng Các nút có thể không gửi hoặc định kỳ gửi cácthông tin khi xẩy ra một sự kiện nào đó, trung tâm sẽ cập nhật lại để tính lạibảng chọn đường
Ngược lại, kỹ thuật chọn đường phân tán không tồn tại trung tâm điềukhiển, quyết định chọn đường được thực hiện tại mỗi nút Điều này đòi hỏi
Trang 36việc trao đổi chặt chẽ thông tin giữa các nút, tuỳ thuộc vào mức độ thích nghicủa thuật giải được xây dựng.
Kỹ thuật chọn đường thích nghi và không thích nghi Kỹ thuật chọn
đường không thích nghi có thể 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 thường xuyên Các tiêuchuẩn tối ưu để chọn đường và con đường được chọn một lần cho toàn cục
Kỹ thuật này chỉ thích nghi cho các mạng có tính ổn định cao về topo mạng
Kỹ thuật chọn đường thích nghi được đặc trưng bởi sự trao đổi thông tintrên mạng, các thông tin về trạng thái của mạng có thể được cung cấp từ cácnút láng giềng hoặc từ tất cả các nút khác
2.3.3.3 Một số thuật toán chọn đường.
a- Thuật toán vector
Thuật toán này còn có tên là thuật toán Bellman-Ford Ý tưởng chínhcủa thuật toán là chỉ định một con số, gọi là chi phí (hay trọng số), cho mỗimột liên kết giữa các nút trong mạng Các nút sẽ gửi thông tin từ điểm A đếnđiểm B qua đường đi mang lại tổng chi phí thấp nhất (là tổng các chi phí củacác kết nối giữa các nút được dùng)
Thuật toán hoạt động với những hành động rất đơn giản Khi một nútkhởi động lần đầu, nó chỉ biết các nút kề trực tiếp với nó, và chi phí trực tiếp
để đi đến đó (thông tin này, danh sách của các đích, tổng chi phí của từng nút,
và bước kế tiếp để gửi dữ liệu đến đó tạo nên bảng định tuyến, hay bảngkhoảng cách) Mỗi nút, trong một tiến trình, gửi đến từng “hàng xóm” tổngchi phí của nó để đi đến các đích mà nó biết Các nút “hàng xóm” phân tíchthông tin này, và so sánh với những thông tin mà chúng đang “biết”; bất kỳđiều gì cải thiện được những thông tin chúng đang có sẽ được đưa vào cácbảng định tuyến của những “hàng xóm” này Đến khi kết thúc, tất cả nút trênmạng sẽ tìm ra bước truyền kế tiếp tối ưu đến tất cả mọi đích, và tổng chi phítốt nhất
Khi một trong các nút gặp vấn đề, những nút khác có sử dụng nút hỏngnày trong lộ trình của mình sẽ loại bỏ những lộ trình đó, và tạo nên thông tinmới của bảng định tuyến Sau đó chúng chuyển thông tin này đến tất cả nútgần kề và lặp lại quá trình trên Cuối cùng, tất cả nút trên mạng nhận đượcthông tin cập nhật, và sau đó sẽ tìm đường đi mới đến tất cả các đích màchúng còn tới được
b- Thuật toán trạng thái kết nối
Khi áp dụng các thuật toán trạng thái kết nối, mỗi nút sử dụng dữ liệu cơ
sở của nó như là một bản đồ của mạng với dạng một đồ thị Để làm điều này,
Trang 37mỗi nút phát đi tới tổng thể mạng những thông tin về các nút khác mà nó cóthể kết nối được, và từng nút góp thông tin một cách độc lập vào bản đồ Sửdụng bản đồ này, mỗi router sau đó sẽ quyết định về tuyến đường tốt nhất từ
nó đến mọi nút khác
Thuật toán đã làm theo cách này là Dijkstra, bằng cách xây dựng cấutrúc dữ liệu khác, dạng cây, trong đó nút hiện tại là gốc, và chứa mọi nút kháctrong mạng Bắt đầu với một cây ban đầu chỉ chứa chính nó Sau đó lần lượt
từ tập các nút chưa được thêm vào cây, nó sẽ thêm nút có chi phí thấp nhất đểđến một nút đã có trên cây Tiếp tục quá trình đến khi mọi nút đều được thêm.Cây này sau đó phục vụ để xây dựng bảng định tuyến, đưa ra bước truyền kếtiếp tốt ưu, … để từ một nút đến bất kỳ node khác trên mạng
c- So sánh các thuật toán định tuyến
Các giao thức định tuyến với thuật toán vector tỏ ra đơn giản và hiệu quảtrong các mạng nhỏ, và đòi hỏi ít (nếu có) sự giám sát Tuy nhiên, chúngkhông làm việc tốt, và có tài nguyên tập hợp ít ỏi, dẫn đến sự phát triển củacác thuật toán trạng thái kết nối tuy phức tạp hơn nhưng tốt hơn để dùng trongcác mạng lớn Giao thức vector kém hơn với rắc rối về đếm đến vô tận
Ưu điểm chính của định tuyến bằng trạng thái kết nối là phản ứng nhanhnhạy hơn, và trong một khoảng thời gian có hạn, đối với sự thay đổi kết nối.Ngoài ra, những gói được gửi qua mạng trong định tuyến bằng trạng thái kếtnối thì nhỏ hơn những gói dùng trong định tuyến bằng vector Định tuyếnbằng vector đòi hỏi bảng định tuyến đầy đủ phải được truyền đi, trong khiđịnh tuyến bằng trạng thái kết nối thì chỉ có thông tin về “hàng xóm” của nútđược truyền đi Vì vậy, các gói này dùng tài nguyên mạng ở mức không đáng
kể Khuyết điểm chính của định tuyến bằng trạng thái kết nối là nó đòi hỏinhiều sự lưu trữ và tính toán để chạy hơn định tuyến bằng vector
2.3.3.4 Giao thức tầng Mạng.
a- Giao thức theo chuẩn X25/PLP
Năm 1984 các tổ chức CCITT và ISO phối hợp ban hành chuẩnX25/PLP (X25 Packet Level Protocol) cho tầng 3 đặc tả giao diện DTE/DTE,DTE/DCE Dưới đây chúng ta sẽ xem xét kỹ chuẩn ISO 8208
X25 định nghĩa 2 kiểu liên kết:
- VC Virtual Circuit là liên kết ảo có tính tạm thời được thiết lập và xoá
Trang 38- Data Truyền dữ liệu thường
- Reset Khởi động lại liên kết
- Clearing Xoá bỏ liên kết
- Interrup Truyền dữ liệu khẩn
- Restart Khởi động lại giao diện
b- Khuôn dạng của gói tin theo chuẩn X25/PLP
Channel Identifier Channel Identier
Hình 2.19 Khuôn dạng gói tin theo X25/PLP
2.3.4 Tầng Giao vận.
2.3.4.1 Vai trò chức năng của tầng Giao vận.
Tầng Giao vận cung cấp dịch vụ chuyển dữ liệu giữa các máy chủ
(hosts) Tầng này chịu trách nhiệm sửa lỗi (error recovery), điều khiển lưu
lượng dữ liệu, đảm bảo dữ liệu được chuyển tải một cách trọn vẹn Mục đíchcủa tầng Giao vận là cung cấp dịch vụ chuyển dữ liệu giữa các người dùngđầu cuối, nhờ đó các tầng trên không phải quan tâm đến việc cung cấp dịch vụtruyền dữ liệu đáng tin cậy và hiệu quả
Tậng Giao vận thường biến dịch vụ đơn giản, có độ tin cậy thấp của tầngMạng thành một dịch vụ có chất lượng cao hơn Có một danh sách dài liệt kênhững dịch vụ có thể được cung cấp bởi tầng này Không có một dịch vụ nàotrong đó là bắt buộc cả, bởi vì không phải chương trình ứng dụng nào cũngyêu cầu tất cả những dịch vụ hiện có Một số dịch vụ làm lãng phí chi phíphụ, hoặc trong vài trường hợp còn gây phản tác dụng
Trang 39Một số dịch vụ trên tầng Giao vận:
Định hướng kết nối (Connection-Oriented)
Dịch vụ này thường dễ dùng hơn là các mô hình phi kết nối less model), vì thế cho nên ở những nơi mà tầng Mạng chỉ cung cấp dịch vụ
(connection-phi kết nối, thường có dịch vụ hướng kết nối được xây dựng chồng lên trên
nó, tại tầng Giao vận
Phân phát theo trật tự đã gửi (Same Order Delivery)
Tầng Mạng thường không đảm bảo các gói dữ liệu đến theo trật tự mà nóđược gửi, song đặc tính này lại là một đặc tính có ưu điểm, nhưng thôngthường đây lại là một đặc tính được trọng dụng, vì vậy cho nên tầng Giao vậnphải đảm bảo việc này Cách đơn giản nhất là gắn cho mỗi gói dữ liệu mộtcon số, để cho thiết bị nhận sắp xếp lại trật tự của các gói dữ liệu
Dữ liệu đáng tin cậy (Reliable Data)
Mạng truyền thông nền tảng có thể có độ nhiễu cao, và dữ liệu nhậnđược không phải bao giờ cũng giống như dữ liệu đã được gửi Tầng Giao vận
có thể sửa lỗi này: thường là bằng cách cung cấp một giá trị tổng kiểm của dữliệu, giá trị đó phát hiện một số dạng sai sót nhỏ Đương nhiên, truyền thôngtín hiệu hoàn toàn không có lỗi là một việc không khả thi, song giảm đáng kể
số lỗi không được phát hiện là một việc có thể thực hiện được Tầng Giao vậncòn có thể truyền lại những gói dữ liệu bị thất lạc trên đường truyền
Điều khiển lưu lượng (Flow Control)
Lượng bộ nhớ trong máy tính chỉ có hạn Nếu không điều khiển lưulượng dữ liệu, thì một máy tính lớn có thể làm ngập một máy khác với lượngthông tin quá lớn làm máy tính đó không kịp xử lý dữ liệu Hiện tại, vấn đềnày không phải là một vấn đề lớn, vì giá của bộ nhớ rẻ, trong khi giá của băngthông (bandwidth) lại đắt, song trước đây, vấn đề này đã là một vấn đề quan
trọng Việc điều khiển lưu lượng cho phép thiết bị nhận dữ liệu nói "Khoannào!" trước khi nó bị tràn Đôi khi chức năng này đã được mạng nền tảngcung cấp, song tầng giao vận có thể gắn thêm chức năng này nếu chưa có
Định hướng byte (Byte Orientation)
Thay vì giải quyết các vấn đề theo từng gói dữ liệu, tầng Giao vận có thể
bổ sung khả năng nhìn dữ liệu truyền thông như là một dòng các byte (ký tự).Cách này dễ giải quyết hơn là khi các gói dữ liệu có kích thước ngẫu nhiên,song nó ít khi khớp với mô hình truyền thông mà thông thường sẽ là một dãycác thông điệp có kích thước do người dùng xác định
Cổng (Port)
Về căn bản, cổng là phương pháp đánh địa chỉ các thực thể khác nhau tạicùng một địa điểm Ví dụ, dòng đầu tiên trên một địa chỉ gửi thư có thể hiểu
Trang 40là một dạng cổng, nó phân biệt giữa các cư dân khác nhau trong cùng mộtngôi nhà Các chương trình ứng dụng lắng nghe thông tin trên các cổng riêngcủa nó, và chính vì vậy mà chúng ta có thể dùng nhiều chương trình ứng dụngmạng trong cùng một lúc.
2.3.4.2 Các loại TPDU (Transport Protocol Data Unit) được sử dụng trong giao thức giao vận chuẩn.
Năm 1984 CCITT đã công bố khuyến nghị X.214 và giao thức X.224cho tầng Giao vận cho trường hợp mạng có liên kết Sau đó ISO công bố cácchuẩn tương ứng là ISO 8072 và ISO 8073
Một số loại TPDU trong các chuẩn này là:
Connection Request CR Dùng trong gian đoạn thiết lập liên kết
Connection Confirm CC Xác nhận thiếtt lập liên kết
Disconnect Request DR Yêu cầu huỷ bỏ liên kếtt
Disconnect Confirm DC Xác nhận huỷ bỏ liên kết
Expedited Data ED Truyền dữ liệu của người dùng
Acknowledgment
Expedited
AE Báo nhận tốt ED
Acknowledgment AK Báo nhận tốt DT
Reject RJ Yêu cầu truyền lại (TPDU lỗi)
Hình 2.20 Danh mục các TPDU
Khuôn dạng tổng quát của mỗi loại TPDU đều gồm 3 phần: Phần đầu cố
định (Fixxed header part), phần đầu thay đổi (Variable header part) và phần
dữ liệu (Data Field)
Trong đó:
• Li là độ dài của phần Header (trừ byte đầu
tiên)
• Fixed part gồm một số thông số sau:
- TPDU Code (4 bits) mã lỗi TPDU
- CDT Credit (4 bits ) tín chỉ dùng để kiểm soát luồng dữ liệu
- Source reference (16 bits) định danh duy nhất của liên kết giao vận ở trạm nguồn
- Destination reference (16 bits) định danh duy nhất