Tài liệu Đồ án Cách thức chọn đường và ứng dụng trong thiết kế mạng WAN: Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 1
Ch−ơng i tổng quan về mạng máy tính
1.1 Sự hình thành của mạng máy tính
Từ những năm 1960 đã xuất hiện các mạng nối các máy tính và các
Terminal để sử dụng chung nguồn tài nguyên, giảm chi phí khi muốn thông
tin trao đổi số liệu và sử dụng trong công tác văn phòng một cách tiện lợi.
Với việc tăng nhanh các máy tính mini và các máy tính cá nhân làm
tăng yêu cầu truyền số liệu gi−ã các máy tính, giữa các terminal, và giữa các
terminal với máy tính là một trong những động lực thúc đẩy sự ra đời và phát
triển ngày càng mạnh mẽ các mạng máy tính.Quá trình hình thành mạng máy
tính có thể tóm tắt qua 4 giai đoạn sau:
• Giai đoạn các terminal nối trực tiếp với máy tính: Đây là giai đoạn
đầu tiên của mạng máy tính, để tận dụng công suất của máy tính
ng−ời ta ghép nối các terminal vào một máy tính đ−ợc gọi là các
máy tính trung tâm.
• Giai đoạn các bộ tiền xử lý (Pro...
108 trang |
Chia sẻ: hunglv | Lượt xem: 1044 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Đồ án Cách thức chọn đường và ứng dụng trong thiết kế mạng WAN, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 1
Ch−ơng i tổng quan về mạng máy tính
1.1 Sự hình thành của mạng máy tính
Từ những năm 1960 đã xuất hiện các mạng nối các máy tính và các
Terminal để sử dụng chung nguồn tài nguyên, giảm chi phí khi muốn thông
tin trao đổi số liệu và sử dụng trong công tác văn phòng một cách tiện lợi.
Với việc tăng nhanh các máy tính mini và các máy tính cá nhân làm
tăng yêu cầu truyền số liệu gi−ã các máy tính, giữa các terminal, và giữa các
terminal với máy tính là một trong những động lực thúc đẩy sự ra đời và phát
triển ngày càng mạnh mẽ các mạng máy tính.Quá trình hình thành mạng máy
tính có thể tóm tắt qua 4 giai đoạn sau:
• Giai đoạn các terminal nối trực tiếp với máy tính: Đây là giai đoạn
đầu tiên của mạng máy tính, để tận dụng công suất của máy tính
ng−ời ta ghép nối các terminal vào một máy tính đ−ợc gọi là các
máy tính trung tâm.
• Giai đoạn các bộ tiền xử lý (Prontal)
ở giai đoạn 1 máy tính trung tâm quản lý truyền tin tới các terminal, ở
giai đoạn 2 máy tính trung tâm quản lý truyền tin tới các bộ tập trung qua các
bộ ghép nối điều khiển đ−ờng truyền. Ta có thể thay thế bộ ghép nối đ−ờng
truyền bằng các máy tính nini gọi là prontal, đó chính là bộ tiền xử lý.
• Giai đoạn mạng máy tính:
Vào những năm 1970 ng−ời ta bắt đầu xây dựng mạng truyền thông
trong đó các thành phần chính của nó là các nút mạng gọi là bộ chuyển mạch
dùng để h−ớng thông tin tới đích.
Các mạng đ−ợc nối với nhau bằng đ−ờng truyền còn các máy tính xử lý
thông tin của ng−ời dùng hoặc các trạm cuối đ−ợc nối trực tiếp vào các nút
mạng để khi cần thì trao đổi thông tin qua mạng. Các nút mạng th−ơng là
máy tính nên đồng thời đóng vai trò của ng−ời sử dụng.
Chức năng của nút mạng:
+ Quản lý truyền tin, quản lý mạng
Nh− vậy các máy tính ghép nối với nhau hình thành mạng máy tính, ở
đây ta thấy mạng truyền thông cũng ghép nối các máy tính với nhau nên khái
niệm mạng maý tính và mạng truyền thông có thể không phân biệt.
Việc hình thành mạng máy tính nhằm đạt các mục đích sau:
1.Tận dụng và làm tăng giá trị của tài nguyên
2.Chinh phục khoảng cách
3.Tăng chất l−ợng và hiệu quả khai thác và xử lý thông tin
4.Tăng độ tin cậy của hệ thống nhờ khả năng thay thế khi xảy ra
sự cố đối với một máy tính nào đó.
Nh− vậy: Mạng máy tính là tập hợp các máy tính đ−ợc ghép với nhau
bởi các đ−ờng truyền vật lý theo một kiến trúc nào đó.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 2
1.1 Các yếu tố của mạng máy tính
1.1.1 Đ−ờng truyền vật lý
Đ−ờng truyền vật lý là thành phần để chuyển các tín hiệu điện tử giữa
các máy tính. Các tín hiệu điện tử đó biểu thị các dữ liệu d−ới dạng xung nhị
phân. Tất cả các tín hiệu truyền giữa các máy tính đều ở dạng sóng điện từ và
có tần số trải từ cực ngắn cho tới tần số của tia hồng ngoại.Tuỳ theo tần số
của sóng điện từ mà có thể dùng các đ−ờngtruyền vật lý khác nhau để truyền.
+ Các tần số Radio có thể truyền bằng cáp điện hoặc bằng các ph−ơng
tiện quảng bá (broadcast)
+Sóng cực ngắn đ−ợc dùng để truyền các trạm mặt đất và vệ tinh. Hoặc
là dùng để truyền từ một trạm phát tới các trạm thu.
+Tia hồng ngoại là lý t−ởng đối với truyền thông mạng . Nó có thể
truyền từ điểm tới điểm hoặc quảng bá từ một điểm tới các máy thu. Tia hồng
ngoại hoặc các loại tia sáng tần số cao hơn có thể truyền đ−ợc qua cáp sợi
quang.
Những đặc tr−ng cơ bản của đ−ờng truyền vật lý là: giải thông, độ suy
hao, độ nhiễu điện từ.
Dải thông của đ−ờng truyền là độ đo phạm vi tần số mà đ−ờng truyền
có thể đáp ứng đ−ợc. Giải thông phụ thuộc vào độ dài cáp, đ−ờng kính sợi
cáp, vật liệu dùng chế tạo cáp...
Thông l−ợng của một đ−ờng truyền (throughput) chính là tốc độ
truyền dữ liệu trên đ−ờng truyền đó trong một đơn vị thời gian.Thông l−ợng
của đ−ờng truyền phản ánh hiệu quả sử dụng đ−ờng truyền đó.
Độ suy hao là giá trị phản ánh mức độ suy yếu của tín hiệu đ−ờng
truyền sau khi truyền qua một đơn vị độ dài cáp.
Độ nhiễu điện từ là khả năng làm nhiễu tín hiệu trên đ−ờng truyền khi
cáp đi qua vùng có sóng điện từ. Có hai loại đ−ờng truyền: hữu tuyến, vô
tuyến đ−ợc sử dụng trong việc kết nối mạng máy tính. Đ−ờng truyền hữu
tuyến gồm cáp đồng trục, cáp xoắn đôi, cáp sợi quang; đ−ờng truyềnvô tuyến
gồm sóng radio, sóng cực ngắn, tia hồng ngoại
Tuy nhiên khi thiết kế dây cho một mạng máy tính ng−ời ta còn phải
chú ý tới nhiều tham số khác nh−: giá thành, khả năng chịu nhiệt, khả năng
chống chịu ẩm, khả năng uốn cong.
1.1.2 Kiến trúc mạng
Kiến trúc mạng máy tính bao gồm cách ghép nối vật lý các máy tính
với nhau và các quy tắc, quy −ớc mà tất cả các thực thể tham gia trong hệ
thống mạng phải tuân theo để đảm bảo cho mạng hoạt động tốt.Cách các máy
tính đ−ợc gép nối với nhau đ−ợc goi là topology của mạng còn các quy tắc
quy −ớc truyền thông đ−ợc gọi là giao thức (protocol). Topology và protocol
là hai khái niệm cơ bản nhất của mạng máy tính.
a) Topology:
Ng−ời ta phân biệt hai kiểu nối mạng vật lý cơ bản là kiểu điểm- điểm
và kiểu quảng bá (broadcasting hay point- to- multipoint)
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 3
+ Kiểu điểm - điểm: Đ−ờng truyền nối từng cặp nút với nhau.Tín hiệu
đi từ nút nguồn đến nút trung gian rồi chuyển tiếp tới đích.
Hình 1-1: Các topo mạng cơ bản
Hình 1-2: Dạng topo đầy đủ
.
Hình 1-3: Các topo mạng cơ bản
+ Kiểu quảng bá:
Với kiểu quảng bá tất cả các nút chung một đ−ờng truyền vật lý. Dữ liệu đ−ợc
gửi đi từ một nút đ−ợc tiếp nhận bởi các nút còn lại, và trong gói tin phải có
vùng địa chỉ đích cho phép mỗi nút kiểm tra có phải tin của minh không
Cấu trúc dạng bus hay dạng vòng cần cơ chế trọng tài để giải quyết
đụng độ (collision) khi nhiều nút muốn truyền tin đồng thời. Trong cấu trúc
dạng vệ tinh hoặc radio mỗi nút cần có anten thu và phát.
1.1.3 Giao thức mạng (network protocol)
Hình sao Chu trình Dạng cây
Dạng vòng Dạng bus Satellite hoặc radio
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 4
Việc trao đổi thông tin giữa các nút với nhau cần phải tuân theo một số
quy tắc, quy −ớc nhất định nào đó. Chẳng hạn, khi hai ng−ời nói chuyện với
nhau thì cũng phải tuân theo quy tắc: Khi một ng−ời nói thì ng−ời kia phải
nghe và ng−ợc lại. Việc truyền thông tin trên mạng cũng phải tuân theo các
quy tắc quy −ớc nhiều mặt nh−: khuôn dạng dữ liệu gửi đi, cácthủ tục gửi và
nhận, kiểm soát dữ liệu, xử lí lỗi và xử lý sự cố... Chẳng hạn mạng l−ới giao
thông công cộng càng phát triển thì số quy tắc đề ra càng phải nhiều, càng
phải chặt chẽ và càng phức tạp hơn. Tập hợp các quy tắc , quy −ớc để đảm
bảo trao đổi và xử lý thông tin trên mạng gọi là giao thức. Các mạng đ−ợc
thiết kế khác nhau có thể tuân theo một số giao thức khác nhau, tuy nhiên
ng−ời ta đ−a ra một số giao thức chuẩn đ−ợc dùng trên nhiều mạng khác
nhau.
1.2 Phân loại mạng máy tính
Ng−ời ta phân loại mạng máy tính khác nhau tuỳ theo các yếu tố chính
đ−ợc chọn nh−: Khoảng cách địa lý, kỹ thuật chuyển mạch, kiến trúc mạng,
cơ chế hoạt động của mạng...
1.2.1 Phân loại theo khoảng cách địa lý
Nếu lấy khoảng cách địa lý làm yếu tố chính để phân loại mạng thì
mạng đ−ợc phân thành: mạng cục bộ mạng đô thị, mạng diện rộng, mạng toàn
cầu
+Mạng cục bộ (Local Area Network - LAN) là mạng đ−ợc cài đặt trong
một phạm vi t−ơng đối nhỏ ( trong một toà nhà, trong một phòng ban hoặc
trong một công ty...) với đ−ờng kính giới hạn trong khoảng vài chục Km.
+Mạng đô thị (Metropolitan Area Network - MAN) là mạng đ−ợc cài
đặt trong phạm vi một thành phố, một trung tâm kinh tế. .. phạm vi cài đặt
mạng là hàng trăm Km.
+ Mạng diện rộng (Wide Area Network - WAN) là mạng có phạm vi
hoạt động có thể là cả một vùng, một khu vực và có thể v−ợt qua biên giới
một quốc gia..
+Mạng toàn cầu (Global Area Network - GAN) phạm vi của mạng trải
rộng khắp lục địa của trái đất.
1.2.2 Phân loại theo kĩ thuật chuyển mạch
Nếu lấy kĩ thuật chuyển mạch so sánh thì có thể phân chia mạnh thành:
Mạng chuyển mạch kênh, mạng chuyển mạch gói, mạng chuyển mạch thông
báo.
a) Mạng chuyển mạch kênh (Circuit - switched - Network):đây là
mạng mà khi 2 thực thể muốn liên lạc với nhau thì chúng phải tạo và duy trì
một kênh liên tục cho đến khi kết thúc quá trình thông tin.Ph−ơng pháp
chuyển mạch có hai nh−ợc điểm chính:
+ Hiệu suất sử dụng đ−ờng truyền không cao
+ Mất nhiều thời gian cho việc thiết lập kênh cố định khi thông tin
giữa 2 thực thể.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 5
b) Mạng chuyển mạch thông báo (Message - switched -Network)
Trong mạng chuyển mạch thông báo việc chọn đ−ờng đi cho các thông
báo tới đích đ−ợc thực hiện tại các nút mạng. Các nút căn cứ vào địa chỉ đích
của thông báo để ra quyết định chọn nút đến kế tiếp cho thông báo trên đ−ờng
dẫn tới đích. Nh− vậy các nút cần l−u trữ tạm thời các thông báo, đọc thông
báovà quản lý việc chuyển tiếp các thông báo đi. Ph−ơng pháp chuyển mạch
thông báo có những −u điểm sau:
+ Hiệu suất sử dụng đ−ờng truyền cao vì không có các kênh thông tin
cố định.
+ Mỗi nút mạng có thể l−u trữ thông báo cho tới khi đ−ờng truyền khả
dụng mới truyền đi nên giảm đuực tình trạng tắc nghẽn trên mạng.
+ Có thể điều khiển truyền tin bằng cách sắp xếp mức độ −u tiên cho
các thông báo.
+ Trong mạng chuyển mạch thông báo chúng ta có thể làm tăng hiệu
suất sử dụng dải thông của mạng bằng cách gán địa chỉ quảng bá cho các
thông báo để cho nó đến nhiều đích khác nhau.
Nh−ợc điểm chủ yếu của chuyển mạch thông báo là trong tr−ờng hợp
một thông báo dài bị lỗi, phải truyền lại thông báo này nên hiệu suất không
cao. Ph−ơng pháp này thích hợp với các mạng truyền th− tín điện tử
(Electronic mail).
c ) Mạng chuyển mạch gói (Packet - switched - Network)
Trong mạng chuyển mạcg gói thì một thông báo có thể đ−ợc chia ra
nhiều gói nhỏ hơn (packet), độ dài khoảng 256 bytes, có khuôn dạng tuỳ theo
chuẩn quy định. Các gói tin có chứa thông tin điều khiển địa chỉ nguồn, địa
chỉ đích cho gói tin,số thứ tự gói tin, thông tin kiểm tra lỗi...Do vậy các gói
tin của cùng một thông báo có thể đ−ợc gửi đi theo nhiều đ−ờng khác nhau,
tới đích tại các thời điểm khác nhau, nơi nhận sẽ căn cứ vào thông tin trong
các gói tin và sắp xếp lại chúng theo đúng thứ tự.
Ưu điểm của chuyển mạch gói:
+ Mạng chuyển mạch gói có hiệu suất và hiệu quả cao hơn mạng
chuyển mạch thông báo vì kích th−ớc các gói tin nhỏ hơn nên các nút mạng
có thể xử lý toàn bộ gói tin mà không cần phải l−u trữ trong đĩa.
+ Mỗi đ−ờng truyền chiếm thời gian rất ngắn, vì chúng có thể dùng bất
cứ đ−ờng có thể đ−ợc để tới đích.
+Khả năng đòng bộ bít là rất cao.
Nhựơc điểm:
+ Vì thời gian truyền tin ngắn nên nếu thời gian chuyển mạch lớn thì
tốc độ truyền không cao.
+ Việc tập hợp lại các gói tin ban đầu về nguyêntắc là thực hiện đ−ợc
nh−ng rất khó khăn, đặc biệt là khi các gói tin truyền đi theo nhiều đ−ờng
khác nhau.
+ Đối với các ứng dụng phụ thuộc thời gian thực thì việc các gói tin tới
đích không theo thứ tự là một nh−ợc điểm quan trọng cần phải khắc phục.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 6
Tuy vẫn còn những hạn chế nh−ng do có −u điểm về tính mềm dẻo,
hiệu suất cao nên các mạng chuyển mạch gói đang đ−ợc dùng phổ biến hiện
nay.
1.3.3 Phân loại mạng theo cơ chế hoạt động
Trong môi tr−ờng mạng máy tính có 2 cơ chế hoạt động chính là: peer-
to-peer và client/ server. Môi tr−ờng peer - to - peer không có máy chuyên
phục vụ cho một công việc nào, còn trong môi tr−ờng client/server thì phải có
những máy đ−ợc dành riêng để phục vụ mục đích khác nhau.
• Mạng dựa trên máy phục vụ:
Trong mạng có những máy chuyên dụng phục vụ cho các mục đích
khác nhau. Máy phục vụ chuyên dụng hoạt động nh− một ng−ời phục vụ và
không kiêm vai trò của trạm làm việc hay máy khách.
Các maý phục vụ chuyên dụng đ−ợc tối −u hoá để phục vụ nhanh
những yêu cầu của khách hàng trên mạng
Các loại máy phục vụ chuyên dụng th−ờng thấy nh−:
+ Máy phục vụ tập tin / in ấn (file/print sever)
+ Máy phục vụ ch−ơng trình ứng dụng (application server)
+ Máy phục vụ th− tín (mail server)
+ Máy phục vụ fax(fax server)
+ Máy phục vụ truyền thông (communication server)
Một trong những −u điểm quan trọng của mạng dựa trên máy phục vụ
là có tính an toàn và bảo mật cao hơn.Hầu hết các mạng trong thực tế (nhất là
mạng lớn )đều dựa trên máy phục vụ
• Mạng ngang hàng:
Không tồn tại một cấu trúc phân cấp nào trong mạng. Mọi máy tính
đều “bình đẳng”. Thông th−ờng, mỗi máy tính kiêm luôn cả hai vai trò máy
khách và máy phục vụ, vì vậy không máy nào đ−ợc chỉ định chịu trách nhiệm
quản lý mạng. Ng−ời dùng ở từng máy tự quyết định phần dữ liệu nào trên
máy của họ sẽ đ−ợc dùng chung trên mạng. Thông th−ờng mạng ngang hàng
thích hợp cho các mạng có quy mô nhỏ (chẳng hạn nh− nhóm làm việc ) và
không yêu cầu phải có tính bảo mật.
1.3.4 Phân loại mạng theo kiến trúc
Ng−ời ta có thể phân loại mạng theo kiến trúc (topology và protocol)
nh− các mạng SNA, mạng ISO, mạng TCP/IP. ..
1.4 Kiến trúc phân tầng - chuẩn hoá mạng - mô hình ISO
1.4.1 Kiến trúc phân tầng
Để giảm độ phức tạp trong thiết kế và cài đặt mạng, các mạng máy tính
đ−ợc tổ chức thiết kế theo kiểu phân tầng (layering). Trong hệ thống thành
phần của mạng đ−ợc tổ chức thành một cấu trúc đa tầng, mỗi tầng đ−ợc xây
dựng trên tầng tr−ớc đó ; mỗi tầng sẽ cung cấp một số dịch vụ cho tầng cao
hơn. Số l−ợng các tầng cũng nh− chức năng của mỗi tầng là tuỳ thuộc vào nhà
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 7
thiết kế. Ví dụ cấu trúc phân tầng của mạng SNA của IBM, mạng DECnet của
Digital, mạng ARPANET. .. Là có sự khác nhau.
Nguyên tắc cấu trúc của mạng phân tầng là: mỗi hệ thống trong một mạng
đều có cấu trúc phân tầng (Số l−ợng tầng, chức năng của mỗi tầng là nh−
nhau )
Tầng i của hệ thống A sẽ hội thoại với tầng i của hệ thống B, các quy
tắc và quy −ớc dùng trong hội thoại gọi là giao thức mức I
Giữa hai tầng kề nhau tồn tại một giao diện (interface) xác định các
thao tác nguyên thuỷ của tầng d−ới cung cấp lên tầng trên.
Trong thực tế dữ liệu không truyền trực tiếp từ tầng i của hệ thống này
sang tầng i của hệ thống khác ( trừ tầng thấp nhất trực tiếp sử dụng đ−ờng
truyền vật lý để truyền các xâu bít (0.1) từ hệ thống này sang hệ thống khác
).Dữ liệu đ−ợc truyền từ hệ thống gửi (sender) sang hệ thống nhận (receiver)
bằng đ−ờng truyền vật lý và cứ nh− vậy dữ liệu lại đi ng−ợc lên các tầng trên.
Nh− vậy khi hai hệ thống liên kết với nhau, chỉ tầng thấp nhất mới có liên kết
vật lý còn ở tầng cao hơn chỉ có liên kết logic (liên kết ảo ) đ−ợc đ−a vào để
hình thức hoá các hoạt động của mạng thuận tiện cho việc thiết kế và cài đặt
các phần mềm truyền thông. Nh− vậy để viết ch−ơng trình cho tầng N, phải
biết tầng N+1 cần gì và tầng N+1 có thể làm đ−ợc gì.
Hình 1-4: Minh họa kiến trúc phân tầng tổng quát
1.4.2 Chuẩn hoá mạng
Tình trạng không t−ơng thích giữa các mạng, đặc biệt là các mạng bán
trên thị tr−ờng gây trở ngại cho những ng−ời sử dụng, tác động đến mức tiêu
thụ các sản phẩm về mạng. Do đó cần xây dựng các mô hình chuẩn làm căn
cứ cho các nhà nghiên cứu và thiết kế mạng tạo ra các sản phẩm có tính chất
mở về mạng, đ−a tới dễ phổ cập, sản xuất và sử dụng. ..
i/ ISO(international Standard Organization) thành lập d−ới sự bảo trợ
của liên hiệp quốc, các thành viên là các cơ quan tiêu chuẩn của các quốc gia.
ISO đã xây dựng hơn 5000 chuẩn ở tất cả các lĩnh vực. ISO đ−ợc chia thành
Tầng N
Tầng N-1
Tầng 2
Tầng 1 Tầng 1
Tầng 2
Tầng N-1
Tầng N
Hệ thống A Hệ thống B Giao thức tầng N
Giao thức tầng N-1
Giao thức tầng 2
Giao thức tầng 1
Đ−ờng truyền vật lý
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 8
các uỷ ban kỹ thuật ( Technical Committee -TC). TC97 đảm bảo chuẩn hoá
lĩnh vực xử lý tin. Mỗi TC lại chia thành nhiều tiểu ban (Sub Committee -SC)
và mỗi SC lại chia thành nhiều nhóm làm việc khác nhau (Working Group )
đảm nhiệm các nhiệm vụ chuyên sâu khác nhau.
Các chuẩn do hội đồng ISO ban hành nh− là các chuẩn quốc tế chính
thức (International Standard -IS)
ii/ CCITT(Committee Consult tatif International pour Telegraphe et
Telephone). Tổ chức t− vấn quốc tế về điện tín và điện thoại hoạt động d−ới
sự bảo trợ của liên hiệp quốc, các thành viên chủ yếu là các cơ quan B−u
chính - viễn thông của các quốc gia và t− nhân. Ph−ơng thức làm việc của
CCITT cũng giống nh− ISO nh−ng sản phẩm của nó không đ−ợc gọi là chuẩn
mà đ−ợc gọi là các khuyến nghị ( recommentdation).CCITT đã đ−a ra các
khuyến nghị loại V liên quan đến truyền dữ liệu, các khuyến nghị loại X liên
quan đến mạng truyền dữ liệu công cộng và các khuyến nghị loại I dành cho
các mạng ISDN .
Ngoài ISO, CCITT trên thế giới còn có các tổ chức khác tham gia việc
chuẩn hoá nh− ECMA(european Computer Manufacture ), ANSI (American
National Standard institute ),IEEE (institute Electrical and Electronic
Engineers)...
CCITT Layer ISO
Service
Definition
Layer Protocol Service
Definition
Layer
Protocol
X.217 X400-X430 MHS
X.288 RTSE
X.229 ROSE
X.227. ..
Application 8649 9640 VT
8571 STAM
8650 CASE
8831 JIM
X.216 X.226
X.208
X.209
Presentation 8822 8823
8824
8825
X.215 X.225 Session 8326 8327
X.214 X.224 Transport 8072 8073
X.213 0.931
X.25
X.300-X.352
Network 8.348 8208
8878
8473
8648
X.212 LAPB
1.440/I.44J LAPD
Data Link 8886,
8802/2
7776
X.211 X.21 Physical 8802/3
8802/4
8802/5. ..
7809
8022
Hinh 1-5 Các chuẩn cho kiến trúc phân tầng của CCITT và ISO
1.4.3 Mô hình OSI:
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 9
Do các 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:
(1) 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.
(2) Mỗi lớp phải thực hiện một chức năng xác định rõ ràng.
(3) 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.
(4) 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.
(5) 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. ..
Chức năng các tầng trong mô hình OSI
Application
Presentation
Session
Transport
Network
Data Link
Physical
Application
Presentation
Session
Transport
Network
Data Link
Physical
Hình 1-6: Mô hình OSI 7 tầng
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 10
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.
2 Liên kết
dữ liệu
Thiết lập, duy trì, huỷ bỏ các liên kết dữ liệu, kiểm soát
luồng dữ liệu, phát hiện sai sót vsà khắc phục các sai sót
truyền tin.
3 Tầng
mạng
.Thực hiện việc chọn đ−ờng và chuyển tiếp thông tin với công
nghệ chuyển mạch thích hợp. Thực hiện việc kiểm soát luồng
dữ liệu và cắt hợp dữ liệu nếu cần.
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
5 Tầng
phiên
Thiết lập, duy trì và đông bộ hoá và huỷ bỏ các phiên truyền
thông
6 Trình
diễn
Biểu diễn thông tin theo cú pháp ng−ời sử dụng để đảm bảo
truyền dữ liệu của các ứng dụng qua môi tr−ờng OSI.
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-7 Chức năng các tầng trong mô hình OSI
b) 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à
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 11
một thực thể 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ụ là có sẵn tại các nút truy cập dịch vụ
(SAP). Các SAP của tầng N tại các chỗ 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
(interface). Giao diện này gồm một hoặc nhiều điểm truy cập dịch vụ (Service
Acess Poent – SAP) (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, sơ hoạt động đ−ợc mô tả nh− hình sau:
Hình 1-8: 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à ng−ời 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à Service user 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 Service Provider, 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 đó.
(N+1)Layer
(N)Layer
(N+1)Layer
(N)Layer
Request
SAP SAP
Confirm
(N)Protocol
IndicationResponse
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 12
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-9: Quan hệ đơn vị dữ liệu giữa các tầng kề nhau
+ Tầng (N) của A cấu tạo một đơn vị dữ liệu để gửi yêu cầu đó qua
tầng (N) của B theo giao thức tầng N.
+ Nhận đ−ợc thông báo yêu cầu đó, tầng (N) của B gửi một lên tầng
(N+1) trên nó một hàm Indication
+ Tầng (N+1) của B gửi xuống tầng (N) kề d−ới nó một hàm Reponse.
(N) của A theo giao thức tầng (N) đã xác định 0.
+ 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 tầng đến (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.
c) Ph−ơng thức hoạt động: có liên kết và không có liên kết
ở 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
(N)PCI
(N+1)PDU
(N)SDU
(N)PDU
Tầng N+1
Tầng N
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 13
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ó: N-CONNECT ( thiết lập liên kết ), N-
DATA(Truyền dữ liệu ), và N-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.4.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 đó gắn thêm phần đầu áp 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. Khi
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 14
tầng giao vận ở máy gửi nhận một thông báo từ tầng phiên, gán một Transport
Header và gửi nó qua tầng giao vận nhận.
Hình 1-10: Ví dụ quá trình truyền dữ liệu trong mô hình OSI
Hình 1-10 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.
1.5 Kết nối các mạng máy tính:
1.5.1 Các tiếp cận: trong quá trình phát triển mạng máy tính, nhiều
công ty, nhiều vùng, nhiều quốc gia đã xây dựng các hệ thống mạng khác
nhau về chủng loại, kiến trúc, khoảng cách... Nhu cầu trao đổi thông tin của
xã hội ngày càng cao nên việc kết nối các mạng với nhau là vấn đề bức thiết.
Làm cho những ng−ời sử dụng trên các mạng khác nhau có thể trao đổi thông
tin với nhau một cách dễ dàng, hiệu quả và an toàn mà không phải xây dựng
lại hệ thống mạng đã có.
để kết nối các mạng với nhau, ng−ời ta xuất phát từ một trong hai quan điểm
sau:
(1) Xem mỗi nút của mạng con nh− một hệ thống mở, hoặc
(2) Xem mỗi mạng con nh− một hệ thống mở.
theo quan điểm (1) thì mỗi nút của mạng con có thể truyền thông trực tiếp với
một nút mạng con bất kỳ nào khác. Nh− vậy, toàn bộ các nút của một mạng
con cũng chính là nút của mạng lớn và phải tuân thủ theo một cấu trúc chung.
Theo quan điểm (2) thì hai nút bất kỳ thuộc hai mạng con khác nhau không
thể truyền thông trực tiếp với nhau đ−ợc mà phải thông qua một phần tử trung
gian gọi là giao diện kết nối (Interconnection Iterface) đặt giữa hai mạng con
đó. Điều đó cho phép tạo ra một mạng lớn gồm các giao diện kết nối và các
máy chủ (host) đ−ợc nối với nhau bởi các mạng con.
T−ơng ứng với hai quan điểm này có hai chiến l−ợc kết nối các mạng
với nhau. Theo quan điểm (1) ng−ời ta tìm cách xây dựng các chuẩn chung
cho các mạng (nh− các chuẩn của ISO, CCITT. ..) Theo quan điểm (2) ng−ời
ta xây dựng các giao diện kết nối để tôn trọng tính độc lập giữa các mạng
hiện có. Việc xây dựng các chuẩn chung cho tất cả các mạng là một điều rất
khó thực hiện, bởi vì hiện nay có hàng ngàn mạng đang tồn tại không thể loại
Giao thức lớp ứng dụng
Application
Presentation
Session
Transport
Network
Data Link
Physical
Application
Presentation
Session
Transport
Network
Data Link
Physical
Data
AH Data
PH Data
SH Data
TH Data
NH Data
DH Data
PH Bits
Giao thức trình diễn
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 15
bỏ đi để xây dựng mới vì quá tốn kém. Từ đó ng−ời ta đã tạo ra hàng loạt các
thiết bị giao diện cho phép kết nối các mạng với nhau.
1.5.2 Giao diện kết nối
Ng−ời ta có thể kết nối các mạng con với nhau nhờ các giao diện kết
nối. Hình 1-12 minh hoạ cho việc kết nối các mạng con SN1, SN2, SN3 và
SN4 là các mạng con ; G1, G2, G3, G4 là các giao diện kết nối.
chức năng của một giao diện tuỳ thuộc vào sự khác biệt về kiến trúc của các
mạng con. Sự khác biệt càng lớn thì chức năng của các giao diện càng phức
tạp. Các giao diện có thể nối đôi, nối ba, nối nhiều hơn tuỳ thuộc vào ng−ời
thiết kế mạng. Dựa vào chức năng của giao diện mà chúng có những tên gọi
khác nhau nh−: bridge, Router, gateway.
Gateway là tên chung của giao diện kết nối, nó đ−ợc sử dụng trong
tr−ờng hợp chức năng của giao diện là phức tạp. Bridge đ−ợc dùng trong
tr−ờng hợp đơn giản nhất, chẳng hạn nh− kết nối giữa các mạng LAN cùng
loại. Còn Router hoạt động ở mức cao hơn bridge vì nó đảm nhận chức năng
chọn đ−ờng cho các gói dữ liệu để đi đến đích.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 16
Ch−ơng ii Giao thức TCP/IP
Trong ch−ơng này chúnh ta sẽ xem xét về chồng giao thức TCP/IP. Đây
là giao thức đ−ợc sử dụng rộng rãi nhất hiện nay trong kĩ thuật kết nối mạng
máy tính. Chúng ta sẽ tìm hiểu về kiến trúc phân tầng của TCP/IP cùng với
chức năng chính của chúng. Sau đó chúng ta sẽ tập trung xem xét kĩ về các
giao thức chính trong lớp 3 (Internet Layer) và trong lớp 4 (Transport Layer)
của mô hình phân cấp này.
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 Iternet Protocol
Suit và th−ờng đ−ợc gọi tắt là TCP/IP. Dùng TCT/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ó.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 17
• 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.
2.2 Cấu trúc phân lớp của TCP/IP
Nh− ta đã nói ở phần tr−ớc, TCP/IP cũng là mô hình mở để kết nối
mạng. Nó cũng đ−ợc thiết kế theo mô hình kiến trúc phân tầng t−ơng tự nh−
trong mô hình tham chiếu OSI ta đã trình bày ở ch−ơng tr−ớc. Bộ giao thức
TCP/IP đ−ợc thiết kế gồm bốn lớp đ−ợc mô tả nh− hình sau đây:
Application
Transport
Internet
Network
Interface
•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 chuơ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.
• Lớp vận chuyển (Transport): 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ũng 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, đả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 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
Packets) và chuyển mỗi packet 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ô hình phân lớp
Đối t−ợng đ−ợc chuyển giữa các lớp
Message or Streams
Transport Protocol Packets
IP Datagrams
Network-Specific Frames
Hình 2-1: Mô hình phân lớp của TCP/IP
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 18
Mặc dù hình 2-1 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 packet, 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.
•Internet layer: Nh− chúng ta vừa thấ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ừ 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 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 datagrams 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ý packet. Trong lớp
Internet còn gửi các ICMP (Information Control Message Protocol)và các
messages điều khiển khi cần thiết và xử lý tất cả mọi ICMP Messages tới.
Application
Transport
Internet
Network
Interface
Application
Transport
Internet
Network
Interface
Internet
Network
Interface
Physcal net 1 Physcal net 2
Identical
message
Identical
packet
Router R
Identical
datagram
Identical
datagram
Identical
frame
Identical
frame
Hình 2-2
Host A Host B
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 19
•Network Interface 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 datagrams 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ử 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).
Để hình dung sự hoạt động trong môi tr−ờng phân lớp của TCP/IP ta
hãy xét hình vẽ minh hoạ sau:
Nh− hình 2-2 minh họa, việc giao phát message 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 phần tiếp theo ta sẽ sâu tìm hiểu về lớp Internet và lớp Transport,
là hai lớp quan trong nhất trong mô hình phân lớp TCP/IP, thông các giao
thức đ−ợc sử dụng trong hai lớp đó là: giao thức TCP, UDP cho lớp Transport
và giao thức IP, ICMP cho lớp Internet.
2.3 Các giao thức lớp Internet (Internet Protocol - IP)
Internet protocol (IP), là tên gọi giao thức lớp Internet định nghĩa các
ph−ơng tiện giao phát unreliable, connectionless, và th−ờng đ−ợc biết
với cái tên tắt là IP. Tr−ớc nhất, giao thức IP định nghĩa những đơn vị của việc
truyền dữ liệu đ−ợc dùng qua một mạng TCP/IP internet. Vì vậy, nó xác định
chính xác khuôn dạng của tất cả dữ liệu khi nó đ−ợc chuyển qua một mạng
TCP/IP internet. Thứ hai, phần mềm IP thực hiện chức năng chọn đ−ờng để
chọn ra con đ−ờng để gửi dữ liệu qua. Thứ ba, để thêm vào tính chính xác các
đặc tả kĩ thuật của khuôn dạng dữ liệu và chọn đ−ờng thông th−ờng, IP gồm
có cả một tập các luật biểu hiện cho ý t−ởng của hệ thống giao phát gói tin
unreliable. Các luật chỉ rõ việc làm thế nào để các hosts và các Routers xử lý
các gói tin, làm thế nào và khi nào các thông báo lỗi sẽ đ−ợc phát đi, và các
điều kiện cho việc huỷ gói tin. IP là phần chủ yếu của thiết kế nên một mạng
TCP/IP internet đôi khi còn đ−ợc gọi là một mạng dựa trên kĩ thuật IP (IP-
based technology). Chúng ta sẽ lần l−ợt xem xét các vấn đế đ−ợc đề cập trong
IP.
2.3.1 Internet Datagram.
Có rất nhiều sự t−ơng tự giữa một mạng vật lý và một TCP/IP internet.
Trên một mạng vật lý, đơn vị truyền là frame cái chứa một header và dữ liệu,
phần header mang nhiều thông tin nh− địa chỉ nguồn đích. Internet gọi những
đơn vị truyền cơ sở của nó là Internet datagram (IP datagram ) hay đơn giản
là datagram.
Nh− một khung 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−ơongtự frame, nó chứa địa chỉ nguồn địa
chỉ đích và một tr−ờng type dùng định danh nội dung của dtagram. Sự khác
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 20
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.
Datagram Header Datagram Data
a) Khuôn dạng Datagram:
VERS HLEN Kiểu dịch vụ Tổng độ dài
Identification FLAGS FRAGMENT OFFSET
TIME TO LIVE PROTOCOL HEADER CHECKSUM
Source IP Address
Destination IP Address
IP OPTION (IF ANY) PADDING
DATA
. ................
Bởi vì qúa trình xử lý datagram là do phần mềm nên nội dung và khuôn
dạng không bị phụ thuộc bởi phần cứng. Ví dụ bốn bit tr−ờng đầu tiên
(VERS) chứa VERSION của giao thức IP đ−ợc sử dụng để tạo datagram.
Tr−ờng này đ−ợc sử dụng để thẩm tra rằng bên gửi bên nhận và bất kỳ Router
nào trong số giữa chungs đồng ý về khuôn dạng của datagram. Tất cả mọi
phần mềm IP đ−ợc yêu cầu để kiểm tra tr−ờng VERSION tr−ớc khi xử lý một
datagram để đảm bảo nó phù hợp với khuôn dạng mà các phần mềm trông
đợi. Nếu chuẩn thay đổi, các máy sẽ loại bỏ các datagram cùng với các
VERSION giao thức khác với phiên bản của chúng, ngăn cản chúng hiểu sai
nội dung datagram theo các fomat quá cũ. (Tới thời điểm 1995 VERSION của
IP là 4) tr−ờng độ dàI header (HLEN) cũng có bốn bits, đ−a ra gia strị độ dài
header của datagram đ−ợc biểu diễn bởi từ 32 bits. Chúng ta se thấy tất cả các
tr−ờng trong header có một độ dàI cố định trừ tr−ờng IP OPTION và cacs
tr−ờng PADDING t−ơng ứng. Header thông th−ờng nhất không chứa các lựa
chọn (option ) và padding, giá trị 20 octets và có một tr−ờng độ dàI header
bằng 5.
Tr−ờng TOTAL LENGTH đ−a ra độ dài của IP datagram đ−ợc đo bởi
octets, gồm cả các octets của phần header và dữ liệu. Kích th−ớc của vùng dữ
liệu có thể tính toán bằng việc trừ đI chiều dàI của header (HLEN) từ giá trị
của TOTAL LENGTH. Bởi vì tr−ờng TOTAL LENGTH là 16 bits nên giá trị
tối đa của gói tin IP là IP là 216 hay 65535 octets. Trong hầu hết các ứng dụng,
đIũu này không phảI là một hạn chế nghiêm trọng. Nó có thể trở nên quan
trọng hơn trong t−ơng lai nếu các mạng có tốc độ cao hơn có thể mang các
gói dữ liệu lớn hơn so với 65535 octets.
b) Kiểu datagram của dịch vụ và quyền −u tiên tr−ớc datagram.
Kiểu dịch vụ TOS (Type of service) đ−ợc gọi một cách không chính
thức là tr−ờng service type 8bits xác định làm thế nào datagram sẽ đ−ợc xử lý
và đ−ợc phân ra 5 tr−ờng nhỏ hơn (subfield) nh− hình sau:
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 21
0 1 2 3 4 5 6 7
PRECEDENCE D T R UNUSER
Ba bits PRECEDENCE xác định quyền đi tr−ớc của datagram với giá
trị từ 0-7, cho phép ng−ời gửi chỉ rõ mức độ quan trọng của mỗi datagram.
Mặc dù hầu hết các hosts và phần mềm Router bỏ qua kiểu dịch vụ nh−ng nó
là một kháI niệm quan trọng bởi vì nó cung cấp một –ph−ơng tiện có thể cho
phép thông tin đIũu khiển có quyền −utiên trên dữ liệu. Ví dụ nếu tất cả các
host và các Router tôn trọng quyền đI tr−ớc thì nó có thể thi hành các giảI
thuật đIũu khiển tắc nghẽn. Các bits D,T và R xác định kiểu vận chuyển
datagram yêu cầu. Khi thiết lập bit D yêu cầu độ trễ thấp, bit T yêub cầu độ
thông cao, và bit R nyêu cầu độ tin cậy cao. Dĩ nhiên nó có lẽ không thể cho
một internet để đảm bảo kiểu vận chuyển đ−ợc yêu cầu ( chẳng hạn nó có thể
là không có con đ−ờng tới đích có quyền đ−ợc yêu cầu. Vì vậy chúng ta nghĩ
về yêu cầu vận chuyển nh− một gợi ý cho các giảI thuật chọn đ−ờng, không
phảI nh− một nhu cầu. Nừu một Router không biết nhiều hơn một khả dụng
tới một đích cho tr−ớc thì nó có thể sử dụng tr−ờng type of transport để lựa
chọn một kiểu với các đặc đIểm gần vơí những mong muốn đó nhất. Ví dụ,
giảt sử một Router có thể chọn giữa một đ−ờng leased line dung l−ợng thấp
hoặc một kết nối vệ tinh băng thông cao ( nh−ng trễ cao). Các datagram mang
Key Stroke từ một ng−ời dùng tới một máy ở xa có bit D thiết lập đòi hỏi rằng
chúng chúng phảI đ−ợc giao phát càng nhanh cành tốt, trong khi các
datagrams mang một file khối l−ợng lớn hơn có thể 7 bit thiết lập yêu cầu
rằng chúng đI qua con đ−ờng vệ tinh dung l−ợng cao.
Nó cũng rất quan trọng để nhận ra rằng các giảI thuật chọn đ−ờng phảI
chọn từ giữa các kỹ thuật mạng vật lý bên d−ới, vì mỗi kỹ thuật có những đặc
tính trễ, đọ thông, và độ tin cậy riêng. Th−ờng một kỹ thuật cho tr−ớc t−ơng
ứng đặc tính cho một cái khác ( ví dụ: tốc độ thông cao thì trễ lớn ). Vì vậy lý
t−ởng là để đ−a ra cho giải thuật chọn đ−ờng một gợi ý về những gì quan
trọng nhất, nó hiếm khi có nghĩa xác định cả 3 kiểu dịch vụ.
Chúng ta quan tâm đặc tả kiểu giao vận nh− là một gợi ý cho giải thuật
chọn đ−ờng, cái giúp nó lựa chọn giữa nhiều con đ−ờng khác nhau để tới một
đích dựa trên hiểu biết sủa nó về kỹ thuật phần cứng, sẵn có trên con đ−ờng
đó. Một internet không đảm bảo kiểu vận chuyển đã yêu cầu.
c) Đóng gói các datagram.
Tr−ớc khi chúng ta có thể hiểu các tr−ờng hợp tiếp theo trong một
datagram, sẽ là rất quan trọng để quyết dịnh làm thế nào các datagram liên
quan tới các khung mạng vật lý. Chúng ta bắt đầu với câu hỏi: “ Datagram có
thể lớn hơn mức nào “. Không giống nh− các frames mạng vật lý, cái có thể
phải đ−ợc nhận ra bởi phần cứng, các datagrams đ−ợc xử lý bằng phần mềm.
Chúng có thể có bất kỳ chiều dài nào mà ng−ời thiết kế giao thức chọn.
Chúng ta đã thấy rằng khuôn dạng datagram hiện hiện chỉ phân 16bits cho
tr−ờng chiều dài tổng cộng nên giới hạn lớn nhất của chiều dài datagram là
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 22
65535octets. Dù sao, giới hạn đó có thể đ−ợc thay đổi ở version của giao thức
sau này.
Những giới hạn cơ bản hơn về kích th−ớc dfatagram nảy sinh từ thực tế.
Chúng ta biết rằng, khi các datagram chuyển từ máy này tới máy khác, chúng
phảI luôn đ−ợc vận chuyển bằng mạng vật lý bên d−ới. Để thực hiện việc vận
chuyển trong internet một cách hiệu quả, chúng ta phải bảo đảm rằng mỗi
datagram qua mạng trong một frame vật lý phân biệt. Đó là chúng ta muốn
cái nhìn trìu t−ợng về một packet mạng vật lý của chúng ta ánh xạ trực tiếp ra
một packet thực nếu có thể.
Datagram
Header
Datagram Data Area
FRAME
Header
FRAME DATA AREA
Hình 2-2: Bọc gói tin trong IP một frame. Mạng vật lý coi toàn bộ datagram gồm cả
header nh− là dữ liệu.
ý t−ởng về việc mang một datagram trong một frame mạng đ−ợc gọi là
“encapsulation”. Đối với mạng bên d−ới, một datagram giống nh− bất kỳ
messages nào khác đ−ợc gửi từ một máy tới máy khác. Phần cứng không
nhận ra đ−ợc khuôn dạng datagram, cũng không hiểu đ−ợc địa chỉ IP đích. Vì
vậy, hình sau mô tả khi một máy gửi một IP datagram tới một máy khác, toàn
bộ datagram đ−ợc đặt vào phần dữ liệu của frame mạng.
d) Kích th−ớc datagram, network MTU và sự phân mảnh.
Trong tr−ờng hợp lý t−ởng, toàn bộ IP datagram vừa khít trong một
khung vật lý, việc thực hiện truyền dẫn qua mạng vật lý là hiệu quả. Để có
đ−ợc những hiệu quả nh− vậy, những nhà thiết kế IP có thể đã lựa chọn một
kích th−ớc datagram tối đa để một datagram sẽ luôn vừa trong một frame.
Nh−ng kích th−ớc nào của frame sẽ đ−ợc lựa chọn ?. Cuối cùng, một
datagram có thể đi qua nhiều kiểu mạng vật lý khi nó chuyển qua một
internet tới đích cuối cùng của nó.
Để hiểu đ−ợc vấn đề, chúng ta cần yếu tố về phần cứng mạng: Mỗi kỹ
thuật chuyển mạch gói đặt một giới hạn trên cố định trên một số l−ợng dữ liệu
có thể đ−ợc truyền trên một khung vật lý. Ví dụ Ethernet giới hạn việc truyền
tối đa là 1500 octets dữ liệu, trong khi FDDI cho phép tới gần 4470 octets dữ
liệu / 1 frame. Chúng ta gọi những giới hạn này là MTU của mạng
(Maximumn Transfer Unit). Kích cỡ MTU có thể hơi nhỏ: một số kỹ thuật
phần cứng giới hạn truyền 128 octets hoặc ít hơn. Việc giới hạn các datagram
để làm vừa vặn MTU nhỏ nhất trong Internet làm cho việc truyền có hiêụ quả
khi những datagram đó chuyển qua một mạng, cái có thể mang các frame cỡ
lớn hơn. Dù sao thì việc cho phép các datagram lớn hơn so với MTU mạng
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 23
nhỏ nhất trong một internet có nghĩa là một datagram có thể không phải lúc
nào cũng vừa vặn trong một frame mạng.
Hình 2-3: Router R1 phân mảnh các datagrams lớn đ−ợc gửi từ A tới B. R2 phân
mảnh các datagrams từ B tới A.
Sự lựa chọn có thể là hiển nhiên: quan điểm của thiết kế internet là để ẩn đi
các kỹ thuật mạng bên d−ới và làm cho việc giao tiếp thuận tiện với ng−ời
dùng. Vì vậy, thay vì việc thiết kế các datagram tôn trọng triệt để những ràng
buộc của mạng vật lý, thì phần mềm TCP/IP chọn một kích th−ớc datagram
khởi đầu tiện lợi và giúp phân chia các datagram lớn ra các phần nhỏ khi
datagram cần đi qua một mạng có MTU nhỏ. Các phần nhỏ của datagram
đ−ợc chia gọi là phân mảnh (fragment), và quá trình phân chia đ−ợc gọi là
quá trình phân mảnh (fragmentation).
Hình 2-3 minh hoạ quá trình phân chia th−ờng xảy ra tại một Router
nào đó dọc theo con đ−ờng datagram đi từ nguồn tới đích. Router nhận một
datagram từ mạng với một MTU lớn và phải gửi nó qua một mạng có MTU
nhỏ hơn kích th−ớc của datagram. Trong hình vẽ, cả Host gắn trực tiếp tới các
Ethernets có MTU là 1500 octest. Vì vậy cả 2 Hosts có thể phát và gửi tới
kích th−ớc 1500 octests. Nh−ng con đ−ờng giữa chúng là một mạng với MTU
bằng 620. Nếu Host A gửi cho Host B một datagram lớn hơn 620 octests,
Router R1 sẽ phân mảnh datagram đó. T−ơng tự, nếu B gửi 1 datagram lớn
hơn 620 tới A, R2 sẽ phân mảnh chúng.
DATAGRAM
HEADER
Data1
600 octets
Data2
600 octets
Data3
200 octets
(a)
FRAGMENT 1
HEADER
Data1
FRAGMENT 2
HEADER
Data2
FRAGMENT 3
HEADER
Data3
Host
A
Host
B
R1 R2 Net 2
MTU=620
Net 1
MTU=1500
Net 3
MTU=1500
FRAGMENT 1 (offset 0)
FRAGMENT 2 (offset 600)
FRAGMENT 3 (offset 1200)
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 24
Hình 2-4: (a) Một datagram 1400 ocsets và (b) 3 mảnh cho mạng có MTU
bằng 620. Header 1 và 2 có thêm bit thiết lập phân mảnh. Các offset là các số octet
tính theo hệ 10 chúng phải đ−ợc chia cho 8 để lấy giá trị đã cất giữ trong fragment
header.
Kích cỡ mảnh đ−ợc chọn sao cho mỗi mảnh có thể đ−ợc chuyển qua
mạng bên d−ới một frame đơn. Hơn nữa, bởi IP đ−a ra offset của dữ liệu là
bội số của 8 ocsets, nên kích th−ớc của mảnh phân đ−ợc chọn là bội số của 8.
Dĩ nhiên, việc chọn bội 8 là số gần với MTU của mạng nhất th−ờng không
chia datagram thành các phần kích cỡ bằng nhau; phần cuối cùng th−ờng
ngắn hơn những phần khác. Các mảnh phải đ−ợc lắp ráp lại để tạo ra 1 bản
sao đầy đủ của datgram ban đầu tr−ớc khi nó có thể đ−ợc xử lý tại đích.
Giao thức IP Protocol không giới hạn kích th−ớc d−ới cho datagram,
hay là đảm bảo rằng các datagram lớn hơn sẽ đ−ợc giao phát mà không cần
phân mảnh. Nguồn có thể chọn bất kỳ kích th−ớc datagram mà nó cho là
thích hợp; việc phân mảnh và ráop lại diễn ra 1 cách tự động, mà không cần
nguồn phải có một hành động gì. Đặc tả kỹ thuật IP chỉ rõ rằng các Routers
phải chấp nhận các datagram phải có kích cỡ bằng các MTU lớn nhấtcủa các
mạng chúng gắn nối tới. Hơn nữa, 1 Router phải luôn luôn xử lý các datagram
lên tới 576 ocsets (các hosts cũng đ−ợc yêu cầu chấp nhận, và có thể tái lắp
ghép khi cần, các datagrams với ít nhất là 576 ocsets.)
Việc phân mảnh 1 datagram có nghĩa là phân chia nó thành một số
phần mảnh nhỏ hơn. Có thể sẽ làm bạn ngạc nhiên, đó là mỗi phần có cùng
một khuôn dạng nh− datagram ban đầu. Hình 2-4 đã minh hoạ điều này.
Mỗi mảnh chứa một datagram header, nó lặp lại hầu hết thông tin của
datagram header ban đầu (trừ một bit trong tr−ờng FLAGS để chỉ ra rằng nó
là một mảnh) đ−ợc theo sau bởi nhiều dữ liệu nh− nó có thể đ−ợc mang trong
mảnh trong khi dữ tổng chiều dài nhỏ hơn MTU của mạng mà nó phải đi qua.
e)Tái lắp ghép các mảnh.
Một Datagram sẽ đ−ợc lắp ghép sau khi đi qua một mạng, hay là các
mảnh sẽ đ−ợc mang tới. Host cuối cùng tr−ớc khi lắp ghép ? Trong một
TCP/IP internet một khi một Datagram đã đ−ợc phân mảnh thì các mảnh sẽ
đi tới đích nh− thể những Datagram riêng biệt cùng tới một đích cuối là nơi
chúng phải đ−ợc lắp ghép lại. Việc duy trì cho tất cả các mảnh cùng tới một
đích cuối có hai bất lợi. Thứ nhất bởi vì các Datagram không đ−ợc lắp ghép
lại ngay lập tức khi chuyển qua một mạng có MTD nhỏ, nên các mảnh nhỏ
phải đ−ợc mang từ nơi phân mảnh tới đích cuối cùng. Việc lắp ghép lại các
Datagrams tại đích cuối cùng có thể dẫn tới sự không hiệu quả, dù là một số
trong các mạng vật lý đã gặp sau điểm phân mảnh có MTD lớn hơn, trong khi
chỉ các phân mảnh nhỏ đi qua nó. Thứ hai, nếu bất kỳ mảnh nào bị mất,
datagram không thể đ−ợc lắp ghép lại đ−ợc. Máy nhận khởi tạo một bộ timer
lắp ghép khi nó nhận đ−ợc một mảnh khởi đầu Nếu timer hết hiệu lực tr−ớc
khi tất cả các mảnh tới thì máy đang nhận sẽ huỷ các gói mà không xử lý. Vì
vậy khả năng mà các datagram bị mất sẽ tăng khi việc phân mảnh xảy ra, bởi
vì khi một mảnh bị mất thì coi nh− cả datagram bị mất.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 25
Bất chấp một số bất lợi phụ, việc thực hiện lắp ráp tại đích cuối cùng
vẫn hoạt động tốt. Nó cho phép mỗi phân mảnh đ−ợc định tuyến độc lập, và
không đòi hỏi các Router trung gian l−u giữ chúng hoặc lắp ghép chúng.
f) Điều khiển việc phân mảnh
Ba tr−ờng trong phần HEADER của datagram là IDENTIFICATION,
FLAGS và FRAGMENT OFFSET điều khiển việc phân mảnh và lắp ráp
datagram. Tr−ờng IDENTIFICATION chứa một số nguyên duy nhất định
danh datagram. Nhớ lại rằng khi một Router phân mảnh 1 datagram thì nó
copy phần lớn các tr−ờng trong phần HEADER của datagram ban đầu vào
mỗi mảnh. Tr−ờng IDENTIFICATION cũng phải đ−ợc copy. Mục đích tr−ớc
tiên là để cho đích biết là mảnh đến nào là của datagram nào. Khi một mảnh
đến, đích dùng tr−ờng IDENTIFICATION để cùng với địa chỉ nguồn để xác
định datagram. Các máy tính gửi datagram phải tạo ra một giá trị duy nhất
cho mỗi datagram. Một kỹ thuật đ−ợc sử dụng bửi mọt phần mềm IP Giữ một
bộ đếm toàn cục (global counter) trong bộ nhớ, tăng nó mỗi lần một datagram
mới đ−ợc tạo ra, và gán kết quả nh− là tr−ờng IDENTIFICATION của
datagram.
Nhớ lại rằng mỗi mảnh có có chính xác cùng khuôn dạng nh− khuôn
dạng của datagram lúc ch−a phân mảnh.Đối với mỗi mảnh, tr−ờng
FRAGMENT OFFSET xác định độ lệch trong (offset)datagram ban đầu của
dữ liệu đnag đ−ợc mang bằng các mảnh, đ−ợc đo bằng các khối 8 octets bắt
đầu từ offset 0. Để lắp ráp lại các datagram, đích phải có đ−ợc tất cả các mảnh
từ mảnh có offset 0 cho tới mảnh có offset cao nhất.các mảnh không cần phải
đến đúng trật tự và không có giao tiếp giữa Router đã phân mảnh datagram và
đích đang lắp ráp chúng.
Hai bít thấp của tr−ờng FLAGS điều khiển việc phân mảnh. Thông
th−ờng phần mềm ứng dúngử dụng TCP/IP không cần quan tâm tới việc phân
mảnh bởi vì cả việc phân mảnh và lắp ráp lại các mảnh đều là các thủ tục tự
động hoạt động tại một mức thấp trong hệ điều hành mà ng−ời dùng không
thể thấy đ−ợc. Dù sao thì để kiểm tra lại phần mềm internet hoặc gỡ rối các
vấn đề vận hành thì có thể kiểm tra kích th−ớc của các datagram thì rất quan
trọng cho việc phân mảnh xảy ra. Bit điều khiển đầu tiên hỗ trợ trong những
tr−ờng hợp kiểm tra nh− vậy bằng cách xác định rõ là datagram có thể bị phân
mảnh hay là không. Nó đ−ợc gọi là bit không phân mảnh bởi vì việc thiết lập
nó lên giá trị 1 xác định rằng datagram sẽ không bị phân mảnh. Một ứng
dụng có thể chọn để không cho phép phân mảnh trong tr−ờng hợp chỉ khi
toàn bộ datagram mới có tác dụng. Ví dụ xét một qúa trình khởi động từ xa
của một máy tính : nó bắt đầu thi hành một ch−ơng trình nhỏ từ ROM,
ch−ơng này sử dụng internet để yêu cầu thủ tục khởi tạo và máy kia gửi lại
phần mềm mà nó yêu cầu. Tr−ờng hợp này máy cần hoặc là toàn bộ phần
mềm hoặc là không, nên datagram của nó sẽ phải có bit “ donot fragment”
đ−ợc thiết lập 1. Bất cứ khi nào 1 Router cần phân mảnh một datagram có bit
“donot fragment” mang giá trị 1, thì Router đó sẽ huỷ Datagram và gửi một
thông báo lỗi trở lại nguồn.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 26
Bit thấp trong tr−ờng FLAGS xác định là mảnh chứa dữ liệu từ vị trí
giữa của gói tin ban đầu hay từ vị trí cuối. Nó đ−ợc gọi là bit “more
fragment”. Để biết tại sao một bit nh− vậy cần phải có, hãy xem xét việc phần
mềm IP tại đích cố gắng lắp ráp lại một datagram. Nó sẽ nhận đ−ợc các mảnh
có thể không đúng trình tự và cần biết khi nào nó đã nhận đ−ợc tất cả các
mảnh của datagram. Khi một mảnh đến, tr−ờng TOTAL LENGTH ở
HEADER cho biết kích th−ớc của mảnh nh−ng không cho biết kích th−ớc của
gói tin ban đầu, vì vậy đích không thẻ sử dụng tr−ờng TOTAL LENGTH để
biết là nó đã nhận đ−ợc toàn bộ các mảnh hay ch−a. Bit “ more fragment “ đã
quyết định vấn đề này dễ dàng: Một khi đích nhận đ−ợc một fragment với bit
“more fragment “ là 0, nó biết rằng mảnh này mang dữ liệu từ phần cuối của
datagram ban đầu. Từ tr−ờng FRAGMENT OFFSET và TOTAL LENGTH,
nó có thể tính ra đ−ợc chiều dài của datagram ban đầu. Bằng việc kiểm tra
FRAGMENT OFFSET và TOTAL LENGTH của tất cả các mảnh nó nhận
đ−ợc thì bên nhận có thể biết rằng các mảnh nó có chứa tất cả dữ liệu cần để
láp ráp lại toàn bộ datagram hay là không.
g) Time to live (TTL).
Tr−òng TIME TO LIVE xác định thời gian datagram đ−ợc phép tồn tại
trong hệ thống internet, nó đ−ợc tính bằng giây. ý t−ởng thì đơn giản nh−ng
rất quan trọng: bất cứ khi nào một máy đ−a vào trong mạng một datagram thì
nó đặt một thời gian tối đa để tồn tại trong mạng cho datagram đó. Các
Router và các host xử lý các datagram phải giảm giá trị của tr−ơòng TIME
TO LIVE mỗi lần gửi qua và xoá bỏ datagram khi thời gian của datagram hết
hiệu lực.
Việc −ớc l−ợng thời gian chính xác là khó khăn bởi vì các Router
th−ờng không biết thời gian quá độ của các mạng vật lý. Một số luật đơn
giản hoá quá trình xử lý và làm cho việc xử lý các datagram dễ dàng mà
không cần đồng hồ đồng bộ. Tr−ớc hết, mỗi Router dọc đ−ờng từ nguồn tới
đích đ−ợc yêu cầu giảm giá trị tr−ờng TIME TO LIVE đi một đơn vị khi nó
xử lý phần HEADER của datagram. Thêm nữa, để xử lý các tr−ờng hợp các
Router quá tải, mỗi Router báo cáo thời gian cục bộ khi datagram đến và
giảm TIME TO LIVE đi một giá trị bằng số giây datagram ở trong Router
chờ dịch vụ xử lý.
Bất cứ khi nào tr−ờng TIME TO LIVE đạt tới giá trị 0, thì Router sẽ
huỷ datagram đó và gửi thông báo lỗi về nguồn. ý t−ởng của việc duy trì một
bộ timer cho các datagram rất là hữu dụng bởi vì nó đảm bảo rằng các
datagram không thể quanh quẩn trong internet mãi mãi, ngay cả khi bạn chọn
đ−ờng bị lỗi và các Router định tuyến cho các datagram trong một vòng lặp.
h) Các tr−ờng khác của Header trong datagram.
Tr−ờng PROTOCOL t−ong ttự tr−ờng TYPE trong frame của mạng vật
lý. Giá trị trong tr−ờng PROTOCOL xác định giao thức mức cao nào đ−ợc
sử dụng để tạo ra message đang đ−ợc mang trong vùng DATA của một
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 27
datagram. Về bản chất, giá trị của PROTOCOL xác định khuôn dạng của
vùng DATA. Việc ánh xạ giữa một giao thức mức cao và một giá trị nguyên
d−ơng đ−ợc dùng trong tr−ờng PROTOCOL phải đ−ợc quản lý để đảm bảo sự
phù hợp trong toàn internet.
Tr−ờng HEADER CHECKSUM đảm bảo cho tính nguyên vẹn của giá
trị HEADER. IP checksum đ−ợc tạo ra bằng việc coi HEADER nh− là một số
nguyên gồm các cụm 16 bit liên tục, bổ sung chúng cùng với việc sử dụng số
bù một và rồi lấy phần bù kết quả. Vì mục đích tính toán CHECKSUM,
tr−ờng HEADER đ−ợc giả sử là chứa giá trị 0.
Điều quan trọng để nhớ là CHECKSUM chỉ áp dụng với các giá trị
trong IP header chứ không phải cho phần DATA. Việc phân chia checksum
cho các HEADER và DATA có một số thuận lợi nh−ng cũng gây một số bất
lợi. Bởi vì HEADER th−ờng chiếm ít octet hơn phần DATA nên việc có một
tổng kiểm tra riêng làm giảm thời gian xử lý tại các Router. Chúng chỉ cần
tính toán CHECKSUM của HEADER. Sự tách biệt cũng cho phép các giao
thức mức cao hơn chọn CHECKSUM cho bản thân chúng để tính toán với
phần DATA. Điểm bất lợi lớn nhất là việc các Giao thức lớp cao hơn bị buộc
phải bổ sung các CHECKSUM của chúng nếu không có thể phải chịu rủi ro
có lỗi ở phần DATA mà không phát hiện đ−ợc.
Tr−ờng SOURCE IP ADDRESS và DESTINATION IP ADDRESS chứa
địa chỉ IP 32 bits của bên gửi và bên nhận. Mặc dù datagram có thể đ−ợc định
tuyến qua nhiều Router trung gian nh−ng tr−ờng địa chỉ nguồn và địa chỉ đích
không bao giờ thay đổi.
Tr−ờng DATA là vùng dữ liệu của datagram, độ dài của tr−ờng phụ
thuộc vào những gì đang đ−ợc gửi trong datagram.
Tr−ờng IP OPTIONS sẽ đ−ợc thảo luận sau. Tr−ờng PADDING phụ
thuộc vào tuỳ chọn nào đ−ợc chọn. Nó đại diện cho các bits chứa giá trị 0, cái
có thể cần để đảm bảo cho HEADER của datagraam mở rộng tới giá trị là bội
số của 32 bits.
2.3.2 Giao thức ICMP (Internet Control Message
Protocol).
Trong hệ thống không liên kết chúng ta đã vừa mô tả tr−ớc. Mỗi Router
hoạt động một cách tự động, chọn đ−ờng và giao phát các datagram mà không
cần phối hợp với ng−ời gửi. Hệ thống làm việc tốt nếu tất cả các máy làm việc
tốt và phù hợp với các tuyến đ−ờng. Không may là không có hệ thống nào
làm việc tốt tại mọi lúc. Bên cạnh những hỏng hóc về đ−ờng dây thông tin và
các bộ xử lý thì IP còn bị h− hỏng khi máy đích không kết nối tạm thời hoặc
th−ờng xuyên tới mạng. Khi TTL (time to live) hết thời hạn, hoặc khi các
Router trung gian trở lên quá tắc nghẽn không thể xử lý đ−ợc luồng thông tin
đến. Khác biệt quan trọng giữa việc có một mạng hoạt động với phần cứng
riêng và một internet hoạt động với phần mềm là mạng có phần cứng riêng đó
nhà thiết kế có thể bổ sung phần cứng đặc biệt để báo tin cho cho các host
đ−ợc gắn nối khi có vấn đề nảy sinh. Trong một internet, không có những
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 28
ph−ơng tiện phần cứng nh− vậy, ng−ời gửi không thể nói là giao phát bị lỗi là
do đâu. Việc gỡ lỗi trở lên cực kỳ khó khăn. Giao thức IP bản thân nó không
chứa bất cứ thứ gì giúp ng−ời gửi kiểm tra khả năng kết nối hoặc là nhận biết
các lỗi nh− vậy.
Để cho phép các Router trong một internet báo các lỗi hoặc cung cấp
thông tin về tình huống không mong muốn ấy, các nhà thiết kế đã bổ sung
một ph−ơng tiện thông báo mục đích đặt biệt cho giao thức TCP/IP. Ph−ơng
tiện đó là ICMP đ−ợc xem là một phần của IP buộc phải có cho việc hoạt
động.
Giống nh− tất cả l−u thông khác, các thông báo ICMP đi qua Internet
trong phần dữ liệu của IP datagram. Đích cuối cùng của một thông báo ICMP
không phải là ch−ơng trình ứng dụng hoặc ng−ời dùng trên máy đích mà là
phần mềm IP trên máy đó. Dĩ nhiên, nếu ICMP nhận thấy một giao thức hoặc
ch−ơng trình ứng dụng mức cao đã gây ra một lỗi thì nó sẽ báo tin cho
Module thích hợp. Nh− vậy: ICMP cho phép các Router gửi thông báo lỗi
hoặc thông báo điều khiển tới các Router hoặc host khác: ICMP cung cấp
thông tin giữa phần mềm IP trên 1 máy với một phần mềm IP trên một máy
khác.
Ban đầu nó đ−ợc thiết kế đề cho phép các Router báo cáo nguyên nhân
của các lỗi giao phát tới các host. ICMP không bị hạn chế với các Router.
Mặc dù về nguyên tắc là giới hạn sử dụng một số thông báo ICMP, nh−ng 1
máy tuỳ ý có thể gửi 1 ICMP tới bất kỳ một máy nào khác. Vì vậy, 1 host có
thể sử dụng ICMP t−ơng ứng cùng với một Router hoặc một host khác. Thuận
lợi chính của việc cho phép các host sử dụng ICMP là cung cấp 1 ph−ơng
tiệnđơn đ−ợc dùng cho tất cả các message thông tin điều khiển.
Các gói ICMP yêu cầu 2 mức bọc nh− hình vẽ sau:
ICMP HEADER ICMP DATA
Datagram
Header
DATAGRAM DATA AREA
FRAME
HEADER
FRAME DATA AREA
2.3.3 Chọn đ−ờng IP
Trong một hệ thống chuyển mạch gói, việc chọn đ−ờng đ−ợc xem nh−
là một quá trình chọn một con đ−ờng để gửi gói tin, và Router đ−ợc xem nh−
một máy tính thực hiên những lựa chọn nh− vậy. Việc chọn đ−ờng xảy ra ở
một số mức, ví dụ nh− trong mạng WAN (mạng có nhiều kết nối vật lí giữa
các chuyển mạch gói), bản thân mạng phải chịu trách nhiệm quyết định về
việc chọn đ−ờng cho các gói tin từ lúc nó đến cho tới lúc nó rời đi. Những
chọn đ−ờng bên trong mạng nội bộ nh− vậy hoàn toàn tự chứa bên trong
mạng WAN. Máy ở bên ngoài không thể tham gia vào những quyết định chọn
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 29
đ−ờng, chúng đơn thuần chỉ xem mạng nh− một thực thể cần giao phát các
gói tin.
Phải nhớ rằng −u điểm của IP là cung cấp một mạng ảo bao gồm nhiều
địa chỉ mạng vật lí và đ−a ra một dịch vụ giao phát các khung dữ liệu dạng
không kết nối.Vì vậy chúng ta tập trung vào việc chọn đ−ờng Internet hay
chọn đ−ờng IP. T−ơng tự việc chọn đ−ờng trong mạng vật lý, chọn đ−ờng IP
là chọn một con đ−ờng để gửi các gói tin qua con đ−ờng đó. Thuật toán chọn
đ−ờng IP là phải chọn sao cho có thể gửi Datagram các mạng vật lý.
Việc chọn đ−ờng trong một mạng internet có thể rất khó đặc biệt là
giữa các máy tính có nhiều kết nối vật lý tới nhiều mạng. Một cách lí t−ởng,
phần mềm chọn đ−ờng sẽ xem xét việc đó nh− tải mạng, chiều dài datagram
hoặc kiểu dịch vụ đ−ợc định rõ trong phần Header của các datagram khi lựa
chọn con đ−ờng tốt nhất.Hầu hết các phần mềm chọn đ−ờng internet thì
không quá phức tạp.
Để hiểu chọn đ−ờng IP một cách hoàn toàn, chúng ta phải trở lại xem
xét kiến trúc internet với TCP/IP. Tr−ớc tiên ta nhớ rằng mạng internet đ−ợc
tạo ra trên nhiều mạng vật lý đ−ợc kết nối bởi các máy tính gọi là Router. Mỗi
Router có kết nối trực tiếp tới hai hoặc nhiều hơn các mạng vật lí. Trong khi
đó một Host th−ờng kết nối trực tiếp tới một mạng vật lý. Dĩ nhiên là có thể
có một Host đ−ợc kết nối trực tiếp với nhiều mạng, khi đó nó đ−ợc gọi là
multi- homed Host.
Cả Hosts và ROUTERs đều tham gia vào việc chọn đ−ờng cho một IP
datagram tới đ−ợc đích của nó. Khi một ch−ơng trình ứng dụng trên một Host
cố gắng giao tiếp, các giao thức TCP/IP thậm chí phát một hoặc nhiều IP
datagram. Host phải thực hiện quyết định chọn đ−ờng khi nó lựa chọn nơi gửi
các datagrams.Dĩ nhiên các Router cũng thực hiện quyết định chọn đ−ờng (
đó là mục đích tr−ớc tiên của chúng, và là lý do để gọi chúng là ROUTER.)
Thế còn các multi - hosted home ?. Bất kỳ computer nào với nhiều kết
nối mạng có thể hoạt động nh− một ROUTER, và nh− chúng ta sẽ thấy multi
-host chạy ICP/IP có một phần mềm cần cho chọn đ−ờng. Thêm nữa, những
vị trí không đủ khả năng phân chia các Routers, lúc dùng với mục đích chung
chia xẻ thời gian máy nh− cả Hosts và ROUTERs. Dù sao chuẩn TCP/IP cũng
chỉ ra sự riêng biệt rõ ràng giữa chức năng của Host và ROUTER và định vị
trí cố gắng trộn lẫn chức năng của Host và ROUTER trên một máy tính đơn.
Khi thấy rằng các multi - homed Hosts của họ gắn vào các t−ơng tác không
đ−ợc trông đợi. Bây giờ chúng ta sẽ phân biệt các Hosts với các ROUTERs và
giả sử các Hosts không làm các chức năng của Router chuyển gói từ mạng
này tới mạng khác.
Trên đây là những vấn đề chung nhất về chọn đ−ờng IP, những vấn đề
chi tiết hơn về chọn đ−ờng trong mạng máy tính nói chung và mạng TCP/IP
nói riêng sẽ đ−ợc chúng ta dành hẳn một ch−ơng để thảo luận sau.
2.3.4 Các giao thức khác trong lớp Internet
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 30
a) Địa chỉ IP
IP đề ra khái niệm địa chỉ mạng Logic độc lập với địa chỉ mạng cơ sở.
IP dùng một giao thức gọi là giao thức phân giải địa chỉ -ARP (Address
Resolution Protocol) để thiết lập giữa các địa chỉ Logic (còn gọi là địa chỉ IP)
với địa chỉ của các nút. Gói dữ liệu IP có thể phân đoạn thành nhiều phần nhỏ
để phù hợp với đơn vị truyền cực đại - MTU (Maximum Transmission Unit)
của mạng cơ sở.
Địa chỉ IP đ−ợc biểu diến bằng số 32 bit, đ−ợc tách thành bốn vùng có
thể đ−ợc biểu diễn d−ới dạng thập phân, bát phân, thập lục phân hoặc nhị
phân có dấu chấm để tách các vùng. Ng−ời ta chia địa chỉ IP thành 5 lớp dùng
các bit đầu tiên để định danh lớp nh− hình sau:
0 Netid Hostid Class
A
1 0 Netid Hostid Class
B
1 1 0 Netid Hostid Class
C
1 1 1 0 Multicast Class
D
1 1 1 1 0 Reserved Class
E
Sở dĩ phải dùng các kiếu địa chỉ khác nhau là để đánh địa chỉ cần thiết
cho những mạng có kích th−ớc khác nhau. Bảng sau sẽ trình bày số l−ợng
mạng và số node ứng với mỗi lớp địa chỉ:
Lớp địa chỉ Số l−ợng mạng Số l−ợng nút
A 127 16.777.214
B 16.383 65.534
C 2.097.151 254
Trong nhiều tr−ờng hợp, một mạng có thể đ−ợc phân chia thành nhiều
mạng con (subnet), lúc đó có thể đ−a thêm các vùng SubnetID để định danh
thêm các mạng con. Việc phân chia mạng con là một cách cho phép chia một
mạng thành nhiều mạng nhỏ sử dụng cùng một số hiệu mạng mà phần còn lại
của mạng đ−ợc kết nối không biết những thay đổi bên trong mạng. Mặt nạ
mạng con chia vùng Hostid thành địa chỉ mạng con và địa chỉ máy chủ. Mặt
nạ mạng con là một số 32 bit, mà giá trị của nó tuân theo luật sau:
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 31
+ Giá trị 1 trong mặt nạ con t−ơng ứng với vị trí của Netid và số mạng
con trong địa chỉ IP.
+ Giá trị 0 trong mặt nạ con t−ơng ứng với số máy chủ trong địa chỉ IP.
b) Phân giải địa chỉ ARP(Address Resolution Protocol)
Để truyền thông điệp tới một máy chủ trên mạng, nơi gửi phải biết địa
chỉ phần cứng của máy chủ đích. Địa chỉ phần cứng, còn gọi là địa chỉ MAC
(Media Access Control). Địa chỉ IP không phải là đia chỉ vật lý, nó chỉ chứa
địa chỉ nhận dạng máy chủ (Host) và mạng (Net) là địa chỉ 32 bit, trong khi
đó địa chỉ MAC là 48 bit. Vì thế có một cơ chế linh động để xác định địa chỉ
MAC khi biết địa chỉ IP của máy chủ, cơ chế này đ−ợc thực hiện nh− một
giao thức riêng đ−ợc gọi là ARP.
Phần lớn các trạm mạng TCP đều duy trì một bảng chuyển từ địa chỉ LAN vật
lý sang địa chỉ IP. Thực tế nó chỉ là một vùng RAM chứa tham chiếu
(mapping) từ địa chỉ MAC sang địa chỉ IP mà nó học đ−ợc trên mạng. Quá
trình học này nh− sau:
Một trạm (Host A) gửi một khung truyền d−ới dạng Broadcast gọi là khung
yêu cầu ARP trên mạng, khung này chứa địa IP của Host B (nơi cần xác định
địa chỉ) và địa chỉ MAC và địa chỉ IP của máy gửi (Host A). Tất cả các nút
nhận đ−ợc khung truyền này sẽ so sánh địa chỉ của nó với địa chỉ IP trong
yêu cầu ARP. Chỉ có máy chủ có cùng địa chỉ IP với địa chỉ trong khung yêu
cầu ARP mới đáp lại. Nếu Host B tồn tại trên mạng, nó sẽ phản ứng lại địa chỉ
IP mã hoá trong một khung trả lời ARP. Host B khởi động bảng chứa ARP và
nhớ lại địa chỉ này, các giá trị chứa trong bảng này sẽ hết hiệu lực sau một
khoảng thời gian nào đó (thời gian này có thể đ−ợc cấu hình trong một số ứng
dụng TCP/IP).
Một số chú ý về ARP:
• ARP không phải là một phần của giao thức IP nên nó không chứa phần
Header của IP.
• Các yêu cầu và trả lời của ARP đều là các địa chỉ vật lý.
• Trong vùng Ethertypes ARP đ−ợc gán 0806h.
• ARP có khả năng xoá bỏ các địa chỉ đã lâu không dùng.
• Nếu một máy gửi yêu cầu cho chính nó, nó phải tự trả lời.
c)Thủ tục phân giải ng−ợc (RARP- Reverse Address Resolution)
Giao thức này đ−ợc dùng trong tr−ờng hợp khi một trạm trên mạng chỉ
biết địa chỉ phần cứng (MAC) mà không biết địa chỉ IP và có thể đ−ợc sử
dụng trong các trạm làm việc không đĩa (ví dụ nh− Sun Microsystem).
T−ơng tự nh− ARP, máy yêu cầu sẽ gửi một gói RARP yêu cầu tới máy
chủ (Server) tại một vị trí nào đó mà dịch vụ RARP chạy trên đó. Máy RARP
server sẽ trả lời bằng địa chỉ IP một trạm nào đó.
2.4 Các giao thức tầng giao vận.
Trong bộ giao thức TCP/IP có hai giao thức thông dụng nhất cho tầng
Transport là UDP và TCP
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 32
2.4.1.Giao thức bó dữ liệu ng−ời dùng-UDP (User Datagram
Protocol).
UDP là một dịch vụ không kết nối không tin cậy, nghĩa là nó có thể
truyền dữ liệu mà không đòi hỏi thiết lập một mạch dữ liệu, nó cũng không có
cơ chế báo nhận, không sắp xếp thứ tự các gói gửi tới. Do vậy nó có thể làm
mất hoặc trùng lặp dữ liệu mà không báo lỗi nào cho bên gửi (t−ơng tự nh−
IP).
Mỗi đơn vị UDP đ−ợc cung cấp địa chỉ IP nguồn và đích cùng với số
cổng nhận dạng các tiến trình mức ứng dụng liên quan đến việc trao đổi dữ
liệu (t−ơng tự dịch vụ b−u chính). Phần header của UDP rất đơn giản và sẽ có
dạng nh− sau:
0 15 16 31
Source port Destination port
Message length Checksum
DATA
UDP có phần header nhỏ hơn TCP, độ tin cậy nhỏ hơn TCP do nó chỉ
có một Checksum để kiểm tra dữ liệu, các chức năng cũng ít phức tạp hơn do
đó nó hoạt động nhanh và linh hoạt hơn TCP. Vì thế nó rất thích hợp cho các
ứng dụng đ−ợc truyền có tính chất quảng bá hay những ứng dụng trong các
mạng có độ tin cậy cao nh− mạng LAN.
UDP th−ờng đ−ợc dùng cho các ứng dụng không đòi hỏi độ tin cậy cao nh−
NFS, DNS, SNMP, TFTP. UDP cũng đ−ợc sử dụng trong IP Tunneling đ−ợc
dùng để truyền dữ liệu ứng dụng phi TCP/IP trên một mạng TCP/IP. Trong
thực tế khi đi qua các mạng, 99% các bản tin UDP đ−ợc giao nhận.
2.4.2. Giao thức điều khiển truyền dữ liệu - TCP (Transmission
Control Protocol ).
TCP là giao thức kết nối kiểu có liên kết và đáng tin cậy cho phép các
máy chủ hoạt động song công. Nghĩa là phải cung cấp một kết nối logic
(t−ơng tự các mạch điện thoại) giữa hai thực thể tr−ớc khi trao đổi dữ liệu với
nhau, khi mạch ảo này đ−ợc thiết lập thì dữ liệu có thể đ−ợc truyền một cách
đồng thời. Kết nối đ−ợc đ−ợc duy trì trong thời gian truyền dữ liệu. TCP dùng
cơ chế báo nhận và các số tuần tự để duy trì phiên truyền dữ liệu. Số tuần tự
để xác định thứ tự của gói dữ liệu nhằm nhận ra gói bị thất lạc hay trùng lặp.
TCP là giao thức tuần tự h−ớng byte, nghĩa là TCP truyền gói dữ liệu (nhiều
byte) và gán cho mỗi gói một số tuần tự.
TCP 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. Một
cổng kết hợp với một địa chỉ IP tạo thành một Socket duy nhất trong liên
mạng, các liên kết ảo chính là liên kết giữa các Socket.
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 33
a.Header của TCP sẽ có dạng nh− sau:
0 31
Source Port Destination Port
Sequence Number
Acknowledgement Number
Data
Offset
Reserveed
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Checksum Urgent Pointer
Options Padding
TCP data
Các tham số có ý nghĩa nh− sau:
• Source Port (16 bits): Số hiệu cổng trạm nguồn.
• Destination Port (16 bits): Số hiệu cổng trạm đích.
• Sequence Number (32 bits): Số hiệu byte đầu tiên của segment trừ khi bit
SYN đ−ợc thiết lập. Nếu bit SYN đ−ợc thiết lập thì Sequence Number là số
hiệu tuần tự khởi đầu (ISN) và byte dữ liệu đầu tiên là ISN+1.
• Acknowledgement Number (32 bits): Số hiệu của segment tiếp theo mà
trạm nguồn đang chờ để nhận và chỉ ra rằng đã nhận tốt các segment mà
trạm nguồn đã gửi. Mồi khi kết nối đ−ợc thiết lập tr−ờng này luôn luôn
đ−ợc đặt.
• Data Offset (4 bits): Chỉ ra số l−ợng từ (32-bit words) của phần TCP
Header.
• Reserved (6 bits): Đ−ợc để dành cho t−ơng lai.
• Control Bits:
+ URG (Urgent Poiter): Vùng con trỏ khẩn có hiệu lực, phải xử lý số liệu
tr−ớc các số liệu khác.
+ ACK (Acknowledgement): Nếu đ−ợc đặt, gói tin sẽ chứa thông tin báo
nhận.
+ PSH (Push): Chức năng chuyển số liệu (push) mà không cần chờ đầy.
+ RST (Reset): Thiết lập lại kết nối khi cần (th−ờng do lỗi phần cứng hay
phần mềm).
+ SYN (Synchronous): Đồng bộ hoá các số hiệu tuần tự để thiết lập lại
kết nối.
+ FIN: Không còn dữ liệu từ trạm nguồn - kết thúc kết nối.
• Windows (16 bits): Là số l−ợng các byte (octets) dữ liệu bắt đầu từ byte
đ−ợc chỉ ra trong vùng ACK mà trạm nguồn đã sẵn sàng để nhận.
• CheckSum (16 bits): Mã kiểm soát lỗi (theo kiểu CRC) cho toàn bộ
Segment (bao gồm cả header và data).
• Urgent Pointer (16 bits): Con trỏ này trỏ tới số hiệu tuần tự của byte đi sau
dữ liệu khẩn, cho phép bên nhận biết đ−ợc độ dài của dữ liệu khẩn. 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 tuỳ chọn của TCP, bao gồm:
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 34
+ Kết thúc danh sách tuỳ chọn (End of option list).
+ Không hoạt động (No operation).
+ Độ dài tối đa của Segment.
• Padding (độ dài thay đổi): Phần chèn thêm vào Header để đảm bảo
Header có độ dài là bội số của 32 bits. Phần thêm này chứa toàn số 0.
• TCP Data: Chứa dữ liệu của tầng trên.
b.Các dịch vụ đ−ợc TCP cung cấp.
• Thiết lập, duy trì và kết thúc kết nối.
• Chuyển các gói dữ liệu một cách tin cậy qua tiến trình có báo nhận.
• Dùng các gói dữ liệu tuần tự.
• Có cơ chế điều khiển lỗi.
• Có khả năng hỗ trợ nhiều kết nối đồng thời với các tiến trình khác nhau
thông qua dùng Port.
• Trao đổi dữ liệu song công.
c. Quá trình nối - tách:
TCP có rất nhiều quy tắc để truyền thông. Chúng điều khiển TCP để thiết lập
kết nối, truyền dữ liệu và kết thúc kết nối. Vì TCP là thủ tục trạng thái điều
khiển (state-driven protocol), nên các tác động của nó đều phụ thuộc vào các
cờ trạng thái.
Thiết lập kết nối (Establishing a Connection)
Một kết nối có thể đ−ợc thiết lập giữa hai máy chỉ khi thoả mãn các điều kiện
sau:
• Kết nối giữa hai sockets là tồn tại.
• Cả hai máy đồng ý kết nối.
• Cả hai máy có các tài nguyên TCP thích hợp cho kết nối.
Nếu một trong chúng không thoả mãn thì kết nối không thể thực hiện đ−ợc.
Khi kết nối đ−ợc thiết lập, nó đ−ợc cấp phát quyền sở hữu vững chắc cho đến
khi kết thúc. Th−ờng thì có một giá trị quyền −u tiên và giá trị an toàn. Các
giá trị thiết lập này đ−ợc thoả thuận bởi hai ứng dụng khi tiến trình đang đ−ợc
thiết lập.
Khi cần thiết kết nối tới máy ở xa, ứng dụng sẽ yêu cầu TCP gọi lệnh mở -
OPEN CALL. Có hai loại hàm OPEN CALL là thụ động (passive) và chủ
động (active). Trong phần lớn các tr−ờng hợp, kết nối đ−ợc cả hai ứng dụng
mong đợi, vì thế chúng sẽ phát ra các yêu cầu mở thụ động hoặc chủ động
(active or passive open requests).
Thiết lập kết nối bằng thủ tục bắt tay ba lần (three-way handshake). Client gửi
bản tin với SYN=1 (yêu cầu kết nối). Server nhận đ−ợc, nó sẽ gửi bản tin với
SYN=1 và ACK=1. Client đáp lại với bản tin có ACK=1
Machine A
TCP
Active
Open
Connetion
Open
Machine B
TCP
Passive
Open
Connetion
Open
SYS SEQ 50
ACK 51,SYS 200
ACK 201
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 35
Theo hình vẽ trên tiến trình bắt đầu TCP của máy A nhận yêu cầu kết
nối từ giao thức lớp trên (ULP-Upper Layer Protocol), nó trả lời bằng cách
gửi thông điệp mở chủ động tới máy B. Cờ SYN đ−ợc đặt (giá trị 1) và đ−ợc
gán một giá trị tuần tự. Khai báo "SYN SEQ 50," chỉ ra cờ SYN đ−ợc đặt và
giá trị tuần tự - số gửi tuần tự khởi đầu (ISS-Initial Send Sequence) là 50 (có
thể là bất cứ giá trị nào khác). ứng dụng ở máy B phát ra chỉ thị mở thụ động
(passive open) tới TCP của nó. Khi SYN SEQ 50 đ−ợc nhận, TCP của máy B
gửi thông điệp báo nhận về máy A với giá trị là 51. Máy B cũng đặt giá trị ISS
của riêng nó. Thông điệp "ACK 51, SYN 200," chỉ ra thông điệp đ−ợc báo
nhận bằng giá trị số tuần tự là 51, cờ SYN đ−ợc thiết lập và có giá trị ISS là
200.
Máy A gửi trả lại thông điệp báo nhận với số tuần tự là 201. Đó là
"ACK 201" trong bó dữ liệu. Sau khi kết nối đ−ợc mở và báo nhận, máy A
máy B sẽ gửi các thông điệp kết nối mở (connection open) qua ULP tới ứng
dụng yêu cầu.
Truyền dữ liệu (Data Transfer)
Mỗi khối dữ liệu đ−ợc nhận bởi TCP của máy A từ ULP, TCP đóng gói
và gửi tới máy B với các số tuần tự tăng dần. Sau khi máy B nhận, nó sẽ báo
nhận bằng một khung báo nhận chỉ ra nó đã nhận đầy đủ.
Dịch vụ truyền dữ liệu của TCP bao gồm 6 dịch vụ con sau:
• Song công: cho phép cả hai đầu kết nối có thể truyền bất cự thời điểm
nào.
• Đúng lúc: dùng một đồng hổ để đảm bảo dữ liệu đ−ợc truyền trong một
khoảng thời gian vừa phải.
• Thứ tự: dữ liệu đ−ợc truyền từ một đầu và sẽ đ−ợc nhận đúng thứ tự tại
đầu còn lại cho dù nó có thể không qua lớp IP do TCP tổ chức lại
chúng và chuyển lên lớp trên.
• Đánh dấu (Labeled): Tất cả các kết nối đều dựa trên các giá trị −u tiên
và giá trị bảo đảm (precedence, security value).
• Điều khiển luồng: TCP có thể điều khiển luồng thông tin bằng dùng bộ
đệm và giới hạn cửa sổ.
• Sửa lỗi: Checksums đảm bảo dữ liệu sẽ không bị lỗi trong điều kiện
giới hạn của thuật toán tổng kiểm tra.
Đóng kết nối (Closing Connections)
Machine A
TCP
Send
Data
Receive
Data
ACK 101
DATA SEQ 250
ACK 251
Machine B
TCP
Send
Data
Receive
Data
SYS SEQ 100
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 36
Kết thúc kết nối bằng thủ tục bắt tay hai lần (two-way handshake). TCP
của một máy nhận hàm nguyên thuỷ đóng (close primitive) từ ULP và phát ra
một thông điệp với cờ FIN đ−ợc thiết lập. Nh− hình vẽ, TCP của máy A gửi
yêu cầu đóng kết nối tới máy B với một giá trị tuần tự. Máy B gửi trả lại báo
nhận của yêu cầu với giá trị số tuần tự tiếp theo. Máy B gửi thông điệp đóng
qua ULP tới ứng dụng và chờ ứng dụng báo nhận quá trình đóng. Tuy nhiên
b−ớc này không cần phải bắt buộc nh− vậy, TCP có thể đóng kết nối mà
không cần sự đồng ý của ứng dụng.
Sau khi nhận đ−ợc đồng ý đóng kết nối từ ứng dụng (hoặc sau khi yêu
cầu đã quá hạn), TCP của máy B gửi lại máy A một gói với cờ FIN đ−ợc đặt.
Cuối cùng, máy A chấp nhận đóng và kết nối kết thúc.
Một kết nối có thể bị kết thúc đột ngột khi socket ở một đầu bị ngắt (shuts
down) có thể là không có một thông báo nào với máy khác và cũng không có
l−u ý gì đến dữ liệu đ−ợc truyền giữa hai máy. Ngoài sự ngắt đột ngột do
nhiều trục trặc hoặc nguồn, nó còn có thể do ng−ời sử dụng, do một tiến trình
ứng dụng hoặc điều khiển hệ thống. Đầu còn lại của kết nối có thể không
nhận ra ngắt đột ngột cho đến khi nó cố gắng gửi thông điệp và hết thời gian.
Để theo dõi
các kết nối,
TCP dùng
bảng kết nối.
Mỗi kết nối
ứng với một
mục trong
bảng sẽ chứa
thông tin về
kết nối đầu-
cuối (end-to-
end) nh− hình vẽ bên.
ý nghĩa các cột nh− sau:
• State (trạng thái): Trạng thái của kết nối (đã đóng, đang đóng, nghe,
chờ,. . . ).
• Local address (địa chỉ cục bộ): Địa chỉ IP cho kết nối. Khi trong trạng
thái nghe, nó đ−ợc đặt 0.0.0.0.
• Local port (cổng cục bộ): Số cổng cục bộ.
• Remote address (địa chỉ ở xa): Địa chỉ IP của máy ở xa.
Machine A
TCP
Close
Connection
Closed
SEQ 475, ACK 351
FIN SEQ 475, ACK 351
ACK 476
Machine B
TCP
Request
To
Close
Connection
Close
FIN SEQ 100
STATE
LOCAL
ADDRESS
LOCAL
PORT
REMOTE
ADDRESS
REMOTE
PORT
Connection 1
Connection 2
Connection 3
Connection 4
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 37
• Remote port (cổng ở xa): Số cổng của kết nối ở xa.
2.5 Các ứng dụng cơ bản trên Internet
2.5.1 Th− điện tử (giao thức truyền th− đơn giản - SMTP).
Đây là giao thức đ−ợc sử dụng rộng rãi nhất để gửi thông điệp
(Message) giữa hai ng−ời dùng. Nó t−ơng đối đơn giản. Message sẽ đ−ợc tạo,
đánh địa chỉ và gửi từ ứng dụng cục bộ tới ứng dụng SMTP. Server sẽ kiểm tra
định kỳ xem có thông điệp nào đ−ợc chuyển, nếu không có nó sẽ thử lại.
Server cố gắng gửi thông điệp trong ít phút, nếu không đ−ợc nó sẽ huỷ thông
điệp hoặc gửi trả về ng−ời gửi.
Địa chỉ SMTP sẽ có dạng nh− sau: local-Part@.domain-name.
Ví dụ: Nauglex@vax1.wellfleet.com.
Trong đó:
• Naulex: User Name
• Vax1: Computer Name
• Wellfleet: Entity
• Com: Commercial
Địa chỉ SMTP tuân theo chuẩn đ−ợc định nghĩa trong RFC822.
Từ trạm làm việc đến SMTP server, ng−ời ta dùng giao thức
Client/Server nh− POP3 (Đ−ợc định nghĩa trong RFC 1460).
Dùng trong thông điệp phi văn bản dùng UUencode hoặc MIME (RFC
1521,1522,1536).
SMTP sử dụng cổng TCP 25.
Th−ờng dùng các ch−ơng trình sendmail, mmdf (dùng cho cả Client và
Server, chạy ở chế độ nền nh− DAEMON). Dùng kiểu spool hoặc queue, khi
message đến nó xếp vào hàng đợi và gắng phát. Khi quá thời gian qui định,
message se bị gửi trả lại hoặc bị xoá.
Khi kết nối đ−ợc thiết lập, các SMTP trao đổi với nhau mã nhận thực
(authentication code).
User User
Internetwork
Hệ điều hành
Hệ quản lý th−
Client
SMTP
Server
SMTP
TCP/IP
Port 25
Hệ điều hành
Hệ quản lý th−
Client
SMTP
Server
SMTP
TCP/IP
Port 25
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 38
Một hệ thống gửi lệnh mail và các thông tin về message SMTP nhận
gửi thông tin báo nhận (acknowledment). Sau đó, SMTP gửi sẽ đ−a lệnh
RCPT, nếu có nhiều ng−ời nhận sẽ có nhiều RCPT, sau mỗi RCPT sẽ có một
acknowledgment. Cuối cùng SMTP gửi lệnh DATA để phát dữ liệu. Kết thúc
bằng lệnh QUIT.
Giao thức truyền tệp bằng th−:
Trong các hệ thống ghép nối với mạng Internet, đây là việc sử dụng giao thức
truyền tệp để tiếp xúc với các hệ máy tình khác ở xa mà không cần quyền
thâm nhập, đi vào các th− mục công cộnhg của nó, hoặc chuyển các tệp tin
của nó vào vào vùng l−a trữ đĩa riêng của mình. Để sử dụng FTP Mail ta gửi
một thông điệp tới FTP Server. Trong nội dung thông điệp, mọi yêu cầu đ−ợc
ghi lại trên một dòng lệnh. Những yêu cầu này là những chỉ thị để điều khiển
phiên làm việc của Anonymous FTP, FTP Mail Server nhận đ−ợc thông điệp,
thực hiện các yêu cầu. Kết quả phiên làm việc sẽ đ−ợc chuyển tự động tới
ng−ời yêu cầu.
Những lệnh FTP Mail quan trọng:
Reply address’s Địa chỉ phúc đáp.
Connect host Kết nối tới Anonymous FTP
Host.
ASCII file, binary
file
Tệp văn bản, tệp nhị phân.
Uuencode, btoa Đổi tệp nhị phân thành tệp văn
bản.
Chdir directory Chuyển sang th− mục đã đ−ợc
mô tả.
Get file Chuyển một tệp.
Help Mô tả cách sử dụng FTP Mail.
Dir [directory] Chuyển một danh sách th− mục
dài.
Is [directory] Chuyển một danh sách th− mục
ngắn.
Quit Kết thúc phiên làm việc (chỉ gồm
tên).
2.5.2 Đăng nhập từ xa - Telnet(Terminal Network Emulation)
Tiền thân của Telnet là Terminal Login của ARPARNET
Lệnh của Telnet có dạng nh− sau: Telnet host [port]
Giá trị mặc định của Port đ−ợc chứa trong tệp:
\%SystemRoot%\system32\drive\etc\services.
Nếu không có giá trị nào thì mặc định là 32.
Telnet đ−ợc sử dụng cho kết nối giả lập thiết bị đầu cuối đến một máy chủ
[host] ở xa. Giao thức này lợi dụng TCP nh− là một giao thức vận chuyển để
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 39
truyền thông tintừbàn phím ng−ời dùng tới máy chủ (host) ở xa và hiển thị
thông tin từ máy chủ ở xa trên màn hình làm việc của trạm làm việc.
Telnet đối xử với 2 thiết bị đầu cuối chuẩn vào (bàn phím, tệp,...) và ra (màn
hình, máy in, các tệp) nh− là các thiết bị mạng đầu cuối ảo - NVT (Network
Vitual Terminal) có các ch−ơng trình điều khiển việc dịch từ NVT thành các
thiết bị vật lý thực, khái niệm NVT cho phép Telnet kết nối tới bất kỳ thiết bị
vật lý nào miễn là có mã t−ơng ứng với thiết bị thực. Khi kết nối đ−ợc thiết
lập, sự thiếu các mã bị phát hiện (sự thiếu này là do các thiết bị vật lý không
hỗ trợ mọi hoạt động vì thế các NVT không có mã t−ơng ứng) quá trình có
thể bị bỏ qua. Một đầu hỏi xem có hàm hỗ trợ không, đầu kia trả lời có hoặc
không. Nếu có các mã này sẽ đ−ợc gửi và tạo các hàm một cách nhanh chóng.
Khi kết nối đ−ợc thiết lập qua Telnet, một ch−ơng trình hoạt động nh− Telnet
Server tên là Telnetd bắt đầu quá trình trên Server, tất cả các cú gõ phím trong
một phiên Telnet đều qua các quá trình sau:
Pseudo_TTY driver: Hoạt động nh− Terminal đối với các ứng dụng.
Tuy nhiên tr−ớc khi thiết lập kết nối, Telnet phải đồng bộ với các thiết bị ở xa
(Ví dụ nh− DOS sử dụng CR-LF để xuống dòng, trong khi đó UNIX lại sử
dụng LF).
Terminal Telnet Telnetd Application
Terminal
Driver
TCP
TCP
Pseudo
TTY
network
Client
Hệ điều hành
Hệ đăng nhập từ
xa của máy
Client
Server
Hệ điều hành
Hệ đăng nhập từ
xa của máy
Server
Internetwork
TCP/IP
Port 23
TCP/IP
Port 23
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 40
2.5.3.Truyền tệp - FTP (File Transfer Protocol)
Đây là dịch vụ cho phép ng−ời sử dụng đăng nhập vào máy ở xa nh−ng
chỉ ở mức chuyển giao tệp. Trên Internet có rất nhiều máy FTP Server, trên
chúng đặt rất nhiều tệp, các phần mềm và đ−ợc tổ chức thành các th− viện tệp,
FTP cho phép truyền tệp qua lại, điều khiển các th− mục, truy nhập vào e-
mail nh−ng không cho phép thực hiện ch−ơng trình.
Khác với các ứng dụng khác chỉ sử dụng một cổng, FTP sử dụng hai kênh.
TCP cổng 20 dùng cho dữ liệu PI (Protocol Interpreter), cổng 21 dùng cho
điều khiển DTP (Data Transfer Process). Thêm nữa FTP truyền tệp ở chế độ
Foreground thay vì Background, nó lại không dùng spooler hay queue, vì thế
ng−ời sử dụng có thể xem quá trình truyền tệp trong thời gian thực.
Cũng nh− Telnet, FTP cũng có ch−ơng trình Server chạy liên tục và một
ch−ơng trình chạy riêng đ−ợc chạy ở Client. Nh−ng nó khác với Telnet ở chỗ,
sau khi đăng nhập vào máy FTP ta không thực sự ở máy đó mà vẫn ở máy cục
bộ vì thế mọi chỉ thị phải t−ơng ứng.
Nhiều FTP Server hỗ trợ Anonymous FTP với UserId là “anonymous”,
password là “guest” ta có thể đăng nhập vào FTP nh−ng với quyền hạn chế.
Trong các hệ thống mạng lớn, có các hệ thống nh− YP (Yellow Page) và NIS
(Network Information Service) cho phép ta thâm nhập vào phần lớn các máy.
Tuy nhiên FTP có nh−ợc điểm là quá trình truy cập vào th− mục là chậm
chạp. Theo cách truyền thống là ng−ời quản trị mạng cung cấp danh sách đệ
qui các th− mục tệp nh−ng điều này phức tạp hoặc tạo ra các tệp README ở
mỗi th− muc, tuy nhiên tệp này luôn lạc hậu.
2.5.4.Truyền th− đơn giản - TFTP(Trival FTP)
FTP sử dụng TCP để đảm bảo tin cậy. Nếu mạng vốn có tính tin cậy
cao (nh− mạng LAN) ta có thể dùng UDP, một ví dụ về giao thức truyền tệp
tin bằng giao thức này là TFTP, ngoài sự khác biệt này với FTP, TFTP không
đăng nhập vào máy từ xa nh− FTP. Các tệp đ−ợc truyền chỉ cần tên tệp, không
cần UserID và Password.
Vì không phải điều khiển quá trình truyền tệp, nên TFTP không cần các thuật
toán phức tạp. Nó đặc biệt thích hợp với các thiết bị đầu cuối và các trạm làm
User Interface
Client PI
Client DTP
File System
Client PI
Client DTP
File System
Data (20)
Control (21)
Port 20: Khởi tạo việc thiết lập kết nối và điều khiển
kết nối, nó chỉ chứa thông tin điều khiển
Port 21: Dữ liệu
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 41
việc không đĩa để nạp các hệ điều hành hoặc các ch−ơng trình lên các máy
này.
Gói đầu tiên đ−ợc truyền từ Client tới Server là gói điều khiển, nó chỉ ra tên
tệp để đọc hay ghi. Các gói tiếp theo là các gói dữ liệu, đ−ợc đánh số liên tiếp
từ 1. Bên nhận sẽ dùng các số hiệu này để nhận biết thứ tự gói đến. Bất kỳ gói
nào bé hơn 512 byte đều đánh dấu kết thúc quá trình truyền. Có thể thông báo
lỗi thay vì truyền dữ liệu, khi đó quá trình truyền kết thúc.
2.5.5.DNS(Domain Name System).
Địa chỉ IP là địa chỉ 32 bit rất khó nhớ, vì thế có một dịch vụ tên là
DNS để chuyển địa chỉ IP thành tên t−ợng tr−ng. DNS cung cấp 1 CSDL phân
tán của tên và địa chỉ IP. Hệ thống này cững l−u trữ dự phòng những mô tả
cho máy chủ và cung cấp phân giải tên cho những họ khác bên cạnh TCP/IP
(nh− Chaonets và XNS).
DNS là một cấu trúc phân cấp nh− hình vẽ sau:
Tên có dạng: Local-part@Domain-Name.
Trong đó: Local-Part là tên của Host hoặc ng−ời dùng, sẽ có hai thực thể tham
gia vào quá trình tham chiếu này, đó là Name Resolver(NR) và Name
Server(NS).
Khi ng−ời dùng tại trạm làm việc gõ TELNET HOST tại dòng lệnh thì trạm
này phải cài đặt NR, NR sẽ gửi yêu cầu tới Name Server để phân giải thành
địa chỉ IP. Nếu tên của Host đ−ợc tìm thấy, thì nó sẽ gửi địa chỉ IP lại cho
trạm làm việc và trạm làm việc sẽ dùng địa chỉ này.
Hình d−ới đây chỉ ra DNS dùng hơn hai thực thể:
ROOT
GOR EDU COM MIL ORG CON
3COM CISCO GRAYDON
Work
Station
Name
Sever
Host
148.1.1.9
148.1.1.9 Host
NS Response
NR Request Bảng tham chiếu
148.1.1.3
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 42
Cache đ−ợc dùng để tìm các tên có tính địa ph−ơng, nếu tên đ−ợc tìm
thấy ngay tại cache địa ph−ơng thì nó sẽ tham chiếu ngay ra địa chỉ IP và gửi
yêu câù đến NS nữa. Nếu nó không gửi yêu cầu đến NS, NS này sẽ tìm trong
bảng của nó, nếu không thấy nó sẽ nhờ NS khác là FNS tìm hộ. FNS này có
thể tìm thấy hoặc không thì nó sẽ báo với User là không tìm thấy.
2,5,6.Tra cứu theo thực đơn - GOPHER.
Đây là dịch vụ tra cứu theo chủ đề dựa trên hệ thống thực đơn mà
không cần biết địa chỉ IP t−ơng ứng. Gopher hoạt động theo mô hình
Client/Server nghĩa là cần hai ch−ơng trình Client Gopher và Server Gopher.
Khi ng−ời sử dụng yêu cầu Gopher Server, nó sẽ tả về một danh sách các chủ
đề thông tin d−ới dạng thực đơn (dùng giao thức Gopher). Một vài đề mục có
thể kết nối với các Gopher khác và một số dịch vụ nh− FTP,Telnet,... Tuy
nhiên Gopher chỉ có thể hiển thị dữ liệu dạng văn bản, do vậy gopher không
đòi hỏi đ−ờng truyền giải thông cao.
2.5.7 Máy chủ thông tin diện rộng - WAIS (Wide Area
Information Server).
Cho phép tìm kiếm và truy nhập thông tin mà không cần biết chúng
đang ở đâu. WAIS cũng hoạt động theo mô hình Client/Server. Tuy nhiên
ngoài WAIS Client và WAIS Sever, còn có WAIS Indexer thực hiện việc cập
nhật dữ liệu và sắp chỉ mục. WAIS Server nhận yêu cầu từ Client tìm kiếm
trong CSDL (do Indexer tạo ra) các tệp phù hợp, đánh giá độ phù hợp (câu hỏi
tìm kiếm theo chuẩn Z39.50 của ANSI). Các phần mềm đánh giá chỉ mục có
thể xử lý đ−ợc rất nhiều các dạng dữ liệu khác nhau nh− các tệp văn bản,
danh sách th− điện tử, ảnh,... và có thể dễ dàng thêm các kiểu dữ liệu mới.
Để tìm tin, các công việc sau phải đ−ợc thự hiện:
Ta đ−a ra từ khoá.
WAIS sẽ tìm các tài nguyên cho ta.
Ta tìm kiếm thông tin trong các nguồn tài nguyên.
Cache
FNS
NS
cache
NRUSER
cache
Data base
Data baseThêm Tham Chiếu
Thêm Tham
Chiếu
FNS: Foreign Name Server
NS : Name Server
NR: Name resolver
Đồ án tốt nghiệp Chọn đ−ờng vμ ứng dụng trong thiết kế mạng WAN
Nguyễn xuân tr−ờng - đtth2 - k40 43
2.5.8.Tìm kiếm tệp - ARCHIE (Archieve).
Là dịch vụ Internet cho phép tìm kiếm theo chỉ số. Có thể tìm tệp có chứa
xâu bất kỳ, Archieve sẽ trả về tên tệp và tên của Server chứa các tệp đó. Khi
đó có thể dùng Annonymous FTP để lấy về.
Để dùng Archieve ta phải chọn một Archieve Server nào đó, sau đó Telnet tới
đó và tìm kiếm tệp. Cũng có thể dùng E-mail (chứa các lệnh tìm kiếm) gửi tới
địa chỉ “Archieve@Server”, với Server chính là Archieve Server ta chọn và
chờ th− về kết quả tìm kiếmtừ Server chọn về. Nếu một tệp quá lớn thì Server
sẽ phân thành các mảnh nhỏ, giải mã tệp rồi mới lấy tệp cần thiết.
Cứ sau một khoảng thời gian nhất định, một ch−ơng trình đặc biệt nối tới tất
cả các Anonymous FTP Server (Host) sẽ Download danh sách các th− mục,
tệp dùng chung chứa vào cái gọi là “Internet Archieve Database”. Khi ta cần
tìm tệp, nó sẽ tìm trong CSDL này. Có rất nhiều Archieve Server trên Internet
giữ các thông tin này và th−ờng xuyên đ−ợc cập nhật (khoảng một tuần một
lần).
2.5.9.Nhóm tin - USENET.
Đây là dịch vụ cho phép nhiều ng−ời sử dụng ở các nơi khác nhau có
cùng một mối quan tâm tham gia vào “ một nhóm tin” và trao đổi các vấn đề
quan tâm qua nhóm tin này. Trên Internet cũng có nhiều News Server khác
nhau, các Server này có thể tạo các nhóm cục bộ. Cũng giống nh− E-mail,
mục tin cũng có hai phần là Header và Body.
Ng−ời sử
Các file đính kèm theo tài liệu này:
- Tongquanvemangmaytinh.pdf