GIAO THỨC THÔNG TIN ĐỊNH TUYẾN RIP, OSPF TRONG MẠNG IP
Trang 1MỤC LỤC
MỤC LỤC
THUẬT NGỮ VIẾT TẮT
LỜI NÓI ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ MẠNG IP 3
1.1 MÔ HÌNH THAM CHIẾU OSI 3
1.1.1 CHỨC NĂNG CÁC TẦNG TRONG MÔ HÌNH OSI 4
1.1.2 CÁC GIAO THỨC CHUẨN CỦA MÔ HÌNH OSI 5
1.1.3 PHƯƠNG THỨC HOẠT ĐỘNG CỦA CÁC TẦNG TRONG MÔ HÌNH OSI 7
1.1.4 TRUYỀN DỮ LIỆU TRONG MÔ HÌNH OSI 8
1.2 BỘ GIAO THỨC TCP/IP 9
1.2.1 SỰ THÚC ĐẨY CHO VIỆC RA ĐỜI CỦA TCP/IP 9
1.2.2 CẤU TRÚC PHÂN LỚP CỦA TCP/IP 10
1.3 SO SÁNH HAI MÔ HÌNH TCP/IP VÀ MÔ HÌNH OSI 13
1.4 PHÂN LOẠI MẠNG IP 14
1.5 GIAO THỨC IP 15
1.5.1 TỔNG QUAN VỀ GIAO THỨC IP 15
1.5.2 CÁC CHỨC NĂNG CỦA IP 16
1.5.3 GIAO DIỆN VỚI CÁC GIAO THỨC Ở LỚP TRÊN VÀ LỚP DƯỚI 16
1.5.4 ĐỊA CHỈ IP 17
1.5.5 CÁC PHƯƠNG PHÁP GÁN ĐỊA CHỈ IP 28
1.5.6 THỨ TỰ BYTE VÀ ĐỊA CHỈ IP 29
1.5.7 CẤU TRÚC GÓI DỮ LIỆU IP 29
1.5.8 ĐÓNG GÓI DỮ LIỆU 33
1.5.9 PHÂN MẢNH VÀ HỢP NHẤT CÁC GÓI IP 34
1.5.10 ĐIỀU KHIỂN QUÁ TRÌNH PHÂN ĐOẠN 38
1.6 ĐỊNH TUYẾN IP 39
1.6.1 CÁC ĐẶC TÍNH CỦA ĐỊNH TUYẾN IP 39
1.6.2 XỬ LÝ TẠI LỚP IP 41
1.6.3 KHỞI TẠO BẢNG ĐỊNH TUYẾN 42
1.6.4 THÔNG BÁO LỖI TÁI ĐỊNH TUYẾN ICMP 43
1.6.5 CÁC BẢN TIN KHÁM PHÁ ROUTER ICMP 44
1.7 IPV6 45
1.8 CÁC GIAO THỨC KHÁC CỦA LỚP INTERNET 48
1.8.1GIAO THỨC PHÂN GIẢI ĐỊA CHỈ ARP 49
1.8.2 GIAO THỨC PHÂN GIẢI ĐỊA CHỈ NGƯỢC RARP 53
1.8.3 GIAO THỨC BẢN TIN ĐIỀU KHIỂN LIÊN MẠNG ICMP 53
1.9CÁC CƠ CHẾ TRUYỀN TẢI 57
KẾT LUẬN 58
CHƯƠNG 2 KĨ THUẬT ĐỊNH TUYẾN TRONG MẠNG IP 60
2.1 KHÁI NIỆM VỀ ĐỊNH TUYẾN 60
2.2 CÁC PHƯƠNG PHÁP ĐỊNH TUYẾN 62
2.2.1 ĐỊNH TUYẾN TĨNH 62
2.2.2 ĐỊNH TUYẾN ĐỘNG 63
Trang 22.3 CÁC THUẬT TOÁN CHỌN ĐƯỜNG 65
2.3.1 GIỚI THIỆU 65
2.3.2 THUẬT TOÁN TÌM ĐƯỜNG NGẮN NHẤT 67
2.3.3 THUẬT TOÁN DIJKSTRA 70
2.3.4 THUẬT TOÁN BELLMAN-FORD 71
2.4 CÁC LOẠI GIAO THỨC ĐỊNH TUYẾN 74
2.4.1 ĐỊNH TUYẾN THEO VEC-TƠ KHOẢNG CÁCH 74
2.4.2 ĐỊNH TUYẾN THEO TRẠNG THÁI LIÊN KẾT 78
2.4.3 GIAO THỨC ĐỊNH TUYẾN LAI GHÉP 85
KẾT LUẬN 85
CHƯƠNG 3 GIAO THỨC THÔNG TIN ĐỊNH TUYẾN RIP 87
3.1 MỘT SỐ KHÁI NIỆM CƠ BẢN 87
3.1.1 BỘ ĐỊNH TUYẾN 87
3.1.2 HỆ THỐNG TỰ TRỊ - AS ( AUTONOMOUS SYSTEM ) 87
3.2 GIAO THỨC THÔNG TIN ĐỊNH TUYẾN RIP 89
3.2.1 CÁC LOẠI GÓI RIP 90
3.2.2 ĐỊNH DẠNG CÁC GÓI TIN RIP 90
3.2.3 CÁC MODE HOẠT ĐỘNG CỦA RIP 91
3.2.4 TÍNH TOÁN CÁC VEC-TƠ KHOẢNG CÁCH 91
3.2.5 HẠN CHẾ CỦA RIP 92
3.2.6 GIAO THỨC THÔNG TIN ĐỊNH TUYẾN PHIÊN BẢN 2 (RIP-2) 93
3.2.7 RIP THẾ HỆ KẾ TIẾP CHO IPV6 94
KẾT LUẬN 97
CHƯƠNG 4 GIAO THỨC OSPF 99
4.1 GIỚI THIỆU 99
4.2 MỘT SỐ KHÁI NIỆM DÙNG TRONG OSPF 99
4.3 PHÂN PHÁT CÁC LSA 102
4.3 CÁC KIỂU GÓI TIN OSPF 103
4.4 TRAO ĐỔI THÔNG TIN GIỮA CÁC NODE LÂN CẬN 104
4.5 TRẠNG THÁI CỦA ROUTER LÂN CẬN - CÁC SỰ KIỆN 105
4.6 BẢNG ĐỊNH TUYẾN , TÌM ĐƯỜNG THEO BẢNG ĐỊNH TUYẾN 105
KẾT LUẬN 107
KẾT LUẬN CHUNG 109
TÀI LIỆU THAM KHẢO
Trang 3THUẬT NGỮ VIẾT TẮT
ARP Address Resolution Protocol Giao thức phân giải địa chỉ
CIDR Classless Inter-Domain Routing Định tuyến liên miền phân lớp
DHCP Dynamic host control protocol Giao thức cấu hình trạm hoạt
động
ICMP Internet Control Message Protocol Giao thức bản tin điều khiển liên
mạng
IETF Internet Engineering Task Force Nhóm đặc trách kỹ thuật
Internet IGMP Internet Group Management Protocol Giao thức quản trị nhóm liên
mạng
Trang 4LSA Link State Advertisement Thông báo trạng thái liên kết
RIP Routing Information Protocol Giao thức thông tin định tuyến
RARP Reverse Address Resolution Protocol Giao thức phân giải địa chỉ
ngược
SMTP Simple mail transfer protocol Giao thức truyền thư đơn giản
TFTP Trivial file transfer protocol Giao thức truyền tệp thông
thường TCP Transmission Control Protocol Giao thức điều khiển truyền dẫn
VLSM Variable-Length Subnet Masks Mặt nạ mạng con có độ dài biến
đổi
Trang 5LỜI NÓI ĐẦU
Từ nhu cầu của cuộc sống con người, Viễn thông ra đời như là một sự tất yếu.Với
sự phát triển liên tục và mạnh mẽ, Viễn thông đã , đang và sẽ đáp ứng nhu cầu ngày càng
cao của cuộc sống, đem lại những lợi ích thiết thực, những dịch vụ mới đa dạng và phong
phú
Mạng IP và các ứng dụng công nghệ IP với nhiều ưu điểm như tính linh hoạt, khả
năng mở rộng dễ dàng, hiệu quả sử dụng cao,…đang chiếm ưu thế trên thị trường Viễn
thông thế giới và ở Việt Nam quá trình IP hoá cũng đang phát triển rất nhanh chóng
Đứng trước tình hình đó, việc nghiên cứu, tìm hiểu mạng IP và các ứng dụng của nó là rất
cần thiết.Nhưng điều này cũng đòi hỏi phải tốn nhiều thời gian và công sức vì có rất
nhiều vấn đề cần nghiên cứu Trong tài liệu này chúng ta sẽ tìm hiểu một vấn đề của định
tuyến trong mạng IP
Định tuyến là một chức năng không thể thiếu trong bất kỳ mạng viễn thông nào
Mục đích của định tuyến là chuyển thông tin từ một điểm trong mạng (nguồn) tới một
hoặc nhiều điểm khác (đích) Mỗi khi thực hiện thiết kế, xây dựng một mạng mới, hay cải
tiến một mạng đã có, người thiết kế mạng phải đặc biệt quan tâm tới vấn đề định tuyến,
bởi hoạt động của một mạng có hiệu quả hay không, chất lượng của các dịch vụ cung cấp
trên mạng có thoả mãn được yêu cầu của người sử dụng mạng hay không phụ thuộc rất
nhiều vào việc định tuyến trong mạng đó
Trải qua một quá trình phát triển mạnh, rất nhiều phương pháp, kỹ thuật định tuyến
đã được đưa ra Nghiên cứu về các kỹ thuật định tuyến là một lĩnh vực nghiên cứu rất
rộng lớn bởi mỗi mạng cần có một chiến lược định tuyến cho riêng mình, phù hợp với
mục đích truyền dẫn, phù hợp với công nghệ mạng, phù hợp với yêu cầu của những người
sử dụng mạng để trao đổi thông tin Không thể áp đặt hoàn toàn một chiến lược định
tuyến của một mạng lên một mạng khác Do đó, đối với người thiết kế mạng, khi xác định
kỹ thuật định tuyến để sử dụng trong một mạng mới, cần phải nắm được những điều cơ
bản về định tuyến Bên cạnh đó, cần phải biết kỹ thuật định tuyến được sử dụng trong
một số mạng có đặc điểm tương tự, Từ đó, có thể định ra được chiến lược định tuyến
thích hợp cho mạng của mình Đối với những người nghiên cứu mạng, kỹ thuật định
tuyến trong mạng là một điều rất đáng quan tâm
Kĩ thuật định tuyến trong mạng IP gồm kĩ thuật định tuyến nội (định tuyến trong)
và kĩ thuật định tuyến ngoại (định tuyến ngoài ), trong đó các giao thức định tuyến là nền
tảng của các kỹ thuật định tuyến Đồ án tốt nghiệp “ Các giao thức định tuyến cổng nội
trong mạng IP ” sẽ đưa ra kiến thức cơ bản về mạng IP , định tuyến trong mạng IP và các
giao thức định tuyến cổng nội trong mạng IP.Đồ án được xây dựng nhằm mục đích tự tìm
hiểu, trang bị thêm kiến thức cơ bản, nâng cao hiểu biết cho người viết, củng cố nền tảng
cho quá trình công tác, nghiên cứu mạng sau này Đồng thời, nếu có thể, làm một tài liệu
tham khảo cho những người quan tâm
Trang 6Đồ án được xây dựng gồm 4 chương :
Chương 1-Tổng quan về mạng IP: Cung cấp một cái nhìn tổng quan về mạng IP và
nh ững khái niệm cơ bản trong mạng IP
Chương 2-Kỹ thuật định tuyến trong mạng IP: Trình bày các kỹ thuật định tuyến,
các ph ương pháp định tuyến cùng một số thuật toán chọn đường trong mạng IP,…
Chương 3-Giao thức thông tin định tuyến RIP: Tìm hiểu về hệ thống tự trị, khái
ni ệm về giao thức định tuyến cổng nội và giao thức định tuyến cổng ngoại trong mạng
IP M ục đích của chương này là trình bày về giao thức định tuyến cổng nội trong
m ạng IP sử dụng định tuyến theo vectơ khoảng cách, đó là giao thức RIP
Chương 4-Giao thức OSPF: Trình bày về giao thức định tuyến cổng nội trong mạng
IP s ử dụng định tuyến theo trạng thái liên kết, đó là giao thức OSPF
Như đã nói ở trên, tìm hiểu về mạng IP cần phải tốn nhiều thời gian và công
sức.Trong quỹ thời gian ít ỏi cộng với kiến thức còn hạn chế nên em chỉ trình bày được
một cái nhìn tổng quan cùng một vấn đề nhỏ về định tuyến trong mạng IP Và tất nhiên
sai sót là điều khó tránh khỏi Bởi vậy, em mong nhận được sự chỉ bảo của các thầy, các
cô, cùng các bạn để có thể sửa chữa, nâng cao hiểu biết của mình
Em xin cảm ơn sự chỉ bảo tận tình của thầy giáo-TS NGUYỄN TIẾN BAN để em
có thể hoàn thành đồ án này.Em cũng xin cảm ơn các thầy cô và các bạn đã giúp đỡ em
trong quá trình hoàn thành đồ án
Hà nội, ngày25 tháng11 năm 2005
Sinh viên thực hiện:
PHẠM VĂN HIẾN
Trang 7
CHƯƠNG 1 TỔNG QUAN VỀ MẠNG IP 1.1 Mô hình tham chiếu OSI
Cùng với sự bùng nổ phát triển của mạng máy tính đã có những vấn đề nảy sinh
là có nhiều nhà thiết kế và mỗi nhà thiết kế tự do lựa chọn kiến trúc mạng riêng của
mình Từ đó dẫn đến tình trạng không tương thích giữa các mạng về: Phương pháp truy
nhập đường truyền khác nhau, họ giao thức khác nhau sự không tương thích đó làm
trở ngại cho quá trình tương tác giữa người dùng ở các mạng khác nhau Nhu cầu trao
đổi thông tin càng lớn thì trở ngại đó càng không thể chấp nhận được với người sử
dụng Với lý do đó tổ chức chuẩn hoá quốc tế ISO đã thành lập một tiểu ban nhằm xây
dựng một khung chuẩn về kiến trúc mạng để làm căn cứ cho các nhà thiết kế và chế tạo
các sản phẩm mạng Kết quả là năm 1984 ISO đã đưa ra mô hình tham chiếu cho việc
kết nối các hệ thống mở ( Reference Model for Open System Inter - connection) hay
gọn hơn là OSI Reference model Mô hình này được dùng làm cơ sở để kết nối các hệ
thống mở
ISO sử dụng phương pháp phân tích các hệ thống mở theo kiến trúc phân tầng và
đã công bố mô hình OSI cho việc kết nối các hệ thống mở gồm 7 tầng
Các nguyên lý được áp dụng cho 7 tầng như sau:
♦ Một lớp cần thiết phải tạo ở mức độ khác nhau của khái niệm trừu tượng
♦ Mỗi lớp phải thực hiện một chức năng xác định rõ ràng
♦ Chức năng của mỗi lớp phải được chọn theo quan điểm hướng tới các giao thức
chuẩn quốc tế đã được định nghĩa
ApplicationPresentationSessionTransportNetworkData LinkPhysical
ApplicationPresentationSessionTransportNetworkData LinkPhysical
H×nh 1 1 Mô hình OSI 7 tầng
Trang 8♦ Ranh giới giữa các lớp phải được chọn để tối thiểu luồng thông tin đi qua các giao
diện
♦ Số các lớp phải đủ lớn để phân biệt các chức năng cần thiết nhưng không đưa vào
cùng một lớp quá nhiều chức năng, và phải đủ nhỏ để kiến trúc không rắc rối
Ưu điểm của quá trình phân lớp chức năng khi xây dựng mô hình OSI
♦ Tách hoạt động thông tin mạng thành các phần nhỏ hơn, đơn giản hơn
♦ Chuẩn hoá các thực thể chức năng của mạng
♦ Cho phép các lớp chức năng phát triển một cách độc lập mà không ảnh hưởng tới
toàn cục
♦ Tạo ra sự dễ hiểu trong quá trình xây dựng, nghiên cứu giao thức
1.1.1 Chức năng các tầng trong mô hình OSI
Tầng Chức năng
1 Vật lý Cung cấp phương tiện truyền tin, thủ tục, khởi động duy trì, huỷ
bỏ các liên kết vật lý, cho phép truyền dữ liệu ở dạng bit Truy nhập đường truyền vật lý nhờ các phương tiện: Cơ, điện, hàm, thủ tục
4 Tầng
giao vận
Thực hiện việc truyền dữ liệu giữa hai đầu nút (end- to- end), kiểm soát lỗi và kiểm tra việc truyền dữ liệu giữa hai đầu nút Có thể thực hiện việc ghép kênh (Multiplxing), cắt hợp dữ liệu nếu cần
7 ứng dụng Là giao diện giữa người sử dụng và môi trường OSI,đồng thời
cung cấp các dịch vụ thông tin phân tán
H×nh 1.2 Chøc n¨ng c¸c tÇng trong m« h×nh OSI
Trang 91.1.2 Các giao thức chuẩn của mô hình OSI
Vấn đề đặt ra ở đây là hai hệ thống máy tính khác nhau có thể giao tiếp được với
nhau hay không? Ta thấy rằng mô hình OSI có thể tạo ra giải pháp để cho phép hai hệ
thống dù khác nhau thế nào đi nữa đều có thể truyền thông được với nhau nếu chúng
đảm bảo những điều kiện sau đây:
♦ Chúng cài đặt cùng một tập các chức năng truyền thông
♦ Các chức năng đó được tổ chức thành một tầng Các tầng đồng mức phải cung cấp
các chức năng như nhau ( Phương thức cung cấp không nhất thiết giống nhau )
♦ Các tầng đồng mức phải sử dụng cùng một giao thức
Để đảm bảo những điều trên cần phải có các chuẩn Các chuẩn phải xác định các
chức năng và dịch vụ được cung cấp bởi một tầng Các chuẩn cũng phải xác định các
giao thức giữa các tầng đồng mức Mô hình OSI 7 tầng chính là cơ sở để xây dựng các
chuẩn đó
Thực thể hoạt động trong các tầng của OSI :
Theo quan niệm của OSI, trong mỗi tầng của một hệ thống có một hoặc nhiều
thực thể (entity) hoạt động Một thực thể có thể là thực thể mềm (software entity), ví dụ
như một tiến trình trong hệ thống đa xử lý, hoặc là một thực thể phần cứng (hardware
entity) ví dụ như chíp I/O thông minh Thực thể tầng 7 được gọi là thực thể ứng dụng
(Application entity); thực thể tầng 6 được gọi là thực thể trình diễn .v v
Một thực thể tầng N cài đặt dịch vụ cung cấp cho tầng N+1 Khi đó tầng N gọi là
người cung cấp dịch vụ, còn tầng N+1 gọi là người dùng dịch vụ Tầng N dùng dịch vụ
của tầng N-1 để cung cấp dịch vụ của nó Tầng N có thể đưa ra vài lớp dịch vụ, chẳng
hạn như truyền thông nhanh mà đắt và truyền thông chậm mà rẻ Các dịch vụ có sẵn tại
các nút truy cập dịch vụ ( SAP-Service Access Point ) Các SAP của tầng N ở vị trí mà
tại đó tầng N+1 có thể truy nhập dịch vụ được đưa ra Mỗi SAP có một địa chỉ và tên
duy nhất Mỗi thực thể truyền thông với thực tế của tầng trên và tầng dưới nó qua một
giao diện Giao diện này gồm một hoặc nhiều điểm truy cập dịch vụ (N-1) Entity cung
cấp dịch vụ cho một (N) entity thông qua việc gọi các hàm nguyên thuỷ (primitive)
Hàm nguyên thuỷ chỉ rõ chức năng cần thực hiện và được dùng để chuyển dữ liệu,
thông tin điều khiển Có 4 hàm nguyên thuỷ được dùng để định nghĩa tương tác giữa
các tầng liền kề nhau, nguyên lý hoạt động của chúng được mô tả qua hình sau:
Trang 10Hình 1.3 Nguyên lý hoạt động của các hàm nguyên thuỷ
Request (yêu cầu ): là hàm nguyên thuỷ mà người sử dụng dịch vụ (Service
user) dùng để gọi các chức năng
Indication (chỉ báo): là hàm nguyên thuỷ mà nhà cung cấp dịch vụ(Service
Provider ) dùng để:
♦ Gọi báo một chức năng nào đó hoặc
♦ Chỉ báo một chức năng đã được gọi ở một điểm truy cập dịch vụ (SAP)
Response (trả lời ): là hàm nguyên thuỷ mà người sử dụng dịch vụ dùng để hoàn
tất một chức năng đã được gọi từ trước bởi một hàm nguyên thuỷ Indication ở SAP đó
Confirm (xác nhận) là hàm nguyên thuỷ của nhà cung cấp dịch vụ, dùng để
hoàn tất một chức năng đã được gọi từ trước bởi hàm nguyên thuỷ Request tại SAP đó
Theo sơ đồ này quy trình thực hiện một thao tác giữa hai hệ thống A và B được
thực hiện như sau:
♦ Tầng (N+1) của A gửi xuống tầng (N) kề nó một hàm Request
Hình 1.4 Quan hệ đơn vị dữ liệu giữa các tầng kề nhau
♦ Trong hệ thống A: tầng (N+1) gửi hàm Request xuống tầng N qua SAP trên
IndicationResponse
(N)PCI
(N+1)PDU
(N)SDU (N)PDU Tầng N+1
Tầng N
Trang 11♦ Tại tầng N, kiến tạo một đơn vị dữ liệu gửi yêu cầu sang tầng N của hệ thống B
qua giao thức tầng N
♦ Trong hệ thống B: Tầng N nhận được yêu cầu đó, nó gửi lên tầng (N+1) bằng hàm
Indication qua SAP trên giao diện (N+1)/N
♦ Tầng (N+1) trả lời tầng N bằng hàm Response, qua SAP của giao diện 2 tầng
♦ Tâng N , kiến tạo một đơn vị dữ liệu gửi trả lời sang tầng N của hệ thống A qua
giao thức tầng N
♦ Nhận trả lời, tầng (N) của A gửi lên tầng (N+1) kề trên nó một hàm xác nhận
(Confirm) kết thúc một giao tác giữa hai hệ thống Các hàm nguyên thuỷ đều
được gọi đến ( hoặc gửi đi ) từ một điểm truy nhập dịch vụ (SAP) ở ranh giới 2
tầng (n+1) và (N) Đơn vị dữ liệu sử dụng trong giao thức tầng (N) ký hiệu là
PDU Giữa các tầng kề nhau các đơn vị dữ liệu có mối quan hệ như sau: một thực
thể ở tầng N không thể truyền trực tiếp đến một thực thể tầng N+1 của hệ thống
khác, mà phải đi xuống tầng thấp nhất (tầng vật lý ) trong kiến trúc phân tầng nào
đó Khi xuống đến tầng (N) thì một đơn vị dữ liệu của tầng (N) được xem như
một đơn vị dữ liệu (SDU) của tầng (N) Phần thông tin của tầng (N), gọi là (N)
SDU quá dài thì được cắt thành nhiều đoạn, mỗi đoạn kết hợp với (N) PCI vào
đầu để tạo thành nhiều (N) PDU Quá trình như vậy được chuyển xuống cho đến
tầng vật lý, ở đó dữ liệu được truyền qua đường vật lý ở hệ thống nhận, quá trình
diễn ra ngược lại Qua mỗi tầng các PCI của các đơn vị dữ liệu sẽ được phân tích
và cắt bỏ các header của các PDU trước khi gửi lên tầng trên
1.1.3 Phương thức hoạt động của các tầng trong mô hình OSI
Mỗi tầng mô hình trong tầng ISO, có hai phương thức hoạt động chính được áp
dụng đó là: phương thức hoạt động có liên kết (connection-oriented) và không có liên
kết (connectionless)
Với phương thức có liên kết, trước khi truyền dữ liệu cần thiết phải thiết lập một
liên kết logic giữa các thực thể cùng tầng Còn với phương thức không liên kết thì
không cần lập liên kết logic và mỗi đơn vị dữ liệu trước hoặc sau nó
Với phương thức có liên kết, quá trình truyền dữ liệu phải trải qua ba giai đoạn
theo thứ tự thời gian
♦ Thiết lập liên kết: hai thực thể đồng mức ở hai hệ thống thương lượng với nhau về
tập các tham số sẽ được sử dụng trong giai đoạn sau
♦ Truyền dữ liệu: dữ liệu được truyền với các cơ chế kiểm soát và quản lý
♦ Huỷ bỏ liên kết (logic): giải phóng các tài nguyên hệ thống đã cấp phát cho liên
kết để dùng cho các liên kết khác
Tương ứng với ba giai đoạn trao đổi, ba thủ tục cơ bản được sử dụng, chẳng hạn
đối với tầng N có: CONNECT ( thiết lập liên kết ), DATA(Truyền dữ liệu ), và
Trang 12N-DISCONNECT (Huỷ bỏ liên kết )Ngoài ra còn một số thủ tục phụ được sử dụng tuỳ
theo đặc điểm, chức năng của mỗi tầng Ví dụ:
♦ Thủ tục N-RESTART được sử dụng để khởi động lại hệ thống ở tầng 3
♦ Thủ tục T-EXPEDITED DATA cho việc truyền dữ liệu nhanh ở tầng 4
♦ Thủ tục S-TOKEN GIVE để chuyển điều khiển ở tầng 5
Mỗi thủ tục trên sẽ dùng các hàm nguyên thuỷ (Request, Indication, Response,
Confirm) để cấu thành các hàm cơ bản của giao thức ISO
Còn đối với phương thức không liên kết thì chỉ có duy nhất một giai đoạn đó là:
truyền dữ liệu
So sánh hai phương thức hoạt động trên chúng ta thấy rằng phương thức hoạt
động có liên kết cho phép truyền dữ liệu tin cậy, do đó có cơ chế kiểm soát và quản lý
chặt chẽ từng liên kết logic Nhưng mặt khác nó phức tạp và khó cài đặt Ngược lại,
phương thức không liên kết cho phép các PDU được truyền theo nhiều đường khác
nhau để đi đến đích, thích nghi với sự thay đổi trạng thái của mạng, song lại trả giá bởi
sự khó khăn gặp phải khi tập hợp các PDU để di chuyển tới người sử dụng Hai tầng kề
nhau có thể không nhất thiết phải sử dụng cùng một phương thức hoạt động mà có thể
dùng hai phương thức khác nhau
1.1.4 Truyền dữ liệu trong mô hình OSI
Tiến trình gửi gồm vài dữ liệu muốn gửi qua tiến trình nhận Dữ liệu đưa xuống
tầng ứng dụng, dữ liệu đó được gắn thêm tiêu đề lớp ứng dụng (AH-Application
Header) vào phía trước dữ liệu và kết quả đưa xuống cho tầng trình diễn Tầng trình
diễn có thể biến đổi mục dữ liệu này theo nhiều cách khác nhau, thêm phần header vào
đầu và đi xuống tầng phiên Quá trình này được lặp đi lặp lại cho đến khi dữ liệu đi
xuống tầng vật lý, ở đó chúng thực sự được truyền sang máy nhận ở máy nhận các
phần header khác nhau được loại bỏ từng cái một khi các thông báo truyền lên theo các
lớp cho đến khi lên tới tiến trình nhận Như vậy, việc truyền dữ liệu thực hiện theo
chiều dọc Hình 1.5 biểu diễn một mẫu sử dụng mô hình OSI có thể truyền dữ liệu như
thế nào
Giao thức lớp ứng dụng
Trang 13Hình 1.5 Ví dụ quá trình truyền dữ liệu trong mô hình OSI
1.2 Bộ giao thức TCP/IP
1.2.1 Sự thúc đẩy cho việc ra đời của TCP/IP
Giao tiếp thông tin đã trở thành nhu cầu không thể thiếu trong tất cả mọi lĩnh vực
hoạt động Mạng máy tính tính ra đời phần nào đã đáp ứng được nhu cầu đó Phạm vi
lúc đầu của các mạng bị hạn chế trong một nhóm làm việc, một cơ quan, công ty
trong một khu vực Tuy nhiên thực tế của của những nhu cầu cần trao đổi thông tin
trong nhiều lĩnh vực khác nhau, về nhiều chủ đề khác nhau, giữa các tổ chức, các cơ
quan là không có giới hạn Vì vậy nhu cầu cần kết nối các mạng khác nhau của các tổ
chức khác nhau để trao đổi thông tin là thực sự cần thiết Nhưng thật không may là hầu
hết các mạng của các công ty, các cơ quan đều là các thực thể độc lập, được thiết lập
để phục vụ nhu cầu trao đổi thông tin của bản thân các tổ chức đó Các mạng này có
thể được xây dựng từ những kĩ thuật phần cứng khác nhau để phù hợp với những vấn
đề giao tiếp thông tin của riêng họ Điều này chính là một cản trở cho việc xây dựng
một mạng chung, bởi vì sẽ không có một kĩ thuật phần cứng riêng nào đủ đáp ứng cho
việc xây dựng một mạng chung thoả mãn nhu cầu người sử dụng Người sử dụng cần
một mạng tốc độ cao để nối các máy, nhưng những mạng như vậy không thể được mở
rộng trên những khoảng cách lớn Nhu cầu về một kỹ thuật mới mà có thể kết nối được
nhiều mạng vật lý có cấu trúc khác hẳn nhau là thật sự cần thiết Nhận thức được điều
đó, trong quá trình phát triển mạng ARPANET của mình, tổ chức ARPA ( Advanced
Research Projects Agency) đã tập trung nghiên cứu nhằm đưa ra một kỹ thuật thoả mãn
những yêu cầu trên Kỹ thuật ARPA bao gồm một thiết lập của các chuẩn mạng xác
định rõ những chi tiết của việc làm thế nào để các máy tính có thể truyền thông với
nhau cũng như một sự thiết lập các quy ước cho kết nối mạng, lưu thông và chọn
đường Kỹ thuật đó được phát triển đầy đủ và được đưa ra với tên gọi chính xác là
TCP/IP Internet Protocol Suit ( bộ giao thức TCP/IP ) và thường được gọi tắt là
TCP/IP Dùng TCP/IP người ta có thể kết nối được tất cả các mạng bên trong công ty
của họ hoặc có thể kết nối giữa các mạng của các công ty, các tổ chức khác nhau, với
nhau
TCP/IP có một số đặc tính quan trọng sau:
♦ Là bộ giao thức chuẩn mở và sẵn có, vì: nó không thuộc sở hữu của bất cứ một tổ
chức nào; các đặc tả thì sẵn có và rộng rãi Vì vậy bất kì ai cũng có thể xây dựng
phần mềm truyền thông qua mạng máy tính dựa trên nó
Trang 14♦ TCP/IP độc lập với phần cứng mạng vật lý, điều này cho phép TCP/IP có thể
được dùng để kết nối nhiều loại mạng có kiến trúc vật lý khác nhau như: Ethernet,
Tokenring, FDDI, X25, ATM
♦ TCP/IP dùng địa chỉ IP để định danh các host trên mạng tạo ra một mạng ảo
thống nhất khi kết nối mạng
♦ Các giao thức lớp cao được chuẩn hoá thích hợp và sẵn có với người dùng
1.2.2 Cấu trúc phân lớp của TCP/IP
TCP/IP là mô hình mở để kết nối mạng Nó được thiết kế theo mô hình kiến trúc
phân tầng, gồm bốn lớp được mô tả như hình sau đây:
Lớp ứng dụng (Application):
Đây là lớp cao nhất trong cấu trúc phân lớp của TCP/IP Lớp này bao gồm tất cả
các chương trình ứng dụng sử dụng các dịch vụ sẵn có thông qua một TCP/IP
Internet.Các chương trình ứng dụng tương tác với một trong các giao thức của lớp
Transport để truyền hoặc nhận dữ liệu Mỗi chương trình ứng dụng lựa chọn một kiểu
giao thức thích hợp cho công việc của nó Chương trình ứng dụng chuyển dữ liệu theo
mẫu mà lớp Transport yêu cầu.Mô hình TCP/IP hướng đến tối đa độ linh hoạt tại lớp
ứng dụng cho người phát triển phần mềm Các ứng dụng ở đây bao gồm:
♦ FTP - File Transfer Protocol
♦ HTTP - Hypertext Transfer Protocol
♦ SMTP - Simple Mail Transfer Protocol
Hình 1.6 Mô hình phân lớp của TCP/IP và Sơ đồ giao thức
Trang 15♦ DNS - Domain Name System
♦ TFTP - Ttrivial File Transfer Protocol
♦ UDP - User Datagram Protocol
Lớp vận chuyển (Transport layer):
Nhiệm vụ trước tiên của lớp Transport là cung cấp sự giao tiếp thông tin giữa
các chương trình ứng dụng Mỗi sự giao tiếp được gọi là end-to-end Lớp Transport có
thể điều chỉnh lưu lượng luồng thông tin Nó cũng cung cấp một sự vận chuyển tin cậy,
hiệu suất cao, đảm bảo rằng dữ liệu đến mà không bị lỗi Để làm như vậy, phần mềm
giao thức được hỗ trợ hỗ trợ để bên nhận có thể gửi lại các thông báo xác nhận về việc
thu dữ liệu và bên gửi có thể truyền lại các gói tin bị mất hoặc bị lỗi Phần mềm giao
thức chia dòng dữ liệu ra thành những đơn vị dữ liệu nhỏ hơn (thường được gọi là các
segment) và chuyển mỗi segment cùng với địa chỉ đích tới lớp tiếp theo để tiếp tục quá
trình truyền dẫn
Mặc dù hình trên dùng một khối để biểu diễn cho lớp ứng dụng, nhưng nói
chung máy tính có thể có nhiều chương trình ứng dụng truy nhập vào Internet tại cùng
một thời điểm Lớp Transport phải chấp nhận dữ liệu từ một số chương trình ứng dụng
và gửi nó tới lớp tiếp theo thấp hơn Để làm như vậy nó thêm vào thông tin bổ sung cho
mỗi segment, gồm cả các mã định danh chương trình ứng dụng đã gửi nó và chương
trình ứng dụng sẽ nhận nó, cũng như một tổng kiểm tra Máy nhận sử dụng tổng kiểm
tra để thẩm tra gói tin đã đến, và sử dụng mã đích để định danh chương trình ứng dụng
nó được chuyển phát đến.Lớp vận chuyển liên quan đến hai giao thức TCP và UDP
Lớp Internet (Internet layer):
Mục tiêu của lớp Internet là truyền các gói từ bất kì mạng nào trên liên mạng và
đến được đích trong điều kiện độc lập với đường dẫn và các mạng mà chúng đã trải
qua.Giao thức đặc trưng khống chế lớp này là giao thức IP.Công việc xác định đường
dẫn tốt nhất và hoạt động chuyển mạch gói diễn ra tại lớp này Lớp Internet xử lý giao
tiếp thông tin từ một máy này tới một máy khác Nó chấp nhận một yêu cầu để gửi một
gói từ lớp Transport cùng với một định danh của máy đích mà gói tin sẽ được gửi tới
Nó sẽ bọc gói tin trong một IP Datagram, điền đầy đủ thông tin vào trong phần header,
sử dụng giải thuật chọn đường để quyết định là giao phát gói tin trực tiếp hay là gửi nó
tới một Router, và chuyển datagram tới giao diện phối ghép mạng thích hợp cho việc
truyền dẫn Lớp Internet cũng xử lý các Datagram đến, kiểm tra tính hợp lệ của chúng,
và sử dụng giải thuật chọn đường để quyết định là datagram sẽ được xử lý cục bộ hay là
sẽ được chuyển đi tiếp Đối với các datagram có địa chỉ đích cục bộ, thì phần mềm lớp
Internet sẽ xoá phần header của các Datagram đó, và chọn trong số các giao thức lớp
Transport một giao thức thích hợp để xử lý gói tin Trong lớp Internet còn gửi các
ICMP ( Giao thức bản tin điều khiển liên mạng ) và các bản tin điều khiển khi cần thiết
và xử lý tất cả mọi bản tin ICMP tới
Trang 16
Lớp truy nhập mạng(Network Access Layer):
Lớp thấp nhất của mô hình phân lớp TCP/IP, chịu trách nhiệm về việc chấp nhận
các IP datagram và việc truyền phát chúng trên một mạng xác định Một giao diện phối
ghép mạng có thể gồm một bộ điều khiển thiết bị (ví dụ như khi mạng là mạng cục bộ
mà máy được gắn nối trực tiếp tới) hoặc là một hệ thống con phức tạp sử dụng giao
thức Data Link của bản thân nó( ví dụ khi mạng bao gồm các chuyển mạch gói giao
tiếp với các host bằng giao thức HDLC).Lớp truy nhập mạng liên hệ đến các kĩ thuật
LAN hay WAN
Hình 1.7 Quá trình giao phát bản tin giữa hai mạng
Network Interface
Internet
Network Interface
Identical messageIdentical packetRouter R
Identical datagram
Identical datagram
Identical frame
Identical frame
Trang 17Hình 1.7 giúp ta hình dung sự hoạt động trong môi trường phân lớp của TCP/IP,
việc giao phát bản tin sử dụng hai mạng riêng biệt, một mạng cho việc truyền dẫn từ
host A tới Router R, và mạng kia truyền dẫn từ Router R tới Host B
Trong mô hình TCP/IP không cần quan tâm đến ứng dụng nào yêu cầu các dịch
vụ mạng, và không cần quan tâm đến giao thức vận chuyển nào đang được dùng, chỉ có
một giao thức mạng IP Đây là một quyết định thiết kế có cân nhắc kỹ IP phục vụ như
một giao thức đa năng cho phép bất kì máy tính nào, ở bất cứ đâu, truyền dữ liệu vào
bất cứ thời điểm nào
1.3 So sánh hai mô hình TCP/IP và mô hình OSI
Các điểm giống nhau
♦ Cả hai đều là phân lớp
♦ Cả hai đều có lớp ứng dụng và qua đó chúng có nhiều dịch vụ khác nhau
♦ Cả hai có cấc lớp mạng và lớp vận chuyển có thể so sánh được
♦ Kĩ thuật chuyễn mạch gói được chấp nhận
Các điểm khác nhau
♦ TCP/IP có các chức năng lớp phiên, trình diễn được gộp trong lớp ứng dụng
♦ TCP/IP tập hợp lớp vật lý và lớp liên kết dữ liệu trong OSI vào một lớp
♦ Có hai phân lớp (TCP và UDP)với các thuộc tính khác được tạo ra ở lớp truyền tải
cho phép phát triển các ứng dụng khác nhau với yêu cầu chất lượng dịch vu khác
nhau
♦ TCP/IP được xây dựng trên quan điểm mạng của liên mạng Định tuyến trong môi
trường này dựa vào lớp IP
♦ TCP/IP biểu hiện đơn giản hơn vì có ít lớp hơn
♦ TCP/IP không đa ra một tiêu chuẩn cụ thể về lớp điều khiển truy nhập mạng Điều
này cho phép các công nghệ lớp này phát triển một cách độc lập với các giao thức
lớp trên Đây cũng chính là động lực phát triển công nghệ mạng
♦ Các giao thức TCP/IP là các chuẩn cơ sở cho Internet phát triến,như vậy mô hình
TCP/IP chiếm được niềm tin vì các giao thức của nó
♦ Mô hình OSI chỉ là mô hình được sử dụng để tham chiếu khi xây dựng và phân
tích các họ giao thức truyền số liệu cụ thể
Trang 18
1.4 Phân loại mạng IP
Sự phát triển nhanh chóng của Internet kéo theo việc mở rộng phạm vi ứng dụng
của giao thức TCP/ IP hình thành lên các loại mạng IP như sau: mạng Internet toàn cầu,
mạng IP trong các tổ chức và doanh nghiệp còn gọi là mạng Intranet, mạng riêng ảo
dùng giao thức IP (IP VPN) Một số mạng IP bao gồm cả ba loại mạng trên Ví dụ trong
một doanh nghiệp có một số mạng LAN chạy giao thức IP trên các công nghệ như
Ethernet, TokenRing, FDDI ở các chi nhánh khác nhau Mỗi địa điểm ở xa sẽ có các
router kết nối với mạng WAN dùng IP VPN Mạng này có cổng nối ra Internet, coi như
một phần của mạng Internet toàn cầu
Các mạng Intranet là những mạng IP được quản lí (managed IP network) nghĩa
là việc truyền dữ liệu được thực hiện mau lẹ với độ trễ thấp và độ tin cậy cao bởi vì
hoạt động của doanh nghiệp phụ thuộc rất nhiều vào việc giao nhận dữ liệu kịp thời Nó
tương phản với mạng Internet trong đó độ trễ lớn và thời điểm dữ liệu đến không thể dự
doán trước được
Các công ty và tổ chức lớn, nhiều chi nhánh, có xu hướng tiến hành xây dựng
mạng riêng nhưng giá thành sẽ là quá cao Một giải pháp là xây dựng mạng riêng ảo
trên nền tảng mạng Internet công cộng chạy giao thức IP Do đó, IP VPN là một dịch
vụ mới, dự định cung cấp cho các doanh nghiệp một loại mạng IP có chất lượng tương
đương với Intranet Trong các mạng IP VPN có sự đảm bảo về độ trễ thấp, về băng
thông cũng như các tính năng bảo mật để “bắt chước” các đặc điểm của mạng Intranet
Trang 19Những sự đảm bảo này tạo lên một tính năng gọi là “đảm bảo chất lượng dịch vụ”
(QoS) QoS là sự khác nhau cơ bản chủ yếu giữa IP VPN, Intranet và Internet công
cộng
1.5 Giao thức IP
1.5.1 Tổng quan về giao thức IP
Giao thức IP có chức năng của tầng mạng trong mô hình TCP/IP Giao thức IP là
giao thức không liên kết (connectionless) , nghĩa là không có sự đảm bảo rằng các gói
tin gửi đi sẽ đến được tới đích của nó Ngoài chức năng chọn đường, chức năng quan
trọng nhất trên tầng mạng, giao thức IP còn có khả năng tìm lỗi, chia nhỏ các gói tin
và lắp ráp lại chúng, nhằm cho phép truyền thông qua các mạng có kích thước gói tin
nhỏ hơn Giao thức IP là một giao thức rất hiệu quả và được sử dụng nhiều trong các
chương trình ứng dụng
Giao thức IP được thiết kế để dùng trong các hệ thống các mạng máy tính truyền
thông chuyển mạch gói (packet-switched) Giao thức IP truyền các khối dữ liệu từ một
nguồn tới một đích trong đó nguồn và đích là các trạm máy tính được nhận dạng thông
qua các địa chỉ có độ dài cố định Giao thức IP cũng cho phép việc phân đoạn và lắp ráp
lại các gói tin IP có độ dài lớn để cho phép các gói tin này đi qua các mạng máy tính có
đơn vị gói tin nhỏ
Giao thức IP chỉ giới hạn trong việc cung cấp các chức năng cần thiết nhằm
truyền các gói bít từ nguồn tới đích trên một hệ thống mạng Không có cơ chế cho độ
tin cậy, điều khiển luồng (flow control), đánh số thứ tự (sequencing) hay cơ chế truyền
lại dữ liệu Không có cơ chế báo nhận, không có kiểm tra dữ liệu mà chỉ có kiểm tra
phần header thông qua mã kiểm tra checksum Các lỗi tìm được được thông báo thông
qua giao thức thông báo điều khiển liên mạng ICMP (Internet Control Message
Protocol)
Giao thức IP cũng cung cấp cho các giao thức tầng trên các kiểu và các chất
lượng dịch vụ khác nhau Nó dùng bốn trường cơ bản để cung cấp các dịch vụ bao gồm:
Kiểu dịch vụ, Thời gian sống, Các lựa chọn và Mã kiểm tra Checksum
♦ Kiểu dịch vụ (Type of Service) dùng để chỉ ra chất lượng phục vụ mong muốn
Các gateway có thể dùng trường này để truyền tham số và ra các quyết định chọn
đường cho các gói tin IP
♦ Thời gian sống (time to live) là thời gian cho phép một gói tin được tồn tại trong
mạng Nó được gán giá trị bởi nút gửi và sau đó được giảm dần tại mỗi nút trên
đường đi Nếu giá trị của nó bằng không trước khi nó tới được đích thì gói tin sẽ
bị hủy bỏ Điều này tránh trường hợp một gói tin bị lặp (loop) và tồn tại mãi
trong mạng
Trang 20♦ Các lựa chọn cung cấp các chức năng bổ sung trong một số tình huống như lựa
chọn bản ghi nhớ đường, nhãn thời gian Các lựa chọn ít khi được dùng trong hầu
hết các trường hợp
♦ Mã kiểm tra checksum cho phép kiểm tra đối với các thông tin trong phần header
của gói tin IP Nếu mã kiểm tra bị sai thì tức là phần header bị lỗi và gói tin sẽ bị
hủy bỏ Phần dữ liệu của gói tin không được kiểm tra bằng mã checksum và có
thể có lỗi
1.5.2 Các chức năng của IP
IP (Internet Protocol) là giao thức kết nối không liên kết Chức năng chủ yếu của
IP là cung cấp các dịch vụ Datagram và các khả năng kết nối các mạng con thành liên
mạng để truyền dữ liệu với phương thức chuyển mạch gói IP Datagram , thực hiện tiến
trình định địa chỉ và chọn đường IP Header được thêm vào đầu các gói tin và được
giao thức tầng thấp truyền theo dạng khung dữ liệu (Frame) IP định tuyến các gói tin
thông qua liên mạng bằng cách sử dụng các bảng định tuyến động tham chiếu tại mỗi
bước nhảy Xác định tuyến được tiến hành bằng cách tham khảo thông tin thiết bị mạng
vật lý & logic như ARP_giao thức phân giải địa chỉ IP thực hiện việc tháo rời và khôi
phục các gói tin theo yêu cầu kích thước được định nghĩa cho tầng dưới nó thực hiện
IP kiểm tra lỗi thông tin điều khiển, phần đầu IP bằng giá trị tổng CheckSum Tóm lại
IP là giao thức cung cấp các chức năng chính sau:
♦ Định nghĩa cấu trúc các gói dữ liệu là đơn vị cơ sở cho việc truyền dữ liệu trên
Internet
♦ Định nghĩa phương thức đánh địa chỉ IP
♦ Truyền dữ liệu giữa lớp giao vận và lớp Internet
♦ Định tuyến để chuyển các gói dữ liệu trong mạng
♦ Thực hiện việc phân mảnh và hợp nhất (Fragmentation-Reassembly) các gói dữ
liệu và nhúng/tách chúng trong các frame ở lớp truy nhập mạng
1.5.3 Giao diện với các giao thức ở lớp trên và lớp dưới
Giao thức IP gọi các giao thức ở lớp dưới, để mang các gói tin IP tới gateway
hoặc tới trạm đích Đồng thời nó cũng bị gọi bởi giao thức ở lớp trên là lớp giao vận
như giao thức TCP để truyền các đoạn dữ liệu của giao thức đó tới trạm đích Giao thức
ở tầng trên như TCP sẽ cung cấp các thông tin về địa chỉ cho giao thức IP thông qua các
tham số của lời gọi Giao thức IP sau đó sẽ tạo ra các gói tin IP, ra quyết định chọn
đường và gọi các giao thức mạng ở tầng dưới để mạng các gói tin IP này đi tới gateway
hoặc tới trạm đích
Trang 211.5.4 Địa chỉ IP
Mục đích của giao thức IP là truyền một gói tin qua một tập các mạng liên kết
với nhau Việc truyền thực hiện được bằng việc chuyển các gói tin từ một thực thể
trong liên mạng tới thực thể kia cho tới khi gói tin tới được đích Thực thể nói ở đây có
thể là một trạm máy tính hoặc một gateway Các gói tin IP được truyền từ thực thể này
tới thực thể kia nhờ vào địa chỉ liên mạng (IP Interrnet) Do đó một trong những vấn đề
quan trọng nhất của giao thức IP là địa chỉ
Địa chỉ IP bao gồm 2 phần: NET ID + HOST ID
♦ Phần NET ID cho phép định tuyến gói tin đến mạng đích trong môi trường liên
mạng
♦ Phần HOST ID cho phép định tuyến gói tin đến HOST cụ thể trong 1 mạng
♦ Phần NET ID do tổ chức ARIN (American Registry for Internet Numbers) cấp
cho các nhà quản trị mạng
♦ Phần HOST ID do nhà quản trị mạng qui hoạch cho các HOST trong mạng của
họ
Trang 22Hình 1.10 Địa chỉ IP
Địa chỉ IP bao gồm bốn vùng, mỗi vùng một byte ( một octet), chúng được biểu
diễn dưới dạng “thập phân có ngăn cách”
Người ta chia thành các lớp địa chỉ IP A,B,C,D,E Địa chỉ IP có thể được biểu
diễn dưới dạng thập phân, nhị phân hoặc thập lục phân nhưng cách biểu diễn thông
dụng nhất là cách biểu diễn bằng thập phân có dấu chấm để tách các vùng Ví dụ như
địa chỉ: 155.132.150.82
Sơ đồ địa chỉ hoá để định danh các trạm (Host) trong liên mạng được gọi là địa
chỉ IP Mục đích của địa chỉ IP là để định danh duy nhất cho một Host bất kỳ trên liên
mạng
Do tổ chức và độ lớn của các mạng con 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, E
Trang 23♦ Các giải địa chỉ lớp A, B, C được sử dụng để gán cho các phần tử môi trường liên
mạng
♦ Giải địa chỉ lớp D sử dụng vào mục đích multicast
♦ Giải địa chỉ lớp E sử dụng vào mục đích nghiên cứu
Hình 1.11 Các lớp địa chỉ IP
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, 11110 - lớp E)
♦ Địa chỉ lớp A có bit đầu tiên là “0”.Địa chỉ lớp A có subnetmask mặc định là
255.0.0.0.Dải địa chỉ lớp đầu tiên 0.0.0.0 được sử dụng vào mục đích Default
network và Default route.Dải địa chỉ cuối cùng 127.0.0.0/8 sử dụng vào mục đích
loopback.Tất cả các địa chỉ IP của lớp A dùng 8 bít đầu tiên để định danh phần
mạng của địa chỉ.Ba octet còn lại có thể dùng cho phần host của địa chỉ Mỗi
mạng dùng một địa chỉ lớp A có thể gán 224 -2 =16.777.214 địa chỉ HOST khả
dụng Các địa chỉ IP lớp A luôn có giá trị nằm trong khoảng từ 0 đến 126 trong
octet đầu tiên
Trang 24♦ Địa chỉ lớp B có 2 bit đầu tiên là “10”.Địa chỉ lớp B có subnetmask mặc định là
255.255.0.0 Tất cả các địa chỉ IP của lớp B dùng 16 bít đầu tiên để định danh
phần mạng của địa chỉ Hai octet còn lại có thể dùng cho phần host của địa chỉ
Mỗi mạng dùng một địa chỉ lớp B có thể gán 216 -2 =65.534 địa chỉ HOST khả
dụng Các địa chỉ IP lớp B luôn có giá trị nằm trong khoảng từ 128 đến 191 trong
octet đầu tiên
♦ Địa chỉ lớp C có 3 bit đầu tiên là “110”.Địa chỉ lớp C có subnetmask mặc định là
255.255.255.0 Tất cả các địa chỉ IP của lớp B dùng 24 bít đầu tiên để định danh
phần mạng của địa chỉ Octet còn lại có thể dùng cho phần host của địa chỉ Mỗi
mạng dùng một địa chỉ lớp C có thể gán 28 -2 =254 địa chỉ HOST khả dụng Các
địa chỉ IP lớp C luôn có giá trị nằm trong khoảng từ 192 đến 223 trong octet đầu
tiên
♦ Lớp D dùng để gửi IP Datagram tới một nhóm các Host trên một mạng Tất cả các
số lớn hơn 233 trong trường đầu là thuộc lớp D
♦ Lớp E dự phòng để dùng trong tương lai
Như vậy, Hình 1.11 xác định địa chỉ mạng cho lớp A: từ 1 đến 126 cho vùng
đầu tiên, 127 dùng cho địa chỉ loopback, lớp B từ 128.1.0.0 đến 191.255.0.0, lớp C từ
192.1.0.0 đến 233.255.255.0
Lớp Bit đặc
trưng
Số lượng Mạng
Số lượng Host
Biểu diễn bằng số Thập phân
♦ Loopback (Lặp ngược): 127.x.x.x , với x= 0 – 255 được gọi là các địa chỉ
loopback Bất kỳ một gói dữ liệu nào được truyền đi bởi một ứng dụng TCP/IP
đến địa chỉ IP 127.x.x.x thì gói dữ liệu đó sẽ được truyền ngược lại cho ứng dụng
đó mà không qua một thiết bị trung gian mạng Gói dữ liệu sao chép nơi truyền
đến bộ đệm nhận trên cùng một máy Địa chỉ Loopback được ứng dụng kiểm tra
nhanh phần mềm TCP/IP có được cấu hình thích hợp không
Trang 25♦ Nếu trong một địa chỉ IP, giá trị của Host chứa tất cả bit 0, đây là địa chỉ mạng
Ví dụ 137.53.0.0 là địa chỉ mạng lớp B 137.53
♦ Nếu trong một địa chỉ IP, giá trị của Host chứa tất cả bit 1, đây là địa chỉ
Broadcast có định hướng Một địa chỉ Broadcast định hướng được nhìn thấy bởi
tất cả các node trên mạng đó Ví dụ, với nhóm mạng B: 137.53.255.255 là địa
chỉ Broadcast định hướng của nhóm
♦ Địa chỉ IP 255.255.255.255 được gọi là Local Broadcast hoặc Limite Broadcast
Được sử dụng trong các mạng LAN
♦ Địa chỉ IP 0.0.0.0 sử dụng trong bảng định tuyến để trỏ vào mạng cho bộ định
tuyến mặc định (cổng giao tiếp mặc định)
Tóm lại : Có một số địa chỉ IP đặc biệt giành riêng cho InterNIC (Internetwork
Information Center) theo RFC 960:
Trong mỗi lớp địa chỉ IP có một số địa chỉ nhất định không được định tuyến trên
Internet, như mô tả chi tiết ở RFC 1597 Những địa chỉ này rất thông dụng trong phạm
vi các tổ chức Chúng cung cấp các biện pháp bảo mật nhằm ngăn chặn những kẻ xâm
nhập trái phép từ bên ngoài, giúp tránh tình trạng sơ ý đặt nhầm dữ liệu của tổ chức đó
lên mạng Những địa chỉ này là:
Trang 261.5.4.2 IP Multicast
Khái niệm về IP multicast
IP multicast là một khái niệm trừu tượng của multicast phần cứng Nó cho phép
chuyển một gói tin IP tới một nhóm các trạm Một nhóm trạm có thể bao gồm các trạm
trên nhiều mạng vật lý khác nhau Một trạm có thể là thành viên của nhiều nhóm và có
thể đăng ký tham gia một nhóm cũng như rút khỏi nhóm đó nếu như có nhu cầu Một
trạm có thể gửi các gói tin tới một nhóm trạm multicast mà không cần phải là thành
viên của nhóm đó
Mỗi một nhóm multicast có một địa chỉ multicast duy nhất thuộc lớp địa chỉ D
gọi là địa chỉ IP multicast Một số địa chỉ IP multicast được dành riêng và được gọi là
các địa chỉ IP multicast well-known Các địa chỉ IP multicast khác có thể dùng được gọi
là các nhóm địa chỉ multicast tạm thời (transient multicast groups) Các địa chỉ này
được tạo ra khi cần thiết và xóa đi nếu như số thành viên trong nhóm bằng không
Cơ chế multicast của IP có thể được dùng trong một mạng cục bộ hoặc trong liên
mạng Internet Trong trường hợp thứ hai, một gateway multicast đặc biệt được dùng để
chuyển các gói tin đi Tuy nhiên các trạm cũng không cần biết sự hiện diện của
gateway multicast Một trạm chuyển các gói tin multicast đi nhờ vào khả năng multicast
của mạng cục bộ Nếu như gateway multicast tồn tại, nó sẽ nhận các gói tin multicast và
chuyển chúng tới các mạng khác Các gateway multicast dùng các khả năng multicast
của phần cứng để chuyển các gói tin này đi tới các trạm đích multicast Trường thời
gian sống (time-to-live) của gói tin multicast cũng có ý nghĩa giống như trường thời
gian sống của gói tin IP thông thường Việc chuyển các gói tin multicast có thể dựa vào
các gateway độc lập hay dựa vào các gateway thông thường được cài đặt thêm chức
năng multicast
Địa chỉ IP multicast
Địa chỉ IP multicast gồm có bốn bít đầu là 1110, dùng để chỉ ra một địa chỉ IP là
multicast Sau đó là 28 bít chỉ ra nhóm multicast Nếu biểu diễn theo dạng dấu chấm thì
địa chỉ multicast bao gồm từ địa chỉ 224.0.0.0 tới 239.255.255.255
Địa chỉ 224.0.0.0 là dùng để dành riêng, nó không được gán cho một nhóm
multicast nào Địa chỉ 244.0.0.1 là được dùng với ý nghĩa là tất cả các trạm và gateway
có cài đặt multicast trong mạng cục bộ Không có địa chỉ multicast dùng cho tất cả các
trạm trên liên mạng Internet
Địa chỉ multicast chỉ được dùng làm địa chỉ đích, không được dùng làm địa chỉ
nguồn Nó cũng không được xuất hiện trong các lựa chọn nguồn hay bản ghi nhớ đường
của gói tin IP Cũng không có thông báo ICMP nào được dùng cho các gói tin
multicast
Ánh xạ từ địa chỉ multicast của IP sang địa chỉ multicast Ethernet
Trang 27Trong mạng cục bộ, tồn tại một khái niệm là multicast phần cứng(hardware
multicast) Phần cứng mạng hỗ trợ một dạng truyền thông nhiều điểm (multi-point) và
duy trì một tập các địa chỉ dùng cho mục đích này Khi một nhóm các trạm muốn
truyền thông cho nhau, chúng định nghĩa ra một địa chỉ multicast và cấu hình phần
cứng giao diện mạng của chúng để có thể nhận biết được địa chỉ multicast này Sau đó
tất cả các trạm trong nhóm đều có thể nhận được một bản sao của gói tin gửi tới địa chỉ
multicast này
Một trong các kiểu mạng thông dụng nhất là mạng Ethernet và mạng Ethernet
cung cấp một khả năng điển hình về multicast về phần cứng Mạng Ethernet dùng một
bít thấp trong byte cao của địa chỉ 48 bít của nó để phân biệt địa chỉ multicast với các
địa chỉ thông thường: 01.00.00.00.00.00.00
Việc ánh xạ từ địa chỉ IP sang địa chỉ Ethernet tuân theo qui tắc sau: Đặt 23 bít
thấp của địa chỉ multicast IP vào 23 bít thấp của một địa chỉ multicast Ethernet đặc biệt
là 01.00.5E.00.00.00 Ví dụ như địa chỉ multicast IP là 224.0.0.1 sẽ trở thành địa chỉ
multicast Ethernet là 01.00.5E.00.00.01
Xử lý multicast
Không phải trạm IP nào cũng có khả năng xử lý multicast Người ta chia ra
thành ba mức xử lý multicast như sau:
Mức ý nghĩa
0 Trạm không có khả năng gửi và nhận gói tin IP có địa chỉ
multicast
1 Trạm có thể gửi nhưng không có khả năng nhận các gói tin IP
với địa chỉ multicast
2 Trạm có thể gửi và nhận các gói tin IP với địa chỉ multicast
Bảng 1.2 Các mức xử lý multicast
Một trạm muốn có khả năng gửi các gói tin IP với multicast cần cho phép các
chương trình ứng dụng chỉ ra địa chỉ IP với multicast , sau đó nó phải có khả năng ánh
xạ các địa chỉ IP multicast thành các địa chỉ multicast tương ứng của phần cứng
Để có thể nhận được các gói tin IP với địa chỉ multicast, các phần mềm IP trên
các trạm cần phải thực hiện nhiều bước Đầu tiên là nó phải có một giao diện nào đó để
cho phép một chương trình ứng dụng khai báo rằng nó muốn gia nhập hay rút khỏi một
nhóm multicast nào đó Nếu có nhiều chương trình ứng dụng cùng tham gia một nhóm
thì nó phải chuyển đến cho mỗi chương trình ứng dụng một bản sao của gói tin IP của
nhóm đó Hơn nữa trạm cần phải chạy một một giao thức đặc biệt để chỉ cho gateway
Trang 28multicast cục bộ là nó là thành viên của nhóm đó Giao thức đó gọi là giao thức quản lý
nhóm liên mạng IGMP (Internet Group Management Protocol)
Để tham dự một một nhóm multicast mà bao gồm nhiều mạng khác nhau, một
trạm cần phải báo cho gateway multicast biết Gateway multicast sẽ liên lạc với các
gateway multicast khác, báo cho chúng biết về trạng thái thành viên của nó và thiết lập
các đường đi trong bảng chọn đường
1.5.4.3 Subneting
Đôi khi nhà quản trị mạng muốn chia nhỏ mạng của mình thành nhiều mạng nhỏ
hơn đặc biệt là các mạng lớn Vì khi mạng quá lớn đồng nghĩa với việc tăng miền
broadcast domain Các mạng thường có kích cỡ không bằng nhau: đôi khi chỉ có 2
HOST, đôi khi là rất nhiều Các phần chia nhỏ hơn được gọi là các mạng con
(Subnetwork) và được thực hiện đánh địa chỉ khá linh hoạt.Các mạng con được gọi
ngắn gọn là subnet Mỗi địa chỉ sub net là duy nhất và luôn được gán một cách cục bộ,
tức là luôn do người quản trị mạng quyết định
Hình 1.12 Subneting
Subnet field và Host field được tạo ra từ phần Host gốc của toàn mạng Người
quản trị mạng mượn các bít từ phần host gốc và gán chúng như là subnet field Số bit
tối thiểu có thể mượn là 2 Nếu bạn chỉ mượn 1 bit để tạo một mạng con, thì bạn chỉ có
một chỉ số mạng là mạng 0, và chỉ số quảng bá là mạng 1 Số bit tối đa có thể mượn
sao cho còn để lại ít nhất 2 bit cho chỉ số host
Việc phân chia thành các mạng con có những ưu điểm sau:
♦ Giảm kích thước miền quảng bá
♦ Làm đơn giản hơn việc quản lý mạng
♦ Xây dựng lại cấu trúc bên trong mà không làm ảnh hưởng tới các mạng ngoài
♦ Nâng cao được tính bảo mật
Subnet ID = Network ID + [ Subnet field + Host field ] ] ]
Trang 29Ví dụ: xem Hình 1.13
♦ Địa chỉ IP bộ định tuyến : 149.108.0.0
♦ Địa chỉ IP Network 1: 149.108.1.0
♦ Địa chỉ IP Network 2: 149.108.2.0
1.5.4.4 Mặt nạ mạng con (Subnet Mask)
Nhiều mạng con kết nối với nhau dùng chung một địa chỉ IP phải sử dụng bộ
định tuyến (Router) giữa chúng Bộ định tuyến phải thực hiện việc phân chia mạng con
và biết có bao nhiêu bit của vùng Host đang được sử dụng cho các mạng con, tức là nó
biết vùng địa chỉ Host được sử dụng bao nhiêu bit cho địa chỉ mạng con và phần còn
lại địa chỉ host của các mạng con Thông tin này được Router trình bày như một mặt nạ
mạng con
Mặt nạ mạng con không phải là một địa chỉ nhưng nó xác định phần địa chỉ IP
nào là network field và phần nào là host field Một subnet mask gồm 32 bit mà giá trị
của nó được tính theo quy luật sau:
♦ Các bit trong mặt nạ mạng con ứng với các bit của Network và Subnet number (
subnet field) trong địa chỉ IP chứa các bit 1
♦ Các bit trong mặt nạ mạng con ứng với các bit của Host number ( host field) trong
địa chỉ IP chứa các bit 0
Trang 30• Địa chỉ Broadcast trực tiếp = 192.55.12.127
Hình1.14 Mối quan hệ giữa mặt nạ mạng con và số lượng Host trong địa chỉ IP lớp
Trang 31Bảng 1.3 Biểu diễn mặt nạ mạng con lớp B (Mask)
Subnet Mask Byte 3 Byte 4 Subnet
number Host number
1.5.4.5 Một vài nhược điểm của địa chỉ IP
Một trong các nhược điểm chính là địa chỉ IP tham chiếu tới một nối kết chứ
không tham chiếu tới một trạm Chính vì vậy khi một máy tính được tách ra khỏi một
mạng và di chuyển sang mạng khác, nếu nối máy tính này vào mạng mới có địa chỉ IP
khác mạng cũ thì sẽ có trục trặc và phải khai báo lại địa chỉ IP cho máy
Một nhược điểm nữa liên quan đến lớp C địa chỉ IP Trong lớp này một mạng có
tối đa 255 trạm, nếu như mạng phát triển và vượt ra ngoài giới hạn này thì phải chuyển
đổi sang lớp địa chỉ khác Việc này gây ra một khó khăn và thường dẫn đến việc phải
dừng toàn bộ mạng, đổi địa chỉ của tất cả các trạm trong mạng
Nhược điểm thứ ba liên quan đến việc định tuyến Địa chỉ IP được dùng chủ yếu
trong việc định tuyến Các gateway sẽ dùng địa chỉ IP để thực hiện các quyết định định
tuyến cho các gói tin IP Như ta đã biết một trạm mà có hai nối kết sẽ có hai địa chỉ IP
Do đó đường đi của gói tin IP trong mạng sẽ phụ thuộc vào địa chỉ IP Có thể với địa
chỉ IP này gói tin sẽ tới được đích, còn với địa chỉ IP kia thì không Việc này là không
Trang 32thuận tiện vì ta thường mong muốn rằng một trạm, một thực thể duy nhất, cần phải
được nhận dạng duy nhất
Ta hãy xem ví dụ được chỉ ra trong Hình 1.15
Trong Hình 1.15 trạm A và trạm B cùng nối với mạng 1 Chúng có thể truyền
thông tin cho nhau trực tiếp qua mạng 1 Trạm A gửi dữ liệu tới trạm B có thể thông
qua địa chỉ I4 Ngoài ra trạm A cũng có thể gửi dữ liệu tới B thông qua gateway G và
dùng địa chỉ I5 Giả thiết là nối kết của trạm B vào mạng 1 bị hỏng Khi đó nếu một
người dùng trên trạm A dùng địa chỉ IP I4 để gửi thì dữ liệu sẽ không tới được đích
Trong khi với người dùng khác dùng địa chỉ I5 thì lại gửi được
1.5.5 Các phương pháp gán địa chỉ IP
Để cấp phát địa chỉ IP cho một thiết bị kết nối vào mạng Internet chúng ta có hai
phương pháp gán địa chỉ IP:
♦ Gán địa chỉ tĩnh
Là phương pháp định trước cho mỗi thiết bị kết nối vào mạng một địa chỉ IP cố
định và duy nhất.Phương pháp này dễ thực hiện nhưng hiệu quả sử dụng địa chỉ IP
không cao và dễ gặp khó khăn khi sử dụng trùng địa chỉ IP
♦ Gán địa chỉ động
Là phương pháp gán địa chỉ IP cho thiết bị khi thiết bị kết nối mạng đồng thời sử
dụng một server để cấp phát và quản lý các địa chỉ hiện thời.Phương pháp này hiệu quả
sử dụng địa chỉ IP cao và tự động trong việc cấp phát nhưng lại khá phức tạp
G
I4
I5M¹ng 1
M¹ng 2
Hình 1.15 Ví dụ một trạm có nhiều địa chỉ IP
Trang 33Hình 1.16 Gán địa chỉ IP
1.5.6 Thứ tự byte và địa chỉ IP
Việc chuẩn hóa thứ tự byte là rất quan trọng bởi vì gói tin IP mang các giá trị nhị
phân trong đó có địa chỉ đích và độ dài gói tin Các giá trị này cần phải được hiểu thống
nhất đối với người nhận và cả người gửi Giao thức IP giải quyết vấn đề này bằng định
nghĩa một thứ tự byte chuẩn của mạng Thứ tự byte chuẩn được định nghĩa theo giao
thức IP là thứ tự byte Endian lớn (Big Endian) Mỗi trạm gửi sẽ biến đổi thứ tự byte
trên máy của mình về thứ tự byte chuẩn của mạng và truyền dữ liệu đi trên mạng, Sau
đó trạm nhận lại biến đổi thứ tự byte của mạng về thứ tự byte của máy khi nhận dữ liệu
1.5.7 Cấu trúc gói dữ liệu IP
IP là giao thức cung cấp dịch vụ truyền thông theo kiểu “không liên kết”
(Connectionless) Phương thức không liên kết cho phép cặp trạm truyền nhận không
cần phải thiết lập liên kết trước khi truyền dữ liệu và do đó không cần phải giải phóng
liên kết khi không còn nhu cầu truyền dữ liệu nữa Phương thức kết nối "không liên
kết" cho phép thiết kế và thực hiện giao thức trao đổi dữ liệu đơn giản (không có cơ chế
phát hiện và khắc phục lỗi truyền) Cũng chính vì vậy độ tin cậy trao đổi dữ liệu của
loại giao thức này không cao
Các gói dữ liệu IP được gọi là các Datagram.Như một frame mạng vật lý, một
datagram được chia thành vùng header và vùng dữ liệu Phần header cũng tương tự
Trang 34frame, nó chứa địa chỉ nguồn cùng địa chỉ đích và một trường type dùng định danh nội
dung của datagram Sự khác nhau là header của datagram chứa địa chỉ IP còn header
của frame chứa địa chỉ vật lý Hình sau mô tả dạng tổng quát của một datagram
Hình 1.17 Datagram
Nếu địa chỉ IP đích là địa chỉ của một trạm nằm trên cùng một mạng IP với trạm
nguồn thì các gói dữ liệu sẽ được chuyển thẳng tới đích, nếu địa chỉ IP đích không nằm
trên cùng một mạng IP với máy nguồn thì các gói dữ liệu sẽ được gửi đến một máy
trung chuyển, IP Gateway để chuyển tiếp IP Gateway là một thiết bị mạng IP đảm
nhận việc lưu chuyển các gói dữ liệu IP giữa hai mạng IP khác nhau Hình 1.18 mô tả
cấu trúc gói dữ liệu IP
Hình 1.18 Cấu trúc gói dữ liệu IP
Trang 35♦ VERS (4 bits): Version hiện hành của IP được cài đặt.Gồm 4 bít, chứa đựng
phiên bản của giao thức IP được dùng trong gói tin Trường này được dùng để
kiểm tra xem bên nhận, bên gửi, gateway trung gian có chấp nhận cấu trúc của gói
tin hay không Tất cả các phần mềm IP đều phải kiểm tra trường này để xem nó
có khả năng xử lý được phiên bản này hay không Nếu như phiên bản của gói tin
khác với phiên bản mà nó có thể xử lý thì chương trình sẽ không xử lý và báo lỗi
♦ IHL (4 bits): Độ dài phần tiêu đề (Internet Header Length) của Datagram, tính
theo đơn vị từ (32 bits) Nếu không có trường này thì độ dài mặc định của phần
tiêu đề là 5 từ
♦ Type of service (8 bits): Trường kiểu dịch vụ cho biết các thông tin về loại dịch vụ
và mức ưu tiên của gói IP, có dạng cụ thể như sau:
Trong đó:
Precedence (3 bits): chỉ thị về quyền ưu tiên gửi Datagram, cụ thể là:
111 Network Control (cao nhất) 011- flash
110 Internetwork Control 010Immediate
101 CRITIC/ECP 001Priority
100 Flas Override 000 Routine (thấp nhất)
D (Delay) (1 bit) : chỉ độ trễ yêu cầu
D=0 độ trễ bình thường
D=1 độ trễ thấp
T (Throughput) (1 bit): chỉ số thông lượng yêu cầu
T=1 thông lượng bình thường
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): Trường tổng độ dài chỉ độ dài toàn bộ Datagram, kể cả
phần Header (tính theo đơn vị bytes), vùng dữ liệu của Datagram có thể dài tới
65535 bytes Trường này gồm 4 bít chỉ ra độ dài của phần header của gói tin tính
theo đơn vị số từ 32 bít Thông thường độ dài của phần header là 20 bytes Phần
header có độ dài tối thiểu là 5 từ 32 bít
Trang 36♦ Identification (16 bits) : Trường nhận dạng 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ụ thể 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 Fragment)
♦ Fragment Offset (13 bits) : chỉ vị trí của đoạn (Fragment) ở trong Datagram, tính
theo đơn vị 64 bits, có nghĩa là mỗi đoạn (trừ đoạn cuối cùng) phải chứa một vùng
dữ liệu có độ dài là bội của 64 bits
♦ Time To Live (TTL-8 bits) : quy định thời gian tồn tại của một gói dữ liệu trên
liên mạng để tránh tình trạng một Datagram bị quẩn trên mạng Giá trị này được
đặt lúc bắt đầu gửi đi và sẽ giảm dần mỗi khi gói dữ liệu được xử lý tại những
điểm trên đường đi của gói dữ liệu (thực chất là tại các Router) Nếu giá trị này
bằng 0 trước khi đến được đích, gói dữ liệu sẽ bị huỷ bỏ
Trường TTL chỉ ra số đơn vị tính bằng giây một gói tin có thể tồn tại trong
mạng Khi gửi một gói tin đi, bên gửi sẽ gán giá trị này trong mỗi gói tin Gateway và
các trạm xử lý gói tin sẽ giảm trường TTL đi một số thời gian và sẽ loại bỏ gói tin khi
giá trị của trường này bằng 0
Việc tính toán thời gian cần giảm là tương đối khó khăn Để đơn giản hóa
gateway sẽ giảm trường TTL đi 1 đơn vị mỗi khi nó xử lý một header của gói tin Ngoài
ra để xử lý trường hợp có sự trễ tại gateway, khi nhận một gói tin nó sẽ ghi lại thời
điểm nhận và khi chuyển gói tin đi nó sẽ ghi lại thời điểm gửi Gateway sẽ trừ trường
TTL đi một giá trị bằng thời gian mà gói tin này ở lại trong gateway
Khi trường TTL bằng không, gateway sẽ loại bỏ gói tin và gửi thông báo lỗi về
cho bên gửi Việc dùng TTL cho phép loại trừ khả năng một gói tin có thể tồn tại nội
trong mạng ngay cả khi bảng chọn đường của gateway gặp sự cố và gateway gửi gói tin
bị lặp trong mạng
♦ Protocol (8 bits): chỉ giao thức tầng 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)
Trang 37♦ Header Checksum (16 bits): mã kiểm soát lỗi sử dụng phương pháp CRC (Cycle
Redundancy Check) dùng để đảm bảo thông tin về gói dữ liệu được truyền đi một
cách chính xác (mặc dù dữ liệu có thể bị lỗi) Nếu như việc kiểm tra này thất bại,
gói dữ liệu sẽ bị huỷ bỏ tại nơi xác định được lỗi Cần chú ý là IP không cung cấp
một phương tiện truyền tin cậy bởi nó không cung cấp cho ta một cơ chế để xác
nhận dữ liệu truyền tại điểm nhận hoặc tại những điểm trung gian Giao thức IP
không có cơ chế kiểm soát lỗi (Error Control) cho dữ liệu truyền đi, không có cơ
chế kiểm soát luồng dữ liệu (Flow Control)
♦ Source Address (32 bits): địa chỉ của trạm nguồn
♦ Destination Address (32 bits): địa chỉ của trạm đích
♦ Option (có độ dài thay đổi) sử dụng trong một số trường hợp, nhưng thực tế chúng
rất ít dùng Option bao gồm chức năng bảo mật, chức năng định tuyến đặc biệt
♦ 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): vùng dữ liệu có độ dài là bội của 8 bits, tối đa là 65535
bytes
1.5.8 Đóng gói dữ liệu
Trang 38Cũng giống như tất cả các mạng gói khác, các gói tin trong mạng IP cũng được
bổ sung thêm các trường tiêu đề ở đầu bản tin qua các lớp giao thức ở phía phát và
được gỡ bỏ các trường tiêu để này ở phía thu để xử lý Quá trình đó được gọi là đóng
gói dữ liệu (encapsulation) Trong ngăn xếp giao thức TCP/IP gồm bốn lớp Tại mỗi
lớp, các gói dữ liệu được gửi tới từ lớp trên sẽ được bổ sung thêm một tiêu đề tương
ứng mang các thông tin điều khiển cần thiết cho lớp này Quá trình đóng gói dữ liệu
được mô tả trong Hình 1.19 ở trên
Các gói IP phải được nhúng trong các khung dữ liệu ở tầng liên kết dữ liệu
tương ứng trước khi chuyển tiếp trong mạng Quá trình nhận một gói tin diễn ra ngược
lại Độ dài tối đa của một gói dữ liệu liên kết là MTU Khi cần chuyển một gói dữ liệu
IP có độ dài lớn hơn MTU của một mạng cụ thể cần phải chia nhỏ gói dữ liệu IP đó
thành những gói IP nhỏ hơn hoặc bằng MTU Quá trình này được gọi là phân mảnh
(fragment) Trong phần tiêu đề của gói tin IP có thông tin về phân mảnh và xác định các
mảnh có quan hệ phụ thuộc để hợp thành gói tin ban đầu tại phía thu
1.5.9 Phân mảnh và hợp nhất các gói IP
Các gói dữ liệu IP phải được nhúng trong khung dữ liệu ở tầng liên kết dữ liệu
tương ứng, trước khi chuyển tiếp trong mạng Quá trình nhận một gói dữ liệu IP diễn ra
User data
User data Application
header
Application data TCP
Trang 39ngược lại Ví dụ, với mạng Ethernet ở tầng liên kết dữ liệu, quá trình chuyển một gói dữ
liệu diễn ra như sau Khi gửi một gói dữ liệu IP cho mức Ethernet, IP chuyển cho mức
liên kết dữ liệu các thông số địa chỉ Ethernet đích, kiểu khung Ethernet (chỉ dữ liệu mà
Ethernet đang mang là của IP) và cuối cùng là gói IP Tầng liên kết số liệu đặt địa chỉ
Ethernet nguồn là địa chỉ kết nối mạng của mình và tính toán giá trị Checksum Trường
type chỉ ra kiểu khung là 0x0800 đối với dữ liệu IP Mức liên kết dữ liệu sẽ chuyển
khung dữ liệu theo thuật toán truy nhập Ethernet
Một gói dữ liệu IP có độ dài tối đa 65536 byte, trong khi hầu hết các tầng liên
kết dữ liệu chỉ hỗ trợ các khung dữ liệu nhỏ hơn độ lớn tối đa của gói dữ liệu IP nhiều
lần (ví dụ độ dài lớn nhất của một khung dữ liệu Ethernet là 1500 byte) Vì vậy cần
thiết phải có cơ chế phân mảnh khi phát và hợp nhất khi thu đối với các gói dữ liệu IP
Độ dài tối đa của một gói dữ liệu liên kết là MTU (Maximum Transmit Unit)
Khi cần chuyển một gói dữ liệu IP có độ dài lớn hơn MTU của một mạng cụ thể, cần
phải chia gói số liệu IP đó thành những gói IP nhỏ hơn để độ dài của nó nhỏ hơn hoặc
bằng MTU gọi chung là mảnh (Fragment) Trong phần tiêu đề của gói dữ liệu IP có
thông tin về phân mảnh và xác định các mảnh có quan hệ phụ thuộc để hợp thành sau
này
Ví dụ: Ethernet chỉ hỗ trợ các khung có độ dài tối đa là 1500 byte Nếu muốn gửi
một gói dữ liệu IP gồm 2000 byte qua Ethernet, phải chia thành hai gói nhỏ hơn, mỗi
gói không quá giới hạn MTU của Ethernet
IP dùng cờ MF (3 bit thấp của trường Flags trong phần đầu của gói IP) và trường
Flagment Offset của gói IP (đã bị phân đoạn) để định danh gói IP đó là một phân đoạn
và vị trí của phân đoạn này trong gói IP gốc Các gói cùng trong chuỗi phân mảnh đều
có trường này giống nhau Cờ MF bằng 1 nếu là gói đầu của chuỗi phân mảnh và 0 nếu
là gói cuối của gói đã được phân mảnh
Quá trình hợp nhất diễn ra ngược lại với quá trình phân mảnh Khi IP nhận được
một gói phân mảnh, nó giữ phân mảnh đó trong vùng đệm, cho đến khi nhận được hết
các gói IP trong chuỗi phân mảnh có cùng trường định danh Khi phân mảnh đầu tiên
được nhận, IP khởi động một bộ đếm thời gian (giá trị ngầm định là 15s) IP phải nhận
hết các phân mảnh kế tiếp trước khi đồng hồ tắt Nếu không IP phải huỷ tất cả các phân
mảnh trong hàng đợi hiện thời có cùng trường định danh
Khi IP nhận được hết các phân mảnh, nó thực hiện hợp nhất các gói phân mảnh
thành các gói IP gốc và sau đó xử lý nó như một gói IP bình thường IP thường chỉ thực
hiện hợp nhất các gói tại hệ thống đích của gói
Original IP packet
04 05 00 2000
1 1 1 1 0 0 0 0