Khái niệm mạng máy tính 
 Mạng máy tính là một tập h ợp các máy tính được nối với nhau bởi đường 
truyền theo một cấu trúc nào đó và thông qua đó các máy tính trao đổi thông tin qua 
lại cho nhau. 
 
 Đường truyền là hệ thống các thiết bị truyền dẫn có dây hay không dây dùng để 
chuyển các tín hiệu điện tử từ máy tính này đến máy tính khác. Các tín hiệu điện tửđó 
biểu thị các giá trị dữ liệu dưới dạng các xung nhị phân (on - off). Tất cả các tín hiệu 
được truyền giữa các máy tính đều thuộc một dạng sóng điện từ.
 Tùy theo tần số của 
sóng điện từ có thể dùng các đường truyền vật lý khác nhau để truyền các tín hiệu. Ở 
đây đường truyền được kết nối có thể là dây cáp đồng trục, cáp xoắn, cáp quang, dây 
điện thoại, sóng vô tuyến . 
Các đường truyền dữ liệu tạo nên cấu trúc của mạng. Hai 
khái niệm đường truyền và cấu trúc là những đặc trưng cơ bản của mạng máy tính.
                
              
                                            
                                
            
 
            
                 94 trang
94 trang | 
Chia sẻ: banmai | Lượt xem: 2326 | Lượt tải: 3 
              
            Bạn đang xem trước 20 trang tài liệu Căn bản về 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
 
chữ số (địa chỉ host) tạo một địa chỉ duy nhất cho mỗi thiết bị trên mạng. Mỗi máy tính 
trên mạng TCP/IP phải được cấp một định danh duy nhất hay địa chỉ IP. Địa chỉ IP 
hoạt động ở lớp 3 định vị các máy tính khác trên mạng, các máy tính cũng có một địa 
chỉ vật lý duy nhất được gọi là địa chỉ MAC. Các địa chỉ này được gán bởi nhà sản 
xuất Card giao tiếp mạng (N IC) và địa chỉ này hoạt động ở lớp 2 của mô hình OSI. 
Một địa chỉ IP là một tổ hợp 32 bit nhị phân. Hình 2.1 trình bày về một số 32 bit. 
 Hình 2.1.2.1a Khuôn dạng địa chỉ IP 
 Để làm cho địa chỉ IP dễ sử dụng, địa chỉ IP thường được viết dưới dạng bốn 
số thập phân và được tách ra. Ví dụ, địa chỉ IP của một máy là 192.168.80.1, phương 
pháp viết địa chỉ này được gọi là dạng thập phân có dấu chấm phân cách. Mỗi địa chỉ 
IP được viết thành bốn phần phân cách nhau bởi dấu chấm, mỗi phần của địa chỉ IP 
được gọi là một Octet bởi nó được tạo thành bởi 8 chữ số nhị phân. 
Ví dụ, địa chỉ IP 192.168.1.8 sẽ có ký hiệu nhị phân là: 
11000000.10101000.00000001.100000000, sử dụng dạng thập phân có dấu 
chấm tạo ra dạng địa chỉ dễ hiểu hơn. Cả hai chữ số nhị phân và thập phân trong hình 
2.2 biểu diễn cùng một giá trị nhưng rõ ràng dạng thập phân dễ nhìn hơn. 
6.2.2 Các lớp của địa chỉ IP 
 Để phù hợp với các mạng có kích thước khác nhau và hỗ trợ trong việc 
phân loại các mạng này, các địa chỉ IP được chia thành các nhóm gọi là các lớp. Mỗi 
địa chỉ IP 32 bit hoàn chỉnh chia thành phần mạng và phần host. Mỗi bit hay một tuần 
tự các bit bắt đầu mỗi địa chỉ sẽ xác định lớp của địa chỉ này. Có 5 lớp địa chỉ IP được 
trình bày trong hình dưới đây: 
 Hình 2.1.2.2.a Các tiền tố lớp địa chỉ 
 Địa chỉ lớp A được thiết kế cho các mạng cực kỳ lớn, với nhiều hơn 16 triệu địa 
chỉ host có sẵn. Các địa chỉ lớp A chỉ dùng Octet đầu tiên để chỉ địa chỉ mạng, ba 
Octet còn lại cung cấp địa chỉ host. 
Hình 2.1.2.2.b Địa chỉ lớp A 
 Địa chỉ lớp B được thiết kế cho các mạng vừa phải, với hơn 65 nghìn địa chỉ 
host có sẵn. Một địa chỉ lớp B dùng hai Octet đầu làm địa chỉ mạng, hai Octet còn lại 
là địa chỉ host. 
Hình 2.1.2.2.c Địa chỉ lớp B 
 Không gian địa chỉ lớp C được dùng phổ biến nhất trong số các lớp của địa chỉ 
IP. Không gian địa chỉ này được cung cấp cho các mạng nhỏ với tối đa 254 host. 
 Hình 2.1.2.2.d Địa chỉ lớp C 
 Lớp địa chỉ D được tạo ra để cho phép multicasting cho địa chỉ IP. Một địa chỉ 
multicast là một địa chỉ mạng duy nhất hướng dẫn các gói đến một nhóm các địa chỉ 
IP, nhóm địa chỉ IP được định nghĩa trước là địa chỉ multicast này. Do đó, một host có 
thể truyền luồng số liệu đến nhiều host một cách đồng thời. 
 Hình 2.1.2.2.e Địa chỉ lớp D 
 Địa chỉ lớp E đã được định nghĩa. Tuy nhiên, IETF dành các địa này cho công 
việc nghiên cứu riêng. Do đó, không có địa chỉ địa chỉ lớp E nào được cấp phát cho sử 
dụng Internet. 
 Hình 2.1.2.2.g Địa chỉ lớp E 
6.3 BỘ GIAO THỨC TCP/IP 
6.3.1 Giới thiệu về TCP/IP 
 Vào cuối những năm 1960 và 1970, trung tâm nghiên cứu cấp cao của Mỹ được giao 
trách nhiệm phát triển mạng APARN ET. Mạng APARN ET bao gồm những tổ chức 
quân đội, các trường đại học và các tổ chức nghiên cứu và được dùng để hỗ trợ cho 
những dự án nghiên cứu khoa học và quân đội (N gày nay, APRA được gọi là 
DARPA). N ăm 1984, DOD chia APARN ET ra thành 2 phần APARN ET sử dụng cho 
nghiên cứu khoa học và MILN ET sử dụng cho quân đội. Đầu những năm 1980, một 
bộ giao thức mới được đưa ra làm giao thức chuNn cho mạng APARN ET và các mạng 
của DOD mang tên DARPA Internet protocol suit, nó thường được gọi là bộ giao thức 
TCP/IP hay còn gọi tắt là TCP/IP. 
N ăm 1987, tổ chức nghiên cứu quốc gia Hoa Kỳ (N ational Science Foundation 
- N SF) tài trợ cho việc kết nối 6 trung tâm siêu tính trên toàn liên bang lại với nhau 
thành một mạng với tên gọi N SFN ET. Về mặt vật lý, mạng này kết nối 13 điểm làm 
việc bằng đường điện thoại cao tốc được gọi là N SFN ET backbone, khoảng 8 đường 
backbone đã được xây dựng. N SFN ET được mở rộng với hàng chục mạng địa phương 
kết nối vào nó và kết nối vào mạng Internet của DARPA, cả N SFN ET và các mạng 
con của nó đều sử dụng bộ giao thức TCP/IP. 
Bộ giao thức TCP/IP có một số ưu điểm chính như sau: 
- Giao thức chuNn mở thoải mái và sẵn sàng phát triển độc lập với phần cứng 
và hệ điều hành. Bởi vì nó được hỗ trợ bởi nhiều nhà cung cấp, TCP/IP lý tưởng cho 
việc hợp nhất phần cứng và phần mềm khác nhau, ngay cả khi truyền thông trên 
Internet. Sự độc lập rành mạch với phần cứng vật lý của mạng cho phép TCP/IP hợp 
nhất các mạng khác nhau. TCP/IP có thể chạy trên mạng Ethernet, mạng Token ring, 
mạng quay số (Dial-up line), mạng X.25, mạng ảo và mọi loại môi trường vật lý 
truyền thông. 
- Một sơ đồ địa chỉ dùng chung cho phép mỗi thiết bị TCP/IP có duy nhất một 
địa chỉ trên mạng ngay cả khi đó là mạng toàn cầu Internet. 
- Tiêu chuNn hoá mức cao của giao thức phù hợp với ích lợi của dịch vụ người 
dùng. Được tích hợp vào hệ điều hành UN IX, hỗ trợ mô hình client - server, mô hình 
mạng bình đẳng, hỗ trợ kỹ thuật dẫn đường động. 
DARPA hỗ trợ việc nghiên cứu kết nối nhiều loại mạng khác nhau lại thành 
một mạng toàn cầu Internet. N goài việc sử dụng cho tất cả các máy trên Internet, 
TCP/IP còn được sử dụng trong mạng nội bộ của một số tổ chức chính phủ hoặc 
thương mại, những mạng này gọi là Intranet. TCP/IP có thể kết nối một số lượng lớn 
các máy tính (150.000 máy trên nước Mĩ, Châu Âu, Châu Á) hay chỉ kết nối hai máy 
tính trong phòng làm việc. 
Sau đây chúng ta sẽ nghiên cứu về bộ giao thức truyền thông TCP/IP. 
6.3.2 Tổng quan về bộ giao thức TCP/IP 
 Mặc dầu có nhiều giao thức trong bộ giao thức truyền thông TCP/IP, hai giao 
thức quan trọng nhất được lấy tên đặt cho bộ giao thức này là TCP (Transmission 
Control Protocol) và IP (Internet Protocol). 
 TCP/IP là bộ giao thức cho phép kết nối các mạng không đồng nhất vói nhau. 
N gày nay, TCP/IP được sử dụng rộng rãi trong các mạng cục bộ cũng như mạng 
Internet toàn cầu. 
6.3.2.1 Kiến trúc phân tầng của TCP/IP 
TCP/IP được xem là giản lược của mô hình OSI và được phân làm 4 tầng: 
- Tầng mạng (N etwork Layer) 
- Tầng Internet (Internet Layer) 
- Tầng giao vận (Transport Layer) 
- Tầng ứng dụng (Application Layer) 
Trong đó 
* Tầng liên kết mạng: là tầng thấp nhất trong mô hình TCP/IP bao gồm các 
thiết bị giao tiếp mạng và các chương trình giao tiếp thông tin cần thiết để có thể hoạt 
động và truy nhập đường truyền vật lý qua các thiết bị giao tiếp đó. 
 * Tầng Internet: Xủ lý quá trình truyền gói tin trên mạng. Tầng này bao gồm 
các loại giao thức như IP (Internet protocol), ICMP (Internet control Message 
Protocol), IGMP (Internet Group Message Protocol). 
 * Tầng giao vận: Phụ trách luồng dữ liệu giữa hai trạm thực hiện ứng dụng của 
tầng trên. Tầng này bao gồm hai giao thức TCP (Transmisson Control Protocol) và 
UDP (User Datagram Protocol). Giao thức TCP cung cấp một luồng dữ liệu tin cậy 
giữa hai trạm, sử dụng các cơ chế như chia gói tin ở tầng trên thành các gói tin nhỏ 
hơn ở tầng mạng bên dưới, báo nhận gói tin, đặt thời gian time - out để nhận biết thời 
gian gói tin đã được gửi đi. Do tầng này đảm bảo tính tin cậy nên tầng trên không cần 
phải quan tâm nữa. Giao thức UDP thì cung cấp một dịch vụ đơn giản hơn cho tầng 
trên, nó chỉ gửi các gói dữ liệu từ tầng này tới tầng kia làm không đảm bảo đến được 
đích, các cơ chế đảm bảo độ tin cậy cần được thực hiện bởi tầng trên. 
 * Tầng ứng dụng: Là tầng trên cùng của mô hình TCP/IP, bao gồm các tiến 
trình và giao thức cung cấp sử dụng truy cập mạng. Có rất nhiều ứng dụng được cung 
cấp cho tầng này như: Telnet phục vụ truy cập mạng từ xa, FTP dịch vụ truyền tệp, 
Email gửi thư điện tử, WWW (Word-Wide-Web) … 
 Việc phân tầng này đảm bảo một số nguyên tắc sau: 
- Một lớp được tạo ra khi cần đến mức trừu tượng hoá tương ứng. 
- Mỗi lớp cần thực hiện các chức năng được định nghĩa rõ ràng. 
- Việc chọn chức năng cho mỗi lớp cần chú ý tới việc định nghĩa các quy tắc 
chuNn hoá quốc tế. 
- Ranh giới các mức cần chọn sao cho thông tin đi qua là ít nhất (tham số cho 
chương trình con là ít). 
- Số mức phải đủ lớn để các chức năng tách biệt không nằm trong cùng một lớp 
và đủ nhỏ để mô hình không quá phức tạp. 
- Một mức có thể được phân thành các lớp nhỏ nếu cần thiết. 
- Các mức con có thể lại bị loại bỏ. 
- Hai hệ thống khác nhau có thể truyền thông với nhau nếu chúng bảo đảm 
những nguyên tắc chung (cài đặt cùng một giao thức truyền thông). 
- Các chức năng được tổ chức thành một tập các tầng đồng mức cung cấp chức 
năng như nhau. Các tầng đồng mức phải sử dụng một giao thức chung. 
- Một tầng không định nghĩa một giao thức đơn, nó định nghĩa một chức năng 
truyền thông có thể được thi hành bởi một số giao thức. Do vậy, mỗi tầng có thể chứa 
nhiều giao thức, mỗi giao thức cung cấp một dịch vụ phù hợp cho chức năng của 
tầng. 
 - FTP (File transfer Protocol): Giao thức truyền tệp cho phép người dùng lấy hoặc gửi 
tệp tới một máy khác 
 - Telnet: Chương trình mô phỏng thiết bị đầu cuối cho phép người dùng login vào 
một máy chủ từ một máy tính nào đó trên mạng. 
 - SMTP (Simple Mail Transfer Protocol): Một giao thức thư tín điện tử. 
 - DNS (Domain N ame server): Dịch vụ tên miền cho phép nhận ra máy tính từ một 
tên miền thay cho chuỗi địa chỉ Internet khó nhớ. 
 - SNMP (Simple N etwork Management Protocol): Giao thức quản trị mạng cung cấp 
những công cụ quản trị mạng. 
 - RIP (Routing Internet Protocol): Giao thức dẫn đường động. 
 - ICMP (Internet Control Message Protocol): N ghi thức thông báo lỗi. 
 - UDP (User Datagram Protocol): Giao thức truyền thông không kết nối, cung cấp 
dịch vụ truyền không tin cậy nhưng tiết kiệm chi phí truyền. 
Application 
Layer 
Transport 
Layer 
(Host Layer) 
Internet Layer 
(GetwayLayer
) 
Network 
Interface 
Layer 
RIP 
SN MSMTP 
Transsmission Control 
Protocol 
User Datagram 
 Protocol 
TELN EFTP 
Internet Protocol 
ICMP
ARP 
Token Fiber Token BusEthernet 
DN S 
 - TCP (Transmission Control Protocol): Giao thức hướng kết nối, cung cấp dịch vụ 
truyền thông tin tưởng. 
 - IP (Internet Protocol): Giao thức Internet chuyển giao các gói tin qua các máy tính 
đến đích. 
 - ARP (Address Resolution Protocol): Cơ chế chuyển địa chỉ TCP/IP thành địa chỉ 
vật lý của các thiết bị mạng. 
 TCP là một giao thức có liên kết, nghĩa là cần thiết lập liên kết giữa hai thực thể 
TCP trước khi chúng trao đổi dữ liệu với nhau. Một tiến trình ứng dụng trong một máy 
tính truy nhập vào các dịch vụ của giao thức TCP thông qua một cổng của TCP. Một 
cổng TCP kết hợp với địa chỉ IP tạo thành một đầu nối TCP/IP duy nhất trong liên 
mạng. Một đầu nối TCP/IP có thể tham gia nhiều liên kết với các đầu nối TCP/IP ở xa 
khác nhau. Trước khi truyền dữ liệu qua hai trạm cần phải thiết lập một liên kết TCP 
giữa chúng và khi không còn nhu cầu truyền dữ liệu thì liên kết đó sẽ được giải 
phóng. 
 * Các bước thực hiện để thiết lập một liên kết TCP/IP 
 Thiết lập một liên kết mới có thể được mở theo một trong 2 phương thức: Chủ 
động (active) hoặc bị động (passive) 
- Phương thức bị động, người sử dụng yêu cầu TCP chờ đợi một yêu cầu liên 
kết gửi đến từ xa thông qua một đầu nối TCP/IP. N gười sử dụng dùng hàm passive 
Open có khai báo cổng TCP và các thông số khác. 
- Với phương thức chủ động, người sử dụng yêu cầu TCP mở một liên kết với 
một đầu nối TCP/IP ở xa. Liên kết sẽ được xác lập nếu có một hàm Passive Open 
tương ứng đã được thực hiện tại đầu nối TCP/IP ở xa đó. 
6.4. Kỹ thuật chia mạng con của Internet (IP subnetting) 
6.4.1. Nguyên nhân 
 N hư đã nêu trên địa chỉ trên Internet thực sự là một tài nguyên, một mạng khi 
gia nhập Internet được Trung tâm thông tin mạng Internet ( N IC) phân cho một số địa 
chỉ vừa đủ dùng với yêu cầu lúc đó, sau này nếu mạng phát triển thêm lại phải xin N IC 
thêm, đó là điều không thuận tiện cho các nhà khai thác mạng. 
Hơn nữa các lớp địa chỉ của Internet không phải hoàn toàn phù hợp với yêu cầu 
thực tế, địa chỉ lớp B chẳng hạn, mỗi một địa chỉ mạng có thể cấp cho 65534 máy chủ, 
Thực tế có mạng nhỏ chỉ có vài chục máy chủ thì sẽ lãng phí rất nhiều địa chỉ còn lại 
mà không ai dùng được . Để khắc phục vấn đề này và tận dụng tối đa địa chỉ được N IC 
phân, bắt đầu từ năm 1985 người ta nghĩ đến Địa chỉ mạng con. 
N hư vậy phân địa chỉ mạng con là mở rộng địa chỉ cho nhiều mạng trên cơ sở 
một địa chỉ mạng mà N IC phân cho, phù hợp với số lượng thực tế máy chủ có trên 
từng mạng. 
6.4.2. Phương pháp phân chia địa chỉ mạng con 
Một số khái niệm liên quan tới việc phân địa chỉ các mạng con. 
* Default Mask: (Giá trị trần địa chỉ mạng) được định nghĩa trước cho từng lớp 
địa chỉ A,B,C. Thực chất là giá trị thập phân cao nhất (khi tất cả 8 bit đều bằng 1) 
trong các Octet dành cho địa chỉ mạng - N et ID. 
Default Mask: 
Lớp A 255.0.0.0 
Lớp B 255.255.0.0 
Lớp C 255.255.255.0 
*Subnet Mask: ( giá trị trần của từng mạng con) 
 Subnet Mask là kết hợp của Default Mask với giá trị thập phân cao nhất của các 
bit lấy từ các Octet của địa chỉ máy chủ sang phần địa chỉ mạng để tạo địa chỉ mạng 
con. 
Subnet Mask bao giờ cũng đi kèm với địa chỉ mạng tiêu chuNn để cho người 
đọc biết địa chỉ mạng tiêu chuNn này dùng cả cho 254 máy chủ hay chia ra thành các 
mạng con. Mặt khác nó còn giúp Router trong việc định tuyến cuộc gọi. 
*Nguyên tắc chung: 
Lấy bớt một số bit của phần địa chỉ máy chủ để tạo địa chỉ mạng con. 
Lấy đi bao nhiêu bit phụ thuộc vào số mạng con cần thiết (Subnet mask) mà 
nhà khai thác mạng quyết định sẽ tạo ra. 
Vì địa chỉ lớp A và B đều đã hết, hơn nữa hiện tại mạng Internet của Tổng công 
ty do VDC quản lý đang được phân 8 địa chỉ mạng lớp C nên chúng ta sẽ nghiên cứu 
kỹ phân chia địa chỉ mạng con ở lớp C. 
 a. Địa chỉ mạng con của địa chỉ lớp C 
 Class c: 
Địa chỉ lớp C có 3 octet cho địa chỉ mạng và 1 octet cuối cho địa chỉ máy chủ vì 
vậy chỉ có 8 bit lý thuyết để tạo mạng con, thực tế nếu dùng 1 bit để mở mạng con và 7 
bit cho địa chỉ máy chủ thì vẫn chỉ là một mạng và ngược lại 7 bit để cho mạng và 1 
bit cho địa chỉ máy chủ thì một mạng chỉ được một máy, như vậy không logic, ít nhất 
phải dùng 2 bit để mở rộng địa chỉ và 2 bit cho địa chỉ máy chủ trên từng mạng. Do 
vậy trên thực tế chỉ dùng như bảng sau. 
Default Mask của lớp C : 255.255.255.0 
 Địa chỉ 
 máy chủ 
255.255.255.1 1 0 0 0 0 0 0 ; 192 ( 2 bit đ/ chỉ mạng con 6 bit đ/chỉ máy chủ) 
255.255.255.1 1 1 0 0 0 0 0 ; 224 ( 3 bit đ/chỉ mạng con 5 bit đ/chỉ máy chủ) 
255.255.255.1 1 1 1 0 0 0 0 ; 240 ( 4 bit đ/chỉ mạng con 4 bit đ/chỉ máy chủ) 
255.255.255.1 1 1 1 1 0 0 0 ; 248 ( 5 bit đ/chỉ mạng con 3 bit đ/chỉ máy chủ) 
255.255.255.1 1 1 1 1 1 0 0 ; 252 ( 6 bit đ/chỉ mạng con 2 bit đ/chỉ máy chủ) 
Default Mask Địa chỉ 
 mạng con 
 Khả năng chia mạng con của địa chỉ Lớp C 
Trường Subnetmask Số lượng Số máy chủ trên 
 hợp mạng con từng mạng 
 1 255.255.255.192 2 62 
 2 255.255.255.224 6 30 
 3 255.255.255.240 14 14 
 4 255.255.255.248 30 6 
 5 255.255.255.252 62 2 
N hư vậy một địa chỉ mạng ở lớp C chỉ có 5 trường hợp lựa chọn trên (Hay 5 
Subnet Mask khác nhau), tuỳ từng trường hợp cụ thể để quyết định số mạng con. 
* Trường hợp 1 - Hai mạng con 
Subnet Mask 255.255.255.192. 
Từ một địa chỉ tiêu chuNn tạo được địa chỉ cho hai mạng con, mỗi một mạng có 
62 máy chủ. 
Sử dụng hai bit (bit 7 và 6) của phần địa chỉ máy chủ để tạo mạng con. N hư vậy 
còn lại 6 bit để phân cho máy chủ. 
+ Tính địa chỉ mạng 
 Octet 4 
Bit 7 
6 
5 4 3 2 1 
0 
xxx.xxx.xxx. 0 
0 
0 0 0 0 0 
0 
= xxx.xxx.xxx.0 
xxx.xxx.xxx. 0 
1 
0 0 0 0 0 
0 
= xxx.xxx.xxx.64 
xxx.xxx.xxx. 1 
0 
0 0 0 0 0 
0 
= 
xxx.xxx.xxx.128 
xxx.xxx.xxx. 1 
1 
0 0 0 0 0 
0 
= 
xxx.xxx.xxx.192 
Ghi chú: xxx.xxx.xxx là địa chỉ mạng tiêu chuNn của lớp C. 
Địa chỉ của mạng là giá trị của bit 7 và 6 lần lượt bằng 0 và 1. Trong trường 
hợp chia địa chỉ mạng con không bao giờ được dùng địa chỉ khi các bit đều bằng 0 hay 
bằng 1. Do vậy trường hợp 2 mạng con nói trên, địa chỉ mạng con sẽ là: 
Mạng con 1: Địa chỉ mạng xxx.xxx.xxx.64 
Mạng con 2: Địa chỉ mạng xxx.xxx.xxx.128 
+ Tính địa chỉ cho máy chủ cho mạng con 1 
Chúng ta chỉ còn 6 bit cho địa chỉ máy chủ trên từng mạng. 
 Octet 4 
Bit 7 6 5 4 3 2 1 0 
xxx.xxx.xxx. 0 1 0 0 0 0 0 0 = xxx.xxx.xxx.64 Địa chỉ 
mạng 
xxx.xxx.xxx. 0 1 0 0 0 0 0 1 = xxx.xxx.xxx.65 
xxx.xxx.xxx. 0 1 0 0 0 0 1 0 = xxx.xxx.xxx.66 
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 
xxx.xxx.xxx. 0 1 1 1 1 1 1 0 = xxx.xxx.xxx.126 
xxx.xxx.xxx. 0 1 1 1 1 1 1 1 =xxx.xxx.xxx.127 Không 
phân 
Địa chỉ mạng con 
1 
Mỗi mạng còn lại 62 địa chỉ cho máy chủ. 
Mạng 1: Từ xxx.xxx.xxx. 065 đến xxx.xxx.xxx.126 
+ Tính địa chỉ cho máy chủ cho mạng con 2 
Tương tự như cách tính trên ta có 
 Octet 4 
Bit 7 6 5 4 3 2 1 
0 
xxx.xxx.xxx. 1 0 0 0 0 0 0 
0 
= xxx.xxx.xxx.128 Địa chỉ 
mạng 
xxx.xxx.xxx. 1 0 0 0 0 0 0 
1 
= xxx.xxx.xxx.129 
xxx.xxx.xxx. 1 0 0 0 0 0 1 
0 
= xxx.xxx.xxx.130 
. . . . . . . . . . . . . . . . . . . . . 
.. 
. . . . . . . . . . . . . 
xxx.xxx.xxx. 1 0 1 1 1 1 1 
0 
= xxx.xxx.xxx.190 
xxx.xxx.xxx. 1 0 1 1 1 1 1 
1 
= xxx.xxx.xxx.191 Không 
phân 
Địa chỉ mạng con 
2 
Mạng 2: Địa chỉ máy chủ trên mạng 2. 
Từ xxx.xxx.xxx.129 đến xxx.xxx.xxx.190. 
Tổng quát lại: 
Subnet ID Hosts 
0 1-62 
64 65-126 
128 129-190 
192 193-254 
 Mạng con thứ nhất 
 Địa chỉ mạng con: xxx.xxx.xxx.064 
 Địa chỉ các máy chủ trên mạng con này từ. 
xxx.xxx.xxx. 065 
xxx.xxx.xxx. 066 
xxx.xxx.xxx. 067 
.............. 
đến xxx.xxx.xxx. 126 
 Mạng con thứ 2 
 Địa chỉ mạng con: xxx.xxx.xxx. 128 
 Địa chỉ các máy chủ trên mạng con này từ. 
xxx.xxx.xxx. 129 
xxx.xxx.xxx. 130 
............. 
đến xxx.xxx.xxx. 190 
Địa chỉ máy chủ từ 1 đến 62 và từ 193 đến 254 và 127 ; 191 bị mất, nghĩa là 
mất 130 địa chỉ. 
Ví dụ: Địa chỉ tiêu chuNn lớp C là 196. 200. 123 
Subnetmask 255.255.255.192 
Từ địa chỉ này ta có 2 mạng con là: 
- Mạng 1: Địa chỉ mạng 196.200.123.064 
Địa chỉ Máy chủ trên mạng này. 
Từ 196.200.123.065 đến 196. 200. 123. 126. 
- Mạng 2: Địa chỉ mạng 196.200.123.128 
Địa chỉ máy chủ trên mạng này. 
Từ 196.200.123.129 đến 196.200.123. 190 
* Trường hợp 2 - Sáu mạng con 
Subnetmask: 255.255.255.224. 
Tạo được 6 mạng con, mỗi mạng con có 30 máy chủ 
+ Tính địa chỉ Mạng con 
Trường hợp này sử dụng 3 bit ( bit 7,6,5) của địa chỉ máy chủ (Octet 4) bổ sung 
cho địa chỉ mạng tiêu chuNn để tạo mạng con. 
 Octet 4 
Bit 7 6 
5 
4 3 2 1 
0 
xxx.xxx.xxx. 0 0 
0 
0 0 0 0 
0 
= xxx.xxx.xxx.0 
xxx.xxx.xxx. 0 0 
1 
0 0 0 0 
0 
= xxx.xxx.xxx.32 
xxx.xxx.xxx. 0 1 
0 
0 0 0 0 
0 
= xxx.xxx.xxx.64 
xxx.xxx.xxx. 0 1 
1 
0 0 0 0 
0 
= xxx.xxx.xxx.96 
xxx.xxx.xxx. 1 0 
0 
0 0 0 0 
0 
= xxx.xxx.xxx.128 
xxx.xxx.xxx. 1 0 
1 
0 0 0 0 
0 
= xxx.xxx.xxx.160 
xxx.xxx.xxx. 1 1 
0 
0 0 0 0 
0 
= xxx.xxx.xxx.192 
xxx.xxx.xxx. 1 1 
1 
0 0 0 0 
0 
= xxx.xxx.xxx.224 
Bỏ trường hợp các bit đều bằng 0 hay 1, còn lại địa chỉ của 6 mạng con sau. 
xxx.xxx.xxx.32 ; Mạng con 1 
xxx.xxx.xxx.64 ; Mạng con 2 
xxx.xxx.xxx.96 ; Mạng con 3 
xxx.xxx.xxx.128 ; Mạng con 4 
xxx.xxx.xxx.160 ; Mạng con 5 
xxx.xxx.xxx.192 ; Mạng con 6 
+ Tính địa chỉ máy chủ cho mạng con 1 
 Octet 4 
Bit 7 6 
5 
4 3 2 1 
0 
xxx.xxx.xxx. 0 0 
1 
0 0 0 0 
0 
= xxx.xxx.xxx. 32 Địa chỉ 
mạng 
xxx.xxx.xxx. 0 0 
1 
0 0 0 1 
1 
= xxx.xxx.xxx.33 
xxx.xxx.xxx. 0 0 
1 
0 0 0 0 
0 
= xxx.xxx.xxx.34 
xxx.xxx.xxx. 0 0 
1 
0 0 0 1 
1 
= xxx.xxx.xxx.35 
xxx.xxx.xxx. 0 0 
1 
0 0 1 0 
0 
= xxx.xxx.xxx.36 
. . . . . . . . . . . . 
. 
. . . . . . . . . . . . . . . . . . . 
xxx.xxx.xxx. 0 0 
1 
1 1 1 1 
0 
= xxx.xxx.xxx.62 
xxx.xxx.xxx. 0 0 
1 
1 1 1 1 
1 
= xxx.xxx.xxx.63 Không phân 
N hư vậy địa chỉ máy chủ của mạng con 1 sẽ từ 33 đến 62. 
Tương tự như cách tính đã nêu trên chúng ta có thể tính được cho tất cả các 
trường hợp còn lại (xem bảng 1) và được tổng hợp lại như sau. 
 Trường hợp 1: Subnetmask 255.255.255.192 
• 2 mạng con. 
• 62 máy chủ mỗi mạng. 
Trường hợp 2: Subnetmask 255.255.255.224 
• 6 mạng con. 
• 30 máy chủ mỗi mạng. 
 Trường hợp 3: Subnetmask 255.255.255.240 
• 14 mạng con. 
• 14 máy chủ mỗi mạng 
Trường hợp 4: Subnetmask 255.255.255.248 
• 30 mạng con. 
• 6 máy chủ mỗi mạng. 
 Trường hợp 5: Subnetmask 255.255.255.252. 
• 62 mạng con. 
• 2 máy chủ mỗi mạng. 
Xem bảng tính địa chỉ cho các trường hợp trên 
Ví dụ: Địa chỉ mạng lớp C mà N IC phân cho VDC là 203.162.4.0. Trên địa chỉ này 
phân ra 2 mạng con thì địa chỉ sẽ là. 
Mạng 1: Địa chỉ mạng 203.162.4.64. 
Địa chỉ máy chủ trên mạng đó từ 203.162.4.65 đến 203.162.4.126 
Mạng 2: Địa chỉ mạng 203.162.4.128. 
Địa chỉ máy chủ trên mạng đó từ 203.162.4.129 đến 203.162.4.190 
b. Địa chỉ mạng con từ địa chỉ lớp B 
 Default Mask của lớp B là 255.255.0.0 
 class b: 
N et ID - Khi phân địa chỉ mạng con sử dụng Octet 3 
Địa chỉ lớp B có 2 Octet thứ 3 và thứ 4 dành cho địa chỉ máy chủ nên về 
nguyên lý có thể lấy được cả 16 bit để tạo địa chỉ mạng . N ếu từ một địa chỉ mạng 
được N IC phân chúng ta định mở rộng lên 254 mạng và mỗi mạng sẽ có 254 máy chủ. 
Trường hợp này sẽ lấy hết 8 bit của octet thứ 3 bổ sung vào địa chỉ mạng và chỉ còn lại 
8 bit thực tế cho địa chỉ máy chủ, theo cách tính số thập phân 2n giá trị của 8 bit như đã 
nêu ở phần lớp C, chúng ta sẽ có: 
Bảng phân chia địa chỉ mạng con ở lớp B 
Class B 
Subnetting (Default 
Subnet mask) 
Subnet Mask 
subnets 
Số mạng con 
hosts per subnet 
Số máy chủ trên 
mỗi mạng con 
255.255.0.0 
Sử dụng Octet 3 để mở 
rộng mạng con 
255.255.192.0 2 16382 
255.255.224.0 6 8190 
255.255.240.0 14 4094 
255.255.248.0 30 2460 
255.255.252.0 62 1022 
255.255.254.0 126 510 
255.255..255.0 254 254 
Sử dụng cả Octet 4 để 
mở rộng mạng con 
255.255.255.128 510 126 
255.255.255.192 1022 62 
255.255.255.224 2046 30 
255.255.255.240 4094 14 
255.255.255.248 8190 6 
255.255.255.252 16382 2 
Địa chỉ lớp B về lý thuyết có 2 octet đầu cho địa chỉ mạng, khi chia mạng con 
theo phương pháp sử dụng tất cả 8 bit trong 3 octet cho địa chỉ mạng, trên thực tương 
ứng với lớp C, như vậy về địa chỉ N IC phân là lớp B nhưng cách tổ chức địa chỉ lại ở 
lớp C ( Xem Bảng phụ lục phân địa chỉ mạng con ở lớp B ). 
Trong bảng này cần chú ý ở cột 6 - khoảng cách địa chỉ giữa 2 mạng con giới 
thiệu cho chúng ta cách tính địa chỉ các mạng con, địa chỉ các máy chủ trên từng mạng 
liên quan tới cột 7,8,9,10. 
Ví dụ: Trường hợp Subnetmask 255.255.240.0 là rõ nhất. 
Chia được 14 mạng con, mỗi mạng con có 4094 máy chủ, khoảng cách địa chỉ giữa 
hai mạng con là 16.0 có nghĩa. 
• Mạng con 1 có địa chỉ là xxx.yyy.16.0 ; Mạng con 2 sẽ có địa chỉ là 
xxx.yyy.16.0 + 16.0 = xxx.yyy.32.0 cứ tiếp tục như vậy ta sẽ tính được địa 
chỉ của từng mạng con và mạng con 14 là xxx.yyy. 224.0. 
• Địa chỉ máy chủ đầu tiên trên mạng con 1 là xxx.yyy.16.1 ; địa chỉ máy chủ 
đầu tiên trên mạng con 2 sẽ là xxx.yyy.16.1 + 16.0 = xxx.yyy.32.1. Tiếp tục 
như vậy ta sẽ tính địa chỉ được máy chủ đầu tiên của mạng con 14 là 
xxx.yyy.224.1 v.v.. 
• Tương tự chúng ta biết được địa chỉ cuối cùng của các máy chủ trên một 
mạng con. 
Theo hướng dẫn này chúng ta sẽ tìm được các trường hợp khác. 
Tóm lại chia địa chỉ mạng con cũng phải theo một quy luật nhất định ngoài ý 
muốn của chúng ta, khi chia mạng con cũng bị mất khá nhiều địa chỉ, mất ít hay nhiều 
tuỳ thuộc vào các trường hợp cụ thể. 
6.5 Các phương pháp phân bổ địa chỉ IP 
6.5.1. Lấy một điạ chỉ IP 
6.5.1.1 Lấy một địa chỉ Internet 
Một host mạng cần lấy một địa chỉ duy nhất toàn cục để hoạt động trên Internet. Địa chỉ vật lý 
hay MAC mà host có chỉ có ý nghĩa cục bộ, để nhận diện host trong mạng cục bộ mà thôi. Vì 
đây là địa chỉ lớp 2, nên router không dùng nó để chuyển số liệu lên LAN . 
Các địa chỉ IP được dùng phổ biến nhất trong truyền thông Internet. Giao thức này là một 
lược đồ địa chỉ phân cấp, cho phép các địa chỉ cá nhân được liên kết với nhau và được xem 
như các nhóm. Các nhóm địa chỉ cho phép truyền số liệu qua Internet một cách hiệu quả. 
N gười quản trị mạng dùng 2 phương pháp để gán địa chỉ IP. Các phương pháp này gọi là tĩnh 
hay động. N ếu hai host có cùng địa chỉ IP có thể gây ra một sự xung đột mà qua đó khiến cho 
cả hai host đều không thể hoạt động được. Các host có một địa chỉ vật lý bởi chúng có chung 
một card giao tiếp mạng (N IC). Cho phép kết nối host vào môi trường vật lý. 
6.5.1.2 Sự gán tĩnh một địa chỉ IP 
Gán địa chỉ tĩnh phù hợp cho các mạng nhỏ ít thay đổi. N gười quản trị hệ thống gán bằng tay 
và theo dõi các địa chỉ IP trong mỗi máy tính, máy in hay server trên Internet. Theo dõi tốt là 
điều quan trọng để ngăn các vấn đề phát sinh từ sự trùng lặp địa chỉ IP. Điều này chỉ có thể 
khi có một số lượng nhỏ các thiết bị cần theo dõi. Các server sẽ được gán một địa chỉ IP tĩnh 
sao cho các máy trạm và các thiết bị khác luôn biết được cách thức truy xuất các dịch vụ cần 
thiết. 
Các thiết bị khác được gán địa chỉ IP tĩnh là các máy in mạng. Các server ứng dụng và router. 
6.5.1.3 Gán địa chỉ theo RARP 
RARP (Reverse Address Resolution Protocol) liên hệ một địa chỉ MAC đã biết với một địa 
chỉ IP. Liên hệ này cho phép các thiết bị mạng đóng gói (encapsulation) số liệu trước khi 
truyền số liệu lên mạng. Một thiết bị mạng ví dụ như diskless workstation có thể biết địa chỉ 
MAC của nó nhưng lại không biết địa chỉ IP được gán cho nó. RARP cho phép các thiết bị 
này tạo ra một yêu cầu để lấy địa chỉ IP của minh. Các thiết bị dùng RARP Request qua đó 
một RARP server có mặt trên mạng sẽ phải trả lời. Xem xét một ví dụ nơi mà một thiết bị 
nguồn muốn truyền số liệu đến thiết bị khác. Trong ví dụ này, thiết bị nguồn biết địa chỉ MAC 
của mình nhưng không thể xác định địa chỉ IP của nó trong bảng RARP. Thiết bị nguồn phải 
gộp cả địa chỉ MAC và địa chỉ IP của nó để thiết bị đích tiếp nhận số liệu, sau đó truyền 
chúng lên các lớp cao hơn trong mô hình OSI và đáp ứng lại cho thiết bị nguồn. Do đó, nguồn 
phải khởi động một quá trình được gọi là RARP request. Yêu cầu giúp thiết bị nguồn phát 
hiện được địa chỉ IP của nó. RARP request là một broadcast lên một LAN và một đáp ứng bởi 
một RARP server, thành phần này thường là một router. 
RARP sử dụng định dạng gói giống như ARP. Tuy nhiên trong RARP request, MAC header 
và “Operation code” khác với ARP request. Khuôn dạng gói RARP chứa các vị trí cho các địa 
chỉ MAC của các thiết bị nguồn và đích. File chứa địa chỉ IP của nguồn là rỗng broadcast này 
đi đến mọi thiết bị trên mạng. Do đó địa chỉ MAC đích sẽ được ghi với tất cả các bit đều là 1. 
Các máy trạm chạy RARP đều có mã chương trình trong ROM hướng dẫn chúng khởi động 
một quá trình trong RARP. 
6.5.1.4 Gán địa chỉ IP theo BOOTP 
Bootstrap protocol (BOOTP) là giao thức hoạt động trong môi trường client/server và chỉ yêu 
cầu một gói đơn trao đổi để lấy môt thông tin IP. Tuy nhiên, không giống như RARP, các gói 
BOOTP có thể chứa các địa chỉ IP cũng như địa chỉ của một router, địa chỉ của một server và 
thông tin của nhà cung cấp. 
Tuy nhiên vấn đề đối với BOOTP là nó không được thiết kế để cung ứng địa chỉ rộng. Với 
BOOTP, người quản trị mạng tạo ra một tập tin cấu hình chỉ ra các thông số cho các thiết bị. 
N gười quản trị phải bổ xung các host và bảo trì cở sở dữ liệu BOOTP. N gay cả khi các địa chỉ 
IP được gán động, vẫn phải có mối quan hệ một-một giữa số lượng địa chỉ IP và số lượng 
host. Điều này có nghĩa là mỗi host trên mạng phải có một đặc trưng (profile). BOOTP kèm 
theo sự gán địa chỉ IP trên đó. Không có hai profile nào có cùng địa chỉ IP vì profile này có 
thể được dùng cùng lúc và như vậy sẽ có thể có hai host cùng địa chỉ IP. 
Một thiết bị dùng BOOTP để lấy một địa chỉ IP khi khởi động máy. BOOTP dùng UDP để tải 
các thông điệp. Thông điệp UDP được đóng trong một gói IP. Một máy tính dùng BOOTP để 
gửi một broadcast IP sử dụng địa chỉ IP đích với tất cả đều là 1, 255.255.255.255 trong ký 
hiệu thập phân có chấm phân cách. Một BOOTP server nhận broadcast này và sau đó chuyển 
ngược lại broadcast. Client nhận một frame và kiểm tra địa chỉ MAC. N ếu client thấy địa chỉ 
MAC của nó trong file địa chỉ đích và một broadcast trong file đích IP, nó tiến hành lấy và 
lưu địa chỉ IP cùng với thông tin khác được cung cấp trong thông điệp hồi đáp BOOTP này. 
6.5.1.5 Quản lý địa chỉ IP theo DHCP 
Dynamic Host Configuration Protocol là giao thức tiếp ra đời sau BOOTP. Không giống như 
BOOTP, DHCP cho phép một host lấy địa chỉ IP một cách linh động không cần người quản 
trị mạng thiết lập một profile riêng cho mỗi thiết bị. Tất cả những gì được yêu cầu khi dùng 
DHCP là định nghĩa một dải địa chỉ IP trên một DHCP server. Khi các host tham gia vào 
mạng, chúng liên hệ với DHCP server và yêu cầu một địa chỉ IP. DHCP server chọn một địa 
chỉ và cấp cho host này. Với DHCP, toàn bộ cấu hình mạng của một máy tính có thể được lấy 
về chỉ qua một thông điệp. Trong đó bao hàm tất cả các số liệu được cung cấp bởi thông điệp 
BOOTP, cộng với địa chỉ IP được cấp và một subnet mask. 
Ưu điểm chu yếu mà DHCP có so với BOOTP là cho phép các user có thể di chuyển. Đặc 
tính di động này cho phép các user thay đổi tùy thích các kết nối mạng từ vị trí này sang vị trí 
khác. Không còn yêu cầu giữ một profile cố định cho từng thiết bị nối vào mạng giống như 
trong hệ thống BOOTP. Điều quan trọng đối với ưu thế của DHCP là khả năng cấp một địa 
chỉ IP cho một thiết bị và sau đó thu hồi lại để cấp cho thiết bị khác sau khi user đầu tiên 
không còn dùng nữa. Điều này có nghĩa là DHCP cung cấp một hệ số một-nhiều (one-to-
many) của các địa chỉ IP và một địa chỉ IP là khả dụng cho mọi người kết nối vào mạng. 
6.6. Giao thức IP 
6.6.1. Tổng quát 
N hiệm vụ chính của giao thức IP là cung cấp khả năng kết nối các mạng con thành liên kết 
mạng để truyền dữ liệu, vai trò của IP là vai trò của giao thức tầng mạng trong mô hình OSI. 
Giao thức IP là một giao thức kiểu không liên kết (connectionlees) có nghĩa là không cần có 
giai đoạn thiết lập liên kết trước khi truyền dữ liệu. 
Sơ đồ địa chỉ hóa để định danh các trạm (host) trong liên mạng được gọi là địa chỉ IP 32 bits 
(32 bit IP address). Mỗi giao diện trong 1 máy có hỗ trợ giao thức IP đều phải được gán 1 địa 
chỉ IP (một máy tính có thể gắn với nhiều mạng do vậy có thể có nhiều địa chỉ IP). Địa chỉ IP 
gồm 2 phần: địa chỉ mạng (netid) và địa chỉ máy (hostid). Mỗi địa chỉ IP có độ dài 32 bits 
được tách thành 4 vùng (mỗi vùng 1 byte), có thể biểu thị dưới dạng thập phân, bát phân, thập 
lục phân hay nhị phân. Cách viết phổ biến nhất là dùng ký pháp thập phân có dấu chấm 
(dotted decimal notation) để tách các vùng. Mục đích của địa chỉ IP là để định danh duy nhất 
cho một máy tính bất kỳ trên liên mạng. 
Do tổ chức và độ lớn của các mạng con (subnet) của liên mạng có thể khác nhau, người ta 
chia các địa chỉ IP thành 5 lớp, ký hiệu là A, B, C, D và E. Trong lớp A, B, C chứa địa chỉ có 
thể gán được. Lớp D dành riêng cho lớp kỹ thuật multicasting. Lớp E được dành những ứng 
dụng trong tương lai. 
N etid trong địa chỉ mạng dùng để nhận dạng từng mạng riêng biệt. Các mạng liên kết phải có 
địa chỉ mạng (netid) riêng cho mỗi mạng. Ở đây các bit đầu tiên của byte đầu tiên được dùng 
để định danh lớp địa chỉ (0 - lớp A, 10 - lớp B, 110 - lớp C, 1110 - lớp D và 11110 - lớp E). 
Ơû đây ta xét cấu trúc của các lớp địa chỉ có thể gán được là lớp A, lớp B, lớp C 
Cấu trúc của các địa chỉ IP như sau: 
Mạng lớp A: địa chỉ mạng (netid) là 1 Byte và địa chỉ host (hostid) là 3 byte. 
Mạng lớp B: địa chỉ mạng (netid) là 2 Byte và địa chỉ host (hostid) là 2 byte. 
Mạng lớp C: địa chỉ mạng (netid) là 3 Byte và địa chỉ host (hostid) là 1 byte. 
Lớp A cho phép định danh tới 126 mạng, với tối đa 16 triệu host trên mỗi mạng. Lớp này 
được dùng cho các mạng có số trạm cực lớn. 
Lớp B cho phép định danh tới 16384 mạng, với tối đa 65534 host trên mỗi mạng. 
Lớp C cho phép định danh tới 2 triệu mạng, với tối đa 254 host trên mỗi mạng. Lớp này được 
dùng cho các mạng có ít trạm. 
Hình 7.1: Cấu trúc các lớp địa chỉ IP 
Một số địa chỉ có tính chất đặc biệt: Một địa chỉ có hostid = 0 được dùng để hướng tới mạng 
định danh bởi vùng netid. N gược lại, một địa chỉ có vùng hostid gồm toàn số 1 được dùng để 
hướng tới tất cả các host nối vào mạng netid, và nếu vùng netid cũng gồm toàn số 1 thì nó 
hướng tới tất cả các host trong liên mạng 
 Hình 7.2: Ví dụ cấu trúc các lớp địa chỉ IP 
Cần lưu ý rằng các địa chỉ IP được dùng để định danh các host và mạng ở tầng mạng của mô 
hình OSI, và chúng không phải là các địa chỉ vật lý (hay địa chỉ MAC) của các trạm trên đó 
một mạng cục bộ (Ethernet, Token Ring.). 
Trong nhiều trường hợp, một mạng có thể được chia thành nhiều mạng con (subnet), lúc đó 
có thể đưa thêm các vùng subnetid để định danh các mạng con. Vùng subnetid được lấy từ 
vùng hostid, cụ thể đối với lớp A, B, C như ví dụ sau: 
Hình 7.3: Ví dụ địa chỉ khi bổ sung vùng subnetid 
Đơn vị dữ liệu dùng trong IP được gọi là gói tin (datagram), có khuôn dạng 
Hình 7.4: Dạng thức của gói tin IP 
Ý nghĩa của thông số như sau: 
VER (4 bits): chỉ version hiện hành của giao thức IP hiện được cài đặt, Việc có chỉ số 
version cho phép có các trao đổi giữa các hệ thống sử dụng version cũ và hệ thống sử 
dụng version mới. 
IHL (4 bits): chỉ độ dài phần đầu (Internet header Length) của gói tin datagram, tính 
theo đơn vị từ ( 32 bits). Trường này bắt buột phải có vì phần đầu IP có thể có độ dài 
thay đổi tùy ý. Độ dài tối thiểu là 5 từ (20 bytes), độ dài tối đa là 15 từ hay là 60 bytes. 
Type of service (8 bits): đặc tả các tham số về dịch vụ nhằm thông báo cho mạng biết 
dịch vụ nào mà gói tin muốn được sử dụng, chẳng hạn ưu tiên, thời hạn chậm trễ, năng 
suất truyền và độ tin cậy. Hình sau cho biết ý nghĩ của trường 8 bits này. 
Precedence (3 bit): chỉ thị về quyền ưu tiên gửi datagram, nó có giá trị từ 0 (gói tin 
bình thường) đến 7 (gói tin kiểm soát mạng). 
D (Delay) (1 bit): chỉ độ trễ yêu cầu trong đó 
D = 0 gói tin có độ trễ bình thường 
D = 1 gói tin độ trễ thấp 
T (Throughput) (1 bit): chỉ độ thông lượng yêu cầu sử dụng để truyền gói tin với lựa 
chọn truyền trên đường thông suất thấp hay đường thông suất cao. 
T = 0 thông lượng bình thường và 
T = 1 thông lượng cao 
R (Reliability) (1 bit): chỉ độ tin cậy yêu cầu 
R = 0 độ tin cậy bình thường 
R = 1 độ tin cậy cao 
Total Length (16 bits): chỉ độ dài toàn bộ gói tin, kể cả phần đầu tính theo đơn vị 
byte với chiều dài tối đa là 65535 bytes. Hiện nay giới hạn trên là rất lớn nhưng trong 
tương lai với những mạng Gigabit thì các gói tin có kích thước lớn là cần thiết. 
Identification (16 bits): cùng với các tham số khác (như Source Address và 
Destination Address) tham số này dùng để định danh duy nhất cho một datagram trong 
khoảng thời gian nó vẫn còn trên liên mạng. 
Flags (3 bits): liên quan đến sự phân đoạn (fragment) các datagram, Các gói tin khi 
đi trên đường đi có thể bị phân thành nhiều gói tin nhỏ, trong trường hợp bị phân đoạn 
thì trường Flags được dùng điều khiển phân đoạn và tái lắp ghép bó dữ liệu. Tùy theo 
giá trị của Flags sẽ có ý nghĩa là gói tin sẽ không phân đoạn, có thể phân đoạn hay là 
gói tin phân đoạn cuối cùng. Trường Fragment Offset cho biết vị trí dữ liệu thuộc 
phân đoạn tương ứng với đoạn bắt đầu của gói dữ liệu gốc. Ý nghĩa cụ thể của trường 
Flags là: 
 bit 0: reserved - chưa sử dụng, luôn lấy giá trị 0. 
bit 1: (DF) = 0 (May Fragment) = 1 (Don't Fragment) 
bit 2: (MF) = 0 (Last Fragment) = 1 (More Fragments) 
Fragment Offset (13 bits): chỉ vị trí của đoạn (fragment) ở trong datagram tính theo 
đơn vị 8 bytes, có nghĩa là phần dữ liệu mỗi gói tin (trừ gói tin cuối cùng) phải chứa 
một vùng dữ liệu có độ dài là bội số của 8 bytes. Điều này có ý nghĩa là phải nhân giá 
trị của Fragment offset với 8 để tính ra độ lệch byte. 
Time to Live (8 bits): qui định thời gian tồn tại (tính bằng giây) của gói tin trong 
mạng để tránh tình trạng một gói tin bị quNn trên mạng. Thời gian này được cho bởi 
trạm gửi và được giảm đi (thường qui ước là 1 đơn vị) khi datagram đi qua mỗi router 
của liên mạng. Thời lượng này giảm xuống tại mỗi router với mục đích giới hạn thời 
gian tồn tại của các gói tin và kết thúc những lần lặp lại vô hạn trên mạng. Sau đây là 
1 số điều cần lưu ý về trường Time To Live: 
N út trung gian của mạng không được gởi 1 gói tin mà trường này có giá trị= 
0. 
Một giao thức có thể ấn định Time To Live để thực hiện cuộc ra tìm tài 
nguyên trên mạng trong phạm vi mở rộng. 
Một giá trị cố định tối thiểu phải đủ lớn cho mạng hoạt động tốt. 
Protocol (8 bits): chỉ giao thức tầng trên kế tiếp sẽ nhận vùng dữ liệu ở trạm đích 
(hiện tại thường là TCP hoặc UDP được cài đặt trên IP). Ví dụ: TCP có giá trị trường 
Protocol là 6, UDP có giá trị trường Protocol là 17 
Header Checksum (16 bits): Mã kiểm soát lỗi của header gói tin IP. 
Source Address (32 bits): Địa chỉ của máy nguồn. 
Destination Address (32 bits): địa chỉ của máy đích 
Options (độ dài thay đổi): khai báo các lựa chọn do người gửi yêu cầu (tuỳ theo từng 
chương trình). 
Padding (độ dài thay đổi): Vùng đệm, được dùng để đảm bảo cho phần header luôn 
kết thúc ở một mốc 32 bits. 
Data (độ dài thay đổi): Trên một mạng cục bộ như vậy, hai trạm chỉ có thể liên lạc 
với nhau nếu chúng biết địa chỉ vật lý của nhau. N hư vậy vấn đề đặt ra là phải thực 
hiện ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý (48 bits) của một trạm. 
6.6.2. Các giao thức trong mạng IP 
Để mạng với giao thức IP hoạt động được tốt người ta cần một số giao thức bổ sung, các giao 
thức này đều không phải là bộ phận của giao thức IP và giao thức IP sẽ dùng đến chúng khi 
cần. 
Giao thức ARP (Address Resolution Protocol): Ở đây cần lưu ý rằng các địa chỉ IP 
được dùng để định danh các host và mạng ở tầng mạng của mô hình OSI, và chúng 
không phải là các địa chỉ vật lý (hay địa chỉ MAC) của các trạm trên đó một mạng cục 
bộ (Ethernet, Token Ring.). Trên một mạng cục bộ hai trạm chỉ có thể liên lạc với 
nhau nếu chúng biết địa chỉ vật lý của nhau. N hư vậy vấn đề đặt ra là phải tìm được 
ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý của một trạm. Giao thức ARP đã được 
xây dựng để tìm địa chỉ vật lý từ địa chỉ IP khi cần thiết. 
Giao thức RARP (Reverse Address Resolution Protocol): Là giao thức ngược với 
giao thức ARP. Giao thức RARP được dùng để tìm địa chỉ IP từ địa chỉ vật lý. 
Giao thức ICMP (Internet Control Message Protocol): Giao thức này thực hiện 
truyền các thông báo điều khiển (báo cáo về các tình trạng các lỗi trên mạng.) giữa các 
gateway hoặc một nút của liên mạng. Tình trạng lỗi có thể là: một gói tin IP không thể 
tới đích của nó, hoặc một router không đủ bộ nhớ đệm để lưu và chuyển một gói tin 
IP, Một thông báo ICMP được tạo và chuyển cho IP. IP sẽ "bọc" (encapsulate) thông 
báo đó với một IP header và truyền đến cho router hoặc trạm đích. 
6.6.3. Các bước hoạt động của giao thức IP 
Khi giao thức IP được khởi động nó trở thành một thực thể tồn tại trong máy tính và bắt đầu 
thực hiện những chức năng của mình, lúc đó thực thể IP là cấu thành của tầng mạng, nhận yêu 
cầu từ các tầng trên nó và gửi yêu cầu xuống các tầng dưới nó. 
Đối với thực thể IP ở máy nguồn, khi nhận được một yêu cầu gửi từ tầng trên, nó thực hiện 
các bước sau đây: 
Tạo một IP datagram dựa trên tham số nhận được. 
Tính checksum và ghép vào header của gói tin. 
Ra quyết định chọn đường: hoặc là trạm đích nằm trên cùng mạng hoặc một gateway 
sẽ được chọn cho chặng tiếp theo. 
Chuyển gói tin xuống tầng dưới để truyền qua mạng. 
Đối với router, khi nhận được một gói tin đi qua, nó thực hiện các động tác sau: 
1) Tính chesksum, nếu sai thì loại bỏ gói tin. 
2) Giảm giá trị tham số Time - to Live. nếu thời gian đã hết thì loại bỏ gói tin. 
3) Ra quyết định chọn đường. 
4) Phân đoạn gói tin, nếu cần. 
5) Kiến tạo lại IP header, bao gồm giá trị mới của các vùng Time - to -Live, 
Fragmentation và Checksum. 
6) Chuyển datagram xuống tầng dưới để chuyển qua mạng. 
Cuối cùng khi một datagram nhận bởi một thực thể IP ở trạm đích, nó sẽ thực hiện bởi các 
công việc sau: 
1) Tính checksum. N ếu sai thì loại bỏ gói tin. 
2) Tập hợp các đoạn của gói tin (nếu có phân đoạn) 
3) Chuyển dữ liệu và các tham số điều khiển lên tầng trên. 
6.7. Giao thức điều khiển truyền dữ liệu TCP 
TCP là một giao thức "có liên kết" (connection - oriented), nghĩa là cần phải thiết lập liên kết 
giữa hai thực thể TCP trước khi chúng trao đổi dữ liệu với nhau. Một tiến trình ứng dụng 
trong một máy tính truy nhập vào các dịch vụ của giao thức TCP thông qua một cổng (port) 
của TCP. Số hiệu cổng TCP được thể hiện bởi 2 bytes. 
Hình 6.7: Cổng truy nhập dịch vụ TCP 
Một cổng TCP kết hợp với địa chỉ IP tạo thành một đầu nối TCP/IP (socket) duy nhất trong 
liên mạng. Dịch vụ TCP được cung cấp nhờ một liên kết logic giữa một cặp đầu nối TCP/IP. 
Một đầu nối TCP/IP có thể tham gia nhiều liên kết với các đầu nối TCP/IP ở xa khác nhau. 
Trước khi truyền dữ liệu giữa 2 trạm cần phải thiết lập một liên kết TCP giữa chúng và khi 
không còn nhu cầu truyền dữ liệu thì liên kết đó sẽ được giải phóng. 
Các thực thể của tầng trên sử dụng giao thức TCP thông qua các hàm gọi (function calls) 
trong đó có các hàm yêu cầu để yêu cầu, để trả lời. Trong mỗi hàm còn có các tham số dành 
cho việc trao đổi dữ liệu. 
Các bước thực hiện để thiết lập một liên kết TCP/IP: Thiết lập một liên kết mới có 
thể được mở theo một trong 2 phương thức: chủ động (active) hoặc bị động (passive). 
Phương thức bị động, người sử dụng yêu cầu TCP chờ đợi một yêu cầu liên 
kết gửi đến từ xa thông qua một đầu nối TCP/IP (tại chỗ). N gười sử dụng dùng 
hàm passive Open có khai báo cổng TCP và các thông số khác (mức ưu tiên, 
mức an toàn) 
Với phương thức chủ động, người sử dụng yêu cầu TCP mở một liên kết với 
một một đầu nối TCP/IP ở xa. Liên kết sẽ được xác lập nếu có một hàm 
Passive Open tương ứng đã được thực hiện tại đầu nối TCP/IP ở xa đó. 
Bảng liệt kê một vài cổng TCP phổ biến. 
Số hiệu cổng Mô tả 
0 Reserved 
5 Remote job entry 
7 Echo 
9 Discard 
11 Systat 
13 Daytime 
15 N estat 
17 Quotd (quote odd day 
20 ftp-data 
21 ftp (control) 
23 Telnet 
25 SMTP 
37 Time 
53 N ame Server 
102 ISO - TSAP 
103 X.400 
104 X.400 Sending 
111 Sun RPC 
139 N et BIOS Session source 
160 - 223 Reserved 
Khi người sử dụng gửi đi một yêu cầu mở liên kết sẽ được nhận hai thông số trả lời từ TCP. 
Thông số Open ID được TCP trả lời ngay lập tức để gán cho một liên kết cục bộ 
(local connection name) cho liên kết được yêu cầu. Thông số này về sau được dùng để 
tham chiếu tới liên kết đó. (Trong trường hợp nếu TCP không thể thiết lập được liên 
kết yêu cầu thì nó phải gửi tham số Open Failure để thông báo.) 
Khi TCP thiết lập được liên kết yêu cầu nó gửi tham số Open Sucsess được dùng để 
thông báo liên kết đã được thiết lập thành công. Thông báo này dược chuyển đến trong 
cả hai trường hợp bị động và chủ động. Sau khi một liên kết được mở, việc truyền dữ 
liệu trên liên kết có thể được thực hiện. 
Các bước thực hiện khi truyền và nhận dữ liệu: Sau khi xác lập được liên kết người 
sữ dụng gửi và nhận dữ liệu. Việc gửi và nhận dữ liệu thông qua các hàm Send và 
receive. 
Hàm Send: Dữ liệu được gửi xuống TCP theo các khối (block). Khi nhận 
được một khối dữ liệu, TCP sẽ lưu trữ trong bộ đệm (buffer). N ếu cờ PUSH 
được dựng thì toàn bộ dữ liệu trong bộ đệm được gửi, kể cả khối dữ liệu mới 
đến sẽ được gửi đi. N gược lại cờ PUSH không được dựng thì dữ liệu được giữ 
lại trong bộ đệm và sẽ gửi đi khi có cơ hội thích hợp (chẳng hạn chờ thêm dữ 
liệu nữa để gữi đi với hiệu quả hơn). 
Hàm reveive: Ở trạm đích dữ liệu sẽ được TCP lưu trong bộ đệm gắn với mỗi 
liên kết. N ếu dữ liệu được đánh dấu với một cờ PUSH thì toàn bộ dữ liệu trong 
bộ đệm (kể cả các dữ liệu được lưu từ trước) sẽ được chuyển lên cho người sữ 
dụng. Còn nếu dữ liệu đến không được đánh dấu với cờ PUSH thì TCP chờ tới 
khi thích hợp mới chuyển dữ liệu với mục tiêu tăng hiệu quả hệ thống. 
N ói chung việc nhận và giao dữ liệu cho người sử dụng đích của TCP phụ thuộc vào việc cài 
đặt cụ thể. Trường hợp cần chuyển gấp dữ liệu cho người sử dụng thì có thể dùng cờ 
URGEN T và đánh dấu dữ liệu bằng bit URG để báo cho người sử dụng cần phải sử lý khNn 
cấp dữ liệu đó. 
Các bước thực hiện khi đóng một liên kết: Việc đóng một liên kết khi không cần 
thiết được thực hiên theo một trong hai cách: dùng hàm Close hoặc dùng hàm Abort. 
Hàm Close: yêu cầu đóng liên kết một cách bình thường. Có nghĩa là việc 
truyền dữ liệu trên liên kết đó đã hoàn tất. Khi nhận được một hàm Close TCP 
sẽ truyền đi tất cả dữ liệu còn trong bộ đệm thông báo rằng nó đóng liên kết. 
Lưu ý rằng khi một người sử dụng đã gửi đi một hàm Close thì nó vẫn phải 
tiếp tục nhận dữ liệu đến trên liên kết đó cho đến khi TCP đã báo cho phía bên 
kia biết về việc đóng liên kết và chuyển giao hết tất cả dữ liệu cho người sử 
dụng của mình. 
Hàm Abort: N gười sử dụng có thể đóng một liên kết bất và sẽ không chấp 
nhận dữ liệu qua liên kết đó nữa. Do vậy dữ liệu có thể bị mất đi khi đang 
được truyền đi. TCP báo cho TCP ở xa biết rằng liên kết đã được hủy bỏ và 
TCP ở xa sẽ thông báo cho người sử dụng cũa mình. 
Một số hàm khác của TCP: 
Hàm Status: cho phép người sử dụng yêu cầu cho biết trạng thái của một liên 
kết cụ thể, khi đó TCP cung cấp thông tin cho người sử dụng. 
Hàm Error: thông báo cho người sử dụng TCP về các yêu cầu dịch vụ bất 
hợp lệ liên quan đến một liên kết có tên cho trước hoặc về các lỗi liên quan đến 
môi trường. 
Đơn vị dữ liệu sử dụng trong TCP được gọi là segment (đoạn dữ liệu), có các tham số với ý 
nghĩa như sau: 
Hình 7.5: Dạng thức của segment TCP 
Source Por (16 bits): Số hiệu cổng TCP của trạm nguồn. 
Destination Port (16 bit): Số hiệu cổng TCP của trạm đích. 
Sequence N umber (32 bit): số hiệu của byte đầu tiên của segment trừ khi bit SYN 
được thiết lập. N ếy bit SYN được thiết lập thì Sequence N umber là số hiệu tuần tự 
khởi đầu (ISN ) và byte dữ liệu đầu tiên là ISN +1. 
Acknowledgment N umber (32 bit): số hiệu của segment tiếp theo mà trạm nguồn 
đang chờ để nhận. N gầm ý báo nhận tốt (các) segment mà trạm đích đã gửi cho trạm 
nguồn. 
Data offset (4 bit): số lượng bội của 32 bit (32 bit words) trong TCP header (tham số 
này chỉ ra vị trí bắt đầu của nguồn dữ liệu). 
Reserved (6 bit): dành để dùng trong tương lai 
Control bit (các bit điều khiển): 
URG: Vùng con trỏ khNn (Ucgent Poiter) có hiệu lực. 
ACK: Vùng báo nhận (ACK number) có hiệu lực. 
PSH: Chức năng PUSH. 
RST: Khởi động lại (reset) liên kết. 
SYN : Đồng bộ hóa số hiệu tuần tự (sequence number). 
FIN : Không còn dữ liệu từ trạm nguồn. 
Window (16 bit): cấp phát credit để kiểm soát nguồn dữ liệu (cơ chế cửa sổ). Đây 
chính là số lượng các byte dữ liệu, bắt đầu từ byte được chỉ ra trong vùng ACK 
number, mà trạm nguồn đã saün sàng để nhận. 
Checksum (16 bit): mã kiểm soát lỗi cho toàn bộ segment (header + data) 
Urgemt Poiter (16 bit): con trỏ này trỏ tới số hiệu tuần tự của byte đi theo sau dữ liệu 
khNn. Vùng này chỉ có hiệu lực khi bit URG được thiết lập. 
Options (độ dài thay đổi): khai báo các option của TCP, trong đó có độ dài tối đa của 
vùng TCP data trong một segment. 
Paddinh (độ dài thay đổi): phần chèn thêm vào header để đảm bảo phần header luôn 
kết thúc ở một mốc 32 bit. Phần thêm này gồm toàn số 0. 
TCP data (độ dài thay đổi): chứa dữ liệu của tầng trên, có độ dài tối đa ngầm định là 
536 byte. Giá trị này có thể điều chỉnh bằng cách khai báo trong vùng options. 
6.8. Giao thức UDP (User Datagram Protocol) 
UDP (User Datagram Protocol) là giao thức theo phương thức không liên kết được sử dụng 
thay thế cho TCP ở trên IP theo yêu cầu của từng ứng dụng. Khác với TCP, UDP không có 
các chức năng thiết lập và kết thúc liên kết. Tương tự như IP, nó cũng không cung cấp cơ chế 
báo nhận (acknowledgment), không sắp xếp tuần tự các gói tin (datagram) đến và có thể dẫn 
đến tình trạng mất hoặc trùng dữ liệu mà không có cơ chế thông báo lỗi cho người gửi. Qua 
đó ta thấy UDP cung cấp các dịch vụ vận chuyển không tin cậy như trong TCP. 
Khuôn dạng UDP datagram được mô tả với các vùng tham số đơn giản hơn nhiều so với TCP 
segment. 
Hình 6.8: Dạng thức của gói tin UDP 
UDP cũng cung cấp cơ chế gán và quản lý các số hiệu cổng (port number) để định danh duy 
nhất cho các ứng dụng chạy trên một trạm của mạng. Do ít chức năng phức tạp nên UDP 
thường có xu thế hoạt động nhanh hơn so với TCP. N ó thường được dùng cho các ứng không 
đòi hỏi độ tin cậy cao trong giao vận. 
− Window size (16 bits) : cấp phát thẻ để kiểm soát luồng dữ liệu (cơ chế 
cửa sổ trượt). Đây chính là số lượng các byte dữ liệu bắt đầu từ byte được 
chỉ ra trong vùng ACK number mà trạm nguồn sẫn sàng nhận. 
− Checksum (16 bits). Mã kiểm soát lỗi cho toàn bộ segment cả phần header 
và dữ liệu. 
− Urgent Pointer (16 bits). Con trỏ trỏ tới số hiệu tuần tự của byte cuối cùng 
trong dòng dữ liệu khNn cho phép bên nhận biết được độ dài của dữ liệu 
khNn. Vùng này chỉ có hiệu lực khi bit URG được thiết lập. 
− Option (độ dài thay đổi ). Khai báo các tuỳ chọn của TCP trong đó thông 
thường là kích thước cực đại của 1 segment: MSS (Maximum Segment 
Size). 
− TCP data (độ dài thay đổi ). Chứa dữ liệu của tầng ứng dụng có độ dài 
ngầm định là 536 byte . Giá trị này có thể điều chỉnh được bằng cách khai 
báo trong vùng Option. 
TÀI LIỆU THAM KHẢO 
[1] Cisco Certification Network Associate - Semester 1 (CCNA1) - Cisco press. 
[2] NguyÔn Thóc H¶i, M¹ng m¸y tÝnh vμ hÖ thèng më, NXB Gi¸o dôc, 1997. 
[3] NguyÔn Gia HiÓu, M¹ng m¸y tÝnh, NXB Thèng kª, 1999. 
            Các file đính kèm theo tài liệu này:
 Bai_giang_Mang_May_Tinh_CD_DH_HCDH_KS2 _1_.pdf Bai_giang_Mang_May_Tinh_CD_DH_HCDH_KS2 _1_.pdf