ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN
BÀI GIẢNG
MẠNG VÀ TRUYỀN SỐ LIỆU
1
THÁI NGUYÊN, NĂM 2010
2
MỤC LỤC
Chương 1. Giới thiệu về mạng truyền dữ liệu 6
1.1 Mô hình truyền thông 6
1.2 Truyền thông dữ liệu 8
1.3 Kết nối mạng truyền thông dữ liệu 9
1.4 Các giao thức và kiến trúc giao thức 12
1.5 Chuẩn hóa mạng 23
Chương 2. Sự truyền dẫn và phương tiện truyền dẫn dữ liệu 24
2.1 Truyền dẫn dữ liệu 24
2.2.1 Các khái niệm và thuật ngữ cơ bản 24
2.1.2 Sự suy yếu của tín hiệu truyền 29
2.2 Phương tiện truyền dẫn 32
2.2.1 Cáp xoắn đôi (Twisted Pair) 33
2.2.2 Cáp đồng trục 35
2.2.3 Sợi quang 37
2.2.4 Vi ba mặt đất: 40
2.2.5 Vi ba vệ tinh: 42
2.2.6 Sóng Radio: 46
2.3. Các chuẩn giao tiếp vật lý 47
2.3.1. Giao tiếp IEA – 232D/V24 47
2.3.2. Modem rỗng (null modem) 50
2.3.3. Giao tiếp EIA-530 52
2.3.4. Giao tiếp X21 52
2.3.5. Giao tiếp ISDN 53
Chương 3. Giao tiếp liên kết dữ liệu 54
3.1. Các khái niệm cơ bản về truyền số liệu 54
3.1.1. Các chế độ truyền thông 54
3.1.2. Các chế độ truyền 54
3.1.3. Kiểm soát lỗi 55
3.1.4. Điều khiển luồng 56
3.1.5. Các giao thức liên kết dữ liệu 56
3.1.6. Mã truyền 57
3.1.7. Các đơn vị dữ liệu 57
3.1.8. Giao thức 58
3
3.1.9. Hoạt động kết nối 58
3.1.10. Đường nối và liên kết 58
3.2. Thông tin nối tiếp không đồng bộ 58
3.2.1. Khái quát 58
3.2.2. Nguyên tắc đồng bộ bit 59
3.2.3. Nguyên tắc đồng bộ ký tự 59
3.2.4. Nguyên tắc đồng bộ frame 59
3.3. Thông tin nối tiếp đồng bộ 60
3.3.1. Khái quát 60
3.3.2. Nguyên tắc đồng bộ bit 60
3.3.3. Truyền đồng bộ thiên hướng ký tự 61
3.3.4. Truyền đồng bộ thiên hướng bit 63
3.4. Phát hiện và sửa lỗi 66
3.4.1. Các kiểu lỗi 66
3.4.2. Phát hiện sai trong truyền số liệu 68
3.3.3. Sửa sai trong truyền số liệu 77
3.3.4. Mã nén dữ liệu 82
3.5. Các giao thức cửa sổ trượt 83
3.5.1. ARQ dừng và chờ (Stop and Wait ARQ) 83
3.5.2. Trở lại N - ARQ (Go back - N - ARQ) 84
3.6. Mạch điều khiển truyền số liệu 86
3.6.1. Khái quát 86
3.6.2. Giao truyền có thể lập trình UART 8250 của Intel 90
3.7. Các thiết bị điều khiển truyền số liệu 91
3.7.1. Khái quát 91
3.7.2. Bộ ghép kênh phân thời 92
3.7.3. Bộ ghép kênh thống kê 92
3.8. Một số giao thức liên kết dữ liệu 93
3.8.1. Giao thức HDLC (High level data link control) 93
3.8.2. Giao thức BSC (Binary Synchonous Communication) 95
3.8.3. Giao thức PPP 96
Chương 4. Tầng mạng 99
4.1. Vai trò của tầng mạng 99
4.2. Các dịch vụ cung cấp cho tầng mạng 99
4
4.3. Tổ chức các kênh truyền tin trên mạng 100
4.3.1. Kênh ảo (virtual circuit) 100
4.3.2. Mạng Datagram 100
4.4. Các kỹ thuật định tuyến trên mạng 101
4.4.1. Các phương pháp định tuyến trong mạng chuyển mạch kênh 101
4.5. Vấn đề tắc nghẽn và điều khiển luồng dữ liệu 116
4.5.1. Vấn đề tắc nghẽn 116
4.5.2. Điều khiển luồng (Flow Control) 117
Chương 5. Mạng cục bộ (LAN - Local Area Network) 118
5.1 Những kiến thức cơ bản 118
5.1.1 Cấu trúc tôpô của mạng 118
5.1.2 Các phương thức truy nhập đường truyền 120
5.2 Công nghệ Ethernet 129
5.2.1 Giới thiệu chung về Ethernet 129
5.2.2 Các đặc tính chung của Ethernet 129
5.2.4 Hoạt động của Ethernet 132
5.2.3 Các loại mạng Ethernet 134
5.3 Các kỹ thuật chuyển mạch trong LAN. 135
5.3.1 Phân đoạn mạng trong LAN 135
5.3.2 Các chế độ chuyển mạch trong LAN 139
5.3.3 Mạng LAN ảo (VLAN) 140
Chương 6. Mạng diện rộng WAN 144
6.1 Khái niệm về WAN 144
6.1.1 Mạng WAN là gì ? 144
6.1.2 Các lợi ích và chi phí khi kết nối WAN. 145
6.1.3 Những điểm cần chú ý khi thiết kế WAN 146
6.2 Một số công nghệ kết nối cơ bản dùng cho WAN 147
6.2.1 Mạng chuyển mạch kênh (Circuit Swiching Network) 147
6.2.2 Mạng chuyển gói (Packet Switching Network) 160
6.2.3 Kết nối WAN dùng VPN 169
6.3 Các thiết bị dùng cho kết nối WAN 170
6.3.1 Router (Bộ định tuyến) 170
6.3.2 Chuyển mạch WAN 174
6.3.3 Access Server 174
5
6.3.4 Modem 176
6.3.5 CSU/DSU 178
6.3.6 ISDN terminal Adaptor 179
6.4 Đánh giá và so sánh một số công nghệ dùng cho kết nối WAN. 179
Chương 7. Họ giao thức TCP/IP và mạng Internet 181
7.1 Lịch sử phát triển củaTCP/IP và mạng Internet 181
7.2 Giao thức TCP/IP 182
7.2.1 So sánh giao thức TCP/IP và mô hình 7 lớp OSI 183
7.2.2 Giao thức liên mạng IP 184
7.2.3 Giao thức TCP 199
7.2.4 Giao thức UDP 205
7.3.1 Tổ chức của Internet 206
7.3.2 Một số phương thức kết nối Internet phổ biến : 208
7.3.3 Các dịch vụ thông dụng của Internet 209
Chương 8. Mạng thế hệ mới (NGN – Next Generation Network) 212
8.1 Các động lực thúc đẩy sự phát triển của mạng NGN 212
8.1.1 Động lực của sự hội tụ và kết hợp mạng 212
8.1.2 Động lực của công nghệ 212
8.1.3 Động lực thị trường 213
8.1.4 Động lực dịch vụ 213
8.2 Giới thiệu chung về NGN 214
8.2.1 Khái niệm mạng thế hệ sau NGN 214
8.2.2 Mục tiêu của mạng thế hế sau NGN 215
8.2.3 Đặc điểm cơ bản của mạng NGN 215
8.3 Mô hình chức năng 216
8.3.1 Các chức năng 217
8.3.2 Tài nguyên mạng 218
8.4 Kiến trúc NGN 218
8.5 Các thành phần cơ bản của NGN 221
8.5.1 Chuyển mạch mềm (Softswitch) 221
8.5.2 Media Gateway - MG 221
8.5.3 Signalling gateway 221
8.5.4 Application server 222
6
8.5.5 Media Server 222
8.6 Các công nghệ được áp dụng cho NGN 222
8.6.1 Các công nghệ áp dụng cho lớp mạng chuyển tải 222
8.6.2 Công nghệ áp dụng cho lớp mạng truy nhập 222
8.7 Dịch vụ của NGN 222
8.7.1 Các dịch vụ NGN 222
8.7.2. Đặc điểm của các dịch vụ mạng NGN 223
8.8 Giao diện kết nối của NGN 224
8.8.1 Kết nối tới PSTN 226
8.8.2 Kết nối tới PLMN 227
8.8.3 Kết nối tới mạng riêng ảo VPN 227
7
Chương 1. Giới thiệu về mạng truyền dữ liệu
1.1 Mô hình truyền thông
Một mô hình truyền thông cơ bản được minh họa như hình 1.1a dưới đây
Hình 1.1. Mô hình truyền thông đơn giản
Mục đích chính của một hệ thống truyền thông là sự trao đổi dữ liệu giữa hai
đối tượng truyền thông. Hình 1.1 b thể hiện một ví dụ cụ thể về mô hình truyền
thông, đó là sự trao đổi dữ liệu giữa một máy chủ và một máy trạm qua mạng điện
thoại công cộng. Những thành phần quan trọng của hệ thống truyền thông trên hình
1.1 bao gồm:
a. Thiết bị nguồn (Source):
Thiết bị này tạo ra những dữ liệu để được truyền đi; như là những chiếc điện
thoại hay máy tính cá nhân (PC)
b. Máy phát
Dữ liệu được tạo ra bởi một nguồn tin thường không được truyền ngay với dạng
ban đầu được tạo ra, mà nó thường được bộ phát chuyển đổi và mã hóa thành dạng
tín hiệu điện từ trường để truyền qua các hệ thống truyền dẫn. Ví dụ như hình vẽ
1.1b ta thấy Modem là một máy phát, nó chuyển dòng bit (tín hiệu số) từ máy tính cá
nhân thành tín hiệu tương tự để truyền qua mạng điện thoại công cộng (PSTN).
c. Hệ thống truyền dẫn
8
Hệ thống truyền dẫn có thể là một đường truyền đơn hoặc là một mạng lưới kết
nối thiết bị nguồn và đích.
d. Máy thu
Máy thu thực hiện việc thu tín hiệu từ hệ thống truyền dẫn và chuyển đổi nó
sang dạng tín hiệu mà thiết bị đích sử dụng được. Từ hình vẽ 1.1b ta cũng thấy
Modem nhận tín hiệu tương tự đến từ mạng PSTN và chuyển đổi ngược sang dòng
tín hiệu số (các bit thông tin)
e. Thiết bị đích
Thiết bị đích nhận dữ liệu của thiết bị nguồn đã truyền qua mạng tại từ bộ thu.
Trên đây chỉ là những ý niệm đơn giản về một mạng truyền thông, còn thực tế
thì hệ thống mạng truyền thông bao hàm rất nhiều tính phức tạp về kỹ thuật. Để biết
được một số ý tưởng về phạm vi của sự phức tạp này ta xem bảng 1.1, đó là những
nhiệm vụ chính cần được thực thi trong một hệ thống truyền thông dữ liệu.
STT Nhiệm vụ STT Nhiệm vụ
1 Sự sử dụng hệ thống truyền dẫn 8 Định địa chỉ mạng
2 Giao diện 9 Định tuyến
3 Sự tạo tín hiệu 10 Khôi phục
4 Sự đồng bộ 11 Định dạng bản tin
5 Quản lý giao dịch 12 Bảo mật
6 Phát hiện và sửa lỗi 13 Quản lý mạng
7 Điều khiển luồng dữ liệu
Vấn đề đầu tiên đó là sự sử dụng hệ thống truyền dẫn, nó liên quan đến việc sử
dụng hiệu quả các phương tiện truyền dẫn để chia sẻ giữa một số lượng lớn các thiết
bị truyền thông. Có một số kỹ thuật được sử dụng để nâng cao hiệu suất sử dụng
đường truyền, hay nâng cao dung lượng đường truyền. Các kỹ thuật điều khiển tắc
nghẽn cũng được ứng dụng để đảm bảo cho hệ thống không bị quá tải bởi các yêu
cầu của các dịch vụ truyền dẫn.
Để truyền tin thì một thiết bị cần thiết phải có những “giao diện” với hệ thống
truyền dẫn. Tất cả các dạng truyền thông được nghiên cứu trong giáo trình này đều
phụ thuộc vào việc sử dụng các tín hiệu điện từ trường mà được truyền qua các
phương tiện truyền dẫn. Do đó khi một giao diện được thiết lập thì sự truyền thông
yêu cầu cần có “sự tạo tín hiệu”. Các đặc tính của tín hiệu như là dạng tín hiệu,
cường độ tín hiệu cần có khả năng truyền qua hệ thống truyền dẫn, và có thể chuyển
đổi thành dữ liệu ở máy thu.
9
Không chỉ có tín hiệu dữ liệu được truyền trong hệ thống truyền dẫn và máy thu
mà còn cần một số dạng tín hiệu “đồng bộ” giữa máy phát và máy thu. Máy thu cần
có thể xác định được tín hiệu lúc bắt đầu và khi nó kết thúc, cũng như biết được
chiều dài của mỗi thành phần tín hiệu.
Ngoài những vấn đề cơ bản trong việc lựa chọn tính chất, sự quyết định thời
gian của các tín hiệu thì còn một số yêu cầu để truyền thông giữa hai đối tượng là cần
phải có sự “quản lý giao dịch”. Nếu như dữ liệu được chuyển đổi ở cả hai hướng
trong một khoảng thời gian thì cả hai đối tượng cần phải có sự kết hợp với nhau trong
việc truyền thông. Ví dụ như, khi có sự trao đổi thoại giữa hai bên gọi và bên được
gọi thì quy trình kết hợp được thực hiện như sau: đầu tiên bên gọi cần phải bấm số
cần gọi, tạo tín hiệu để tổng đài biết và tạo tín hiệu chuông đến bên bị gọi; Còn bên
bị gọi cần nhấc ống nghe điện thoại mới hoàn thành kết nối giữa hai bên,…
Một vấn đề nữa trong hệ thống truyền thông đó là “sự dò và sữa lỗi”. Bởi vì
trong tất cả các hệ thống truyền thông luôn tồn tại một số loại lỗi; các tín hiệu được
truyền thường bị nhiễu trên đường truyền làm cho “méo” trước khi đến được đích.
Và vấn đề điều khiển luồng cũng cần được quan tâm để đảm bảo rằng nguồn tin
không làm cho nơi nhận tin bị “tràn” dữ liệu bởi dữ liệu đến nhanh hơn khả năng xử
lý và nhận tin của nơi nhận.
Tiếp theo chúng ta đề cập đến hai khái niệm khác nhau là “định địa chỉ” và
“định tuyến”. Khi một phương tiện truyền dẫn được chia sẻ bởi nhiều thiết bị thì một
hệ thống nguồn cần biết chính xác đích (địa chỉ) cần đến. Hệ thống truyền dẫn cần
đảm bảo nơi thu nhận được dữ liệu. Hơn nữa hệ thống truyền dẫn có thể là một mạng
trong đó có rất nhiều tuyến đường đến đích. Vì thế một tuyến đường xác định qua
mạng này cần được lựa chọn. “Định tuyến” là việc chọn một tuyến đường tốt nhất và
xác định để thông tin đi từ nguồn đến đích.
Sự “khôi phục tín hiệu” là một khái niệm khác hẳn với sự sửa lỗi. Các kỹ thuật
khôi phục cần thiết trong các tình huống mà sự trao đổi thông tin bị ngắt vì một lỗi hệ
thống nào đó. Đối tượng vừa có thể hồi phục lại các hoạt động tại điểm bị ngắt vừa
lấy lại trạng thái của các hệ thống liên quan đến điều kiện ban đầu của sự trao đổi
thông tin.
Việc “định dạng bản tin” phải làm với một sự thỏa thuận giữa hai bên như là
dạng của dữ liệu cần được trao đổi, cần được truyền. Ví dụ như việc cả hai bên
truyền thông cùng sử dụng một loại mã nhị phân cho các ký tự.
Tiếp đến, việc cung cấp một vài biện pháp “bảo mật” trong hệ thống truyền
thông là rất quan trọng. Bên gửi dữ liệu cần được đảm bảo rằng dữ liệu thực sự được
10
nhận bởi bên nhận chỉ định, còn bên nhận thì cũng cần chắc rằng dữ liệu mình nhận
không bị thay đổi trong khi truyền và dữ liệu đến từ bên gửi thực sự.
Cuối cùng, một phương tiện truyền thông dữ liệu là một hệ thống phức tạp mà
không thể tạo ra hay vận hành cho chính nó. Các khả năng “quản lý mạng” cần dùng
để cấu hình hệ thống, giám sát trạng thái của nó, tác động trở lại với các lỗi và những
sự quá tải, lên kế hoạch cho sự phát triển trong tương lai.
1.2 Truyền thông dữ liệu
Hình 1.2 dưới thể hiện một mô hình truyền thông dữ liệu đơn giản, để hiểu
được quá truyền thông dữ liệu ta lấy ví dụ quá trình truyền thư điện tử từ nguồn đến
đích.
Hình 1.2. Mô hình truyền thông dữ liệu đơn giản
Giả sử rằng thiết bị lối vào và bộ phát là những thành phần của một máy tính cá
nhân (PC). Người dùng PC mong muốn gửi một bản tin tới người dùng khác với nội
dung là “Kế hoạch buổi họp chiều thứ 5 tuần này bị hủy”, và ta quy định là (m).
Người dùng này kích hoạt gói thư điện tử trên PC và đưa bản tin từ bàn phím (thiết bị
lối vào) vào máy tính. Các chuỗi ký tự được lưu đệm vào bộ nhớ chính của máy tính,
và chúng ta có thể xem nó như một dãy các bít (g) trong bộ nhớ. Máy tính được kết
nối tới một vài phương tiện truyền dẫn, như mạng nội bộ hay một đường dây điện
thoại bởi một thiết bị vào ra (bộ phát) – như modem. Dữ liệu được truyền tới bộ phát
(modem) như là một dãy của các mức dịch điện áp [g(t)] mà nó đưa các bít lên các
cáp hay bus truyền thông. Bộ phát được kết nối trực tiếp tới phương tiện truyền
thông và nó chuyển đổi dòng dữ liệu đến [g(t)] sang một tín hiệu [s(t)] thích hợp đề
truyền trên hệ thống truyền dẫn.
11
Tín hiệu phát s(t) được truyền trên phương tiện truyền dẫn sẽ bị suy giảm trước
khi nó đến bộ thu. Do đó tín hiệu thu được r(t) có sự sai khác so với tín hiệu s(t). Bộ
thu sẽ ước lượng tín hiệu gốc s(t) dựa vào tín hiệu thu được r(t) và những hiểu biết
của nó về phương tiện truyền dẫn, và nó đưa ra một dãy bit g’(t). Những bít thông tin
này được gửi tới lối ra của PC nơi mà nó được lưu đệm trong bộ nhớ như là một khối
các bit (g). Trong nhiều trường hợp, hệ thống đích sẽ cố gắng xác định lỗi, và nó kết
hợp với hệ thống nguồn để đạt được một khối dữ liệu hoàn chình không lỗi. Những
dữ liệu đạt được này được đưa đến người dùng qua thiết bị lối ra như là màn hình
của máy tính, hay máy in. Sau đó dữ liệu này được xem bởi người nhận như là một
bản tin (m’), và nó là một bản sao chính xác như bản tin gốc (m).
1.3 Kết nối mạng truyền thông dữ liệu
Trong dạng đơn giản nhất, truyền thông dữ liệu được xem như là sự kết nối trực
tiếp giữa hai thiết bị qua một vài phương tiện truyền thông điểm – điểm.
Tuy nhiên, điều này thường không thực tế, bởi một hoặc cả hai sự bất ngờ sau:
1- Các thiết bị thường ở xa nhau. Vì vậy để kết nối chỉ hai thiết bị là quá tốn
kém bởi một tuyến liên kết dài hàng nghìn km.
2- Có cả một hệ các thiết bị, mỗi thiết bị lại yêu cầu liên kết tới rất nhiều thiết
bị khác tại các thời điểm khác nhau. Vì thế việc kết nối cặp thiết bị bởi một đường
dây dành riêng là không thực tế.
Giải pháp cho vấn đề này là gắn mỗi thiết bị tới một mạng truyền thông. Hình
1.3 có sự liên hệ với mô hình truyền thông ở hình 1.1 và còn thể hiện ra hai mạng
truyền thông chủ yếu là mạng diện rộng (WAN) và mạng cục bộ (LAN). Sự so sánh
giữa hai mạng này thể hiện ở cả lĩnh vực công nghệ cũng như ứng dụng.
12
Hình 1.3. Mô hình truyền thông đơn giản
Mạng diện rộng
Mạng diện rộng được biết đến là loại mạng máy tính bao phủ một vùng địa lý
rộng lớn. Một cách điển hình, một WAN bao gồm một số lượng các node chuyển
mạch liên nối với nhau. Một sự truyền dẫn từ một thiết bị nào đó được định tuyến
qua những node này tới một thiết bị đích xác định. Những node mạng này không
được liên quan gì đến nội dung của dữ liệu; mục đích của những node này là cung
cấp một phương tiện chuyển mạch để chuyển dữ liệu từ node tới node cho đến khi nó
đến được đích của nó.
Các mạng diện rộng (WANs) được thực hiện bởi một trong hai kỹ thuật là
chuyển mạch kênh và chuyển mạch gói. Những năm gần đây các mạng Frame Relay
và ATM được sử dụng chủ yếu. Những vấn đề này sẽ được trình bày sâu hơn trong
chương 3.
Mạng cục bộ
13
LAN (Local Area Network) - Mạng cục bộ, kết nối các máy tính trong một khu
vực bán kính hẹp thông thường khoảng vài trǎm mét. Kết nối được thực hiện thông
qua các môi trường truyền thông tốc độ cao ví dụ cáp đồng trục thay cáp quang. LAN
thường được sử dụng trong nội bộ một cơ quan/tổ chức Các LAN có thể được kết
nối với nhau thành WAN.
Cũng như là các mạng WAN, một mạng cục bộ là một mạng truyền thông mà
liên nối một số lượng các thiết bị và cung cấp sự trao đổi thông tin giữa các thiết bị
này. Tuy vậy có một số sự so sánh quan trọng giữa LAN và WAN như sau:
1- Phạm vi của LAN là nhỏ, thường thì trong một tòa nhà hay một phanà của
tòa nhà. Sự khác nhau trong phạm vi địa lý sẽ dẫn đến sự khác nhau trong các giải
pháp kỹ thuật
2- LAN được sử dụng bởi cùng một tổ chức mà sở hữu các thiết bị mạng. Còn
với WAN, thì tổ chức sử dụng mạng chưa hẳn đã sở hữu các thiết bị mạng, một số
thiết bị được sở hữu bởi nhà cung cấp dịch vụ. Hơn nữa với mạng LAN việc quản lý
và bảo dưỡng mạng là do chính người sử dụng thực hiện.
3- Tốc tộ bên trong của LANs thường cao hơn tốc độ đó của WANs
Có thể có nhiều cách bố trí (topology) cho các LAN quảng bá. Hình 1.4 nêu ra
hai loại. Trong một mạng Bus (tức là một cáp tuyến tính), vào bất cứ thời gian nào
một máy là máy chính và cho phép truyền tải, và mọi máy khác bị yêu cầu hạn chế
việc truyền tải. Một cơ chế phân xử là cần thiết để giải quyết các xung đột khi hai
hay nhiều máy muốn chuyển tin cùng một lúc. Cơ chế phân xử có thể là tập trung
hay phân tán. Một loại hệ thống quảng bá thứ hai là ring (vòng). Trong một mạng
ring, mỗi bit lan tỏa quanh nó, không chờ đợi phần còn lại của gói tin. Điển hình là
từng bit dạo quanh toàn thể ring trong thời gian nó chiếm để truyền một vài bit. Như
mọi hệ quảng bá khác, cần một số quy tắc để sắp xếp các thao tác truy cập đồng thời
đến ring. Nhiều phương pháp được sử dụng sẽ được đề cập sau.
Hình 1.4. Hai mạng quảng
bá: (a) Bus; (b) Ring
1.4 Các giao thức và kiến
trúc giao thức
Khi các máy tính, đầu cuối
và những thiết bị xử lý dữ liệu khác trao đổi dữ liệu thì phạm vi của những vấn đề
quan tâm nhiều hơn những gì chúng ta đã thảo luận ở phần 1.2, 1.3. Chúng ta xét một
ví dụ về việc truyền file giữa hai máy tính để làm sáng tỏ điều này. Không chỉ có một
14
tuyến truyền dữ liệu giữa hai máy tính có thể là trực tiếp hoặc qua một mạng truyền
thông, mà quá trình truyền tin còn cần nhiều hơn các thủ tục. Các nhiệm vụ điển hình
phải thực hiện bao gồm:
1. Hệ thống nguồn phải kích hoạt tuyến truyền thông dữ liệu trực tiếp hay thông
tin cho mạng truyền thông biết về sự xác nhận của hệ thống thống đích đã yêu cầu.
2. Hệ thống nguồn phải biết chắc rằng hệ thống đích đã sẵn sàng nhận dữ liệu
3. Các ứng dụng truyền file trên hệ thống nguồn phải biết chắc rằng chương
trình quản lý file trên hệ thống đích phải sẵn sàng chấp nhận và lưu trữ file cho người
dùng.
4. Nếu các định dạng file được sử dụng trên hai hệ thống không tương thích thì
một hoặc cả hai hệ thống phải thực hiện hàm chuyển đổi định dạng.
Chúng ta thấy rõ ràng là cần có sự kết hợp cao giữa hai hệ thống máy tính
(nguồn-đích). Sự chuyển đổi thông tin giữa hai máy tính cho hoạt động kết hợp của
hai máy tính được biết đến như là “sự truyền thông máy tính”. Tương tự như vậy, khi
hai hay nhiều máy tính được liên nối qua một mạng truyền thông thì một hệ các trạm
máy tính này được biết đến như là một “mạng máy tính”. Bởi vì có sự yêu cầu về
một mức liên kết giống nhau giữa một người dùng ở một đầu cuối và một người dùng
ở một máy tính, nên các thuật ngữ thường được dùng khi một vài thực thể truyền
thông là các đầu cuối.
Khi trao đổi về mạng máy tính và sự truyền thông máy tính thì hai khái niệm có
ý nghĩa lớn nhất là:
° Các giao thức
° Kiến trúc truyền thông máy tính, hay là kiến trúc giao thức
Một giao thức được sử dụng để truyền thông giữa các thực thể ở các hệ thống
khác nhau. Thuật ngữ “thực thể” và “hệ thống” được sử dụng ở trường hợp rất chung.
Những thí dụ về các thực thể như là các chương trình ứng dụng, các gói truyền file,
các hệ thống quản lý cơ sở dữ liệu, các phương tiện mail điện tử và các đầu cuối.
Còn những ví dụ về hệ thống như là các máy tính, các đầu cuối và các cảm biến từ
xa. Chú ý rằng, trong một số trường hợp thực thể và hệ thống là có sự tương tự (như
là các đầu cuối). Nói chung, một thực thể là một vài khả năng gửi hay là nhận thông
tin còn một hệ thống là một thực thể vật lý mà chứa một hay nhiều thực thể. Hai hệ
thống có thể truyền thông dữ liệu thành công thì chúng phải “nói cùng một ngôn
ngữ”. Vậy truyền thông là gì, các thực thể truyền thông như thế nào và khi nó truyền
thông thì phải tuân theo một vài sự thỏa thuận giữa các thực thể liên quan. Các thỏa
thuận này được biết đến như là một giao thức, nó có lẽ được định nghĩa là một hệ các
15
quy tắc mà chi phối giao dịch dữ liệu giữa hai thực thể. Các thành phần cơ bản của
một giao thức gồm:
° Cú pháp (Syntax): Bao gồm những điều như định dạng dữ liệu và các mức
tín hiệu
° Ngữ nghĩa (Semantics): Bao gồm thông tin điều khiển cho sự cùng sắp xếp
và điều khiển lỗi.
° Định thời (Timing): Bao gồm sự điều phối tốc độ và sự sắp xếp thứ tự
Một cách rõ ràng rằng cần có một mức độ hợp tác cao giữa hai máy tính. Thay
vì thực hiện điều này như là một mô đun đơn lẻ thì nhiệm vụ sẽ được chia nhỏ thành
nhiều nhiệm vụ nhỏ, mỗi một nhiệm vụ nhỏ này được thực hiện tách biệt nhau. Hình
1.5 đưa ra một ví dụ về sự thực thi một phương tiện truyền file. Có ba mô đun được
sử dụng.
Hình 1.5. Một kiến trúc đơn giản để truyền file
Chúng ta hãy khảo sát chức năng của từng mô đun trong hình 1.5. Đầu tiên, mô
đun truyền file (file transfer module) bao gồm tất cả những nguyên lý thiết kế máy
mà chuyên dùng cho ứng dụng truyền file, như là truyền các mật khẩu, truyền các
lệnh file, các bản ghi file. Cần thiết có sự tin cậy trong việc truyền các file và lệnh
này. Tuy nhiên, có cùng các loại yêu cầu tin cậy liên quan đến một loạt các ứng dụng
(như là thư điện tử, truyền tài liệu). Do đó các yêu cầu này được thỏa mãn bời một
mô đun dịch vụ truyền thông (communications service module) riêng rẽ mà có thể
được sử dụng bởi một loạt các ứng dụng. Mô đun dịch vụ truyền thông đảm bảo cho
hai hệ thống máy tính được kích hoạt và sẵn sàng cho truyền dữ liệu và đảm bảo việc
lưu vết (keeping track) của dữ liệu đang trao đổi tới đúng nơi phân phát. Mặc dù vậy
những nhiệm vụ này là độc lập với loại mạng đang được sử dụng. Vì vậy các vấn đề
chịu trách nhiệm về mạng được tách biệt ra thành một mô đun truy cập mạng
16
(network access module) riêng. Điều này có nghĩa là nếu mạng có sự thay đổi thì chỉ
có mô đun truy cập mạng bị ảnh hưởng.
Do đó, thay vì chỉ một mô đun đơn để thực hiện truyền thông dữ liệu thì chúng
ta sử dụng một hệ các mô đun đã cấu trúc để thực hiện các chức năng truyền thông.
Cấu trúc đó được biết đến như là một kiến trúc giao thức. Tiếp theo, ta xem xét một
kiến trúc giao thức đơn giản nói chung, sau đó ta xét đến các ví dụ thực và phức tạp
như kiến trúc giao thức TCP/IP và OSI.
Mô hình ba lớp
Trong các thuật ngữ nói chung thì truyền thông có thể được nói đến ba tác nhân
là: các ứng dụng, các máy tính và các mạng. Một ví dụ về một ứng dụng là một hoạt
động truyền file. Các ứng dụng này thực thi trên các máy tính mà có thể thường hỗ
trợ nhiều ứng dụng cùng lúc. Các máy tính lại được kết nối tới các mạng, và dữ liệu
để trao đổi thì được truyền bời mạng từ một máy tính đến máy tính khác. Do đó, việc
truyền dữ liệu từ một ứng dụng này đến ứng dụng khác liên quan đến việc đầu tiên là
lấy dữ liệu tới máy tính đích (máy tính mà trong đó chương trình ứng dụng kia cư
trú) và sau đó đưa nó tới chương trình ứng dụng cần thiết trên máy tính đó.
Chúng ta có thể đưa ra ý tưởng tổ chức nhiệm vụ truyền thông thành ba lớp độc
lập một cách quan hệ với nhau như sau:
Lớp truy cập mạng
Lớp giao vận
Lớp ứng dụng
Lớp truy cập mạng đảm bảo việc trao đổi dữ liệu giữa một máy tính với mạng
mà nó kết nối tới. Máy tính gửi dữ liệu phải cung cấp cho mạng địa chỉ của máy đích
để cho mạng có thể định tuyến dữ liệu tới đích thích hợp. Máy tính gửi mong có
những dịch vụ chắc chắn như dịch vụ ưu tiên mà được cung cấp bởi mạng. Các phần
mềm chuyên dụng được sử dụng ở lớp này thì tùy thuộc vào loại mạng; các chuẩn
khác nhau đã được phát triển cho từng loại: mạng chuyển mạch kênh, chuyển mạch
gói, mạng cục bộ,… Do đó, thật là nhạy cảm để phân tách những chức năng mà phài
làm việc với sự truy cập mạng ra một lớp riêng. Điều này đã cho phép phần mềm
truyền thông ở trên lớp truy cập mạng không cần bận tâm đến những cái riêng của
mạng được sử dụng. Phần mềm cùng lớp cao hơn nên hoạt động một cách thích đáng
bất chấp một mạng cụ thể nào mà máy tính kết nối tới
Không chú ý đến bản chất của các chương trình ứng dụng mà đang trao đổi dữ
liệu, việc trao đổi dữ liệu cần có sự tin cậy. Có nghĩa là chúng ta phài đảm bảo rằng
tất cả dữ liệu đến đúng ứng dụng đích và dữ liệu đến trong cùng yêu cầu trong đó
17
chúng được gửi. Những cơ cấu đảm bảo sự tin cậy là độc lập với bản chất của các
ứng dụng. Do đó chúng ta phải lựa chọn những cơ cấu này trong một lớp thông
thường được chia sẻ bởi tất cả các ứng dụng; lớp này được gọi là “lớp giao vận”
Cuối cùng, lớp ứng dụng bao gồm những nguyên lý thiết kế cần để hỗ trợ cho
nhiều loại ứng dụng người dùng. Với mỗi loại ứng dụng khác nhau như truyền file
chúng ta cần một mô đun riêng để đặc trưng cho loại ứng dụng.
Hình 1.6 và 1.7 minh họa cấu trúc đơn giản này. Hình 1.6 đưa ra một mô hình
có 3 máy tính kết nối tới mạng. Mỗi PC gồm phần mềm ở lớp truy cập mạng và lớp
giao vận, và phần mềm ở lớp ứng dụng cho 1 hay nhiều ứng dụng. Để truyền thông
thành công, tất cả các thực thể trong toàn hệ thống phải có một địa chỉ duy nhất.
Thực tế ta cần hai mức địa chỉ. Mỗi một máy tính trên mạng cần một địa chỉ mạng
duy nhất; nó cho phép mạng phân phát dữ liệu đến máy tính thích hợp. Mỗi một ứng
dụng trên 1 máy tính phải có một địa chỉ duy nhất bên trong máy tính đó; địa chỉ này
cho phép lớp giao vận hỗ trợ nhiều ứng dụng ở mỗi máy tính. Các địa chỉ thứ hai
được biết đến như là các điểm truy cập dịch vụ (SAPs – Service Access Points), nó
có nghĩa là mỗi ứng dụng đang truy cập một cách riêng lẻ các dịch vụ của lớp giao
vận.
18
Hình 1.6. Các kiến trúc giao thức và các mạng
Hình 1.7. Các giao thức trong một kiến trúc đơn giản
Hình 1.7 chỉ ra rằng các mô đun ở cùng một mức trên các máy tính khác nhau
thì truyền thông với nhau. Một giao thức là một tập các quy tắc hay quy ước chi phối
các cách thức trong đó hai thực thể hợp tác để trao đổi dữ liệu. Một thông số giao
thức chi tiết hóa các chức năng điều khiển được thực thi, các định dạng và mã điều
19
khiển sử dụng để truyền thông các chức năng này, và các thủ tục mà hai thực thể phải
theo.
Chúng ta hãy xem xét một hoạt động đơn giản như sau. Giả sử một ứng dụng
liên kết với SAP1 ở máy tính A muốn gửi một bản tin tới ứng dụng khác liên kết với
SAP2 ở máy tính B. Ứng dụng ở A đưa bản tin qua lớp giao vận của nó với chỉ thị là
gửi nó tới SAP2 trên B. Lớp giao vận lại đẩy bản tin qua lớp truy cập mạng, với chỉ
thị cho mạng gửi bản tin tới máy tính B. Chú ý rằng mạng cần biết sự xác định điểm
truy cập dịch vụ đích. Tất cả nó cần biết là dữ liệu hướng tới máy tính B.
Để điều khiển hoạt động này thì thông tin điều khiển cũng như dữ liệu người
dùng cần được truyền đi, như được đưa ra ở hình 1.8. Ở đó, ứng dụng gửi dữ liệu sẽ
tạo một khối dữ liệu và đẩy nó tới lớp giao vận. Lớp giao vận có lẽ sẽ chia nhỏ nó ra
thành nhiều đoạn nhỏ hơn để cho dễ quản lý hơn. Với mỗi đoạn này lớp giao vận sẽ
nối thêm vào một phần đầu giao vận (transport header), nó bao gồm thông tin về điều
khiển. Sự kết hợp này của dữ liệu từ lớp cao hơn kế tiếp và thông tin điều khiển này
được gọi là một đơn vị dữ liệu giao thức (PDU); trong trường hợp của chúng ta là
một đơn vị dữ liệu giao thức giao vận. Phần đầu này ở mỗi PDU giao vận bao gồm
thông tin điều khiển để sử dụng bởi giao thức cùng cấp ở máy tính B. Những phần
được lưu trữ trong phần đầu này bao gồm:
SAP đích: Khi lớp giao vận đích nhận PDU giao vận thì nó phải biết nơi nào dữ
liệu được phân phát (dữ liệu thuộc ứng dụng nào)
Số tuần tự: Bởi vì giao thức lớp giao vận đang gửi một dãy các đơn vị dữ liệu
giao thức, nên nó đánh số chúng một cách tuần tự để nếu như dữ liệu này có đến
không đúng yêu cầu thì thực thể giao vận đích còn có thể sắp xếp lại chúng.
Mã dò lỗi: Thực thể giao vận gửi dữ liệu có thể bao gồm một mật mã mà có
một hàm của các nội dung của số dư của PDU. Giao thức giao vận bên nhận sẽ thực
thi cùng một cách tính toán và so sánh kết quả với mật mã đến. Nến có kết quả khác
biệt thì sẽ xảy ra một vài lỗi trên đường trường. Trong trường hợp này bên nhận sẽ
loại PDU và thực hiện một số hoạt động cần thiết.
20
Hình 1.8. Các đơn vị dữ liệu giao thức
Bước tiếp theo lớp giao vận sẽ đẩy mỗi PDU xuống lớp mạng với chỉ thị là
truyền PDU này đến máy tính đích. Để thỏa mãn yêu cầu này, giao thức truy cập
mạng phải hiện dữ liệu ra trong mạng với một yêu cầu nào đó cho truyền dẫn. Cũng
như trước, hoạt động này đòi hỏi sử dụng thông tin điều khiển. Giao thức truy cập
mạng nối thêm dữ liệu phần đầu truy nhập mạng với dữ liệu mà nó nhận được ở lớp
giao vận, đó chính là sự tạo ra một PDU truy cập mạng. Các thành phần lưu trữ trong
phần đầu của PDU truy cập mạng có thể gồm:
Địa chỉ máy tính đích: Mạng cần biết máy tính nào trên mạng sẽ nhận dữ liệu
Các yêu cầu tiện nghi: Giao thức lớp mạng có thể cần mạng đảm bảo một số
tiện nghi như là quyền ưu tiên,…
Hình 1.9 tổng hợp tất cả quá trình trên trong một hình vẽ, nó đưa ra các tương
tác giữa các mô đun cho việc truyền một khối dữ liệu. Với giả sử rằng mô đun truyền
file trong máy tính X đang truyền một file (bản ghi) tới máy tính Y. Mỗi bản ghi
được điều khiển qua mô đun lớp giao vận. Chúng ta có thể hình dung hoạt động này
trong một dạng của một lệnh hay lời gọi thủ tục. Những đối số của lời gọi thủ tục bao
gồm địa chỉ máy tính đích, điểm truy nhập dịch vụ đích, và bản ghi. Lớp giao vận
thêm vào điểm truy nhập dịch vụ đích và thông tin điều khiển khác vào bản ghi để
tạo ra một PDU giao vận. Sau đó nó được đẩy xuống lớp truy nhập mạng bằng một
lời gọi thủ tục khác. Trong trường hợp này, các đối số cho lệnh là địa chỉ máy tính
đích và PDU giao vận. Lớp truy nhập mạng sử dụng thông tin này để xây dựng một
PDU mạng. PDU giao vận là một trường dữ liệu của PDU mạng và phần đầu PDU
21
mạng bao gồm thông tin có liên quan đến các địa chỉ máy tính nguồn và đích. Chú ý
rằng phần đầu giao vận không có thể nhìn thấy được ở lớp truy cập mạng (hay nó vấn
được coi là dữ liệu ở lớp truy cập mang); lớp truy cập mạng không quan tâm tới nội
dung của PDU giao vận.
Hình 1.9. Hoạt động của một kiến trúc giao thức
Mạng sẽ chấp nhận PDU mạng từ X và phân phát nó tới Y. Mô đun truy cập
mạng ở trong Y nhận các PDU, cởi bỏ phần đầu và truyền PDU giao vận được đính
theo tới mô đun lớp giao vận của X. Lớp giao vận sẽ kiểm tra phần đầu đơn vị dữ
liệu giao thức giao vận, phân phát bản ghi được đính theo tới ứng dụng thích hợp, ở
đây là mô đun truyền file trong Y.
Kiến trúc giao thức TCP/IP
Hai kiến trúc giao thức được cung cấp những vấn đề cơ bản cho sự phát triển
các chuẩn truyền thông đó là : bộ giao thức TCP/IP và mô hình tham chiếu OSI.
TCP/IP là kiến trúc được sử dụng rộng rãi và OSI thì trở thành mô hình chuẩn để
phân loại các chức năng truyền thông. Chúng ta sẽ xem xét tổng quan về hai kiến
trúc này.
TCP/IP là một hệ quả của việc nghiên cứu và phát triển giao thức được quản lý
trên mạng chuyển mạch gói, ARPANET, và thường được gọi là bộ giao thức TCP/IP.
Bộ giao thức này bao gồm một tập lớn các giao thức được sử dụng cho các chuẩn
liên mạng (internet).
Mô hình TCP/IP được chia thành 5 lớp như sau:
22
Lớp ứng dụng
Lớp giao vận
Lớp Internet
Lớp truy cập mạng
Lớp vật lý
Trong đó, lớp vật lý bao gồm vấn đề về giao diện vật lý giữa một thiết bị truyền
dữ liệu (như máy tính, trạm làm việc) và phương tiện truyền dẫn hoặc mạng. Lớp này
liên quan với việc xác định các tính chất của phương tiện truyền dẫn, tính chất của
tín hiệu, tốc độ dữ liệu và các vấn đề liên quan.
Lớp truy cập mạng liên quan đến việc trao đổi dữ liệu giữa một hệ thống cuối
và mạng mà nó kết nối tới. Máy tính gửi dữ liệu phải cung cấp cho mạng địa chỉ của
máy tính đích để mạng có thể định tuyến cho dữ liệu đến đích chính xác. Máy tính
gửi có thể cần các dịch vụ đặc biệt như quyền ưu tiên mà có thể được cung cấp bởi
mạng. Phần mềm mạng chuyên dụng được sử dụng ở lớp này phụ thuộc vào loại
mạng được sử dụng; các chuẩn khác nhau đã được phát triển cho các mạng khác
nhau như chuyển mạch kênh, chuyển mạch gói, LANs, Chức năng của lớp truy
cập mạng như sau:
- Cung cấp cho hệ thống phương thức để truyền dữ liệu trên các thiết bị phần
cứng vật lý khác nhau của mạng.
- Đóng gói các đơn vị dữ liệu IP (IP datagram) vào các frame truyền trên
mạng và việc ánh xạ các địa chỉ IP thành các địa chỉ vật lý tương ứng dùng cho mạng
trước khi truyền xuống kênh vật lý.
- Định nghĩa cách thức truyền các khối dữ liệu IP: Các giao thức ở lớp này
phải biết chi tiết các phần cấu trúc vật lý mạng ở dưới nó để định dạng chính xác các
dữ liệu sẽ được truyền phụ thuộc vào từng loại vật lý cụ thể.
Lớp mạng (internet) chịu trách nhiệm định tuyến các bản tin (message) qua các
mạng vật lý khác nhau, liên mạng, giao thức ở lớp này là IP. Giao thức IP là quan
trọng nhất vì IP cung cấp dịch vụ giao nhận gói tin cơ bản trên các mạng TCP/IP,
mọi giao thức ở các lớp trên và bên dưới lớp mạng đều sử dụng giao thức IP để thực
hiện việc giao nhận dữ liệu. Hơn nữa IP bổ sung một hệ thống địa chỉ logic được gọi
là địa chỉ iP, được sử dụng bởi lớp Internet và các lớp cao hơn để nhận diện các thiết
bị và thực hiện định tuyến
Chức năng của lớp giao vận (hay còn gọi là lớp host to host):
- Cung cấp phương tiện liên lạc từ một chương trình ứng dụng này đến
chương trình ứng dụng khác, chịu trách nhiệm đảm bảo toàn vẹn dữ liệu đầu cuối.
23
-
Trong lớp này có hai giao thức quan trọng là giao thức TCP và UDP. Trong
đó, TCP sử dụng phương thức trao đổi các dòng dữ liệu giữa người sử dụng theo kiểu
hướng kết nối, còn UDP cung cấp dịch vụ giao nhận theo kiểu “không liên kết”, có
nghĩa là không cần phải thực hiện
Lớp ứng dụng: Bao gồm tất cả các tiến trình sử dụng các giao thức của lớp
giao vận để truyền dữ liệu. Có nhiều giao thức ứng dụng ở lớp này, phần lớn là nhằm
cung cấp cho người dùng các dịch vụ ứng dụng, sử dụng 2 giao thức chính TCP và
UDP.
Hình 1.10 chỉ ra cách thức các giao thức TCP/IP được thực hiện ở các hệ thống
cuối và liên quan đến mô hình truyền thông ở hình 1.1a. Với lưu ý rằng các lớp vật lý
và lớp truy cập mạng cung cấp tương tác giữa hệ thống cuối và mạng, còn các lớp
ứng dụng và giao vận được biết đến các giao thức đầu cuối tới đầu cuối; nó hỗ trợ
tương tác giữa hai hệ thống cuối. Lớp mạng thì có một phần của cả hai sự tương tác
trên. Tại lớp này, hệ thống cuối truyền thông tin định tuyến tới mạng và nó cũng phải
cung cấp một vài hàm thông thường giữa hai hệ thống cuối.
Hình 1.10. Mô hình kiến trúc giao thức TCP/IP
24
Mô hình OSI (Open Systems Interconnection)
Mô hình OSI là một cơ sở dành cho việc chuẩn hoá các hệ thống truyền thông,
nó được nghiên cứu và xây dựng bởi ISO. Việc nghiên cứu về mô hình OSI được bắt
đầu tại ISO vào năm 1971 với mục tiêu nhằm tới việc nối kết các sản phẩm của các
hãng sản xuất khác nhau và phối hợp các hoạt động chuẩn hoá trong các lĩnh vực
viễn thông và hệ thống thông tin. Theo mô hình OSI chương trình truyền thông được
chia ra thành 7 lớp với những chức năng phân biệt cho từng lớp. Hai lớp đồng mức
khi liên kết với nhau phải sử dụng một giao thức chung. Trong mô hình OSI có hai
loại giao thức chính được áp dụng: giao thức có liên kết (connection - oriented) và
giao thức không liên kết (connectionless)
Giao thức có liên kết: trước khi truyền dữ liệu hai lớp đồng mức cần thiết lập
một liên kết logic và các gói tin được trao đổi thông qua liên kết náy, việc có liên kết
logic sẽ nâng cao độ an toàn trong truyền dữ liệu.
Giao thức không liên kết: trước khi truyền dữ liệu không thiết lập liên kết
logic và mỗi gói tin được truyền độc lập với các gói tin trước hoặc sau nó.
Nhiệm vụ của các lớp trong mô hình OSI:
Lớp ứng dụng (Application layer): lớp ứng dụng quy định giao diện giữa
người sử dụng và môi trường OSI, nó cung cấp các phương tiện cho người sử dụng
truy cập vả sử dụng các dịch vụ củ mô hình OSI.
Lớp trình bày (Presentation layer): lớp trình bày chuyển đổi các thông tin từ
cú pháp người sử dụng sang cú pháp để truyền dữ liệu, ngoài ra nó có thể nén dữ liệu
truyền và mã hóa chúng trước khi truyền đễ bảo mật.
Lớp giao dịch (Session layer): lớp giao dịch quy định một giao diện ứng dụng
cho lớp vận chuyển sử dụng. Nó xác lập ánh xa giữa các tên đặt địa chỉ, tạo ra các
tiếp xúc ban đầu giữa các máy tính khác nhau trên cơ sở các giao dịch truyền thông.
Nó đặt tên nhất quán cho mọi thành phần muốn đối thoại riêng với nhau.
Lớp vận chuyển (Transport layer): lớp vận chuyển xác định địa chỉ trên
mạng, cách thức chuyển giao gói tin trên cơ sở trực tiếp giữa hai đầu mút
(end-to-end). Để bảo đảm được việc truyền ổn định trên mạng lớp vận chuyển
thường đánh số các gói tin và đảm bảo chúng chuyển theo thứ tự.