Đề tài Tổng quan về mạng máy tính

Tài liệu Đề tài Tổng quan về mạng máy tính: Phần I: Tổng quan về mạng máy tính Chương 1: Giới thiệu về máy tính 1.1. Lịch sử mỏy tớnh Trong thời đại khoa học kỹ thuật ngày nay, mỏy tớnh điện tử đúng một vai trũ hết sức quan trọng và là yếu tố khụng thể thiếu đối với hầu hết cỏc ngành nghề, cỏc dịch vụ cũng như đối với đời sống sinh hoạt của con người. Để trở thành những cụng cụ hữu ớch, cụng nghệ cao như hiện nay, mỏy tớnh điện tử đó trải qua rất nhiều thời kỡ phỏt triển, đỏp ứng những đũi hỏi ngày một cao của con người. Với sự ra đời và thành cụng của mỏy ENIAC, năm 1946 được xem như năm mở đầu cho kỷ nguyờn mỏy tớnh điện tử, kết thỳc sự nỗ lực nghiờn cứu của cỏc nhà khoa học đó kộo dài trong nhiểu năm trước đú, và mở ra một thời kỳ phỏt triển mạnh mẽ của cụng nghệ phần cứng cơ sở chế tạo ra những mỏy tớnh điện tử với tớnh năng ngày càng cao, được sử dụng rộng rói trong rất nhiều lĩnh vực của cuộc sống. Lịch sử phỏt triển của mỏy tớnh cú thể chia thành 4 giai đoạn như sau: 1.1.1. Giai đoạn 1: Từ 1945 đến 1958, với mỏy tớnh...

doc108 trang | Chia sẻ: hunglv | Lượt xem: 1129 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Tổng quan về mạng máy tính, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
PhÇn I: Tæng quan vÒ m¹ng m¸y tÝnh Ch­¬ng 1: Giíi thiÖu vÒ m¸y tÝnh 1.1. Lịch sử máy tính Trong thời đại khoa học kỹ thuật ngày nay, máy tính điện tử đóng một vai trò hết sức quan trọng và là yếu tố không thể thiếu đối với hầu hết các ngành nghề, các dịch vụ cũng như đối với đời sống sinh hoạt của con người. Để trở thành những công cụ hữu ích, công nghệ cao như hiện nay, máy tính điện tử đã trải qua rất nhiều thời kì phát triển, đáp ứng những đòi hỏi ngày một cao của con người. Với sự ra đời và thành công của máy ENIAC, năm 1946 được xem như năm mở đầu cho kỷ nguyên máy tính điện tử, kết thúc sự nỗ lực nghiên cứu của các nhà khoa học đã kéo dài trong nhiểu năm trước đó, và mở ra một thời kỳ phát triển mạnh mẽ của công nghệ phần cứng cơ sở chế tạo ra những máy tính điện tử với tính năng ngày càng cao, được sử dụng rộng rãi trong rất nhiều lĩnh vực của cuộc sống. Lịch sử phát triển của máy tính có thể chia thành 4 giai đoạn như sau: 1.1.1. Giai đoạn 1: Từ 1945 đến 1958, với máy tính thế hệ thứ nhất sử dụng công nghệ đèn chân không. Máy tính ENIAC (Electronic Numerical Integrator And Computer), do John Mauchly và John Presper Eckert (đại học Pensylvania, Mỹ) thiết kế và chế tạo, là chiếc máy số hoá điện tử đa năng đầu tiên trên thế giới. Nguồn gốc: Dự án chế tạo máy ENIAC được bắt đầu vào năm 1943. Đây là một nỗ lực nhằm đáp ứng yêu cầu thời chiến của BRL (Ballistics Research Laboratory – Phòng nghiên cứu đạn đạo quân đội Mỹ) trong việc tính toán chính xác và nhanh chóng các bảng số liệu đạn đạo cho từng loại vũ khí mới. Số liệu kỹ thuật: ENIAC là một chiếc máy khổng lồ với hơn 18000 bóng đèn chân không, nặng hơn 30 tấn, tiêu thụ một lượng điện năng vào khoảng 140kW và chiếm một diện tích xấp xỉ 1393 m2. Mặc dù vậy, nó làm việc nhanh hơn nhiều so với các loại máy tính điện cơ cùng thời với khả năng thực hiện 5000 phép cộng trong một giây đồng hồ. Điểm khác biệt giữa ENIAC & các máy tính khác: ENIAC sử dụng hệ đếm thập phân chứ không phải nhị phân như ở tất cả các máy tính khác. Với ENIAC, các con số được biểu diễn dưới dạng thập phân và việc tính toán cũng được thực hiện trên hệ thập phân. Bộ nhớ của máy gồm 20 “bộ tích lũy”, mỗi bộ có khả năng lưu giữ một số thập phân có 10 chữ số. Mỗi chữ số được thể hiện bằng một vòng gồm 10 đèn chân không, trong đó tại mỗi thời điểm, chỉ có một đèn ở trạng thái bật để thể hiện một trong mười chữ số từ 0 đến 9 của hệ thập phân. Việc lập trình trên ENIAC là một công việc vất vả vì phải thực hiện nối dây bằng tay qua việc đóng/mở các công tắc cũng như cắm vào hoặc rút ra các dây cáp điện. Hoạt động thực tế: Máy ENIAC bắt đầu hoạt động vào tháng 11/1945 với nhiệm vụ đầu tiên không phải là tính toán đạn đạo (vì chiến tranh thế giới lần thứ hai đã kết thúc) mà để thực hiện các tính toán phức tạp dùng trong việc xác định tính khả thi của bom H. Việc có thể sử dụng máy vào mục đích khác với mục đích chế tạo ban đầu cho thấy tính đa năng của ENIAC. Máy tiếp tục hoạt động dưới sự quản lý của BRL cho đến khi được tháo rời ra vào năm 1955. Máy tính Von Neumann Như đã đề cập ở trên, việc lập trình trên máy ENIAC là một công việc rất tẻ nhạt và tốn kém nhiều thời gian. Công việc này có lẻ sẽ đơn giản hơn nếu chương trình có thể được biểu diễn dưới dạng thích hợp cho việc lưu trữ trong bộ nhớ cùng với dữ liệu cần xử lý. Khi đó máy tính chỉ cần lấy chỉ thị bằng cách đọc từ bộ nhớ, ngoài ra chương trình có thể được thiết lập hay thay đổi thông qua sự chỉnh sửa các giá trị lưu trong một phần nào đó của bộ nhớ. Ý tưởng này, được biết đến với tên gọi “khái niệm chương trình được lưu trữ”, do nhà toán học John von Neumann, một cố vấn của dự án ENIAC, đưa ra ngày 8/11/1945, trong một bản đề xuất về một loại máy tính mới có tên gọi EDVAC (Electronic Discrete Variable Computer). Máy tính này cho phép nhiều thuật toán khác nhau có thể được tiến hành trong máy tính mà không cần phải nối dây lại như máy ENIAC. Máy IAS Tiếp tục với ý tưởng của mình, vào năm 1946, von Neuman cùng các đồng nghiệp bắt tay vào thiết kế một máy tính mới có chương trình được lưu trữ với tên gọi IAS (Institute for Advanced Studies) tại học viện nghiên cứu cao cấp Princeton, Mỹ. Mặc dù mãi đến năm 1952 máy IAS mới được hoàn tất, nó vẫn là mô hình cho tất cả các máy tính đa năng sau này. 1.1.2. Giai đoạn 2: Từ 1958 đến 1964, với máy tính thế hệ thứ hai sử dụng công nghệ chất bán dẫn. Sự thay đổi đầu tiên trong lĩnh vực máy tính điện tử xuất hiện khi có sự thay thế đèn chân không bằng đèn bán dẫn. Đèn bán dẫn nhỏ hơn, rẻ hơn, tỏa nhiệt ít hơn trong khi vẫn có thể được sử dụng theo cùng cách thức của đèn chân không để tạo nên máy tính. Không như đèn chân không vốn đòi hỏi phải có dây, có bảng kim loại, có bao thủy tinh và chân không, đèn bán dẫn là một thiết bị ở trạng thái rắn được chế tạo từ silicon có nhiều trong cát có trong tự nhiên. Đèn bán dẫn là phát minh lớn của phòng thí nghiệm Bell Labs trong năm 1947. Nó đã tạo ra một cuộc cách mạng điện tử trong những năm 50 của thế kỷ 20. Dù vậy, mãi đến cuối những năm 50, các máy tính bán dẫn hóa hoàn toàn mới bắt đầu xuất hiện trên thị trường máy tính. Việc sử dụng đèn bán dẫn trong chế tạo máy tính đã xác định thế hệ máy tính thứ hai, với đại diện tiêu biểu là máy PDP–1 của công ty DEC (Digital EquIPment Corporation) và IBM 7094 của IBM. DEC được thành lập vào năm 1957 và cũng trong năm đó cho ra đời sản phẩm đầu tiên của mình là máy PDP–1 như đã đề cập ở trên. Đây là chiếc máy mở đầu cho dòng máy tính mini của DEC, vốn rất phổ biến trong các máy tính thế hệ thứ ba. 1.1.3. Giai đoạn 3: Từ 1964 đến 1974, với máy tính thế hệ thứ ba sử dụng công nghệ mạch tích hợp. Một đèn bán dẫn tự chứa, đơn lẻ thường được gọi là một thành phần rời rạc. Trong suốt những năm 50 và đầu những năm 60 của thế kỷ 20, các thiết bị điện tử phần lớn được kết hợp từ những thành phần rời rạc – đèn bán dẫn, điện trở, tụ điện, v.v... Các thành phần rời rạc được sản xuất riêng biệt, đóng gói trong các bộ chứa riêng, sau đó được dùng để nối lại với nhau trên những bảng mạch. Các bảng này lại được gắn vào trong máy tính, máy kiểm tra dao động, và các thiết bị điện tử khác nữa. Bất cứ khi nào một thiết bị điện tử cần đến một đèn bán dẫn, một ống kim loại nhỏ chứa một mẫu silicon sẽ phải được hàn vào một bảng mạch. Toàn bộ quá trình sản xuất, đi từ đèn bán dẫn đến bảng mạch, là một quá trình tốn kém và không hiệu quả. Những vấn đề như vậy đã làm nền tảng cho việc dẫn đến các bài toán mới trong công nghiệp máy tính. Các máy tính thế hệ thứ hai ban đầu chứa khoảng 10000 đèn bán dẫn. Con số này sau đó đã tăng lên nhanh chóng đến hàng trăm ngàn, làm cho việc sản xuất các máy mạnh hơn, mới hơn gặp rất nhiều khó khăn. Sự phát minh ra mạch tích hợp vào năm 1958 đã cách mạng hóa điện tử và bắt đầu cho kỷ nguyên vi điện tử với nhiều thành tựu rực rỡ. Mạch tích hợp chính là yếu tố xác định thế hệ thứ ba của máy tính. Trong mục tiếp sau đây chúng ta sẽ tìm hiểu một cách ngắn gọn về công nghệ mạch tích hợp. Sau đó, hai thành viên quan trọng nhất trong các máy tính thế hệ thứ ba, máy IBM System/360 và máy DEC PDP–8, sẽ được giới thiệu cùng với các tính năng nổi bật của chúng. 1.1.4. Giai đoạn 4: Từ 1974 đến nay, với máy tính thế hệ thứ tư sử dụng công nghệ mạch tích hợp vô cùng lớn/siêu lớn (VLSI/ULSI). Với tốc độ phát triển nhanh chóng của công nghệ, mức độ cho ra đời các sản phẩm mới ở mức cao, cũng như tầm quan trọng của phần mềm, của truyền thông và phần cứng, việc phân loại máy tính theo thế hệ trở nên kém rõ ràng và ít có ý nghĩa như trước đây. rong phần tiếp theo, hai thành tựu tiêu biểu về công nghệ của máy tính thế hệ thứ tư sẽ được giới thiệu một cách tóm lược. Bộ nhớ bán dẫn Vào khoảng những năm 50 đến 60 của thế kỷ này, hầu hết bộ nhớ máy tính đều được chế tạo từ những vòng nhỏ làm bằng vật liệu sắt từ, mỗi vòng có đường kính khoảng 1/16 inch. Các vòng này được treo trên các lưới ở trên những màn nhỏ bên trong máy tính. Khi được từ hóa theo một chiều, một vòng (gọi là một lõi) biểu thị giá trị 1, còn khi được từ hóa theo chiều ngược lại, lõi sẽ đại diện cho giá trị 0. Bộ nhớ lõi từ kiểu này làm việc khá nhanh. Nó chỉ cần một phần triệu giây để đọc một bit lưu trong bộ nhớ. Nhưng nó rất đắt tiền, cồng kềnh, và sử dụng cơ chế hoạt động loại trừ: một thao tác đơn giản như đọc một lõi sẽ xóa dữ liệu lưu trong lõi đó. Do vậy cần phải cài đặt các mạch phục hồi dữ liệu ngay khi nó được lấy ra ngoài. Năm 1970, Fairchild chế tạo ra bộ nhớ bán dẫn có dung lượng tương đối đầu tiên. ChIP này có kích thước bằng một lõi đơn, có thể lưu 256 bit nhớ, hoạt động không theo cơ chế loại trừ và nhanh hơn bộ nhớ lõi từ. Nó chỉ cần 70 phần tỉ giây để đọc ra một bit dữ liệu trong bộ nhớ. Tuy nhiên giá thành cho mỗi bit cao hơn so với lõi từ. Kể từ năm 1970, bộ nhớ bán dẫn đã đi qua tám thế hệ: 1K, 4K, 16K, 64K, 256K, 1M, 4M, và giờ đây là 16M bit trên một chIP đơn (1K = 210, 1M = 220). Mỗi thế hệ cung cấp khả năng lưu trữ nhiều gấp bốn lần so với thế hệ trước, cùng với sự giảm thiểu giá thành trên mỗi bit và thời gian truy cập. Bộ vi xử lý Vào năm 1971, hãng Intel cho ra đời chIP 4004, chIP đầu tiên có chứa tất cả mọi thành phần của một CPU trên một chIP đơn. Kỷ nguyên bộ vi xử lý đã được khai sinh từ đó. ChIP 4004 có thể cộng hai số 4 bit và nhân bằng cách lập lại phép cộng. Theo tiêu chuẩn ngày nay, chIP 4004 rõ ràng quá đơn giản, nhưng nó đã đánh dấu sự bắt đầu của một quá trình tiến hóa liên tục về dung lượng và sức mạnh của các bộ vi xử lý. Bước chuyển biến kế tiếp trong quá trình tiến hóa nói trên là sự giới thiệu chIP Intel 8008 vào năm 1972. Đây là bộ vi xử lý 8 bit đầu tiên và có độ phức tạp gấp đôi chIP 4004. Đến năm 1974, Intel đưa ra chIP 8080, bộ vi xử lý đa dụng đầu tiên được thiết kế để trở thành CPU của một máy vi tính đa dụng. So với chIP 8008, chIP 8080 nhanh hơn, có tập chỉ thị phong phú hơn và có khả năng định địa chỉ lớn hơn. Cũng trong cùng thời gian đó, các bộ vi xử lý 16 bit đã bắt đầu được phát triển. Mặc dù vậy, mãi đến cuối những năm 70, các bộ vi xử lý 16 bit đa dụng mới xuất hiện trên thị trường. Sau đó đến năm 1981, cả Bell Lab và Hewlett–packard đều đã phát triển các bộ vi xử lý đơn chIP 32 bit. Trong khi đó, Intel giới thiệu bộ vi xử lý 32 bit của riêng mình là chIP 80386 vào năm 1985. 1.2. Cấu trúc và chức năng của máy tính 1.2.1. Cấu trúc tổng quát của máy tính Máy tính là một hệ thống phức tạp với hàng triệu thành phần điện tử cơ sở. Ở mức đơn giản nhất, máy tính có thể được xem như một thực thể tương tác theo một cách thức nào đó với môi trường bên ngoài. Một cách tổng quát, các mối quan hệ của nó với môi trường bên ngoài có thể phân loại thành các thiết bị ngoại vi hay đường liên lạc. Hình 1: Cấu trúc tổng quát của máy tính Thành phần chính, quan trọng nhất của máy tính là Đơn vị xử lý trung tâm (CPU – Central Processing Unit): Điều khiển hoạt động của máy tính và thực hiện các chức năng xử lý dữ liệu. Hình 2: Bộ xử lý trung tâm của máy tính (CPU) CPU thường được đề cập đến với tên gọi bộ xử lý. Máy tính có thể có một hoặc nhiều thành phần nói trên, Ví Dụ như một hoặc nhiều CPU. Trước đây đa phần các máy tính chỉ có một CPU, nhưng gần đây có sự gia tăng sử dụng nhiều CPU trong một hệ thống máy đơn. CPU luôn luôn là đối tượng quan trọng vì đây là thành phần phức tạp nhất của hệ thống. Cấu trúc của CPU gồm các thành phần chính: Đơn vị điều khiển: Điều khiển hoạt động của CPU và do đó điều khiển hoạt động của máy tính. Đơn vị luận lý và số học (ALU – Arithmetic and Logic Unit): Thực hiện các chức năng xử lý dữ liệu của máy tính. Tập thanh ghi: Cung cấp nơi lưu trữ bên trong CPU. Thành phần nối kết nội CPU: Cơ chế cung cấp khả năng liên lạc giữa đơn vị điều khiển, ALU và tập thanh ghi. Trong các thành phần con nói trên của CPU, đơn vị điều khiển lại giữ vai trò quan trọng nhất. Sự cài đặt đơn vị này dẫn đến một khái niệm nền tảng trong chế tạo bộ vi xử lý máy tính. Đó là khái niệm vi lập trình. Hình dưới đây mô tả tổ chức bên trong một đơn vị điều khiển với ba thành phần chính gồm: Bộ lập dãy logic Bộ giải mã và tập các thanh ghi điều khiển Bộ nhớ điều khiển Hình 3: Đơn vị điều khiển của CPU Các thành phần khác của máy tính: Bộ nhớ chính: Dùng để lưu trữ dữ liệu. Các thành phần nhập xuất: Dùng để di chuyển dữ liệu giữa máy tính và môi trường bên ngoài. Các thành phần nối kết hệ thống: Cung cấp cơ chế liên lạc giữa CPU, bộ nhớ chính và các thành phần nhập xuất. 1.2.2. Chức năng của máy tính Một cách tổng quát, một máy tính có thể thực hiện bốn chức năng cơ bản sau: Di chuyển dữ liệu Điều khiển Lưu trữ dữ liệu Xử lý dữ liệu Hình 4: Các chức năng cơ bản của máy tính Xử lý dữ liệu: Máy tính phải có khả năng xử lý dữ liệu. Dữ liệu có thể có rất nhiều dạng và phạm vi yêu cầu xử lý cũng rất rộng. Tuy nhiên chỉ có một số phương pháp cơ bản trong xử lý dữ liệu.  Lưu trữ dữ liệu: Máy tính cũng cần phải có khả năng lưu trữ dữ liệu. Ngay cả khi máy tính đang xử lý dữ liệu, nó vẫn phải lưu trữ tạm thời tại mỗi thời điểm phần dữ liệu đang được xử lý. Do vậy cần thiết phải có chức năng lưu trữ ngắn hạn. Tuy nhiên, chức năng lưu trữ dài hạn cũng có tầm quan trọng tương đãng đối với dữ liệu cần được lưu trữ trên máy cho những lần cập nhật và tìm kiếm kế tiếp.  Di chuyển dữ liệu: Máy tính phải có khả năng di chuyển dữ liệu giữa nó và thế giới bên ngoài. Khả năng này được thể hiện thông qua việc di chuyển dữ liệu giữa máy tính với các thiết bị nối kết trực tiếp hay từ xa đến nó. Tùy thuộc vào kiểu kết nối và cự ly di chuyển dữ liệu, mà có tiến trình nhập xuất dữ liệu hay truyền dữ liệu: Tiến trình nhập xuất dữ liệu: Thực hiện di chuyển dữ liệu trong cự ly ngắn giữa máy tính và thiết bị nối kết trực tiếp. Tiến trình truyền dữ liệu: Thực hiện di chuyển dữ liệu trong cự ly xa giữa máy tính và thiết bị nối kết từ xa. Điều khiển: Bên trong hệ thống máy tính, đơn vị điều khiển có nhiệm vụ quản lý các tài nguyên máy tính và điều phối sự vận hành của các thành phần chức năng phù hợp với yêu cầu nhận được từ người sử dụng. Tương ứng với các chức năng tổng quát nói trên, có bốn loại hoạt động có thể xảy ra gồm: Máy tính được dùng như một thiết bị di chuyển dữ liệu, có nhiệm vụ đơn giản là chuyển dữ liệu từ bộ phận ngoại vi hay đường liên lạc này sang bộ phận ngoại vi hay đường liên lạc khác. Di chuyÓn d÷ liÖu §iÒu khiÓn L­u tr÷ d÷ liÖu Xö lý d÷ liÖu Hình 5: Máy tính – Thiết bị di chuyển dữ liệu Máy tính được dùng để lưu trữ dữ liệu, với dữ liệu được chuyển từ môi trường ngoài vào lưu trữ trong máy (quá trình đọc dữ liệu) và ngược lại (quá trình ghi dữ liệu). Hình 6 mô tả hoạt động làm thiết bị lưu trữ dữ liệu của máy tính. Hình 6: Máy tính – Thiết bị lưu trữ dữ liệu Máy tính được dùng để xử lý dữ liệu thông qua các thao tác trên dữ liệu lưu trữ hoặc kết hợp giữa việc lưu trữ và liên lạc với môi trường bên ngoài. Hình 7: Máy tính – Thiết bị xử lý dữ liệu lưu trữ Hình 8: Máy tính – Thiết bị xử lý/ trao đổi dữ liệu với môi trường ngoài Ch­¬ng 2: m¹ng m¸y tÝnh Mạng máy tính là một hệ thống kết nối các máy tính đơn lẻ thông qua các đường truyền vật lý theo một kiến trúc nào đó. Đường truyền vật lý dùng để chuyển các tín hiệu số hay tín hiệu tương tự giữa các máy tính. Đường truyền vật lý thường là: Đường dây điện thoại thông thường. Cáp đồng trục. Sóng vô tuyến điện từ. Cáp sợi quang 2.1. Lịch sử phát triển mạng máy tính Từ những năm 60, đã xuất hiện những 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 dổ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. Hình 9: Mạng máy tính với bộ tiền xử lý Việc tăng nhanh các máy tính mini, các máy tính cá nhân làm tăng nhu cầu truyền số liệu giữa các máy tính, các Terminal và giữa các Terminal với các 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 một số thời điểm chính sau: Những năm 60: Để 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à Máy tính trung tâm (Main Frame). Máy tính trung tâm làm tất cả mọi việc từ quản lý các thủ tục truyền dữ liệu, quản lý quá trình đồng bộ của các trạm cuối, … cho đến việc xử lý các ngắt từ các trạm cuối. Sau đó, để giảm nhẹ nhiệm vụ của Máy tính trung tâm, người ta thêm vào các Bộ tiền xử lý (Frontal) để nối thành một mạng truyền tin, trong đó có các Thiết bị tập trung (Concentrator) và Dồn kênh (MultIPlexer) dùng để tập trung trên cùng một đường truyền các tín hiệu gửi tới trạm cuối. Hình 10: Mạng máy tính nối trực tiếp các bộ tiền xử lý Những năm 70: Các máy tính đã được nối với nhau trực tiếp thành một mạng máy tính nhằm phân tán tải của hệ thống và tăng độ tin cậy. Và 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 (Node) gọi là bộ chuyển mạch, dùng để hướng thông tin tới đích. Các Nút 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 (Host) hoặc các Trạm cuối (Terminal) đượ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. Từ thập kỷ 80 trở đi: Việc kết nối mạng máy tính đã bắt đầu được thực hiện rộng rãi nhờ tỷ lệ giữa giá thành máy tính và chi phí truyền tin đã giảm đi rõ rệt do sự bùng nổ của các thế hệ máy tính cá nhân. 2.2. Nhu cầu và mục đích của việc kết nối các máy tính thành mạng Việc nối máy tính thành mạng từ lâu đã trở thành một nhu cầu khách quan bởi vì: – Có rất nhiều công việc về bản chất là phân tán hoặc về thông tin, hoặc về xử lý hoặc cả hai đòi hỏi có sự kết hợp truyền thông với xử lý hoặc sử dụng phương tiện từ xa – Chia sẻ các tài nguyên trên mạng cho nhiều người sử dụng tại một thời điểm (ổ cứng, máy in, ổ CD ROM ...) – Nhu cầu liên lạc, trao đổi thông tin nhờ phương tiện máy tính – Các ứng dụng phần mềm đòi hòi tại một thời điểm cần có nhiều người sử dụng, truy cập vào cùng một cơ sở dữ liệu. Chính vì vậy, việc kết nối các máy tính thành mạng nhằm mục đích: Chia sẻ tài nguyên: Chia sẻ dữ liệu: Về nguyên tắc, bất kỳ người sử dụng nào trên mạng đều có quyền truy nhập, khai thác và sử dụng những tài nguyên chung của mạng (thường được tập trung trên một Máy phục vụ – Server) mà không phụ thuộc vào vị trí địa lý của người sử dụng đó. Chia sẻ phần cứng: Tài nguyên chung của mạng cũng bao gồm các máy móc, thiết bị như: Máy in (Printer), Máy quét (Scanner), Ổ đĩa mềm (Floppy), Ổ đĩa CD (CD Rom), … được nối vào mạng. Thông qua mạng máy tính, người sử dụng có thể sử dụng những tài nguyên phần cứng này ngay cả khi máy tính của họ không có những phần cứng đó. Duy trì và bảo vệ dữ liệu: Một mạng máy tính có thể cho phép các dữ liệu được tự động lưu trữ dự phòng tới một trung tâm nào đó trong mạng. Công việc này là hết sức khó khăn và tốn nhiều thời gian nếu phải làm trên từng máy độc lập. Hơn nữa, mạng máy tính còn cung cấp một môi trường bảo mật an toàn cho mạng qua việc cung cấp cơ chế Bảo mật (Security) bằng Mật khẩu (Password) đối với từng người sử dụng, hạn chế được việc sao chép, mất mát thông tin ngoài ý muốn. Nâng cao độ tin cậy của hệ thống nhờ khả năng thay thế cho nhau khi xảy ra sự cố kỹ thuật đối với một máy tính nào đó trong mạng. Khai thác có hiệu quả các cơ sở dữ liệu tập trung và phân tán, nâng cao khả năng tích hợp và trao đổi các loại dữ liệu giữa các máy tính trên mạng. 2.3. Đặc trưng kỹ thuật của mạng máy tính Một mạng máy tính có các đặc trưng kỹ thuật cơ bản là: đường truyền, kỹ thuật chuyển mạch, kiến trúc mạng và hệ điều hành mạng. 2.3.1. Đường truyền Là thành tố quan trọng của một mạng máy tính, là phương tiện dùng để truyề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ệu tử đó chính là các thông tin, dữ liệu được biểu thị dưới dạng các xung nhị phân (ON – OFF), mọi tín hiệu truyền giữa các máy tính với nhau đều thuộc sóng điện từ, tuỳ theo tần số mà ta có thể dùng các đường truyền vật lý khác nhau để truyền tín hiệu. Các tần số radio có thể truyền bằng cáp điện (giây xoắn đôi hoặc đồng trục) hoặc bằng phương tiện quảng bá (radio broadcasting). Sóng cực ngắn (viba) thường được dùng để truyền giữa các trạm mặt đất và các vệ tinh. Chúng cũng được dùng để truyền các tín hiệu quảng bá từ một trạm phát đến nhiều trạm thu. Mạng điện thoại “tổ ong” (cellular phone Network) là một ví dụ cho cách dùng này. Tia hồng ngoại là lý tưởng đối với nhiều loại truyền thông mạng. Nó có thể được truyền giữa hai điểm hoặc quảng bá từ một điểm đến nhiều máy thu. Tia hồng ngoại và các tần số cao hơn của anh sáng có thể được truyền qua cáp sợi quang. Các đặc trưng cơ bản của đường truyền là giải thông (bandwidth), độ suy hao và độ nhiễu điện từ. Dải thông của một đường truyền chính là độ đo phạm vi tần số mà nó có thể đáp ứng được; nó biểu thị khả năng truyền tải tín hiệu của đường truyền. Tốc độ truyền dữ liệu trên đường truyền được gọi là thông lượng (throughput) của đường truyền, thường được tính bằng số lượng bit được truyền đi trong một giây (bps). Thông lượng còn được đo bằng một đơn vị khác là Baud, Baud biểu thị số lượng thay đổi tín hiệu trong một giây. Hai đơn vị Baud và bps không phải lúc nào cũng đồng nhất vì mỗi thay đổi tín hiệu có thể tương ứng với vài bit. Giải thông của cáp truyền phụ thuộc vào độ dài cáp (nói chung cáp ngắn có thể có giải thông lớn hơn so với cáp dài). Bởi vậy, khi thiết kế cáp cho mạng cần thiết phải chỉ rõ độ dài chạy cáp tối đa vì ngoài giới hạn đó chất lượng truyền tín hiệu không còn được đảm bảo. Độ suy hao của một đường truyền là độ đo sự yếu đi của tín hiệu trên đường truyền đó, nó cũng phụ thuộc vào độ dài cáp. Còn độ nhiễu điện từ EMI (Electromagnetic Intrerference) gây ra bởi tiếng ồn từ bên ngoài làm ảnh hưởng đến tín hiệu trên đường truyền Thông thuờng người ta hay phân loại đường truyền theo hai loại: Đường truyền hữu tuyến: các máy tính được nối với nhau bằng các dây cáp mạng. Đường truyền hữu tuyến gồm có: Cáp đồng trục (Coaxial cable) Cáp xoắn đôi (Twisted pair cable) gồm 2 loại có bọc kim (stp – shielded twisted pair) và không bọc kim (utp – unshielded twisted pair). Cáp sợi quang (Fiber optic cable) Đường truyền vô tuyến: các máy tính truyền tín hiệu với nhau thông qua các sóng vô tuyến với các thiết bị điều chế/giải điều chế ở các đầu mút. Đường truyền vô tuyến gồm có: Radio Sóng cực ngắn (Viba) Tia hồng ngoại (Infrared) 2.3.2. Kỹ thuật chuyển mạch Là đặc trưng kỹ thuật chuyển tín hiệu giữa các nút trong mạng, các nút mạng có chức năng hướng thông tin tới đích nào đó trong mạng, hiện tại có các kỹ thuật chuyển mạch như sau: Kỹ thuật chuyển mạch kênh: Khi có hai thực thể cần truyền thông với nhau thì giữa chúng sẽ thiết lập một kênh cố định và duy trì kết nối đó cho tới khi hai bên ngắt liên lạc. Các dữ liệu chỉ truyền đi theo con đường cố định đó. Kỹ thuật chuyển mạch thông báo: Thông báo là một đơn vị dữ liệu của người sử dụng có khuôn dạng được quy định trước. Mỗi thông báo có chứa các thông tin điều khiển trong đó chỉ rõ đích cần truyền tới của thông báo. Căn cứ vào thông tin điều khiển này mà mỗi nút trung gian có thể chuyển thông báo tới nút kế tiếp trên con đường dẫn tới đích của thông báo Kỹ thuật chuyển mạch gói: ở đây mỗi thông báo được chia ra thành nhiều gói nhỏ hơn được gọi là các gói tin (Packet) có khuôn dạng qui định trước. Mỗi gói tin cũng chứa các thông tin điều khiển, trong đó có địa chỉ nguồn (người gửi) và địa chỉ đích (người nhận) của gói tin. Các gói tin của cùng một thông báo có thể được gửi đi qua mạng tới đích theo nhiều con đường khác nhau. 2.3.3. Kiến trúc mạng Kiến trúc mạng (Network Architecture) thể hiện cách nối giữa các máy tính trong mạng và tập hợp các quy tắc, quy ước nào đó mà tất cả các thực thể tham gia truyền thông trên mạng phải tuân theo để đảm bảo cho mạng hoạt động tốt. Cách nối các máy tính với nhau được gọi là hình trạng mạng (Network Topology); còn tập hợp các qui tắc, qui ước truyền thông thì được gọi là giao thức của mạng (Network Protocol). 2.3.3.1. Hình trạng mạng Hình trạng mạng là cách kết nối các máy tính với nhau về mặt hình học mà ta gọi là topo của mạng. Có 2 kiểu nối mạng chủ yếu là điểm – điểm (point to point) và điểm – đa điểm (point to multipoint). Theo kiểu điểm – điểm: Các đường truyền nối từng cặp nút với nhau và mỗi nút đều có trách nhiệm lưu trữ tạm thời sau đó chuyển tiếp dữ liệu đi cho tới đích. Một số mạng có cấu trúc điểm – điểm như: mạng hình sao, mạng chu trình, mạng dạng cây ... Theo kiểu điểm – đa điểm: Tất cả các nút phân chia chung một đường truyền vật lý. Dữ liệu gửi đi từ một nút nào đó sẽ có thể được tiếp nhận bởi tất cả các nút còn lại. Bởi vậy cần chỉ ra địa chỉ đích của dữ liệu để mỗi nút căn cứ vào đó kiểm tra xem dữ liệu có phải gửi cho mình hay không. Mạng trục tuyến tính (Bus), mạng hình vòng (Ring), mạng Satellite (Vệ tinh) hay Radio ... là những mạng có cấu trúc điểm – đa điểm phổ biến. Những hình trạng mạng cơ bản này sẽ được giới thiệu rõ hơn trong mục phân loại mạng máy tính theo hình trạng mạng. 2.3.3.2. Giao thức mạng Việc trao đổi thông tin dù là đơn giản nhất, cũng phải tuân theo những quy tắc nhất định. Đơn giản như khi hai người nói chuyện với nhau muốn cho cuộc nói chuyện có kết quả thì ít nhất cả hai cũng phải ngầm hiểu và tuân thủ quy ướ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 trên mạng cũng vậy, cần có các quy tắc, quy ước truyền thông về nhiều mặt: khuôn dạng cú pháp của dữ liệu, các thủ tục gửi, nhận dữ liệu, kiểm soát hiệu quả và chất lượng truyền tin ... Tập hợp những quy tắc quy ước truyền thông đó được gọi là giao thức của mạng (Network Protocol). Có rất nhiều giao thức mạng, các mạng có thể sử dụng các giao thức khác nhau tùy sự lựa chọn của người thiết kế. Tuy vậy, các giao thức thường gặp nhất là : TCP/IP, NETBIOS, IPX/SPX, ... 2.3.4. Hệ điều hành mạng Hệ điều hành mạng là một phần mềm hệ thống có các chức năng sau: Quản lý tài nguyên của hệ thống, các tài nguyên này gồm: Tài nguyên thông tin (về phương diện lưu trữ) hay nói một cách đơn giản là quản lý tệp. Các công việc về lưu trữ tệp, tìm kiếm, xoá, copy, nhóm, đặt các thuộc tính đều thuộc nhóm công việc này Tài nguyên thiết bị. Điều phối việc sử dụng CPU, các ngoại vi... để tối ưu hoá việc sử dụng Quản lý người dùng và các công việc trên hệ thống. Hệ điều hành đảm bảo giao tiếp giữa người sử dụng, chương trình ứng dụng với thiết bị của hệ thống. Cung cấp các tiện ích cho việc khai thác hệ thống thuận lợi (Ví Dụ FORMAT đĩa, sao chép tệp và thư mục, in ấn chung ...) Các hệ điều hành mạng thông dụng nhất hiện nay là: WindowsNT, Windows9X, Windows 2000, Unix, Novell 2.4. Phân loại mạng máy tính Có nhiều cách phân loại mạng khác nhau tùy thuộc vào yếu tố chính được chọn làm chỉ tiêu phân loại như: Khoảng cách địa lý của mạng Kỹ thuật chuyển mạch áp dụng trong mạng Hình trạng mạng Giao thức mạng sử dụng Hệ điều hành mạng sử dụng ... 2.4.1. Phân loại mạng theo khoảng cách địa lý Mạng máy tính có thể phân bổ trên một vùng lãnh thổ nhất định và cũng có thể phân bổ trong phạm vi một quốc gia hay rộng hơn nữa là toàn thế giới. Dựa vào phạm vi phân bổ của mạng, người ta có thể phân ra các loại mạng như sau: 2.4.1.1. Mạng toàn cầu (GAN – Global Area Network) Là mạng kết nối các máy tính từ các châu lục khác nhau. Thông thường kết nối này được thực hiện thông qua mạng viễn thông và vệ tinh. 2.4.1.2. Mạng diện rộng (WAN – Wide Area Network) Là mạng kết nối các máy tính trong nội bộ các quốc gia hay giữa các quốc gia trong cùng một châu lục. Thông thường các kết nối này được thực hiện thông qua mạng viễn thông. Các WAN có thể kết nối với nhau tạo thành GAN hay tự nó cũng có thể xem là một GAN. 2.4.1.3. Mạng đô thị (MAN – Metropolitan Area Network) Là mạng kết nối các máy tính trong phạm vi một đô thị, một trung tâm văn hoá xã hội, có bán kính tối đa vào khoảng 100 km. Kết nối này được thực hiện thông qua môi trường truyêng thông tốc độ cao (50–100 Mbps). 2.4.1.4. Mạng cục bộ (LAN – Local Area Network) Là mạng kết nối các máy tính trong một khu vực bán kính hẹp, thông thường khoảng vài trăm mét đến vài kilômét. Kết nối được thực hiện thông qua môi trường truyền thông tốc độ cao Ví Dụ như cáp đồng trục, cáp xoắn đôi hay cáp quang. LAN thường được sử dụng trong nội bộ một cơ quan, tổ chức, trong một tòa nhà. Nhiều LAN có thể được kết nối với nhau thành WAN. 2.4.2. Phân loại theo kỹ thuật chuyển mạch áp dụng trong mạng Nếu lấy kỹ thuật chuyển mạch làm yếu tố chính để phân loại ta sẽ có: Mạng chuyển mạch kênh Mạng chuyển mạch thông báo Mạng chuyển mạch gói 2.4.2.1. Mạng chuyển mạch kênh (Circuit Switched Network) Hình 11: Mạng chuyển mạch kênh Trong trường hợp này khi hai thực thể cần trao đổi thông tin với nhau thì giữa chúng sẽ thiết lập một kênh (Circuit) cố định và được duy trì cho tới khi một trong hai bên bị ngắt liên lạc. 2.4.2.2. Mạng chuyển mạch thông báo (Message Switched Network) Hình 12: Mạng chuyển mạch thông báo Thông báo là một đơn vị thông tin của người sử dụng có khuôn dạng đã được quy định trước. Mỗi thông báo đều có chứa vùng thông tin điều khiển, trong đó chỉ rõ đích của thông báo. Căn cứ vào thông tin này mà mỗi nút trung gian có thể chuyển thông báo tới nút kế tiếp theo đường dẫn tới đích của nó. Như vậy mỗi nút cần phải lưu trữ tạm thời để đọc thông tin điều khiển trên thông báo, sau đó chuyển tiếp thông báo đi. Tuỳ thuộc vào điều kiện của mạng các thông báo có thể được gửi đi trên các đường khác nhau. Ưu điểm của phương pháp này là : Hiệu suất sử dụng đường truyền cao vì không bị chiếm dụng độc quyền mà được phân chia giữa nhiều thực thể truyền thông. Mỗi nút mạng có thể lưu trữ thông tin tạm thời sau đó mới chuyển thông báo đi, do đó có thể điều chỉnh để làm giảm tình trạng tắc nghẽn trên mạng. Có thể điều khiển việc truyền tin bằng cách sắp xếp độ ưu tiên cho các thông báo. Có thể tăng hiệu suất xử dụng giải thông của mạng bằng cách gắn địa chỉ quảng bá (broadcast addressing) để gửi thông báo đồng thời tới nhiều đích. Nhược điểm của phương pháp này là: Không hạn chế được kích thước của thông báo dẫn đến phí tổn lưu gữi tạm thời cao và ảnh hưởng đến thời gian trả lời yêu cầu của các trạm. 2.4.2.3. Mạng chuyển mạch gói (Packet Switched Network) Hình 13: Mạng chuyển mạch gói Trong trường hợp này mỗi thông báo được chia ra thành nhiều phần nhỏ hơn gọi là các gói tin (Information Packet) có khuôn dạng quy định trước. Mỗi gói tin cũng chứa các thông tin điều khiển, trong đó có địa chỉ nguồn và địa chỉ đích của gói tin. Các gói tin thuộc về một thông báo nào đó có thể được gửi đi qua mạng để tới đích bằng nhiều con đường khác nhau. Phương pháp chuyển mạch thông báo và chuyển mạch gói là gần giống nhau. Điểm khác biệt là các gói tin được giới hạn kích thước tối đa sao cho các nút mạng (các nút chuyển mạch) có thể xử lý toàn bộ gói tin trong bộ nhớ mà không phải lưu giữ tạm thời trên đĩa. Bởi vậy nên mạng chuyển mạch gói truyền dữ liệu hiệu quả hơn so với mạng chuyển mạch thông báo. Tích hợp hai kỹ thuật chuyển mạch kênh và chuyển mạch gói vào trong một mạng thống nhất được mạng tích hợp số (ISDN – Integated Services Digital Network). 2.4.3. Phân loại theo hình trạng mạng Khi phân loại theo hình trạng mạng, người ta thường phân loại thành: Mạng hình sao, hình vòng, trục tuyến tính, hình cây, ... Dưới đây là một số hình trạng mạng cơ bản: 2.4.3.1. Mạng hình sao Mạng hình sao có tất cả các trạm được kết nối với một thiết bị trung tâm có nhiệm vụ nhận tín hiệu từ các trạm và chuyển đén trạm đích. Tuỳ theo yêu cầu truyền thông trên mạng mà thiết bị trung tâm có thể là bộ chuyển mạch (switch), bộ chọn đường (Router) hoặc là bộ phân kênh (hub). Vai trò của thiết bị trung tâm này là thực hiện việc thiết lập các liên kết điểm–điểm (point–to–point) giữa các trạm. Hình 14: Mạng hình sao (Star) Ưu điểm của topo mạng hình sao Thiết lập mạng đơn giản, dễ dàng cấu hình lại mạng (thêm, bớt các trạm), dễ dàng kiểm soát và khắc phục sự cố, tận dụng được tối đa tốc độ truyền của đường truyền vật lý. Nhược điểm của topo mạng hình sao Độ dài đường truyền nối một trạm với thiết bị trung tâm bị hạn chế (trong vòng 100m, với công nghệ hiện nay). 2.4.3.2. Mạng hình vòng Trên mạng hình vòng tín hiệu được truyền đi trên vòng theo một chiều duy nhất. Mỗi trạm của mạng được nối với vòng qua một bộ chuyển tiếp (repeater) có nhiệm vụ nhận tín hiệu rồi chuyển tiếp đến trạm kế tiếp trên vòng. Như vậy tín hiệu được lưu chuyển trên vòng theo một chuỗi liên tiếp các liên kết điểm–điểm giữa các repeater do đó cần có giao thức điều khiển việc cấp phát quyền được truyền dữ liệu trên vòng mạng cho trạm có nhu cầu. Để tăng độ tin cậy của mạng ta có thể lắp đặt thêm các vòng dự phòng, nếu vòng chính có sự cố thì vòng phụ sẽ được sử dụng. Mạng hình vòng có ưu nhược điểm tương tự mạng hình sao, tuy nhiên mạng hình vòng đòi hỏi giao thức truy nhập mạng phức tạp hơn mạng hình sao. Hình 15: Mạng hình vòng (Ring) Nếu kết nối theo kiểu điểm – điểm, mạng hình vòng còn được gọi là mạng chu trình. Hình 16: Mạng chu trình (Loop) 2.4.3.3. Mạng trục tuyến tính (Bus) Trong mạng trục tất cả các trạm phân chia một đường truyền chung (bus). Đường truyền chính được giới hạn hai đầu bằng hai đầu nối đặc biệt gọi là terminator. Mỗi trạm được nối với trục chính qua một đầu nối chữ T (T–connector) hoặc một thiết bị thu phát (transceiver). Hình 17: Mạng trục tuyến tính (Bus) Khi một trạm truyền dữ liệu tín hiệu được quảng bá trên cả hai chiều của bus, tức là mọi trạm còn lại đều có thể thu được tín hiệu đó trực tiếp. Đối với các bus một chiều thì tín hiệu chỉ đi về một phía, lúc đó các terminator phải được thiết kế sao cho các tín hiệu đó phải được dội lại trên bus để cho các trạm trên mạng đều có thể thu nhận được tín hiệu đó. Như vậy với topo mạng trục dữ liệu được truyền theo các liên kết điểm–đa điểm (point–to–multipoint) hay quảng bá (broadcast). Ưu điểm : Dễ thiết kế, chi phí thấp Nhược điểm: Tính ổn định kém, chỉ một nút mạng hỏng là toàn bộ mạng bị ngừng hoạt động 2.4.3.4. Mạng dạng cây Hình 18: Mạng dạng cây (Tree) 2.4.3.5. Mạng dạng vô tuyến – Satellite (Vệ tinh) hoặc Radio Hình 19: Mạng vô tuyến – Satellite (Vệ tinh) hoặc Radio 2.4.3.6. Mạng kết nối hỗn hợp Ngoài các hình trạng mạng cơ bản chuẩn, còn có thể kết hợp hai hay nhiều hình trạng mạng cơ bản lại với nhau tạo ra các hình trạng mở rộng nhằm tận dụng những ưu điểm, khắc phục những nhược điểm của từng loại mạng riêng khi chúng chưa được kết hợp với nhau. Tùy từng hoàn cảnh cụ thể để thiết kế cấu trúc mạng phù hợp nhất, đó cũng là nhiệm vụ của những chuyên viên cơ sở mạng. Hình dưới đây minh họa một mạng kết nỗi hỗn hợp: Hình 20: Mạng kết nối hỗn hợp 2.4.4. Phân loại theo giao thức và theo hệ điều hành mạng sử dụng Khi phân loại theo giao thức mà mạng sử dụng người ta phân loại thành: Mạng TCP/IP, mạng NETBIOS … Tuy nhiên cách phân loại trên không phổ biến và chỉ áp dụng cho các mạng cục bộ. Nếu phân loại theo hệ điều hành mạng người ta chia ra theo mô hình mạng ngang hàng, mạng chủ/khách hoặc phân loại theo tên hệ điều hành mà mạng sử dụng: Windows NT, Unix, Novell … 2.4.4.1. Mạng khách/chủ (Client – Server) Trong mạng có những máy chuyên dụng phục vụ cho những mục đích khác nhau, máy phục vụ này 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 máy phục vụ chuyên dụng được tối ưu hóa để phục vụ nhanh những yêu cầu của các máy khách. Thường thấy một số loại máy phục vụ chuyên dụng như: Máy phục vụ tập tin/in ấn (file/print Server) 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ầu hết các mạng trong thực tế (nhất là những mạng lớn) đều dựa trên mô hình khách/chủ này. 2.4.4.2. Mạng ngang hàng (Peer to Peer) Trong mạng ngang hàng không tồn tại một cấu trúc phân cấp nào, 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. Mô hình mạng ngang hàng thích hợp cho các mạng có quy mô nhỏ (như nhóm làm việc) và không yêu cầu phải có tính bảo mật cao. 2.5. Một số mạng máy tính thông dụng nhất 2.5.1. Mạng cục bộ (LAN) Một mạng cục bộ là sự kết nối một nhóm máy tính và các thiết bị kết nối mạng được lắp đặt trên một phạm vị địa lý giới hạn, thường trong một toà nhà hoặc một khu công sở nào đó. Mạng cục bộ có một số các đặc trưng sau: Đặc trưng địa lý: Mạng cục bộ thường được cài đặt trong một phạm vi địa lý tương đối nhỏ như: trong một tòa nhà, một trường đại học, một căn cứ quân sự, … với đường kính của mạng có thể là từ vài chục mét, tới vài chục kilômét trong điều kiện công nghệ hiện nay. Đặc trưng tốc độ truyền: Mạng cục bộ có tốc độ truyền thường cao hơn so với mạng diện rộng. Với công nghệ mạng hiện nay, tốc độ truyền của mạng cục bộ có thể đạt tới 100Mb/s Đặc trưng độ tin cậy: Tỷ suất lỗi trên mạng cục bộ là thấp hơn nhiều so với mạng diện rộng hoặc các loại mạng khác. Đặc trưng quản lý: Mạng cục bộ thường là sở hữu riêng của một tổ chức nào đó (trường học, doanh nghiệp, …) do vậy, việc quản lý và khai thác mạng hòan toàn tập trung, thống nhất. 2.5.2. Mạng diện rộng với kết nối LAN to LAN Hình 21: Mạng diện rộng với kết nối LAN to LAN Mạng diện rộng bao giờ cũng là sự kết nối của các mạng LAN, mạng diện rộng có thể trải trên phạm vi một vùng, quốc gia hoặc cả một lục địa thậm chí trên phạm vi toàn cầu. Mạng diện rộng có một số đặc điểm sau: Tốc độ truyền dữ liệu không cao Phạm vi địa lý không giới hạn Thường triển khai dựa vào các công ty truyền thông, bưu điện và dùng các hệ thống truyền thông này để tạo dựng đường truyền Một mạng WAN có thể là sở hữu của một tập đoàn, một tổ chức hoặc là mạng kết nối của nhiều tập đoàn, tổ chức 2.5.3. Liên mạng Internet Cùng với sự phát triển nhanh chóng của công nghệ là sự ra đời của liên mạng Internet. Nó có những đặc điểm sau: Là một mạng toàn cầu Là sự kết hợp của vô số các hệ thống truyền thông, máy chủ cung cấp thông tin và dịch vụ, các máy trạm khai thác thông tin Dựa trên nhiều nền tảng truyền thông khác nhau, nhưng đều trên nền giao thức TCP/IP Là sở hữu chung của toàn nhân loại Càng ngày càng phát triển mãnh liệt 2.5.4. Mạng Intranet Thực sự là một mạng Internet thu nhỏ vào trong một cơ quan, công ty, tổ chức hay một bộ, nghành, ... giới hạn phạm vi người sử dụng, có sử dụng các công nghệ kiểm soát truy cập và bảo mật thông tin. Intranet được phát triển từ các mạng LAN, WAN dùng công nghệ Internet Ch­¬ng 3: ChuÈn hãa m¹ng m¸y tÝnh vµ m« h×nh OSI 3.1. Vấn đề chuẩn hóa mạng máy tính và các tổ chức chuẩn hóa mạng Sự phát triển sớm của LAN, MAN, WAN diễn ra rất hỗn loạn theo nhiều phương cách khác nhau. Từ những năm đầu thập kỷ 80, người ta có thể nhìn thấy sự gia tăng kinh khủng về số lượng và kích thước của những mạng máy tính này. Khi những công ty nhận ra rằng, họ có thể tiết kiệm rất nhiều tiền, có thể tăng năng suất một cách có hiệu quả bằng việc sử dụng công nghệ mạng, thì họ đua nhau lắp đặt thêm những mạng mới, mở rộng những mạng đã có một cách nhanh chóng gần như cùng thời gian với những công nghệ và sản phẩm mạng mới được giới thiệu. Đến khoảng giữa thập kỷ 80, những công ty này bắt đầu phải trải qua thời kỳ phát triển đau đớn do tất cả những sự mở rộng mà họ đã đầu tư vào. Vấn đề trở nên khó khăn hơn cho những mạng sử dụng những định nghĩa, những công nghệ truyền hay gọi là những chuẩn khác nhau, để có thể truyền thông với nhau. Và họ nhận ra rằng, họ cần thiết phải bỏ đi những hệ thống nối mạng “sở hữu” đó. Trong công nghiệp máy tính, “sở hữu” đối lập với “mở”, “sở hữu” có nghĩa rằng chỉ một hoặc một nhóm nhỏ những công ty có thể điều khiển được tất cả “cách dùng” của công nghệ. “Mở” có nghĩa “cách dùng” tự do của công nghệ luôn sẵn sàng đối với mọi người. Vì lý do đó, hội đồng tiêu chuẩn quốc tế là ISO (International Standards Organization), do các nước thành viên lập nên. Công việc ở Bắc Mỹ chịu sự điều hành của ANSI (American National Standards Institude) ở Hoa Kỳ đã ủy thác cho IEEE (Institude of Electrical and Electronic Engineers) phát triển và đề ra những tiêu chuẩn kỹ thuật cho LAN. Tổ chức này đã xây dựng nên mô hình tham chiếu cho việc kết nối các hệ thống mở OSI (reference model for Open Systems Interconnection). Mô hình này là cơ sở cho việc kết nối các hệ thống mở phục vụ cho các ứng dụng phân tán. Để đạt khả năng tối đa, các tiêu chuẩn được chọn phải cho phép mở rộng mạng để có thể phục vụ những ứng dụng không dự kiến trước trong tương lai tại lúc lắp đặt hệ thống và điều đó cũng cho phép mạng làm việc với thiết bị được sản xuất từ nhiều hãng khác nhau. Có hai loại chuẩn cho mạng đó là : Các chuẩn chính thức (de jure) do các tổ chức chuẩn quốc gia và quốc tế ban hành. Các chuẩn thực tiễn (de facto) do các hãng sản xuất, các tổ chức người sử dụng xây dựng và được dùng rộng rãi trong thực tế. 3.2. Mô hình tham chiếu OSI 7 lớp 3.2.1. Giới thiệu về mô hình OSI Vấn đề không tương thích giữa các mạng máy tính với nhau đã làm trở ngại cho sự tương tác giữa những người sử dụng mạng khác nhau. Nhu cầu trao đổi thông tin càng lớn thúc đẩy việc xây dựng 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 thiết bị mạng. Chính vì lý do đó, tổ chức tiêu chuẩn hoá quốc tế ISO (Internatinal Organnization for Standarzation) đã xây dựng mô hình tham chiếu cho việc kết nối các hệ thống mở OSI (Open Systems Interconnection). Mô hình này là cơ sở cho việc kết nối các hệ thống mở phục vụ cho các ứng dụng phân tán. Mô hình OSI được xây dựng trên kiến trúc phân tầng, gồm 7 lớp từ dưới lên: lớp vật lý, lớp liên kết dữ liệu, lớp mạng, lớp giao vận, lớp phiên, lớp trình diễn và lớp ứng dụng. 3.2.2. Các lớp trong mô hình OSI và chức năng của chúng 3.2.2.1. Lớp vật lý Lớp này bảo đảm các công việc sau: Lập, cắt cuộc nối. Truyền tin dạng bit qua kênh vật lý. Có thể có nhiều kênh. 3.2.2.2. Lớp liên kết dữ liệu Lớp này đảm bảo việc biến đổi các tin dạng bit nhận được từ lớp dưới (vật lý) sang khung số liệu, thông báo cho hệ phát kết quả thu được sao cho các thông tin truyền lên cho mức 3 không có lỗi. Các thông tin truyền ở mức 1 có thể làm hỏng các thông tin khung số liệu (frame error). Phần mềm mức hai sẽ thông báo cho mức một tryền lại các thông tin bị mất/lỗi. Đồng bộ các hệ có tốc độ xử lý tính khác nhau, một trong những phương pháp hay sử dụng là dùng bộ đệm trung gian để lưu giữ số liệu nhận được. Độ lớn của bộ đệm này phụ thuộc vào tương quan xử lý của các hệ thu và phát. Líp øng dông (Application) Líp tr×nh diÔn (presentation) Líp phiªn (Session) Líp giao vËn (transport) Líp m¹ng (Network) Líp liªn kÕt d÷ liÖu (Data Link) Líp vËt lý (physical link) Hình 22: Mô hình tham chiếu OSI 7 lớp Trong trường hợp đường truyền song công toàn phần, lớp datalink phải đảm bảo việc quản lý các thông tin số liệu và các thông tin trạng thái. 3.2.2.3. Lớp mạng Nhiệm vụ của lớp mạng là đảm bảo chuyển chính xác số liệu giữa các thiết bị cuối trong mạng. Để làm được việc đó, phải có chiến lược đánh địa chỉ thống nhất trong toàn mạng. Mỗi thiết bị cuối và thiết bị mạng có một địa chỉ mạng xác định. Số liệu cần trao đổi giữa các thiết bị cuối được tổ chức thành các gói (Packet) có độ dài thay đổi và được gán đầy đủ địa chỉ nguồn (source address) và địa chỉ đích (destination address). Lớp mạng đảm bảo việc tìm đường tối ưu cho các gói dữ liệu bằng các giao thức chọn đường dựa trên các thiết bị chọn đường (Router). Ngoài ra, lớp mạng có chức năng điều khiển lưu lượng số liệu trong mạng để tránh xảy ra tắc ngẽn bằng cách chọn các chiến lược tìm đường khác nhau để quyết định việc chuyển tiếp các gói số liệu. 3.2.2.4. Lớp giao vận Lớp này thực hiện các chức năng nhận thông tin từ lớp phiên (Session) chia thành các gói nhỏ hơn và truyền xuống lớp dưới, hoặc nhận thông tin từ lớp dưới chuyển lên phục hồi theo cách chia của hệ phát (Fragmentation and Reassembly). Nhiệm vụ quan trọng nhất của lớp vận chuyển là đảm bảo chuyển số liệu chính xác giữa hai thực thể thuộc lớp phiên (end–to–end control). Để làm được việc đó, ngoài chức năng kiểm tra số tuần tự phát, thu, kiểm tra và phát hiện, xử lý lỗi, lớp vận chuyển còn có chức năng điều khiển lưu lượng số liệu để đồng bộ giữa thể thu và phát và tránh tắc ngẽn số liệu khi chuyển qua lớp mạng. Ngoài ra, nhiều thực thể lớp phiên có thể trao đổi số liệu trên cùng một kết nối lớp mạng (multIPlexing). 3.2.2.5. Lớp phiên Liên kết giữa hai thực thể có nhu cầu trao đổi số liệu, Ví Dụ người dùng và một máy tính ở xa, được gọi là một phiên làm việc. Nhiệm vụ của lớp phiên là quản lý việc trao đổi số liệu, Ví Dụ: thiết lập giao diện giữa người dùng và máy, xác định thông số điều khiển trao đổi số liệu (tốc độ truyền, số bit trong một byte, có kiểm tra lỗi parity hay không, v.v.), xác định loại giao thức mô phỏng thiết bị cuối (Terminal emulation), v.v. Chức năng quan trọng nhất của lớp phiên là đảm bảo đồng bộ số liệu bằng cách thực hiện các điểm kiểm tra. Tại các điểm kiểm tra này, toàn bộ trạng thái và số liệu của phiên làm việc được lưu trữ trong bộ nhớ đệm. Khi có sự cố, có thể khởi tạo lại phiên làm việc từ điểm kiểm tra cuối cùng (không phải khởi tạo lại từ đầu). 3.2.2.6. Lớp trình diễn Nhiệm vụ của lớp thể hiện là thích ứng các cấu trúc dữ liệu khác nhau của người dùng với cấu trúc dữ liệu thống nhất sử dụng trong mạng. Số liệu của người dùng có thể được nén và mã hoá ở lớp thể hiện, trước khi chuyển xuống lớp phiên. Ngoài ra, lớp thể hiện còn chứa các thư viện các yêu cầu của người dùng, thư viện tiện ích, Ví Dụ thay đổi dạng thể hiện của các tệp, nén tệp... 3.2.2.7. Lớp ứng dụng Lớp ứng dụng cung cấp các phương tiện để người sử dụng có thể truy nhập được vào môi trường OSI, đồng thời cung cấp các dịch vụ thông tin phân tán. Lớp mạng cho phép người dùng khai thác các tài nguyên trong mạng tương tự như tài nguyên tại chỗ. 3.2.3. Phương thức hoạt động của mô hình OSI ë mỗi tầng trong mô hình OSI, 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 lớp (layer). Còn với phương thức không có 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 đó. Phương thức có liên kết, quá trình truyền dữ liệu phải trải qua 3 giai đoạn theo thứ tự: 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ý. Hủy bỏ liên kết: 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. So sánh 2 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 nó 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ó lại khá 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 đườ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 lớp 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. 3.2.4. Quá trình truyền dữ liệu trong mô hình OSI Tiến trình gửi: Dữ liệu qua lớp ứng dụng (Application) được gắn thêm phần tiêu đề AH (Application Header) vào phía trước dữ liệu rồi kết quả đưa xuống lớp trình diễn (presentation). Lớp 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à chuyển xuống lớp phiên. Quá trình này được lặp đi lặp lại cho đến khi dữ liệu đi xuống đến lớp vật lý, ở đấy chúng thật sự được chuyền sang máy nhận. Quá trình nhận diễn ra ngược lại, ở máy nhận, các phần Header khác nhau được loại bỏ từng cái một khi dữ truyền lên theo các lớp cho đến khi khôi phục lại nguyên trạng khỗi dữ liệu đã truyền đi ở máy truyền. Hình 23: Quá trình truyền dữ liệu trong mô hình OSI Cụ thể: giả sử bắt đầu chương trình gửi mail vào thời điểm này, lớp Application đã nhận biết được sự chọn lựa và chuyển xuống lớp Presentation. Presentation quyết định định dạng hay mã hoá dữ liệu nhận được từ lớp Application. Sau đó chuyển xuống tiếp lớp Session, tại đây dữ liệu được gán một control frame đặc biệt cho biết là có thể chuyển data xuống lớp Tranport. Tại lớp Tranport data được gom lại thành các frame. Tại lớp Data Link nếu dữ liệu quá lớn, lớp này sẽ phân chia thành những gói nhỏ và đánh thứ tự cho những gói đó và truyền xuống lớp Network. Lớp này thêm những thông tin địa chỉ vào gói dữ liệu mà nó nhận được và chuyển xuống chính xác cho lớp Data Link. Tại đây, dữ liệu đãc chuyển thành các bit đưa xuống cáp và truyền sang máy B. Máy B nhận dữ liệu và dịch ngược theo thứ tự các lớp: Physical – Data Link – Network – Transport – Session – Presentation – Application. Ch­¬ng 4: TCP/IP vµ m¹ng Internet 4.1. Họ giao thức TCP/IP 4.1.1. Giới thiệu về họ giao thức TCP/IP Sự ra đời của họ giao thức TCP/IP gắn liền với sự ra đời của Internet mà tiền thân là mạng ARPAnet (Advanced Research Projects Agency) do Bộ Quốc phòng Mỹ tạo ra. Đây là bộ giao thức được dùng rộng rãi nhất vì tính mở của nó. Điều đó có nghĩa là bất cứ máy nào dùng bộ giao thức TCP/IP đều có thể nối được vào Internet. Hai giao thức được dùng chủ yếu ở đây là TCP (Transmission Control Protocol) và IP (Internet Protocol). Chúng đã nhanh chóng được đón nhận và phát triển bởi nhiều nhà nghiên cứu và các hãng công nghiệp máy tính với mục đích xây dựng và phát triển một mạng truyền thông mở rộng khắp thế giới mà ngày nay chúng ta gọi là Internet. Phạm vi phục vụ của Internet không còn dành cho quân sự như ARPAnet nữa mà nó đã mở rộng lĩnh vực cho mọi loại đối tượng sử dụng, trong đó tỷ lệ quan trọng nhất vẫn thuộc về giới nghiên cứu khoa học và giáo dục. Có rất nhiều họ giao thức đang được thực hiện trên mạng thông tin máy tính hiện nay như IEEE 802.X dùng trong mạng cục bộ, CCITT X25 dùng cho mạng diện rộng và đặc biệt là họ giao thức chuẩn của ISO (tổ chức tiêu chuẩn hóa quốc tế) dựa trên mô hình tham chiếu bảy tầng cho việc nối kết các hệ thống mở. Gần đây, do sự xâm nhập của Internet vào Việt nam, chúng ta được làm quen với họ giao thức mới là TCP/IP mặc dù chúng đã xuất hiện từ hơn 20 năm trước đây. TCP/IP (Transmission Control Protocol/ Internet Protocol) TCP/IP là một họ giao thức cùng làm việc với nhau để cung cấp phương tiện truyền thông liên mạng được hình thành từ những năm 70. Đến năm 1981, TCP/IP phiên bản 4 mới hoàn tất và được phổ biến rộng rãi cho toàn bộ những máy tính sử dụng hệ điều hành UNIX. Sau này Microsoft cũng đã đưa TCP/IP trở thành một trong những giao thức căn bản của hệ điều hành Windows 9x mà hiện nay đang sử dụng. Đến năm 1994, một bản thảo của phiên bản IPv6 được hình thành với sự cộng tác của nhiều nhà khoa học thuộc các tổ chức Internet trên thế giới để cải tiến những hạn chế của IPv4. Khác với mô hình ISO/OSI tầng liên mạng sử dụng giao thức kết nối mạng “không liên kết” (connectionless) IP, tạo thành hạt nhân hoạt động của Internet. Cùng với các thuật toán định tuyến RIP, OSPF, BGP, tầng liên mạng IP cho phép kết nối một cách mềm dẻo và linh hoạt các loại mạng “vật lý” khác nhau như: Ethernet, Token Ring , X.25... Giao thức trao đổi dữ liệu “có liên kết” (connection – oriented) TCP được sử dụng ở tầng vận chuyển để đảm bảo tính chính xác và tin cậy việc trao đổi dữ liệu dựa trên kiến trúc kết nối “không liên kết” ở tầng liên mạng IP. Các giao thức hỗ trợ ứng dụng phổ biến như truy nhập từ xa (Telnet), chuyển tệp (FTP), dịch vụ World Wide Web (HTTP), thư điện tử (SMTP), dịch vụ tên miền (DNS) ngày càng được cài đặt phổ biến như những bộ phận cấu thành của các hệ điều hành thông dụng như UNIX (và các hệ điều hành chuyên dụng cùng họ của các nhà cung cấp thiết bị tính toán như AIX của IBM, SINIX của Siemens, Digital UNIX của DEC), Windows9x/NT, Novell Netware,... Hình 24: Mô hình OSI và mô hình kiến trúc của TCP/IP Như vậy, TCP tương ứng với lớp 4 cộng thêm một số chức năng của lớp 5 trong họ giao thức chuẩn ISO/OSI. Còn IP tương ứng với lớp 3 của mô hình OSI. Trong cấu trúc bốn lớp của TCP/IP, khi dữ liệu truyền từ lớp ứng dụng cho đến lớp vật lý, mỗi lớp đều cộng thêm vào phần điều khiển của mình để đảm bảo cho việc truyền dữ liệu được chính xác. Mỗi thông tin điều khiển này được gọi là một Header và được đặt ở trước phần dữ liệu được truyền. Mỗi lớp xem tất cả các thông tin mà nó nhận được từ lớp trên là dữ liệu, và đặt phần thông tin điều khiển Header của nó vào trước phần thông tin này. Việc cộng thêm vào các Header ở mỗi lớp trong quá trình truyền tin được gọi là encapsulation. Quá trình nhận dữ liệu diễn ra theo chiều ngược lại: mỗi lớp sẽ tách ra phần Header trước khi truyền dữ liệu lên lớp trên. Mỗi lớp có một cấu trúc dữ liệu riêng, độc lập với cấu trúc dữ liệu được dùng ở lớp trên hay lớp dưới của nó. Sau đây là giải thích một số khái niệm thường gặp. Stream là dòng số liệu được truyền trên cơ sở đơn vị số liệu là Byte. Số liệu được trao đổi giữa các ứng dụng dùng TCP được gọi là stream, trong khi dùng UDP, chúng được gọi là message. Mỗi gói số liệu TCP được gọi là segment còn UDP định nghĩa cấu trúc dữ liệu của nó là Packet. Lớp Internet xem tất cả các dữ liệu như là các khối và gọi là datagram. Bộ giao thức TCP/IP có thể dùng nhiều kiểu khác nhau của lớp mạng dưới cùng, mỗi loại có thể có một thuật ngữ khác nhau để truyền dữ liệu. Phần lớn các mạng kết cấu phần dữ liệu truyền đi dưới dạng các Packets hay là các frames. Application Stream Transport Segment/Datagram Internet Datagram Network Access Frame Hình 25: Cấu trúc dữ liệu tại các lớp của TCP/IP Lớp truy nhập mạng Network Access Layer là lớp thấp nhất trong cấu trúc phân bậc của TCP/IP. Những giao thức ở lớp này cung cấp cho hệ thống phương thức để truyền dữ liệu trên các tầng vật lý khác nhau của mạng. Nó định nghĩa cách thức truyền các khối dữ liệu (datagram) IP. Các giao thức ở lớp này phải biết chi tiết các phần cấu trúc vật lý mạng ở dưới nó (bao gồm cấu trúc gói số liệu, cấu trúc địa chỉ...) để định dạng được chính xác các gói dữ liệu sẽ được truyền trong từng loại mạng cụ thể. So sánh với cấu trúc OSI/OSI, lớp này của TCP/IP tương đãng với hai lớp Datalink, và Physical. Chức năng định dạng dữ liệu sẽ được truyền ở lớp này bao gồm việc nhúng các gói dữ liệu IP vào các frame sẽ được truyền trên mạng và việc ánh xạ các địa chỉ IP vào địa chỉ vật lý được dùng cho mạng. Lớp liên mạng Internet Layer là lớp ở ngay trên lớp Network Access trong cấu trúc phân lớp của TCP/IP. Internet Protocol là giao thức trung tâm của TCP/IP và là phần quan trọng nhất của lớp Internet. IP cung cấp các gói lưu chuyển cơ bản mà thông qua đó các mạng dùng TCP/IP được xây dựng. 4.1.2. Giao thức IP Mục đích chính của IP là cung cấp khả năng kết nối các mạng con thành liên mạng để truyền dữ liệu. IP cung cấp các chức năng chính sau: Định nghĩa cấu trúc các gói dữ liệu là đơn vị cơ sở cho việc truyền dữ liệu trên Internet. Định nghĩa phương thức đánh địa chỉ IP. Truyền dữ liệu giữa tầng vận chuyển và tầng mạng . Định tuyến để chuyển các gói dữ liệu trong mạng. Thực hiện việc phân mảnh và hợp nhất (fragmentation –reassembly) các gói dữ liệu và nhúng / tách chúng trong các gói dữ liệu ở tầng liên kết. 4.1.2.1 Địa chỉ IP Sơ đồ địa chỉ hoá để định danh các trạm (Host) trong liên mạng được gọi là địa chỉ IP. Mỗi địa chỉ IP có độ dài 32 bits (đối với IP4) được tách thành 4 vùng (mỗi vùng 1 byte), có thể được biểu thị dưới dạng thập phân, bát phân, thập lục phân hoặc nhị phân. Cách viết phổ biến nhất là dùng ký pháp thập phân có dấu chấm để tách giữa các vùng. Mục đích của địa chỉ IP là để định danh duy nhất cho một Host bất kỳ trên liên mạng. Có hai cách cấp phát địa chỉ IP, nó phụ thuộc vào cách ta kết nối mạng. Nếu mạng của ta kết nối vào mạng Internet, địa mạng chỉ được xác nhận bởi NICenter (Network Information Center). Nếu mạng của ta không kết nối Internet, người quản trị mạng sẽ cấp phát địa chỉ IP cho mạng này. Còn các Host ID được cấp phát bởi người quản trị mạng. Khuôn dạng địa chỉ IP: mỗi Host trên mạng TCP/IP được định danh duy nhất bởi một địa chỉ có khuôn dạng: Phần định danh địa chỉ mạng: Network Number Phần định danh địa chỉ các trạm làm việc trên mạng đó: Host Number Ví Dụ 128.4.70.9 là một địa chỉ IP Do tổ chức và độ lớn của các mạng con của liên mạng có thể khác nhau, người ta chia các địa chỉ IP thành 5 lớp ký hiệu A,B,C, D, E với cấu trúc được xác định trên hình Các bit đầu tiên của byte đầu tiên được dùng để định danh lớp địa chỉ (0 lớp A; 10 lớp B; 110 lớp C; 1110 lớp D; 11110 lớp E). Lớp A cho phép định danh tới 126 mạng (sử dụng byte đầu tiên), với tối đa 16 triệu Host (3 byte còn lại, 24 bits) cho mỗi mạng. Lớp này được dùng cho các mạng có số trạm cực lớn. Tại sao lại có 126 mạng trong khi dùng 8 bits? Lí do đầu tiên, 127.x (01111111) dùng cho địa chỉ loopback, thứ 2 là bit đầu tiên của byte đầu tiên bao giờ cũng là 0, 1111111(127). Dạng địa chỉ lớp A (NetworkNumber.Host.Host.Host). Nếu dùng ký pháp thập phân cho phép 1 đến 126 cho vùng đầu, 1 đến 255 cho các vùng còn lại. Lớp B cho phép định danh tới 16384 mạng (10111111.11111111.Host.Host), với tối đa 65535 Host trên mỗi mạng. Dạng của lớp B (Network number. Network number.Host.Host). Nếu dùng ký pháp thập phân cho phép 128 đến 191 cho vùng đầu, 1 đến 255 cho các vùng còn lại Lớp C cho phép định danh tới 2.097.150 mạng và tối đa 254 Host cho mỗi mạng. Lớp này được dùng cho các mạng có ít trạm. Lớp C sử dụng 3 bytes đầu định danh địa chỉ mạng (110xxxxx). Dạng của lớp C (Network number. Network number.Network number.Host). Nếu dùng dạng ký pháp thập phân cho phép 129 đến 233 cho vùng đầu và từ 1 đến 255 cho các vùng còn lại. Lớp D dùng để gửi IP datagram tới một nhóm các Host trên một mạng. Tất cả các số lớn hơn 233 trong trường đầu là thuộc lớp D Lớp E dự phòng để dùng trong tương lai Hình 26: Cách đánh địa chỉ TCP/IP Như vậy địa chỉ mạng cho lớp: A: từ 1 đến 126 cho vùng đầu tiên, 127 dùng cho địa chỉ loopback, B từ 128.1.0.0 đến 191.255.0.0, C từ 192.1.0.0 đến 233.255.255.0 Ví Dụ 192.1.1.1 địa chỉ lớp C có địa chỉ mạng 192.1.1.0, địa chỉ Host là 1 200.6.5.4 địa chỉ lớp C có địa chỉ mạng 200.6.5.0, địa chỉ Host là 4 150.150.5.6 địa chỉ lớp B có địa chỉ mạng 150.150.0.0, địa chỉ Host là 5.6 9.6.7.8 địa chỉ lớp A có địa chỉ mạng 9.0.0.0, địa chỉ Host là 6.7.8 128.1.0.1 địa chỉ lớp B có địa chỉ mạng 128.1.0.0, địa chỉ Host là 0.1 Trong thực tế, do địa chỉ IP là một tài nguyên cần thiết phải tiết kiệm triệt để, tránh lãng phí nên người ta đưa ra cách chia Subnet – Subneting. Trong nhiều trường hợp, một mạng có thể được chia thành nhiều mạng con (subnet), lúc đó có thể đưa thêm các vùng subnetid để định danh các mạng con. Vùng subnetid được lấy từ vùng Hostid, cụ thể đối với 3 lớp A, B, C như sau: Hình 27: Bổ sung vùng subnetID Ví Dụ: 17.1.1.1 địa chỉ lớp A có địa chỉ mạng 17, địa chỉ subnet 1, địa chỉ Host 1.1 129.1.1.1 địa chỉ lớp B có địa chỉ mạng 129.1, địa chỉ subnet 1, địa chỉ Host 4.1.2.2. Cấu trúc gói dữ liệu IP IP là giao thức cung cấp dịch vụ truyền thông theo kiểu “không liên kết” (connectionless). Phương thức không liên kết cho phép cặp trạm truyền nhận không cần phải thiết lập liên kết trước khi truyền dữ liệu và do đó không cần phải giải phóng liên kết khi không còn nhu cầu truyền dữ liệu nữa. Phương thức kết nối “không liên kết” cho phép thiết kế và thực hiện giao thức trao đổi dữ liệu đơn giản (không có cơ chế phát hiện và khắc phục lỗi truyền). Cũng chính vì vậy độ tin cậy trao đổi dữ liệu của loại giao thức này không cao. Các gói dữ liệu IP được định nghĩa là các datagram. Mỗi datagram có phần tiêu đề (Header) chứa các thông tin cần thiết để chuyển dữ liệu (Ví Dụ địa chỉ IP của trạm đích). Nếu địa chỉ IP đích là địa chỉ của một trạm nằm trên cùng một mạng IP với trạm nguồn thì các gói dữ liệu sẽ được chuyển thẳng tới đích; nếu địa chỉ IP đích không nằm trên cùng một mạng IP với máy nguồn thì các gói dữ liệu sẽ được gửi đến một máy trung chuyển, IP gateway để chuyển tiếp. IP gateway là một thiết bị mạng IP đảm nhận việc lưu chuyển các gói dữ liệu IP giữa hai mạng IP khác nhau. Cấu trúc gói số liệu IP như sau: VER (4 bits) : chỉ Version hiện hành của IP được cài đặt. IHL (4 bits) : chỉ độ dài phần tiêu đề (Internet Header Length) của datagram, tính theo đơn vị word (32 bits). Nếu không có trường này thì độ dài mặc định của phần tiêu đề là 5 từ. Version Hlength T_o_S Total Length Identification Flags Fragment offset Tme to live Protocol Header checksum Source Address Destination Address Option +Padding Data (max=65.535 byte) Hình 28: Cấu trúc gói dữ liệu TCP/IP Type of service (8 bits): cho biết các thông tin về loại dịch vụ và mức ưu tiên của gói IP, có dạng cụ thể như sau: Precedence D T R Reserved Trong đó các bits được giải thích theo bảng dưới đây: Bits Mô tả 0–2 Quyền ưu tiên (Precedence) – có 8 mức 111– Network Control 011– Flash 110– Internetwork control 010– Immediate 101– CRITIC/ECP 001– Priority 100– Flash Override 000– Routine (Thấp nhất) 3 D – Độ trễ(Delay): 0 – trễ bình thường , 1 – trễ thấp 4 T – Thông lượng(Thoughtput): 0 – bình thường , 1 – cao 5 R – Độ tin cậy(Reliability): 0 – bình thường , 1 – cao 6–7 Dự trữ (Reserved) Total Length (16 bits): chỉ độ dài toàn bộ datagram, kể cả phần Header (tính theo đơn vị bytes), vùng dữ liệu của datagram có thể dài tới 65535 bytes. Identification (16 bits) : cùng với các tham số khác như (Source Address và Destination Address) tham số này dùng để định danh duy nhất cho một datagram trong khoảng thời gian nó vẫn còn trên liên mạng Flags (3 bits) : liên quan đến sự phân đoạn (fragment) các datagram. Cụ thể là: 0 1 2 O DF MF Các bits được giải thích như sau: Bits Mô tả 0 Reversded – dự trữ , có giá trị là 0 1 Xác định datagram có phân đoạn hoặc không 0 – Có phân đoạn 1 – Không phân đoạn 2 Xác định còn khung tin (1) hay không (0) Fragment Offset (13 bits) : chỉ vị trí của đoạn (fragment) ở trong datagram, tính theo đơn vị 64 bits, có nghĩa là mỗi đoạn (trừ đoạn cuối cùng) phải chứa một vùng dữ liệu có độ dài là bội của 64 bits. Time To Live (TTL–8 bits) : quy định thời gian tồn tại của một gói dữ liệu trên liên mạng để tránh tình trạng một datagram bị quẩn trên mạng. Giá trị này được đặt lúc bắt đầu gửi đi và sẽ giảm dần mỗi khi gói dữ liệu được xử lý tại những điểm trên đường đi của gói dữ liệu (thực chất là tại các Router). Nếu giá trị này bằng 0 trước khi đến được đích, gói dữ liệu sẽ bị huỷ bỏ. Protocol (8 bits): chỉ giao thức tầng kế tiếp sẽ nhận vùng dữ liệu ở trạm đích (hiện tại thường là TCP hoặc UDP được cài đặt trên IP). Header checksum (16 bits): mã kiểm soát lỗi sử dụng phương pháp CRC (Cyclic Redundancy Check) dùng để đảm bảo thông tin về gói dữ liệu được truyền đi một cách chính xác (mặc dù dữ liệu có thể bị lỗi). Nếu như việc kiểm tra này thất bại, gói dữ liệu sẽ bị huỷ bỏ tại nơi xác định được lỗi. Cần chú ý là IP không cung cấp một phương tiện truyền tin cậy bởi nó không cung cấp cho ta một cơ chế để xác nhận dữ liệu truyền tại điểm nhận hoặc tại những điểm trung gian. Giao thức IP không có cơ chế Error Control cho dữ liệu truyền đi, không có cơ chế kiểm soát luồng dữ liệu (flow control). Source Address (32 bits): địa chỉ của trạm nguồn. Destination Address (32 bits): địa chỉ của trạm đích. Option (có độ dài thay đổi) sử dụng trong một số trường hợp, nhưng thực tế chúng rất ít dùng. Option bao gồm bảo mật, chức năng định tuyến đặc biệt Padding (độ dài thay đổi): vùng đệm, được dùng để đảm bảo cho phần Header luôn kết thúc ở một mốc 32 bits Data (độ dài thay đổi): vùng dữ liệu có độ dài là bội của 8 bits, tối đa là 65535 bytes. 4.1.2.3. Phân mảnh và hợp nhất các gói IP Các gói dữ liệu IP phải được nhúng trong khung dữ liệu ở tầng liên kết dữ liệu tương ứng, trước khi chuyển tiếp trong mạng. Quá trình nhận một gói dữ liệu IP diễn ra ngược lại. Ví Dụ, với mạng Ethernet ở tầng liên kết dữ liệu quá trình chuyển một gói dữ liệu diễn ra như sau. Khi gửi một gói dữ liệu IP cho mức Ethernet, IP chuyển cho mức liên kết dữ liệu các thông số địa chỉ Ethernet đích, kiểu khung Ethernet (chỉ dữ liệu mà Ethernet đang mang là của IP) và cuối cùng là gói IP. Tầng liên kết số liệu đặt địa chỉ Ethernet nguồn là địa chỉ kết nối mạng của mình và tính toán giá trị checksum. Trường type chỉ ra kiểu khung là 0x0800 đối với dữ liệu IP. Mức liên kết dữ liệu sẽ chuyển khung dữ liệu theo thuật toán truy nhập Ethernet. Một gói dữ liệu IP có độ dài tối đa 65536 byte, trong khi hầu hết các tầng liên kết dữ liệu chỉ hỗ trợ các khung dữ liệu nhỏ hơn độ lớn tối đa của gói dữ liệu IP nhiều lần (Ví Dụ độ dài lớn nhất của một khung dữ liệu Ethernet là 1500 byte). Vì vậy cần thiết phải có cơ chế phân mảnh khi phát và hợp nhất khi thu đối với các gói dữ liệu IP. Độ dài tối đa của một gói dữ liệu liên kết là MTU (Maximum Transmit Unit). Khi cần chuyển một gói dữ liệu IP có độ dài lớn hơn MTU của một mạng cụ thể, cần phải chia gói số liệu IP đó thành những gói IP nhỏ hơn để độ dài của nó nhỏ hơn hoặc bằng MTU gọi chung là mảnh (fragment). Trong phần tiêu đề của gói dữ liệu IP có thông tin về phân mảnh và xác định các mảnh có quan hệ phụ thuộc để hợp thành sau này. Ví Dụ Ethernet chỉ hỗ trợ các khung có độ dài tối đa là 1500 byte. Nếu muốn gửi một gói dữ liệu IP gồm 2000 byte qua Ethernet, phải chia thành hai gói nhỏ hơn, mỗi gói không quá giới hạn MTU của Ethernet. Hình 29: Nguyên tắc phân mảnh gói dữ liệu IP dùng cờ MF (3 bit thấp của trường Flags trong phần đầu của gói IP) và trường Flagment offset của gói IP (đã bị phân đoạn) để định danh gói IP đó là một phân đoạn và vị trí của phân đoạn này trong gói IP gốc. Các gói cùng trong chuỗi phân mảnh đều có trường này giống nhau. Cờ MF bằng 1 nếu là gói đầu của chuỗi phân mảnh và 0 nếu là gói cuối của gói đã được phân mảnh. Quá trình hợp nhất diễn ra ngược lại với quá trình phân mảnh. Khi IP nhận được một gói phân mảnh, nó giữ phân mảnh đó trong vùng đệm, cho đến khi nhận được hết các gói IP trong chuỗi phân mảnh có cùng trường định danh. Khi phân mảnh đầu tiên được nhận, IP khởi động một bộ đếm thời gian (giá trị ngầm định là 15s). IP phải nhận hết các phân mảnh kế tiếp trước khi đồng hồ tắt. Nếu không IP phải huỷ tất cả các phân mảnh trong hàng đợi hiện thời có cùng trường định danh. Khi IP nhận được hết các phân mảnh, nó thực hiện hợp nhất các gói phân mảnh thành các gói IP gốc và sau đó xử lý nó như một gói IP bình thường. IP thường chỉ thực hiện hợp nhất các gói tại hệ thống đích của gói. 4.1.2.4. Định tuyến IP Có hai loại định tuyến: Định tuyến trực tiếp và định tuyến không trực tiếp Định tuyến trực tiếp: Định tuyến trực tiếp là việc xác định đường nối giữa hai trạm làm việc trong cùng một mạng vật lý. Định tuyến không trực tiếp. Định tuyến không trực tiếp là việc xác định đường nối giữa hai trạm làm việc không nằm trong cùng một mạng vật lý và vì vậy, việc truyền tin giữa chúng phải được thực hiện thông qua các trạm trung gian là các gateway. Để kiểm tra xem trạm đích có nằm trên cùng mạng vật lý với trạm nguồn hay không, người gửi phải tách lấy phần địa chỉ mạng trong phần địa chỉ IP. Nếu hai địa chỉ này có địa chỉ mạng giống nhau thì datagram sẽ được truyền đi trực tiếp; ngược lại phải xác định một gateway, thông qua gateway này chuyển tiếp các datagram. Khi một trạm muốn gửi các gói dữ liệu đến một trạm khác thì nó phải đóng gói datagram vào một khung (frame) và gửi các frame này đến gateway gần nhất. Khi một frame đến một gateway, phần datagram đã được đóng gói sẽ được tách ra và IP routing sẽ chọn gateway tiếp dọc theo đường dẫn đến đích. Datagram sau đó lại được đóng gói vào một frame khác và gửi đến mạng vật lý để gửi đến gateway tiếp theo trên đường truyền và tiếp tục như thế cho đến khi datagram được truyền đến trạm đích. Hình 30: Dùng các gateway để gửi các gói dữ liệu Chiến lược định tuyến: Trong thuật ngữ truyền thống của TCP/IP chỉ có hai kiểu thiết bị, đó là các cổng truyền (gateway) và các trạm (Host). Các cổng truyền có vai trò gửi các gói dữ liệu, còn các trạm thì không. Tuy nhiên khi một trạm được nối với nhiều mạng thì nó cũng có thể định hướng cho việc lưu chuyển các gói dữ liệu giữa các mạng và lúc này nó đóng vai trò hoàn toàn như một gateway. Các trạm làm việc lưu chuyển các gói dữ liệu xuyên suốt qua cả bốn lớp, trong khi các cổng truyền chỉ chuyển các gói đến lớp Internet là nơi quyết định tuyến đường tiếp theo để chuyển tiếp các gói dữ liệu. Các máy chỉ có thể truyền dữ liệu đến các máy khác nằm trên cùng một mạng vật lý. Các gói từ A1 cần chuyển cho C1 sẽ được hướng đến gateway G1 và G2. Trạm A1 đầu tiên sẽ truyền các gói đến gateway G1 thông qua mạng A. Sau đó G1 truyền tiếp đến G2 thông qua mạng B và cuối cùng G2 sẽ truyền các gói trực tiếp đến trạm C1, bởi vì chúng được nối trực tiếp với nhau thông qua mạng C. Trạm A1 không hề biết đến các gateway nằm ở sau G1. A1 gửi các gói số liệu cho các mạng B và C đến gateway cục bộ G1 và dựa vào gateway này để định hướng tiếp cho các gói dữ liệu đi đến đích. Theo cách này thì trạm C1 trước tiên sẽ gửi các gói của mình đến cho G2 và G2 sẽ gửi đi tiếp cho các trạm ở trên mạng A cũng như ở trên mạng B. Việc phân mảnh các gói dữ liệu: Trong quá trình truyền dữ liệu, một gói dữ liệu (datagram) có thể được truyền đi thông qua nhiều mạng khác nhau. Một gói dữ liệu (datagram) nhận được từ một mạng nào đó có thể quá lớn để truyền đi trong gói đơn ở trên một mạng khác, bởi mỗi loại cấu trúc mạng cho phép một đơn vị truyền cực đại (Maximum Transmit Unit – MTU), khác nhau. Đây chính là kích thước lớn nhất của một gói mà chúng có thể truyền. Nếu như một gói dữ liệu nhận được từ một mạng nào đó mà lớn hơn MTU của một mạng khác thì nó cần được phân mảnh ra thành các gói nhỏ hơn, gọi là fragment. Quá trình này gọi là quá trình phân mảnh. Dạng của một fragment cũng giống như dạng của một gói dữ liệu thông thường. Từ thứ hai trong phần Header chứa các thông tin để xác định mỗi fragment và cung cấp các thông tin để hợp nhất các fragment này lại thành các gói như ban đầu. Trường identification dùng để xác định fragment này là thuộc về gói dữ liệu nào. 4.2. Giao thức TCP TCP (Transmission Control Protocol) là một giao thức “có liên kết” (connection – oriented), nghĩa là cần thiết lập liên kết (logic), giữa một cặp thực thể TCP trước khi chúng trao đổi dữ liệu với nhau. TCP cung cấp khả năng truyền dữ liệu một cách an toàn giữa các máy trạm trong hệ thống các mạng. Nó cung cấp thêm các chức năng nhằm kiểm tra tính chính xác của dữ liệu khi đến và bao gồm cả việc gửi lại dữ liệu khi có lỗi xảy ra. TCP cung cấp các chức năng chính sau: Thiết lập, duy trì, kết thúc liên kết giữa hai quá trình. Phân phát gói tin một cách tin cậy. Đánh số thứ tự (sequencing) các gói dữ liệu nhằm truyền dữ liệu một cách tin cậy. Cho phép điều khiển lỗi. Cung cấp khả năng đa kết nối với các quá trình khác nhau giữa trạm nguồn và trạm đích nhất định thông qua việc sử dụng các cổng. Truyền dữ liệu sử dụng cơ chế song công (full–duplex). 4.2.1. Cấu trúc gói dữ liệu TCP Hình 31: Khuôn dạng của TCP segment Source port (16 bits) : số hiệu cổng của trạm nguồn Destination port (16 bits) : số hiệu cổng của trạm đích Sequence Number (32 bits): số hiệu của 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. Acknowlegment: vị trí tương đối của byte cuối cùng đã nhận đúng bởi thực thể gửi gói ACK cộng thêm 1. Giá trị của trường này còn được gọi là số tuần tự thu. Trường này được kiểm tra chỉ khi bit ACK=1. Data offset (4 bits) : số tượng từ 32 bit trong TCP Header. Tham số này chỉ ra vị trí bắt đầu của vùng dữ liệu Reserved (6 bits) : dành để dùng trong tương lai. Phải được thiết lập là 0. Control bits : các bit điều khiển URG : vùng con trỏ khẩn (Urgent Pointer) có hiệu lực. ACK : vùng báo nhận (ACK number) có hiệu lực. PSH : chức năng Push. PSH=1 thực thể nhận phải chuyển dữ liệu này cho ứng dụng tức thời. RST : thiết lập lại (reset) kết nối. SYN : đồng bộ hoá các số hiệu tuần tự, dùng để thiết lập kết nối TCP. FIN : thông báo thực thể gửi đã kết thúc gửi dữ liệu. Window (16 bits): cấp phát credit để kiểm soát luồng dữ liệu (cơ chế của sổ). Đây chính là số lượng các byte dữ liệu, bắt đầu từ byte được chỉ ra trong vùng ACK number, mà trạm nguồn đã sẵn sàng để nhận Checksum (16 bits) : mã kiểm soát lỗi (theo phương pháp CRC) cho toàn bộ segment (Header + data) Urgent pointer (16 bits) : con trỏ này trỏ tới số hiệu tuần tự của byte đi theo 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 option của TCP, trong đó có độ dài tối đa của vùng TCP data trong một segment Padding (độ dài thay đổi) : phần chèn thêm vào Header để bảo đảm phần Header luôn kết thúc ở một mốc 32 bits. Phần thêm này gồm toàn số 0. TCP data (độ dài thay đổi) : chứa dữ liệu của tầng trên, có độ dài tối đa ngầm định là 536 bytes. Giá trị này có thể điều chỉnh bằng cách khai báo trong vùng options. Một tiến trình ứng dụng trong một Host truy nhập vào các dịch vụ của TCP cung cấp thông qua một cổng (port) như sau: 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. TCP được cung cấp nhờ một liên kết logic giữa một cặp socket. Một socket có thể tham gia nhiều liên kết với các socket ở xa khác nhau. Trước khi truyền dữ liệu giữa hai trạm cần phải thiết lập một liên kết TCP giữa chúng và khi kết thúc phiên truyền dữ liệu thì liên kết đó sẽ được giải phóng. Cũng giống như ở các giao thức khác, các thực thể ở tầng trên sử dụng TCP thông qua các hàm dịch vụ nguyên thuỷ (service primitives), hay còn gọi là các lời gọi hàm (function call). 1 2 3 TCP IP NAP Userprocess 1 2 TCP IP NAP Userprocess Host Host Internet NAP: Network Access Protocol Hình 32: Cổng truy nhập dịch vụ TCP 4.2.2. Thiết lập và kết thúc kết nối TCP Thiết lập kết nối Thiết lập kết nối TCP được thực hiện trên cơ sở phương thức bắt tay ba bước (Three – Way Handsake). Yêu cầu kết nối luôn được tiến trình trạm khởi tạo, bằng cách gửi một gói TCP với cờ SYN=1 và chứa giá trị khởi tạo số tuần tự ISN của Client. Giá trị ISN này là một số 4 byte không dấu và được tăng mỗi khi kết nối được yêu cầu (giá trị này quay về 0 khi nó tới giá trị 232). Trong thông điệp SYN này còn chứa số hiệu cổng TCP của phần mềm dịch vụ mà tiến trình trạm muốn kết nối (bước 1). Mỗi thực thể kết nối TCP đều có một giá trị ISN mới số này được tăng theo thời gian. Vì một kết nối TCP có cùng số hiệu cổng và cùng địa chỉ IP được dùng lại nhiều lần, do đó việc thay đổi giá trị INS ngăn không cho các kết nối dùng lại các dữ liệu đã cũ (stale) vẫn còn được truyền từ một kết nối cũ và có cùng một địa chỉ kết nối. Khi thực thể TCP của phần mềm dịch vụ nhận được thông điệp SYN, nó gửi lại gói SYN cùng giá trị ISN của nó và đặt cờ ACK=1 trong trường hợp sẵn sàng nhận kết nối. Thông điệp này còn chứa giá trị ISN của tiến trình trạm trong trường hợp số tuần tự thu để báo rằng thực thể dịch vụ đã nhận được giá trị ISN của tiến trình trạm (bước 2). Tiến trình trạm trả lời lại gói SYN của thực thể dịch vụ bằng một thông báo trả lời ACK cuối cùng. Bằng cách này, các thực thể TCP trao đổi một cách tin cậy các giá trị ISN của nhau và có thể bắt đầu trao đổi dữ liệu. Không có thông điệp nào trong ba bước trên chứa bất kỳ dữ liệu gì; tất cả thông tin trao đổi đều nằm trong phần tiêu đề của thông điệp TCP (bước 3). Hình 33: Quá trình kết nối theo 3 bước (Three way Handshake) Kết thúc kết nối Khi có nhu cầu kết thúc kết nối, thực thể TCP, Ví Dụ cụ thể A gửi yêu cầu kết thúc kết nối với FIN=1. Vì kết nối TCP là song công (full–duplex) nên mặc dù nhận được yêu cầu kết thúc kết nối của A (A thông báo hết số liệu gửi) thực thể B vẫn có thể tiếp tục truyền số liệu cho đến khi B không còn số liệu để gửi và thông báo cho A bằng yêu cầu kết thúc kết nối với FIN=1 của mình. Khi thực thể TCP đã nhận được thông điệp FIN và sau khi đã gửi thông điệp FIN của chính mình, kết nối TCP thực sụ kết thúc. 4.3. Internet 4.3.1. Lịch sử phát triển của Internet Internet bắt nguồn từ đề án ARPANET (Advanced Research Project Agency Network) khởi sự trong năm 1969 bởi Bộ Quốc phòng Mỹ (American Department of Defense). Đề án ARPANET với sự tham gia của một số trung tâm nghiên cứu, đại học tại Mỹ (UCLA, Stanford, ... ) nhằm mục đích thiết kế một mạng WAN (Wide Area Network) có khả năng tự bảo tồn chống lại sự phá hoại một phân mạng bằng chiến tranh nguyên tử. Đề án này dẫn tới sự ra đời của nghi thức truyền IP (Internet Protocol). Theo nghi thức này, thông tin truyền sẽ được đóng thành các gói dữ liệu và truyền trên mạng theo nhiều đường khác nhau từ người gửi tới nơi người nhận. Một hệ thống máy tính nối trên mạng gọi là Router làm nhiệm vụ tìm đường đi tối ưu cho các gói dữ liệu, tất cả các máy tính trên mạng đều tham dự vào việc truyền dữ liệu, nhờ vậy nếu một phân mạng bị phá huỷ các Router có thể tìm đường khác để truyền thông tin tới người nhận. Mạng ARPANET được phát triển và sử dụng trước hết trong các trường đại học, các cơ quan nhà nước Mỹ, tiếp theo đó, các trung tâm tính toán lớn, các trung tâm truyền vô tuyến điện và vệ tinh được nối vào mạng, ... trên cơ sở này, ARPANET được nối với khắp các vùng trên thế giới. Tới năm 1983, trước sự thành công của việc triển khai mạng ARPANET, Bộ quốc phòng Mỹ tách một phân mạng giành riêng cho quân đội Mỹ(MILNET). Phần còn lại, gọi là NSFnet, được quản lý bởi NSF (National Science Foundation) NSF dùng 5 siêu máy tính để làm Router cho mạng, và lập một tổ chức không chính phủ để quản lý mạng, chủ yếu dùng cho đại học và nghiên cứu cơ bản trên toàn thế giới. Tới năm 1987, NSFnet mở cửa cho cá nhân và cho các công ty tư nhân (BITnet), tới năm 1988 siêu mạng được mang tên INTERNET. Tuy nhiên cho tới năm 1988, việc sử dụng INTERNET còn hạn chế trong các dịch vụ truyền mạng (FTP), thư điện tử (E–mail), truy nhập từ xa (TELNET) không thích ứng với nhu cầu kinh tế và đời sống hàng ngày. INTERNET chủ yếu được dùng trong môi trường nghiên cứu khoa học và giảng dạy đại học. Trong năm 1988, tại trung tâm nghiên cứu nguyên tử của Pháp CERN (Centre Européen de Recherche Nuclaire) ra đời đề án Mạng nhện thế giới WWW (World Wide Web). Đề án này, nhằm xây dựng một phương thức mới sử dụng INTERNET, gọi là phương thức Siêu văn bản (HyperText). Các tài liệu và hình ảnh được trình bày bằng ngôn ngữ HTML (HyperText Markup Language) và được phát hành trên INTERNET qua các hệ chủ làm việc với nghi thức HTTP (HyperText Transport Protocol). Từ năm 1992, phương thức làm việc này được đưa ra thử nghiêm trên INTERNET. Rất nhanh chóng, các công ty tư nhân tìm thấy qua phương thức này cách sử dụng INTERNET trong kinh tế và đời sống. Vốn đầu tư vào INTERNET được nhân lên hàng chục lần. Từ năm 1994 INTERNET trở thành siêu mạng kinh doanh. Số các công ty sử dụng INTERNET vào việc kinh doanh và quảng cáo lên gấp hàng nghìn lần kể từ năm 1995. Doanh số giao dịch thương mại qua mạng INTERNET lên hàng chục tỉ USD trong năm 1996 ... Với phương thức siêu văn bản, người sử dụng, qua một phần mềm truy đọc (Navigator), có thể tìm đọc tất cả các tài liệu siêu văn bản công bố tại mọi nơi trên thế giới (kể cả hình ảnh và tiếng nói). Với công nghệ WWW, chúng ta bước vào giai đoạn mà mọi thông tin có thể có ngay trên bàn làm việc của mình. Mỗi công ty hoặc người sử dụng, được phân phối một trang cội nguồn (Home Page) trên hệ chủ HTTP. Trang cội nguồn, là siêu văn bản gốc, để từ đó có thể tìm tới tất cả các siêu văn bản khác mà người sử dụng muốn phát hành. Địa chỉ của trang cội nguồn được tìm thấy từ khắp mọi nơi trên thế giới. Vì vậy, đối với một xí nghiệp, trang cội nguồn trở thành một văn phòng đại diện điện tử trên INTERNET. Từ khắp mọi nơi, khách hàng có thể xem các quảng cáo và liên hệ trực tiếp với xí nghiệp qua các dòng siêu liên kết (HyperLink) trong siêu văn bản. Tới năm 1994, một điểm yếu của INTERNET là không có khả năng lập trình cục bộ, vì các máy nối vào mạng không đồng bộ và không tương thích. Thiếu khả năng này, INTERNET chỉ được dùng trong việc phát hành và truyền thông tin chứ không dùng để xử lý thông tin được. Trong năm 1994, hãng máy tính SUN Corporation công bố một ngôn ngữ mới, gọi là JAVA(cafe), cho phép lập trình cục bộ trên INTERNET, các chương trình JAVA được gọi thẳng từ các siêu văn bản qua các siêu liên (Applet). Vào mùa thu năm 1995, ngôn ngữ JAVA chính thức ra đời, đánh dấu một bước tiến quan trọng trong việc sử dụng INTERNET. Trước hết, một chương trình JAVA, sẽ được chạy trên máy khách (Workstation) chứ không phải trên máy chủ (Server). Điều này cho phép sử dụng công suất của tất cả các máy khách vào việc xử lý số liệu. Hàng triệu máy tính (hoặc vi tính) có thể thực hiện cùng một lúc một chương trình ghi trên một siêu văn bản trong máy chủ. Việc lập trình trên INTERNET cho phép truy nhập từ một trang siêu văn bản vào các chương trình xử lý thông tin, đặc biệt là các chương trình điều hành và quản lý thông tin của một xí nghiệp. phương thức làm việc này, được gọi là Intranet. Chỉ trong năm 1995–1996, hàng trăm nghìn dịch vụ phần mềm Intranet được phát triển. Nhiều hãng máy tính và phần mềm như Microsoft, SUN, IBM, Oracle, Netscape,... đã phát triển và kinh doanh hàng loạt phần mềm hệ thống và phần mềm cơ bản để phát triển các ứng dụng INTERNET / Intranet. 4.3.2. Kiến trúc của Internet. Internet là một siêu mạng dựa trên sự liên nối trên nhiều lớp khác nhau: Mạng liên lục địa: Sử dụng trục cable qua các đại dương, hoặc sử dụng các vệ tinh. Mục đích là nối thông tin giữa các lục địa. Một số hãng điều tiết chính (Operaters) trên thế giới: MCInet, SPRINTlink, ANSnet–AOL, CERFnet, Ebone, Eurpanet, ... Mạng lục địa: Gồm các hãng điều tiết quốc gia hay liên quốc gia, cung cấp phương tiện truyền tin cho các khách hàng trên một vùng nhất định của một lục địa: VIETPAC (Việt Nam), TRANSPAC (Pháp), AUSPAC (Australia), TELEPAC ( Singapore), ... Mạng truy nhập địa phương: Gồm các hãng bán dịch vụ cổng vào cho khách hàng qua mạng lưới điện thoại hay mạng riêng, và nối vào các mạng lục địa bởi các đường truyền đặc biệt (Specialized links): TRANSPAC–France–Telecom, FranceNet, World Net, Imaginet, ... Mạng biệt lập: Các mạng được xây dựng riêng để bán dịch vụ cho khách và có cổng nối với siêu mạng Internet (Computer Serve, IBM, Micronet, Microsoft Network, ...) Trong các hãng bán dịch vụ cổng vào, cần phân biệt: – Các hãng điều tiết Internet: Các hãng này, có khả năng cung cấp đường kết nối liên tục vào siêu mạng (on–line services), họ tham gia vào việc quản lý hệ Internet trên phạm vi một địa phương hay một quốc gia: VIETPAC (VDC – Việt Nam), AUSPAC, TRANSPAC, ... – Các hãng cung cấp dịch vụ dial–up: cho thuê bao cổng vào qua hệ thống điện thoại. Các dịch vụ này không phải là dịch vụ liên tục (off–line services). Tại Việt Nam: VAREnet và Netnam – Viện Công nghệ Thông tin, Vietnet – Bưu điện Khánh Hoà, Trí tuệ Việt Nam – Công ty FPT, Phương Nam – Trung tâm Hội chợ Triển lươm, ... – Các hãng cung cấp dịch vụ UUCP ( Unix to Unix Copy), chủ yếu là truyền mạng từ xa (FTP) và thư điện tử (e–mail), chẳng hạn VN–mail tại Việt Nam. Các hãng thuê bao cổng vào thường kết hợp với việc làm các dịch vụ Internet như: thuê làm trang cội nguồn (Home Page), thiết kế và xây dựng các siêu văn bản, quản lý các nhóm hội thảo (Newgroup), dịch vụ Intranet, ... Về mặt thiết bị ba thành phần chính tạo nên Internet là: Các trạm chủ (Hosts), các trạm làm việc (Workstation), PCs, máy chủ, máy lớn, v.v ... trên đó chạy các chương trình ứng dụng. Các máy tính có thể thuộc các loại khác nhau, chỉ cần hiểu được TCP/IP và có phần cứng, phần mềm tương ứng để truy cập và sử dụng các dịch vụ Internet. Các mạng diện rộng, mạng cục bộ, đường thuê bao điểm–điểm (Point to Point), liên kết Dial–Up (điện thoại, ISDN, X.25) v.v ... mang tải thông tin trao đổi giữa các máy tính. Các bộ dẫn đường (Router) phục vụ việc kết nối giữa các mạng. Nhiều công nghệ mạng khác nhau được kết hợp nhằm đảm bảo ở khắp mọi nơi dịch vụ chuyển nhận các gói dữ liệu (IP Packet – đơn vị cấu thành trao đổi thông tin) trên mạng. Vấn đề then chốt là cần có chuẩn truyền thông thống nhất và cơ chế dẫn đường trên các mạng phân tán diện rộng. Internet dựa trên tập hợp các giao thức có tên chung là TCP/IP được xây dựng nhằm cho mục đích trên: – Mỗi máy tính trên mạng Internet đều có 1 địa chỉ IP duy nhất. – Cơ chế dẫn đường được thực hiện qua các ROUTER. Tại đó có các bảng thông tin dẫn đường được cập nhật liên tục chỉ cho biết điểm đến tiếp theo trên mạng. Khi có một trạm nào đó bị hỏng thông tin có thể được lái đi qua một số trạm khác để đến địa chỉ cuối cùng. 4.3.3. Các dịch vụ thông tin trên Internet. 4.3.3.1. Thư điện tử (Email). Dịch vụ thư tín điện tử (Email) giúp ta gửi thông tin đến mọi người nếu ta có địa chỉ thư điện tử của họ. Trên Internet thư điện tử không chỉ đến với những người nối trực tiếp vào Internet mà có thể đến cả với những người không nối trực tiếp vào Internet. Những người không nối trực tiếp vào mạng vào Internet thường là thành viên của một số mạng thương mại như CompuServe, American Online,.... Số lượng người sử dụng thư điện tử lên tới hàng chục triệu người, do vậy dịch vụ thư điện tử đóng một vai trò hết sức quan trọng. Ta có thể chia dịch vụ thư điện tử thành 2 dịch vụ cơ bản là: Mailing list (với máy chủ quản lý danh sách thư) Archive Server (máy chủ thực thi) Mailing list có khả năng đưa ra danh sách địa chỉ thư điện tử của mọi người mà bạn có thể gửi thư đến từng địa chỉ đó. Archive Server cho phép gửi các tệp theo đường thư điện tử để đáp ứng yêu cầu của người dùng đưa ra. 4.3.3.2. Truyền file (FTP). FTP (File Tranfer Protocol) là một dịch vụ tốt và có hiệu quả để lấy tệp từ các máy tính khác trên mạng. Việc này cũng giống như việc đăng nhập vào một máy tính nhưng nó giới hạn người sử dụng bằng một số lệnh giới hạn đối với những người sử dụng nặc danh. FTP hỗ trợ tất cả các dạng tệp, ta có thể tạo ra các văn bản mã ACSII, Portscript hoặc tài liệu PCL, hay các phần mềm dưới dạng nhị phân. Chỉ cần thay đổi một chút cấu hình với một Server FTP đặc biệt, là có thể có các lớp (Classes) cho người sử dụng với khả năng có thể truy cập với mức độ khác nhau vào từng phần của nơi lưu trữ dữ liệu, kết nối, truyền, và giới hạn số lượng người sử dụng có khả năng cùng một lúc có thể truy nhập vào nơi lưu trữ dữ liệu của ta. Điểm yếu của FTP là quá trình hiển thị các thư mục và tệp không thân thiện cụ thể là nó không cung cấp giao diện đồ hoạ và những chỉ dẫn cần thiết về tệp hay thư mục. Một cách truyền thống mà người quản trị giúp đỡ người sử dụng tài nguyên bằng việc cung cấp một danh sách các tệp trong kho lưu trữ nhưng không phải lúc nào cũng có hiệu quả. Một số người quản trị còn cung cấp tệp Readme trong mỗi thư mục để mô tả từng tệp hay từng thư mục con. 4.3.3.3. Truy cập từ xa (Telnet). Telnet là dịch vụ có trong bất cứ hệ điều hành nào do vậy chúng được sử dụng ngay lúc chúng ra đời. Telnet cho phép bạn đăng nhập vào hệ thống từ một thiết bị đầu cuối nào trên mạng. Nó sử dụng để cung cấp các dịch vụ của Internet hoàn toàn giống như bạn quay số để nối trực tiếp vào Internet bằng modem. 4.3.3.4. World Wide Web World Wide Web (WWW) hay Web là một dịch vụ mới nhất và có hiệu quả nhất trên Internet. WWW với những đặc trưng của riêng nó cùng với tổ hợp các dịch vụ thông tin đã biến nó trở thành một dịch vụ rất hữu ích nhưng lại rất dễ hiểu. Nếu khi bạn cần FTP thì Client FTP sẽ cho phép bạn có thể truy nhập vào tài nguyên của FTP. Nếu bạn cần WAIS thì Client WAIS sẽ cho phép bạn truy nhập vào WAIS Server. Nếu là Client Gopher thì có thể nối với Gopher Server. Còn trình duyệt Web có thể cho phép bạn truy nhập vào tất cả các dịch vụ trên và còn hơn thế nữa. Tài liệu WWW được viết bằng ngôn ngữ HTML (HyperText Markup Language) hay còn gọi là ngôn ngữ siêu văn bản. Dưới dạng nguyên thủy nó giống như văn bản bình thường nhưng nó có thêm một số lệnh định dạng. HTML bao gồm nhiều cách liên kết với các tài nguyên FTP, Gopher Server, WAIS Server và Web Server. Web Server trao đổi các tài liệu HTML bằng giao thức HTTP (HyperText Transfer Protocol) hay gọi là giao thức truyền siêu văn bản. Với một cách định dạng đặc biệt bởi các lệnh của HTML, ta biết được có sự liên kết với siêu văn bản khác hay không bằng cách nhận biết qua việc gạch dưới một cụm từ. Khi đó người dùng chỉ việc kích chuột thì trình duyệt sẽ tự động chuyển tới kết nối đó. Nếu đó là một tài liệu HTML thì trình duyệt chỉ đơn giản là hiển thị văn bản đó. Nếu đó là một thư mục của một tài nguyên FTP thì trình duyệt sẽ liệt kê danh sách thư mục và thể hiện nội dụng bằng một loạt các kết nối với tên sau khi các thư mục con và các tệp đã được liệt kê đầy đủ trên thư mục. Khi bạn kích vào tệp thì liên kết phục hồi thành tệp và hiện chúng nếu có thể hoặc truyền nó đến người sử dụng. Để sử dụng trình duyệt đồ hoạ, người dùng là các công ty hay các trường đại học phải kết nối IP vào Internet. Đối với người sử dụng tại nhà riêng thì cần kết nối SLIP hoặc PPP để sử dụng trình duyệt đồ hoạ. Việc dịch vụ WWW có thể cho phép kết nối các thông tin trên quy mô lớn, sử dụng đơn giản đã giúp nó trở thành một dịch vụ quan trọng trên Internet. Tài liệu HTML có khả năng cung cấp các nội dung có giá trị và các thông tin bổ ích, đơn giản. Chỉ cần một lần kích chuột là có thể truy nhập vào các Server thông tin ở bất cứ đâu. PhÇn II: vÊn ®Ò an toµn trong m¹ng m¸y tÝnh Ch­¬ng 1: Kh¸i qu¸t vÒ an toµn m¹ng 1.1. Các nguy cơ đe doạ hệ thống và mạng máy tính 1.1.1. Mô tả các nguy cơ Chúng ta hãy hình dung với một hệ thống thông tin (Mạng LAN, mạng Intranet ...) đang hoạt động, bỗng đến một ngày nào đó nó bị tê liệt toàn bộ (điều này không phải là không thể xảy ra) bởi một kẻ phá hoại cố tình nào đó; hoặc nhẹ nhàng hơn là phát hiện thấy các dữ liệu quý báu của mình bị sai lạc một cách cố ý, thậm chí bị mất mát. Hoặc một ngày nào đó bạn nhận thấy công việc kinh doanh của mình bị thất bại thảm hại bởi vì thông tin trong hệ thống của bạn bị kẻ khác xâm nhập và xem lén ... Xử lý, phân tích, tổng hợp và bảo mật thông tin là hai mặt của một vấn đề không thể tách rời nhau. Ngay từ khi máy tính ra đời, cùng với nó là sự phát triển ngày càng lớn mạnh và đa dạng của các hệ thống xử lý thông tin người ta đã nghĩ ngay đến các giải pháp đảm bảo an toàn cho hệ thống thông tin của mình. Với một mạng máy tính bạn sẽ có bao nhiêu nguy cơ bị xâm phạm ? Câu trả lời chính xác đó là ở mọi thời điểm, mọi vị trí trong hệ thống đều có khả năng xuất hiện. Chúng ta phải kiểm soát các vấn đề an toàn mạng theo các mức khác nhau đó là : Mức mạng: Ngăn chặn kẻ xâm nhập bất hợp pháp vào hệ thống mạng. Mức Server: Kiểm soát quyền truy cập, các cơ chế bảo mật, quá trình nhận dạng người dùng, phân quyền truy cập, cho phép các tác vụ Mức CSDL: Kiểm soát ai? được quyền như thế nào ? với mỗi cơ sở dữ liệu. Mức trường thông tin: Trong mỗi cơ sở dữ liệu kiểm soát được mỗi trường dữ liệu chứa thông tin khác nhau sẽ cho phép các đối tượng khác nhau có quyền truy cập khác nhau. Mức mật mã: Mã hoá toàn bộ file dữ liệu theo một phương pháp nào đó và chỉ cho phép người có “ chìa khoá” mới có thể sử dụng được file dữ liệu. Theo quan điểm hệ thống, một xí nghiệp (đơn vị kinh tế cơ sở) được thiết lập từ ba hệ thống sau: Hệ thống thông tin quản lý. Hệ thống trợ giúp quyết định. Hệ thống các thông tin tác nghiệp. Trong đó hệ thống thông tin quản lý đóng vai trò trung gian giữa hệ thống trợ giúp quyết định và hệ thống thông tin tác nghiệp với chức năng chủ yếu là thu thập, xử lý và truyền tin. Trong thời gian gần đây, số vụ xâm nhập trái phép vào các hệ thống thông tin qua mạng Internet và Intranet ngày càng tăng. Có nhiều nguyên nhân dẫn đến việc các mạng bị tấn công nhiều hơn, trong số những nguyên chính có thể kể đến xu hướng chuyển sang môi trường tính toán Client/Server (khách/chủ), các ứng dụng thương mại điện tử, việc hình thành các mạng Intranet của các công ty với việc ứng dụng công nghệ Internet vào các mạng kiểu này dẫn tới xoá nhoà ranh giới giữa phần bên ngoài (Internet) và phần bên trong (Intranet) của mạng, tạo nên những nguy cơ mới về an toàn thông tin. Cũng cần lưu ý rằng những nguy cơ mất an toàn thông tin không chỉ do tấn công từ bên ngoài mà một phần lớn lại chính là từ nội bộ: nhân viên bất mãn, sai sót của người sử dụng, ý thức bảo mật kém,… Qua sơ đồ tổng quan một hệ thống tin học (hình 34), ta có thể thấy các vị trí có nguy cơ về an toàn dữ liệu. Các phương pháp tấn công vào hệ thống thông tin của những kẻ phá hoại (hacker) ngày càng trở nên tinh vi, lợi dụng những điểm yếu cơ bản của môi trường tính toán phân tán. Một số các phương pháp tấn công thường gặp: Các thủ thuật quan hệ: Hacker mạo nhận là người trong cơ quan, người phụ trách mạng hoặc nhân viên an ninh để hỏi mật khẩu của người sử dụng. Với những mạng có người sử dụng từ xa thì hacker lấy lý do quên mật khẩu hoặc bị hỏng đĩa cứng để yêu cầu cấp lại mật khẩu. Bẻ mật khẩu: Hacker tìm cách lấy file mật khẩu và sau đó tấn công bằng từ điển, dựa trên các thuật toán mã hoá mà các hệ điều hành sử dụng. Những mật khẩu yếu rất dễ bị phát hiện bằng cách này. Virus và các chương trình tấn công từ bên trong. Hacker có thể sử dụng chúng để thực hiện những việc như: bắt các ký tự gõ vào từ bàn phím để tìm mật khẩu, chép trộm file mật khẩu, thay đổi quyền của người sử dụng ... Các công cụ tấn công giả mạo địa chỉ (IP spoofing): hacker có thể dùng những công cụ này để làm hệ thống tưởng lầm máy tính của hacker là một máy trong mạng nội bộ, hoặc để xoá dấu vết tránh bị phát hiện. Hình 34: Sơ đồ tổng quan một hệ thống tin học Phong toả dịch vụ (DoS – Denial of Service): kiểu tấn công này nhằm làm gián đoạn hoạt động của mạng, Ví Dụ gây lỗi của chương trình ứng dụng để làm treo máy, tạo những thông điệp giả trên mạng để chiếm đường truyền hoặc làm cạn công suất xử lý của máy chủ. 1.1.2. Các mức bảo vệ an toàn mạng Vì không thể có một giải pháp an toàn tuyệt đối nên người ta phải sử dụng đồng thời nhiều mức bảo vệ khác nhau tạo thành nhiều lớp “rào chắn” đối với các hoạt động xâm phạm. Việc bảo vệ thông tin trên mạng chủ yếu là bảo vệ thông tin cất giữ trên các máy tính, đặc biệt là trong các Server của mạng. Vì thế mọi cố gắng tập trung vào việc xây dựng các mức “rào chắn” từ ngoài vào trong cho các hệ thống kết nối vào mạng. 1.2. Phân tích các mức an toàn mạng Bức tường lửa (Firewall) Bảo vệ vật lý (Physical Protect) Mã hóa dữ liệu(Data Encryption) Đăng nhập/Mật khẩu (Login/Password) Quyển truy nhập (Access Right) Thông tin (Information) Hình 35: Các mức an toàn mạng 1.2.1. Quyền truy nhập (Access Rights) Đây là lớp bảo vệ sâu nhất, nhằm kiểm soát các tài nguyên (thông tin) của mạng và quyền hạn (có thể thực hiện các thao tác gì) trên tài nguyên đó. Dĩ nhiên là kiểm soát được cấu trúc dữ liệu càng chi tiết càng tốt. Hiện tại việc kiểm soát thường ở mức tệp tin (file), và việc xác lập các quyền thường do người quản trị mạng quyết định. Quyền hạn trên tập tin là những thao tác mà người sử dụng có thể thực hiện được trên tệp tin đó: chỉ đọc, được phép thay đổi … Tuy nhiên, kiểm soát được cấu trúc dữ liệu càng chi tiết thì mức độ an toàn càng cao. 1.2.2. Đăng nhập/Mật khẩu (Login/Password) Lớp bảo vệ này thực ra cũng là kiểm soát quyền truy nhập nhưng không phải truy nhập ở mức thông tin mà ở mức hệ thống (tức là truy nhập vào mạng). Đây là phương pháp bảo vệ phổ biến nhất vì nó đơn giản ít phí tổn và rất có hiệu quả. Mỗi người sử dụng (kể cả người quản trị mạng) muốn được vào mạng để sử dụng các tài nguyên của mạng đều phải có tên đăng ký và mật khẩu. Người quản trị mạng có trách nhiệm quản lý, kiểm soát mọi hoạt động của mạng và xác định quyền truy nhập người sử dụng khác tuỳ theo thời gian và không gian. Nghĩa là một người sử dụng trên mạng chỉ có thể được phép truy nhập vào mạng ở một thời gian và một vị trí nhất định. Mật khẩu có thể có các dạng như: mật khẩu cho từng nhóm người sử dụng, mật khẩu cho từng cá nhân sử dụng riêng biệt, mật khẩu được thay đổi mỗi lần truy cập hệ thống, … Một nhà quản trị khi tạo mật khẩu trên hệ thống và cho từng người sử dụng phải tuân thủ những nguyên tắc sau để đảm bảo an toàn cho người sử dụng cũng như cho cả hệ thống Mật khẩu không được là tên riêng hoặc sắp xếp theo dạng viết tên hay sự hoán vị của tên. Mật khẩu không thể giống như một từ, một ngữ mà phải là một tập hợp các kí tự tùy ý và không được ít hơn 6 kí tự. Mật khẩu không được toàn là kí tự hay số mà phải kết hợp cả kí tự và số. Lớp bảo vệ này đạt hiệu quả rất cao, tránh được các truy nhập trái phép nếu mỗi người sử dụng đều giữ được bí mật về tên Đăng nhập và Mật khẩu của mình. Nhưng trên thực tế, do nhiều lý do không đảm bảo được bí mật của mật khẩu, do vậy làm giảm hiệu quả của nó rất nhiều. 1.2.3. Mã hóa dữ liệu (Data Encryption) Để bảo mật thông tin truyền trên mạng, người ta sử dụng các phương pháp mã hoá (Encryption). Dữ liệu được biến đổi từ dạng nhận thức được sang dạng không nhận thức được theo một thuật toán nào đó (tạo mật mã) và sẽ được biến đổi ngược lại (giải mã) ở trạm nhận. Đây là lớp bảo vệ thông tin rất quan trọng và được sử dụng rộng rãi trong môi trường mạng . 1.2.4. Bảo vệ vật lý (Physical Protection) Đây là lớp bảo vệ rất quan trọng, nhằm ngăn cản các truy nhập vật lý bất hợp pháp vào hệ thống. Thường dùng các biện pháp truyền thống như ngăn cấm tuyệt đối người không phận sự vào phòng đặt máy mạng, dùng ổ khoá máy tính, hoặc cài đặt cơ chế báo động khi có truy nhập vào hệ thống ... 1.2.5. Bức tường lửa (Firewall) Để bảo vệ từ xa một máy tính hay cho cả một mạng nội bộ (Intranet), người ta thường dùng các hệ thống đặc biệt là tường lửa (Firewall). Chức năng của tường lửa là ngăn chặn các truy nhập trái phép (theo danh sách truy nhập đã xác định trước) và thậm chí có thể lọc các gói tin mà ta không muốn gửi đi hoặc nhận vào vì một lý do nào đó. Phương thức bảo vệ này được dùng nhiều trong môi trường liên mạng Internet. Ch­¬ng 2: C¸c biÖn ph¸p b¶o vÖ an toµn hÖ thèng Trước khi thiết kế một chính sách bảo vệ an toàn cho một hệ thống, người thiết kế phải tìm hiểu một số biện pháp cơ bản được dùng làm nguyên tắc để xây dựng một hệ thống an ninh như sau: 2.1. Quyền hạn tối thiểu (Least Privilege) Một nguyên tắc cơ bản nhất của an toàn nói chung là trao quyền tối thiểu. Có nghĩa là: Bất kỳ một đối tượng nào trên mạng chỉ nên có những quyền hạn nhất định mà đối tượng đó cần phải có để thực hiện các nhiệm vụ của mình và chỉ có những quyền đó mà thôi. Đây là nguyên tắc quan trọng nhằm hạn chế sự phô bày cho người ngoài lợi dụng đột nhập và hạn chế sự phá hủy nếu có đột nhập xảy ra. Như vậy, mọi người sử dụng đều không nhất thiết được trao quyền truy nhập mọi dich vụ Internet, đọc và sửa đổi tất cả các file trong hệ thống … Người quản trị hệ thống không nhất thiết phải biết các mật khẩu Root hoặc mật khẩu của mọi người sử dụng … Nhiều vấn đề an toàn trên mạng Internet bị xem là thất bại khi thực hiện nguyên tắc Quyền hạn tối thiểu. Vì vậy, các chương trình đặc quyền phải được đơn giản đến mức có thể và nếu một chương trình phức tạp, ta phải tìm cách chia nhỏ và cô lập từng phần mà nó yêu cầu quyền hạn. 2.2. Bảo vệ theo chiều sâu (Defense in Depth) Đối với mỗi hệ thống, không nên cài đặt và chỉ sử dụng một chế độ an toàn cho dù nó có thể rất mạnh, mà nên lắp đặt nhiều cơ chế an toàn để chúng có thể hỗ trợ lẫn nhau. 2.3. Nút thắt (Choke Point) Một nút thắt bắt buộc những kẻ đột nhập phải đi qua một lối hẹp mà chúng ta có thể kiểm soát và điều khiển được. Trong cơ chế an toàn mạng, Firewall nằm giữa hệ thống mạng của ta và mạng Internet, nó chính là một nút thắt. Khi đó, bất kỳ ai muốn tr

Các file đính kèm theo tài liệu này:

  • docDoan.doc