Giáo trình Kỹ thuật mạng máy tính - Nguyễn Hữa Duy Khang

pdf 76 trang hapham 230
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Kỹ thuật mạng máy tính - Nguyễn Hữa Duy Khang", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_ky_thuat_mang_may_tinh_nguyen_hua_duy_khang.pdf

Nội dung text: Giáo trình Kỹ thuật mạng máy tính - Nguyễn Hữa Duy Khang

  1. TRƯỜNG ĐẠI HỌC DÂN LẬP CỬU LONG GIÁO TRÌNH KỸ THUẬT MẠNG MÁY TÍNH (Dành cho sinh viên ngành Điện – Điện tử) ThS. NGUYỄN HỨA DUY KHANG -LƯU HÀNH NỘI BỘ- Tháng 9-2009
  2. NỘI DUNG CHƯƠNG 1: Tổng quan về mạng máy tính 1 1. Mạng điện báo 2 2. Mạng điện thoại 2 3. Mạng hướng đầu cuối 2 4. Mạng máy tính 3 4.1 Đường biên mạng 4 4.2 Đường trục mạng 5 4.3 Các lợi ích của mạng máy tính 6 5. Phần cứng mạng máy tính 7 5.1 Phân loại mạng máy tính theo kỹ thuật truyền tin 7 5.2 Phân loại mạng máy tính theo phạm vị địa lý 8 5.3 Mạng không dây 10 5.4 Liên mạng (Internetwork) 10 6. Phần mềm mạng 11 6.1 Cấu trúc thứ bậc của giao thức 11 6.2 Ví dụ về cấu trúc thứ bậc của giao thức 12 6.3 Dịch vụ mạng 13 6.4 Sự khác biệt giữa dịch vụ và giao thức 14 6.5 Mô hình tham khảo OSI 14 CHƯƠNG 2: Mô hình OSI và giao thức TCP/IP 17 1. Nguyên tắc sử dụng khi định nghĩa các tầng hệ thống mở: 18 2. Các giao thức trong mô hình OSI 18 3. Tầng Vật lý (Physical) 20 4. Tầng Liên kết dữ liệu (Data link) 21 5. Tầng Mạng (Network) 22 6. Tầng Vận chuyển (Transport) 23 7. Tầng Giao dịch (Session) 24 8. Tầng Trình bày (Presentation) 25 9. Tầng Ứng dụng (Application) 25 10. Giao thức TCP/IP 25 10.1. Kiến trúc TCP/IP 26 10.2. Giao thức IP 28 10.3. Một số giao thức điều khiển 33 10.4. Giao thức TCP (Lớp chuyển tải – Transport layer) 34 CHƯƠNG 3: Kênh truyền và thiết bị kết nối mạng 36 1. Các loại kênh truyền 37 1.1. Kênh truyền hữu tuyến 37 1.2. Kênh truyền vô tuyến (Radio) 40 2. Các thiết bị kết nối 40 2.1. Card giao tiếp mạng (NIC) 40 2.2. Repeater 41 2.3. Hub 42 2.4. Giới thiệu về liên mạng (Internetwork) 43 2.5. Cầu nối - Bridge 44
  3. 2.6. Bộ chuyển mạch - Switch 47 2.6. Bộ vạch đường – Router 50 2.7. Gateway 54 CHƯƠNG 4: KỸ THUẬT MẠNG CỤC BỘ 55 1. Phân loại mạng 56 2. Mạng cục bộ và giao thức điều khiển truy cập đường truyền 56 3. Các sơ đồ nối kết mạng LAN (LAN Topologies) 57 4. Các loại thiết bị sử dụng trong mạng LAN 57 5. Các tổ chức chuẩn hóa về mạng 57 6. Mạng Ethernet 58 6.1. Lịch sử hình thành 59 6.2. Một số chuẩn mạng Ethernet phổ biến 59 7. Mạng riêng ảo (VLAN) 67 7.1. Vai trò của Switch trong VLAN 67 7.2. Thêm mới, xóa, thay đổi vị trí người sử dụng mạng 68 7.3. Hạn chế truyền quảng bá. 69 7.4. Thắt chặt vấn đề an ninh mạng 70 7.5. Vượt qua các rào cản vật lý 71 7.6. Các mô hình cài đặt VLAN 71 7.7. Mô hình thiết kế VLAN với mạng đường trục 73
  4. Chương 1 TỔNG QUAN VỀ MẠNG MÁY TÍNH
  5. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính 1. Mạng điện báo Mạng điện báo sử dụng hệ thống mã Morse để mã hóa thông tin cần truyền đi. Mã Morse sử dụng hai tín hiệu là tít và te (ký hiệu bằng dấu chấm “•” và dấu gạch ngang “ “). Mỗi một ký tự latin sẽ được mã hóa bằng một chuỗi tíc/te riêng biệt, có độ dài ngắn khác nhau. Để truyền thông tin đi, bên gởi sẽ lần lượt mã hóa từng ký tự của thông điệp thành mã Morse, bên nhận sau đó sẽ thực hiện quá trình giải mã. Văn bản được truyền đi được gọi là một thông điệp (message) hay một thư tín (Telegram). Vào năm 1851 mạng thư tín đầu tiên được sử dụng để nối hai thành phố London và Paris. Sau đó không lâu, hệ thống mạng này được mở rộng toàn châu Âu. Cấu trúc của mạng gồm có hai thành phần là Trạm điện báo (Telegraph Station) và Trạm chuyển điện báo (Telegraph Switching Station) được nối lại với nhau bằng hệ thống dây truyền dẫn. Trạm điện báo là nơi cho phép truyền và nhận các thông điệp dưới dạng các mã Morse, thông thường được thể hiện bằng âm thanh tít và te. Để truyền và nhận thông tin cần có một điện báo viên thực hiện quá trình mã hóa và giải mã thông tin truyền/nhận. Vì không thể nối trức tiếp tất cả các trạm điện báo lại với nhau, người ta sử dụng các Trạm chuyển điện báo để cho phép nhiều trạm điện báo sử dụng chung một đường truyền để truyền tin. Tại mỗi trạm chuyển điện báo có một thao tác viên chịu trách nhiệm nhận các điện báo gởi đến, xác định đường đi để chuyển tiếp điện báo về nơi nhận. Nếu đường truyền hướng về nơi nhận đang đuợc sử dụng để truyền một điện báo khác, thao tác viên sẽ lưu lại điện báo này để sau đó truyền đi khi đường truyền rãnh. Để tăng tốc độ truyền tin, hệ thống Baudot thay thế mã Morse bằng mã nhị phân 5 bits (có thể mã hóa cho 32 ký tự). Các trạm điện báo cũng được thay thế bằng các máy têlêtíp (teletype terminal) cho phép xuất / nhập thông tin dạng ký tự. Hệ thống sử dụng kỹ thuật biến điệu (Modulation) và đa hợp (Multiplexing) để truyền tải thông tin. 2. Mạng điện thoại Mạng điện thoại cho phép truyền thông tin dưới dạng âm thanh bằng cách sử dụng hệ thống truyền tín hiệu tuần tự. Mạng điện thoại hoạt động theo chế độ chuyển mạch định hướng nối kết (circuit switching), tức thiết lập đường nối kết tận hiến giữa hai bên giao tiếp trước khi thông tin được truyền đi (connection oriented). Hình 1-1: Mạng chuyển mạch 3. Mạng hướng đầu cuối Hình 1-2 là mô hình của các hệ thống máy tính lớn (Main Frame) vào những năm của thập niên 1970. Hệ thống gồm một máy chủ mạnh (Host) có năng lực tính toán cao được nối kết với nhiều thiết bị đầu cuối đần độn (Dumb terminal) chỉ làm nhiệm vụ ThS. Nguyễn Hứa Duy Khang 2
  6. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính xuất nhập thông tin, giao tiếp với người sử dụng. Máy chủ (Host) Hình 1-2: Mạng hướng đầu cuối 4. Mạng máy tính 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 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. Định nghĩa: Mạng máy tính là sự kết nối hai hay nhiều máy tính với nhau bằng một đường truyền vật lý theo một kiến trúc nào đó (quy ước truyền thông). Khái niệm máy tính độc lập được hiểu là các máy tính không có máy nào có khả năng khởi động hoặc đình chỉ một máy khác. Các đường truyền vật lý được hiểu là các môi trường truyền tín hiệu vật lý (có thể là hữu tuyến hoặc vô tuyến). Các quy ước truyền thông chính là cơ sở để các máy tính có thể "nói chuyện" được với nhau và là một yếu tố quan trọng hàng đầu khi nói về công nghệ mạng máy tính. Mạng có thể có kiến trúc đơn giản như hình 1-3 Hoặc phức tạp hơn đó là hệ thống gồm nhiều mạng đơn giản nối lại với nhau như hình 1-4 Hình 1-3: Mạng cục bộ đơn giản Một hệ thống mạng tổng quát được cấu thành từ 3 thành phần: - Đường biên mạng (Network Edge): Gồm các máy tính (Host) và các chương trình ứng dụng mạng (Network Application) - Đường trục mạng (Network Core): Gồm các bộ chọn đường (router) đóng vài ThS. Nguyễn Hứa Duy Khang 3
  7. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính trò là một mạng trung tâm nối kết các mạng lại với nhau. - Mạng truy cập, đường truyền vật lý (Access Network , physical media): Gồm các đường truyền tải thông tin. Hình 1-4: Mạng diện rộng phức tạp Hình 1-5: Đường biên mạng 4.1 Đường biên mạng Bao gồm các máy tính (Host) trên mạng nơi thực thi các chương trình ứng dụng mạng (Network Application). Đôi khi người ta còn gọi chúng là các Hệ thống cuối (End Systems) với ý nghĩa đây chính là nơi xuất phát của thông tin di chuyển trên mạng, cũng như là điểm dừng của thông tin. Quá trình trao đổi thông tin giữa hai máy tính trên mạng có thể diễn ra theo hai mô hình: Mô hình Khách hàng/Người phục vụ (Client/server model) hay Mô hình ngang hàng (peer-to-peer model). 4.1.1 Mô hình khách hàng/người phục vụ (client/server): Trong mô hình này một máy tính sẽ đóng vai trò là client và máy tính kia đóng vai trò là server. Máy tính client sẽ gởi các yêu cầu (request) đến máy tính server để yêu cầu server thực hiện công việc gì đó. Chẳng hạn khi người dùng duyệt web trên mạng Internet, trình duyệt web sẽ gởi yêu cầu đến web server đề nghị web server gởi về trang web tương ứng. Máy tính server khi nhận được một yêu cầu từ client gởi đến sẽ phân tích yêu cầu để hiểu được client muốn đều gì, để thực hiện đúng yêu cầu của client. Server sẽ gởi kết quả về cho client trong các thông điệp trả lời (reply). Ví dụ, khi web server nhận được một yêu cầu gởi đến từ trình duyệt web, nó sẽ phân tích yêu cầu để xác định xem client cần nhận trang web nào, sau đó mở tập tin html tương ứng trên đĩa cứng cục bộ của nó để gởi về trình duyệt web trong thông điệp trả lời. Một số ứng dụng được xây dựng theo mô hình client/server như: www, mail, ftp, 4.1.2 Mô hình ngang cấp (peer-to-peer): Trong mô hình này, một máy tính vừa đóng vai trò là client, vừa đóng vai trò là server. Một số ứng dụng thuộc mô hình này như: Gnutella, KaZaA ThS. Nguyễn Hứa Duy Khang 4
  8. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính 4.2 Đường trục mạng Là hệ thống mạng của các bộ chọn đường (routers), làm nhiệm vụ chọn đường và chuyển tiếp thông tin, đảm bảo sự trao đổi thông tin thông suốt giữa hai máy tính nằm trên hai nhánh mạng cách xa nhau. Câu hỏi đặt ra là làm sao thông tin có thể được truyền đi trên mạng? Người ta có thể sử dụng một trong hai chế độ truyền tải thông tin là: Chuyển mạch (circuit switching) và chuyển gói (packet switching). Hình 1-6: Mạng đường trục 4.2.1 Chuyển mạch (circuit switching) Chế độ này hoạt động theo mô hình của hệ thống điện thoại. Để có thể giao tiếp với máy B, máy A phải thực hiện một cuộc gọi (call). Nếu máy B chấp nhận cuộc gọi, một kênh ảo được thiết lập dành riêng cho thông tin trao đổi giữa A và B. Tất cả các tài nguyên được cấp cho cuộc gọi này như băng thông đường truyền, khả năng của các bộ hoán chuyển thông tin đều được dành riêng cho cuộc gọi, không chia sẻ cho các cuộc gọi khác, mặc dù có những khoảng lớn thời gian hai bên giao tiếp “im lặng”. Tài nguyên (băng thông) sẽ được chia thành nhiều những “phần” bằng nhau và sẽ gán cho các cuộc gọi. Khi cuộc gọi sở hữu một “phần” tài nguyên nào đó, mặc dù không sử dụng đến nó cũng không chia sẻ tài nguyên này cho các cuộc gọi khác. Việc phân chia băng thông của kênh truyền thành những “phần” có thể được thực hiện bằng một trong hai kỹ thuật: Phân chia theo tần số (FDMA-Frequency Division Multi Access) hay phân chia theo thời gian (TDMA- Time Division Multi Access). Hình 1-7: Mạng chuyển mạch 4.2.2 Mạng chuyển gói Trong phương pháp này, thông tin trao đổi giữa hai máy tính (end systems) được phân thành những gói tin (packet) có kích thước tối đa xác định. Gói tin của những người dùng khác nhau ( ví dụ của A và B) sẽ chia sẻ nhau băng thông của kênh truyền. Mỗi gói tin sẽ sử dụng toàn bộ băng thông của kênh truyền khi nó được phép. Điều này sẽ dẫn đến tình trạng lượng thông tin cần truyền đi vượt quá khả năng đáp ứng của kênh truyền. Trong trường hợp này, các router sẽ ứng sử theo giải thuật lưu và chuyển tiếp (store and forward), tức lưu lại các gói tin chưa gởi đi được vào hàng đợi chờ cho đến khi kênh truyền rãnh sẽ lần lượt gởi chúng đi. ThS. Nguyễn Hứa Duy Khang 5
  9. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính Hình 1-8: Mạng chuyển gói Hình 1-9: Chia sẻ đường truyền 4.2.3 So sánh mạng chuyển mạch và mạng chuyển gói Chuyển gói cho phép có nhiều người sử dụng mạng hơn: Giả sử: - Một đường truyền 1 Mbit - Mỗi người dùng được cấp 100Kbps khi truy cập “active” - Thời gian active chiếm 10% tổng thời gian. Khi đó: - Circuit-switching: cho phép tối đa 10 users - Packet switching: cho phép 35 users, (xác suất có hơn 10 “active” đồng thời là nhỏ hơn 0.004) Chuyển gói: - Thích hợp cho lượng lưu thông dữ liệu lớn nhờ cơ chế chia sẻ tài nguyên và không cần thiết lập cuộc. - Cần có cơ chế điều khiển tắt nghẽn và mất dữ liệu. - Không hỗ trợ được cơ chế chuyển mạch để đảm bảo tăng băng thông cố định cho một số ứng dụng về âm thanh và hình ảnh. 4.2.4 Mạng truy cập Cho phép nối các máy tính vào các router ngoài biên. Nó có thể là những loại mạng sau: - Mạng truy cập từ nhà, ví dụ như sử dụng hình thức modem dial qua đường điện thoại hay đường ADSL. - Mạng cục bộ cho các công ty, xí nghiệp. - Mạng không dây. Hình 1-10: Mạng truy cập 4.3 Các lợi ích của mạng máy tính ThS. Nguyễn Hứa Duy Khang 6
  10. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính 4.3.1 Mạng tạo khả năng dùng chung tài nguyên cho các người dùng. Vấn đề là làm cho các tài nguyên trên mạng như chương trình, dữ liệu và thiết bị, đặc biệt là các thiết bị đắt tiền, có thể sẵn dùng cho mọi người trên mạng mà không cần quan tâm đến vị trí thực của tài nguyên và người dùng. Về mặt thiết bị, các thiết bị chất lượng cao thường đắt tiền, chúng thường được dùng chung cho nhiều người nhằm giảm chi phí và dễ bảo quản. Về mặt chương trình và dữ liệu, khi được dùng chung, mỗi thay đổi sẽ sẵn dùng cho mọi thành viên trên mạng ngay lập tức. Điều này thể hiện rất rõ tại các nơi như ngân hàng, các đại lý bán vé máy bay 4.3.2 Mạng cho phép nâng cao độ tin cậy. Khi sử dụng mạng, có thể thực hiện một chương trình tại nhiều máy tính khác nhau, nhiều thiết bị có thể dùng chung. Điều này tăng độ tin cậy trong công việc vì khi có máy tính hoặc thiết bị bị hỏng, công việc vẫn có thể tiếp tục với các máy tính hoặc thiết bị khác trên mạng trong khi chờ sửa chữa. 1.4.3.3 Mạng giúp cho công việc đạt hiệu suất cao hơn. Khi chương trình và dữ liệu đã dùng chung trên mạng, có thể bỏ qua một số khâu đối chiếu không cần thiết. Việc điều chỉnh chương trình (nếu có) cũng tiết kiệm thời gian hơn do chỉ cần cài đặt lại trên một máy. Về mặt tổ chức, việc sao chép dữ liệu phòng hờ tiện lợi hơn do có thể giao cho chỉ một người thay vì mọi người phải tự sao chép phần của mình. 4.3.4 Tiết kiệm chi phí Việc dùng chung các thiết bị ngoại vi cho phép giảm chi phí trang bị tính trên số người dùng. Về phần mềm, nhiều nhà sản xuất phần mềm cung cấp cả những ấn bản cho nhiều người dùng, với chi phí thấp hơn tính trên mỗi người dùng. 4.3.5 Tăng cường tính bảo mật thông tin. Dữ liệu được lưu trên các máy phục vụ tập tin (file server) sẽ được bảo vệ tốt hơn so với đặt tại các máy cá nhân nhờ cơ chế bảo mật của các hệ điều hành mạng. 4.3.6 Việc phát triển mạng máy tính đã tạo ra nhiều ứng dụng mới Một số ứng dụng có ảnh hưởng quan trọng đến toàn xã hội: khả năng truy xuất các chương trình và dữ liệu từ xa, khả năng thông tin liên lạc dễ dàng và hiệu quả, tạo môi trường giao tiếp thuận lợi giữa những người dùng khác nhau, khả năng tìm kiếm thông tin nhanh chóng trên phạm vi toàn thế giới, 5. Phần cứng mạng máy tính 5.1 Phân loại mạng máy tính theo kỹ thuật truyền tin Dựa theo kỹ thuật truyền tải thông tin, người ta có thể chia mạng thành hai loại là Mạng quảng bá (Broadcast Network) và mạng điểm nối điểm (Point – to – point Network) 5.1.1 Mạng quảng bá Trong hệ thống mạng quảng bá chỉ tồn tại một kênh truyền được chia sẻ cho tất cả các máy tính. Khi một máy tính gởi tin, tất cả các máy tính còn lại sẽ nhận được tin đó. Tại ThS. Nguyễn Hứa Duy Khang 7
  11. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính một thời điểm chỉ cho phép một máy tính được phép sử dụng đường truyền. 5.1.2 Mạng điểm nối điểm Trong hệ thống mạng này, các máy tính được nối lại với nhau thành từng cặp. Thông tin được gởi đi sẽ được truyền trực tiếp từ máy gởi đến máy nhận hoặc được chuyển tiếp qua nhiều máy trung gian trước khi đến máy tính nhận. 5.2 Phân loại mạng máy tính theo phạm vị địa lý Trong cách phân loại này người ta chú ý đến đại lượng Đường kính mạng chỉ khoảng cách của hai máy tính xa nhất trong mạng. Dựa vào đại lượng này người ta có thể phân mạng thành các loại sau: Đường kính mạng Vị trí các máy tính Loại mạng 1 m Trong một mét vuông Mạng khu vực cá nhân 10 m Trong 1 phòng Mạng cục bộ, gọi tắt là mạng LAN 100 m Trong 1 tòa nhà (Local Area Network) 1 km Trong một khu vực M ành ph à m 10 km Trong m ành ph ạng th ố, gọi tắt l ạng ột th ố MAN (Metropolitan Area Network) 100 km Trong một quốc gia Mạng diện rộng, gọi tắt là mạng 1000 km Trong m ột châu lục WAN (Wide Area Network) 10000 km Cả hành tinh 5.2.1 Mạng cục bộ Đây là mạng thuộc loại mạng quảng bá, sử dụng một đường truyền có tốc độ cao, băng thông rộng, có hình trạng (topology) đơn giản như mạng hình bus, mạng hình sao (Star topology), mạng hình vòng (Ring topology). Hình 1-11: Các hình trạng mạng cục bộ 5.2.2 Mạng đô thị Mạng MAN được sử dụng để nối tất cả các máy tính trong phạm vi toàn thành phố. Ví dụ như mạng truyền hình cáp trong thành phố. ThS. Nguyễn Hứa Duy Khang 8
  12. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính Hình 1-12: Mạng đô thị 5.2.3 Mạng diện rộng Mạng LAN và mạng MAN thông thường không sử dụng các thiết bị chuyển mạch, điều đó hạn chế trong việc mở rộng phạm vi mạng về số lượng máy tính và khoảng cách. Chính vì thế mạng diện rộng được phát minh. Trong một mạng WAN, các máy tính (hosts) được nối vào một mạng con (subnet) hay đôi khi còn gọi là đường trục mạng (Backbone), trong đó có chứa các bộ chọn đường (routers) và các đường truyền tải (transmission lines). Các Routers thông thường có nhiệm vụ lưu và chuyển tiếp các gói tin mà nó nhận được theo nguyên lý cơ bản sau: Các gói tin đến một router sẽ được lưu vào trong một hàng chờ, kế đến router sẽ quyết định nơi gói tin cần phải đến và sau đó sẽ chuyển gói tin lên đường đã được chọn. Hình 1-13: Mạng diện rộng Hình 1-14: Lưu và chuyển tiếp trong mạng WAN ThS. Nguyễn Hứa Duy Khang 9
  13. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính 5.3 Mạng không dây Nếu phân biệt mang theo tiêu chí hữu tuyến hay vô tuyến thì ta có thêm các loại mạng không dây sau: 5.3.1 Nối kết hệ thống (System interconnection) Mạng này nhằm mục đích thay thế hệ thống cáp nối kết các thiết bị cục bộ vào máy tính như màn hình, bàn phím, chuột, phone, loa , 5.3.2 Mạng cục bộ không dây (Wireless LANs): Tất cả các máy tính giao tiếp với nhau thông qua một trạm cơ sở (Base Station) được nối bằng cáp vào hệ thống mạng. Hình 1-15: (a) Thiết bị không dây; (b) Mạng cục bộ không dây 5.3.3 Mạng diện rộng không dây (Wireless WANs): Thông thường mạng điện thoại di động số thuộc dạng này. Với các công nghệ mới cho phép băng thông mạng có thể đạt đến 50 Mbps với khoảng cách vài kilomet Hình 1-16: Mạng diện rộng không dây Trong hình (a ) các máy tính sử dụng công nghệ mạng vô tuyến để nối kết với router. Ngược lại trong hình (b), các máy tính được nối bằng đường dây hữu tuyến với một router, để từ đó router sử dụng kỹ thuật vô tuyến để liên lạc với các router khác. 5.4 Liên mạng (Internetwork) Thông thường một mạng máy tính có thể không đồng nhất (homogeneous), tức có sự khác nhau về phần cứng và phần mềm giữa các máy tính. Trong thực tế ta chỉ có thể xây dựng được các mạng lớn bằng cách liên nối kết (interconnecting) nhiều loại mạng lại với nhau. Công việc này được gọi là liên mạng (Internetworking). Ví dụ: - Nối kết một tập các mạng LAN có kiểu khác nhau như dạng Bus với dạng vòng của một công ty. - Nối các mạng LAN lại với nhau nhờ vào một mạng diện rộng, lúc đó mạng WAN đóng vai trò là một Subnet. ThS. Nguyễn Hứa Duy Khang 10
  14. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính - Nối các mạng WAN lại với nhau hình thành mạng WAN lớn hơn. Liên mạng lớn nhất hiện nay là mạng toàn cầu Internet. 6. Phần mềm mạng Đây là thành phần quan trọng thật sự làm cho mạng máy tính vận hành chứ không phải là phần cứng. Phần mềm mạng được xây dựng dựa trên nền tảng của 3 khái niệm là giao thức (protocol), dịch vụ (service) và giao diện (interface). - Giao thức (Protocol): Mô tả cách thức hai thành phần giao tiếp trao đổi thông tin với nhau. - Dịch vụ (Services): Mô tả những gì mà một mạng máy tính cung cấp cho các thành phần muốn giao tiếp với nó. - Giao diện (Interfaces): Mô tả cách thức mà một khách hàng có thể sử dụng được các dịch vụ mạng và cách thức các dịch vụ có thể được truy cập đến. 6.1 Cấu trúc thứ bậc của giao thức Nền tảng cho tất cả các phần mềm làm cho mạng máy tính hoạt động chính là khái niệm kiến trúc thứ bậc của giao thức (protocol hierachies). Nó tổ chức các dịch vụ mà một mạng máy tính cung cấp thành các tầng/lớp (layers) Hai thành phần bộ phận ở hai máy tính khác nhau, nhưng ở cùng cấp, chúng luôn luôn thống nhất với nhau về cách thức mà chúng sẽ trao đổi thông tin. Qui tắc trao đổi thông tin này được mô tả trong một giao thức (protocol). Một hệ mạng truyền tải dữ liệu thường được thiết kế dưới dạng phân tầng. Để minh họa ý nghĩa của nó ta xem xét mô hình hoạt động của hệ thống gởi nhận thư tín thế giới. Hai đối tác A ở Bangkok (Thailand) và B ở Vĩnh Long thường xuyên trao đổi thư từ với nhau. Vì A không thể nói tiếng Việt và B không thể nói tiếng Thái, trong khi đó cả hai có thể hiểu tiếng Anh, cho nên nó được chọn là ngôn ngữ để trao đổi thư từ, văn bản giữa A và B. Cả hai gởi thư từ cơ quan của họ. Trong công ty có bộ phận văn thư lãnh trách nhiệm tập hợp và gởi tất cả các thư của công ty ra bưu điện. Tiến trình A gởi cho B một lá thư diễn ra như sau: 1. A viết một lá thư bằng tiếng Thái bằng bút máy của anh ta. 2. A đưa lá thư cho thư ký, biết tiếng Anh để thông dịch lá thư ra tiếng Anh, sau đó bỏ lá thư vào bao thư với địa chỉ người nhận là địa chỉ của B. 3. Nhân viên của bộ phận văn thư chịu trách nhiệm thu thập thư của công ty ghé qua văn phòng của A để nhận thư cần gởi đi. 4. Bộ phận văn thư thực hiện việc phân loại thư và dán tem lên các lá thư bằng một máy dán tem. 5. Lá thư được gởi đến bưu điện ở Bangkok. 6. Lá thư được ô tô chuyển đến trung tâm phân loại ở Bangkok. 7. Những lá thư gởi sang Việt Nam được chuyển đến sân bay ở Bangkok bằng tàu điện ngầm. 8. Lá thư gởi sang Việt nam được chuyển đến sân bay Tân Sơn Nhất (Sài Gòn) ThS. Nguyễn Hứa Duy Khang 11
  15. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính bằng máy bay. 9. Thư được ô tô chở đến trung tâm phân loại thư của Sài Gòn. 10. Thư cho cơ quan của B được chuyển về bưu điện Vĩnh Long bằng ô tô. 11. Thư cho cơ quan của B được chuyển đến công ty của B bằng ô tô. 12. Bộ phận văn thư của công ty của B tiến hành phân loại thư. 13. Thư được phát vào một giờ đã định đến các người nhận, trong trường hợp này có văn phòng của B. 14. Thư ký của B mở thư ra và dịch nội dung lá thư gởi cho B sang tiếng Việt. 15. B đọc lá thư của A đã gởi cho anh ta. Ta có thể tóm tắt lại tiến trình trên bằng một mô hình phân tầng với các nút của mạng thư tín này như sau: Hình 1-17: Mô hình gởi-nhận thư tín quốc tế Trong mô hình trên, mỗi tầng thì dựa trên tầng phía dưới. Ví dụ, các phương tiện của giao thông của tầng như ô tô, tàu hỏa, máy bay (của tầng liên kết dữ liệu) tầng vận chuyển thì cần hạ tầng cơ sở như đường ô tô, đường sắt, sân bay (của tầng vật lý). Đối với mỗi tầng, các chức năng được định nghĩa là các dịch vụ cung cấp cho tầng phía trên nó. Các đường thẳng màu đỏ trong sơ đồ xác định các dịch vụ được cung cấp bởi các tầng khác nhau. Thêm vào đó, các chức năng của từng tầng tương ứng với các luật được gọi là các giao thức (Protocols). 6.2 Ví dụ về cấu trúc thứ bậc của giao thức Xem xét một ví dụ khác liên quan đến hệ thống truyền tập tin từ máy tính X sang máy Y. Hai máy này được nối với nhau bởi một dây cáp tuần tự. Chúng ta xem xét một mô hình gồm 3 tầng: - Người sử dụng muốn truyền một tập tin sẽ thực hiện một lời gọi đến tầng A nhờ vào một hàm đã được định nghĩa sẵn, send_file(fileName, destination). Trong đó fileName là tập tin cần truyền đi, destination là điạ chỉ của máy tính nhận tập tin. - Tầng A phân chia tập tin thành nhiều thông điệp và truyền từng thông điệp nhờ ThS. Nguyễn Hứa Duy Khang 12
  16. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính lệnh send_message(MessageNo, destination) do tầng B cung cấp. - Tầng B quản lý việc gởi các thông điệp, đảm nhiệm việc phân chia các thông điệp thành nhiều đơn vị truyền tin, gọi là các khung (frame); gởi các khung giữa X và Y tuân theo luật đã định trước (protocol) như tần suất gởi, điều khiển luồng, chờ báo nhận của bên nhận, điều khiển lỗi. - Tầng B giao cho tầng C một chuỗi các bit mà chúng sẽ được truyền lên đường truyền vật lý, không quan tâm gì về ý nghĩa của các bit, để đến nơi nhận. Thông tin được truyền trên một kênh truyền đơn giản hoặc phức tạp và được định hướng đến nơi nhận. Bên nhận thực hiện ngược lại tiến trình của bên gởi. Cả bên nhận và bên gởi cùng có số lần gởi/nhận giống nhau. Hình 1-18: Ứng dụng 3 tầng Hình 1-19: Đơn vị truyền dữ liệu qua các tầng Ta cũng chú ý rằng, kích thước của các đơn vị truyền tin trong từng tầng là khác nhau. Ở tầng A đơn vị là một tập tin. Tầng B, đơn vị truyền tin là các khung theo một cấu trúc đã được định nghĩa. Tầng C, đơn vị truyền tin là các tín hiện được truyền trên đường truyền vật lý. 6.3 Dịch vụ mạng Hầu hết các tầng mạng đều cung cấp một hoặc cả hai kiểu dịch vụ: Định hướng nối kết và Không nối kết. - Dịch vụ định hướng nối kết (Connection-oriented): Đây là dịch vụ vận hành theo mô hình của hệ thống điện thoại. Đầu tiên bên gọi phải thiết lập một nối kết, kế đến thực hiện nhiều cuộc trao đổi thông tin và cuối cùng thì giải phóng nối kết. - Dịch vụ không nối kết (Connectionless): Đây là dịch vụ vận hành theo mô hình kiểu thư tín. Dữ liệu của bạn trước tiên được đặt vào trong một bao thư trên đó có ghi rõ địa chỉ của người nhận và địa chỉ của người gởi. Sau đó sẽ gởi cả bao thư và nội dung đến người nhận. Một số những dịch vụ thường được cung cấp ở mỗi tầng mạng cho cả hai loại có nối kết và không nối kết được liệt kê ở bảng sau đây. Mỗi loại dịch vụ được cung cấp với chất lượng khác nhau. Các loại dịch vụ có nối kết thường đảm bảo thứ tự đến nơi của thông tin như thứ tự chúng đã được gởi đi, cũng như đảm bảo dữ liệu luôn đến nơi. Hai điều này thường không được đảm bảo trong các dịch vụ loại không nối kết. ThS. Nguyễn Hứa Duy Khang 13
  17. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính Loại Dịch vụ Ví dụ Có Luồng thông điệp tin cậy (Reliable message stream) Gởi tuần tự các trang nối Luồng byte tin cậy ( Reliable byte stream) Đăng nhập từ xa kết Nối kết không tin cậy (Unreliable connection) Âm thanh số Không Thư tín không tin cậy (Unreliable datagram) Mail theo kiểu bó nối Thư tín có báo nhận (Acknowledged datagram) Mail được đăng ký kết Yêu cầu - trả lời (Request – Reply) Truy vấn cơ sở dữ liệu 6.4 Sự khác biệt giữa dịch vụ và giao thức Giao thức và dịch vụ là hai nền tảng rất quan trọng trong việc thiết kết và xây dựng một hệ thống mạng. Cần hiểu rõ ý nghĩa và phân biệt sự khác biệt giữa chúng. Dịch vụ: là một tập các phép toán mà một tầng cung cấp cho tầng phía trên của nó gọi sử dụng. Giao thức: là một tập các luật mô tả khuôn dạng dữ liệu, ý nghĩa của các gói tin và thứ tự các gói tin được sử dụng trong quá trình giao tiếp. Chú ý: Cùng một service có thể được thực hiện bởi các protocol khác nhau; mỗi protocol có thể được cài đặt theo một cách thức khác nhau ( sử dụng cấu trúc dữ liệu khác nhau, ngôn ngữ lập trình là khác nhau, vv ) Hình 1-20: Quan hệ giữa Dịch vụ và Giao thức 6.5 Mô hình tham khảo OSI Để dễ dàng cho việc nối kết và trao đổi thông tin giữa các máy tính với nhau, vào năm 1983, tổ chức tiêu chuẩn thế giới ISO đã phát triển một mô hình cho phép hai máy tính có thể gởi và nhận dữ liệu cho nhau. Mô hình này dựa trên tiếp cận phân tầng (lớp), với mỗi tầng đảm nhiệm một số các chức năng cơ bản nào đó. Để hai máy tính có thể trao đổi thông tin được với nhau cần có rất nhiều vấn đề liên quan. Ví dụ như cần có Card mạng, dây cáp mạng, điện thế tín hiệu trên cáp mạng, cách thức đóng gói dữ liệu, điều khiển lỗi đường truyền vv Bằng cách phân chia các chức năng này vào những tầng riêng biệt nhau, việc viết các phần mềm để thực hiện chúng trở nên dễ dàng hơn. Mô hình OSI giúp đồng nhất các hệ thống máy tính khác biệt nhau khi chúng trao đổi thông tin. Mô hình này gồm có 7 tầng: Tầng 1: Tầng vật ký (Physical Layer) Điều khiển việc truyền tải thật sự các bit trên đường truyền vật lý. Nó định nghĩa các thuộc tính về cơ, điện, qui định các loại đầu nối, ý nghĩa các pin trong đầu nối, qui định các mức điện thế cho các bit 0,1, . ThS. Nguyễn Hứa Duy Khang 14
  18. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính Tầng 2: Tầng liên kết dữ liệu (Data-Link Layer) Tầng này đảm bảo truyền tải các khung dữ liệu (Frame) giữa hai máy tính có đường truyền vật lý nối trực tiếp với nhau. Nó cài đặt cơ chế phát hiện và xử lý lỗi dữ liệu nhận. Tầng 3: Tầng mạng (Network Layer) Tầng này đảm bảo các gói tin dữ liệu (Packet) có thể truyền từ máy tính này đến máy tính kia cho dù không có đường truyền vật lý trực tiếp giữa chúng. Nó nhận nhiệm vụ tìm đường đi cho dữ liệu đến các đích khác nhau trong mạng. Tầng 4: Tầng vận chuyển (Transport Layer) Tầng này đảm bảo truyền tải dữ liệu giữa các quá trình. Dữ liệu gởi đi được đảm bảo không có lỗi, theo đúng trình tự, không bị mất mát, trùng lắp. Đối với các gói tin có kích thước lớn, tầng này sẽ phân chia chúng thành các phần nhỏ trước khi gởi đi, cũng như tập hợp lại chúng khi nhận được. Tầng 5: Tầng giao dịch (Session Layer) Tầng này cho phép các ứng dụng thiết lập, sử dụng và xóa các kênh giao tiếp giữa chúng (được gọi là giao dịch). Nó cung cấp cơ chế cho việc nhận biết tên và các chức năng về bảo mật thông tin khi truyền qua mạng. Tầng 6: Tầng trình bày (Presentation Layer) Tầng này đảm bảo các máy tính có kiểu định dạng dữ liệu khác nhau vẫn có thể trao đổi thông tin cho nhau. Thông thường các máy tính sẽ thống nhất với nhau về một kiểu định dạng dữ liệu trung gian để trao đổi thông tin giữa các máy tính. Một dữ liệu cần gởi đi sẽ được tầng trình bày chuyển sang định dạng trung gian trước khi nó được truyền lên mạng. Ngược lại, khi nhận dữ liệu từ mạng, tầng trình bày sẽ chuyển dữ liệu sang định dạng riêng của nó. Tầng 7: Tầng ứng dụng (Application Layer) Đây là tầng trên cùng, cung cấp các ứng dụng truy xuất đến các dịch vụ mạng. Nó bao gồm các ứng dụng của người dùng, ví dụ như các Web Browser các Mail User Agent hay các chương trình làm server cung cấp các dịch vụ mạng như các Web Server, Các FTP Server, các Mail server. Người dùng mạng giao tiếp trực tiếp với tầng này. Về nguyên tắc, tầng n của một hệ thống chỉ giao tiếp, trao đổi thông tin với tầng n của hệ thống khác. Mỗi tầng sẽ có các đơn vị truyền dữ liệu riêng: - Tầng vật lý: bit - Tầng liên kết dữ liệu: Khung (Frame) - Tầng Mạng: Gói tin (Packet) - Tầng vận chuyển: Đoạn (Segment) Hình 1-21: Xử lý dữ liệu qua các tầng Trong thực tế, dữ liệu được gởi đi từ tầng trên xuống tầng dưới cho đến tầng thấp nhất của máy tính gởi. Ở đó, dữ liệu sẽ được truyền đi trên đường truyền vật lý. Mỗi khi dữ ThS. Nguyễn Hứa Duy Khang 15
  19. Kỹ thuật mạng máy tính Chương 1: Tổng quan về mạng máy tính liệu được truyền xuống tầng phía dưới thì nó bị "gói" lại trong đơn vị dữ liệu của tầng dưới. Tại bên nhận, dữ liệu sẽ được truyền ngược lên các tầng cao dần. Mỗi lần qua một tầng, đơn vị dữ liệu tương ứng sẽ được tháo ra. Đơn vị dữ liệu của mỗi tầng sẽ có một tiêu đề (header) riêng. OSI chỉ là mô hình tham khảo, mỗi nhà sản xuất khi phát minh ra hệ thống mạng của mình sẽ thực hiện các chức năng ở từng tầng theo những cách thức riêng. Các cách thức này thường được mô tả dưới dạng các chuẩn mạng hay các giao thức mạng. Như vậy dẫn đến trường hợp cùng một chức năng nhưng hai hệ thống mạng khác nhau sẽ không tương tác được với nhau. Hình dưới sẽ so sánh kiến trúc của các hệ điều hành mạng thông dụng với mô hình OSI. Hình 1-22: Kiến trúc của một số hệ điều hành mạng thông dụng Để thực hiện các chức năng ở tầng 3 và tầng 4 trong mô hình OSI, mỗi hệ thống mạng sẽ có các protocol riêng: - UNIX: Tầng 3 dùng giao thức IP, tầng 4 giao thức TCP/UDP - Netware: Tầng 3 dùng giao thức IPX, tầng 4 giao thức SPX - Giao thức NETBEUI của Microsoft cài đặt chức năng của cả hai tầng 3 và 4 Nếu chỉ dừng lại ở đây thì các máy tính UNIX, Netware, NT sẽ không trao đổi thông tin được với nhau. Với sự lớn mạnh của mạng Internet, các máy tính cài đặt các hệ điều hành khác nhau đòi hỏi phải giao tiếp được với nhau, tức phải sử dụng chung một giao thức. Đó chính là bộ giao thức TCP/IP, giao thức của mạng Internet. ThS. Nguyễn Hứa Duy Khang 16
  20. Chương 2 MÔ HÌNH OSI VÀ GIAO THỨC TCP/IP
  21. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Việc nghiên cứu về OSI được bắt đầu tại ISO vào năm 1971 với các mục tiêu nhằm nối kết các sản phẩm của các hãng sản xuất khác. Ưu điểm chính của OSI là ở chỗ nó hứa hẹn giải pháp cho vấn đề truyền thông giữa các máy tính không giống nhau. Hai hệ thống, dù có khác nhau đều có thể truyền thông với nhau một các hiệu quả nếu chúng đảm bảo những điều kiện chung sau đây: - Chúng cài đặt cùng một tập các chức năng truyền thông. - Các chức năng đó được tổ chức thành cùng một tập các tầng. các tầng đồng mức phải cung cấp các chức năng như nhau. - Các tầng đồng mức khi trao đổi với nhau sử dụng chung một giao thức Mô hình OSI tách các mặt khác nhau của một mạng máy tính thành bảy tầng theo mô hình phân tầng. Mô hình OSI là một khung mà các tiêu chuẩn lập mạng khác nhau có thể khớp vào. Mô hình OSI định rõ các mặt nào của hoạt động của mạng có thể nhằm đến bởi các tiêu chuẩn mạng khác nhau. Vì vậy, theo một nghĩa nào đó, mô hình OSI là một loại tiêu chuẩn của các chuẩn. 1. Nguyên tắc sử dụng khi định nghĩa các tầng hệ thống mở: Sau đây là các nguyên tắc mà ISO quy định dùng trong quá trình xây dựng mô hình OSI: - Không định nghĩa quá nhiều tầng để việc xác định và ghép nối các tầng không quá phức tạp. - Tạo các ranh giới các tầng sao cho việc giải thích các phục vụ và số các tương tác qua lại hai tầng là nhỏ nhất. - Tạo các tầng riêng biệt cho các chức năng khác biệt nhau hoàn toàn về kỹ thuật sử dụng hoặc quá trình thực hiên. - Các chức năng giống nhau được đặt trong cùng một tầng. - Lựa chọn ranh giới các tầng tại các điểm mà những thử nghiệm trong quá khứ thành công. - Các chức năng được xác định sao cho chúng có thể dễ dàng xác định lại, và các nghi thức của chúng có thể thay đổi trên mọi hướng. - Tạo ranh giới các tầng mà ở đó cần có những mức độ trừu tượng khác nhau trong việc sử dụng số liệu. - Cho phép thay đổi các chức năng hoặc giao thức trong tầng không ảnh hưởng đến các tầng khác. - Tạo các ranh giới giữa mỗi tầng với tầng trên và dưới nó. 2. Các giao thức trong mô hình OSI Trong mô hình OSI có hai loại giao thức chính được áp dụng: giao thức có liên kết (connection - oriented) và giao thức không liên kết (connectionless). - Giao thức có liên kết: trước khi truyền dữ liệu hai tầng đồng mức cần thiết lập một liên kết logic và các gói tin được trao đổi thông qua liên kết náy, việc có liên kết logic sẽ nâng cao độ an toàn trong truyền dữ liệu. ThS. Nguyễn Hứa Duy Khang 18
  22. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP - Giao thức không liên kết: trước khi truyền dữ liệu không thiết lập liên kết logic và mỗi gói tin được truyền độc lập với các gói tin trước hoặc sau nó. Như vậy với giao thức có liên kết, quá trình truyền thông phải gồm 3 giai đoạn phân biệt: - Thiết lập liên kết (logic): 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ẽ sử dụng trong giai đoạn sau (truyền dữ liệu). - 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ý kèm theo (như kiểm soát lỗi, kiểm soát luồng dữ liệu, cắt/hợp dữ liệu ) để tăng cường độ tin cậy và hiệu quả của việc truyền dữ liệu. - Hủy bỏ liên kết (logic): giải phóng tài nguyên hệ thống đã được cấp phát cho liên kết để dùng cho liên kết khác. Đối với giao thức không liên kết thì chỉ có duy nhất một giai đoạn truyền dữ liệu mà thôi. Gói tin của giao thức: Gói tin (Packet) được hiểu như là một đơn vị thông tin dùng trong việc liên lạc, chuyển giao dữ liệu trong mạng máy tính. Những thông điệp (message) trao đổi giữa các máy tính trong mạng, được tạo dạng thành các gói tin ở máy nguồn. Và những gói tin này khi đích sẽ được kết hợp lại thành thông điệp ban đầu. Một gói tin có thể chứa đựng các yêu cầu phục vụ, các thông tin điều khiển và dữ liệu. Host A Host B Application Data Data Application Presentation Data Hdr Hdr Data Presentation Session Data_P Hdr Hdr Data_P Session Transport Data_S Hdr Hdr Data_S Transport Network Data_T Hdr Hdr Data_T Network Datalink Trl Data_N Hdr Hdr Data_N Trl Datalink Physic Physic Hdr: Phần đầu gói tin (riêng cho mỗi tầng) Trl: Phần kiểm lỗi (tầng liên kết dữ liệu) Data: Phần dữ liệu của gói tin Hình 2-1a: Phương thức xác lập các gói tin trong mô hình OSI ThS. Nguyễn Hứa Duy Khang 19
  23. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Hình 2-1b: Kiến trúc mạng dựa trên mô hình OSI Trên quan điểm mô hình mạng phân tầng tầng mỗi tầng chỉ thực hiện một chức năng là nhận dữ liệu từ tầng bên trên để chuyển giao xuống cho tầng bên dưới và ngược lại. Chức năng này thực chất là gắn thêm và gỡ bỏ phần đầu (header) đối với các gói tin trước khi chuyển nó đi. Nói cách khác, từng gói tin bao gồm phần đầu (header) và phần dữ liệu. Khi đi đến một tầng mới gói tin sẽ được đóng thêm một phần đầu đề khác và được xem như là gói tin của tầng mới, công việc trên tiếp diễn cho tới khi gói tin được truyền lên đường dây mạng để đến bên nhận. Tại bên nhận các gói tin được gỡ bỏ phần đầu trên từng tầng tướng ứng và đây cũng là nguyên lý của bất cứ mô hình phân tầng nào. Chú ý: phần kiểm lỗi của gói tin tầng liên kết dữ liệu đặt ở cuối gói tin 3. Tầng Vật lý (Physical) Tầng vật lý là tầng dưới cùng của mô hình OSI là. Nó mô tả các đặc trưng vật lý của mạng: Các loại cáp được dùng để nối các thiết bị, các loại đầu nối được dùng , các dây cáp có thể dài bao nhiêu v.v Mặt khác các tầng vật lý cung cấp các đặc trưng điện của các tín hiệu được dùng để khi chuyển dữ liệu trên cáp từ một máy này đến một máy khác của mạng, kỹ thuật nối mạch điện, tốc độ cáp truyền dẫn. Tầng vật lý không qui định một ý nghĩa nào cho các tín hiệu đó ngoài các giá trị nhị phân 0 và 1. Ở các tầng cao hơn của mô hình OSI ý nghĩa của các bit được truyền ở tầng vật lý sẽ được xác định. Ví dụ: Tiêu chuẩn Ethernet cho cáp xoắn đôi 10-base-T định rõ các đặc trưng điện của cáp xoắn đôi, kích thước và dạng của các đầu nối, độ dài tối đa của cáp Khác với các tầng khác, tầng vật lý là không có gói tin riêng và do vậy không có phần đầu (header) chứa thông tin điều khiển, dữ liệu được truyền đi theo dòng bit. Một giao thức tầng vật lý tồn tại giữa các tầng vật lý để quy định về phương thức truyền (đồng bộ, phi đồng bộ), tốc độ truyền ThS. Nguyễn Hứa Duy Khang 20
  24. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Các giao thức được xây dựng cho tầng vật lý được phân chia thành phân chia thành hai loại giao thức sử dụng phương thức truyền thông dị bộ (asynchronous) và phương thức truyền thông đồng bộ (synchronous). - Phương thức truyền dị bộ: không có một tín hiệu quy định cho sự đồng bộ giữa các bit giữa máy gửi và máy nhận, trong quá trình gửi tín hiệu máy gửi sử dụng các bit đặc biệt START và STOP được dùng để tách các xâu bit biểu diễn các ký tự trong dòng dữ liệu cần truyền đi. Nó cho phép một ký tự được truyền đi bất kỳ lúc nào mà không cần quan tâm đến các tín hiệu đồng bộ trước đó. - Phương thức truyền đồng bộ: sử dụng phương thức truyền cần có đồng bộ giữa máy gửi và máy nhận, nó chèn các ký tự đặc biệt như SYN (Synchronization), EOT (End Of Transmission) hay đơn giản hơn, một cái “cờ” (flag) giữa các dữ liệu của máy gửi để báo hiệu cho máy nhận biết được dữ liệu đang đến hoặc đã đến. 4. Tầng Liên kết dữ liệu (Data link) Tầng liên kết dữ liệu là tầng mà ở đó ý nghĩa được gán cho các bít được truyền trên mạng. Tầng liên kết dữ liệu phải quy định được các dạng thức, kích thước, địa chỉ máy gửi và nhận của mỗi gói tin được gửi đi. Nó phải xác định cơ chế truy nhập thông tin trên mạng và phương tiện gửi mỗi gói tin sao cho nó được đưa đến cho người nhận đã định. Tầng liên kết dữ liệu có hai phương thức liên kết dựa trên cách kết nối các máy tính, đó là phương thức "một điểm - một điểm" và phương thức "một điểm - nhiều điểm". Với phương thức "một điểm - một điểm" các đường truyền riêng biệt được thiết lâp để nối các cặp máy tính lại với nhau. Phương thức "một điểm - nhiều điểm " tất cả các máy phân chia chung một đường truyền vật lý. Hình 2-2: Các kiểu kết nối đường truyền Tầng liên kết dữ liệu cũng cung cấp cách phát hiện và sửa lỗi cơ bản để đảm bảo cho dữ liệu nhận được giống hoàn toàn với dữ liệu gửi đi. Nếu một gói tin có lỗi không sửa được, tầng liên kết dữ liệu phải chỉ ra được cách thông báo cho nơi gửi biết gói tin đó có lỗi để nó gửi lại. Các giao thức tầng liên kết dữ liệu chia làm 2 loại chính là các giao thức hướng ký tư và các giao thức hướng bit. Các giao thức hướng ký tự được xây dựng dựa trên các ký tự đặc biệt của một bộ mã chuẩn nào đó (như ASCII hay EBCDIC), trong khi đó các giao thức hướng bit lại dùng các cấu trúc nhị phân (xâu bit) để xây dựng các phần tử của giao thức (đơn vị dữ liệu, các thủ tục ) và khi nhận, dữ liệu sẽ được tiếp nhận lần lượt từng bit một. ThS. Nguyễn Hứa Duy Khang 21
  25. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP 5. Tầng Mạng (Network) Tầng mạng nhắm đến việc kết nối các mạng với nhau bằng cách tìm đường (routing) cho các gói tin từ một mạng này đến một mạng khác. Nó xác định việc chuyển hướng, vạch đường các gói tin trong mạng, các gói này có thể phải đi qua nhiều chặng trước khi đến được đích cuối cùng. Nó luôn tìm các tuyến truyền thông không tắc nghẽn để đưa các gói tin đến đích. Tầng mạng cung các các phương tiện để truyền các gói tin qua mạng, thậm chí qua một mạng của mạng (network of network). Bởi vậy nó cần phải đáp ứng với nhiều kiểu mạng và nhiều kiểu dịch vụ cung cấp bởi các mạng khác nhau. hai chức năng chủ yếu của tầng mạng là chọn đường (routing) và chuyển tiếp (relaying). Tầng mạng là quan trọng nhất khi liên kết hai loại mạng khác nhau như mạng Ethernet với mạng Token Ring khi đó phải dùng một bộ tìm đường (quy định bởi tầng mạng) để chuyển các gói tin từ mạng này sang mạng khác và ngược lại. Đối với một mạng chuyển mạch gói (packet - switched network) - gồm tập hợp các nút chuyển mạch gói nối với nhau bởi các liên kết dữ liệu. Các gói dữ liệu được truyền từ một hệ thống mở tới một hệ thống mở khác trên mạng phải được chuyển qua một chuỗi các nút. Mỗi nút nhận gói dữ liệu từ một đường vào (incoming link) rồi chuyển tiếp nó tới một đường ra (outgoing link) hướng đến đích của dữ liệu. Như vậy ở mỗi nút trung gian nó phải thực hiện các chức năng chọn đường và chuyển tiếp. Việc chọn đường là sự lựa chọn một con đường để truyền một đơn vị dữ liệu (một gói tin chẳng hạn) từ trạm nguồn tới trạm đích của nó. Một kỹ thuật chọn đường phải thực hiện hai chức năng chính sau đây: - Quyết định chọn đường tối ưu dựa trên các thông tin đã có về mạng tại thời điểm đó thông qua những tiêu chuẩn tối ưu nhất định. - Cập nhật các thông tin về mạng, tức là thông tin dùng cho việc chọn đường, trên mạng luôn có sự thay đổi thường xuyên nên việc cập nhật là việc cần thiết. Hình 2- 3: Mô hình chuyển vận các gói tin trong mạng chuyển mạch gói Người ta có hai phương thức đáp ứng cho việc chọn đường là phương thức xử lý tập trung và xử lý tại chỗ. - Phương thức chọn đường xử lý tập trung được đặc trưng bởi sự tồn tại của một (hoặc vài) trung tâm điều khiển mạng, chúng thực hiện việc lập ra các bảng đường đi tại từng thời điểm cho các nút và sau đó gửi các bảng chọn đường tới từng nút dọc theo con đường đã được chọn đó. Thông tin tổng thể của mạng cần dùng cho việc chọn đường chỉ cần cập nhập và được cất giữ tại trung tâm điều khiển mạng. ThS. Nguyễn Hứa Duy Khang 22
  26. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP - Phương thức chọn đường xử lý tại chỗ được đặc trưng bởi việc chọn đường được thực hiện tại mỗi nút của mạng. Trong từng thời điểm, mỗi nút phải duy trì các thông tin của mạng và tự xây dựng bảng chọn đường cho mình. Như vậy các thông tin tổng thể của mạng cần dùng cho việc chọn đường cần cập nhập và được cất giữ tại mỗi nút. Thông thường các thông tin được đo lường và sử dụng cho việc chọn đường bao gồm: - Trạng thái của đường truyền. - Thời gian trễ khi truyền trên mỗi đường dẫn. - Mức độ lưu thông trên mỗi đường. - Các tài nguyên khả dụng của mạng. Khi có sự thay đổi trên mạng (ví dụ thay đổi về cấu trúc của mạng do sự cố tại một vài nút, phục hồi của một nút mạng, nối thêm một nút mới hoặc thay đổi về mức độ lưu thông) các thông tin trên cần được cập nhật vào các cơ sở dữ liệu về trạng thái của mạng. Hiện nay khi nhu cầu truyền thông đa phương tiện (tích hợp dữ liệu văn bản, đồ hoạ, hình ảnh, âm thanh) ngày càng phát triển đòi hỏi các công nghệ truyền dẫn tốc độ cao nên việc phát triển các hệ thống chọn đường tốc độ cao đang rất được quan tâm. 6. Tầng Vận chuyển (Transport) Tầng vận chuyển cung cấp các chức năng cần thiết giữa tầng mạng và các tầng trên. nó là tầng cao nhất có liên quan đến các giao thức trao đổi dữ liệu giữa các hệ thống mở. Nó cùng các tầng dưới cung cấp cho người sử dụng các phục vụ vận chuyển. Tầng vận chuyển (transport layer) là tầng cơ sở mà ở đó một máy tính của mạng chia sẻ thông tin với một máy khác. Tầng vận chuyển đồng nhất mỗi trạm bằng một địa chỉ duy nhất và quản lý sự kết nối giữa các trạm. Tầng vận chuyển cũng chia các gói tin lớn thành các gói tin nhỏ hơn trước khi gửi đi. Thông thường tầng vận chuyển đánh số các gói tin và đảm bảo chúng chuyển theo đúng thứ tự. Tầng vận chuyển là tầng cuối cùng chịu trách nhiệm về mức độ an toàn trong truyền dữ liệu nên giao thức tầng vận chuyển phụ thuộc rất nhiều vào bản chất của tầng mạng. Người ta chia giao thức tầng mạng thành các loại sau: - Mạng loại A: Có tỷ suất lỗi và sự cố có báo hiệu chấp nhận được (tức là chất lượng chấp nhận được). Các gói tin được giả thiết là không bị mất. Tầng vận chuyển không cần cung cấp các dịch vụ phục hồi hoặc sắp xếp thứ tự lại. - Mạng loại B: Có tỷ suất lỗi chấp nhận được nhưng tỷ suất sự cố có báo hiệu lại không chấp nhận được. Tầng giao vận phải có khả năng phục hồi lại khi xẩy ra sự cố. - Mạng loại C: Có tỷ suất lỗi không chấp nhận được (không tin cậy) hay là giao thức không liên kết. Tầng giao vận phải có khả năng phục hồi lại khi xảy ra lỗi và sắp xếp lại thứ tự các gói tin. Trên cơ sở loại giao thức tầng mạng chúng ta có 5 lớp giao thức tầng vận chuyển là: - Giao thức lớp 0 (Simple Class - lớp đơn giản): cung cấp các khả năng rất đơn giản để thiết lập liên kết, truyền dữ liệu và hủy bỏ liên kết trên mạng "có liên ThS. Nguyễn Hứa Duy Khang 23
  27. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP kết" loại A. Nó có khả năng phát hiện và báo hiệu các lỗi nhưng không có khả năng phục hồi. - Giao thức lớp 1 (Basic Error Recovery Class - Lớp phục hồi lỗi cơ bản) dùng với các loại mạng B, ở đây các gói tin (TPDU) được đánh số. Ngoài ra giao thức còn có khả năng báo nhận cho nơi gửi và truyền dữ liệu khẩn. So với giao thức lớp 0 giao thức lớp 1 có thêm khả năng phục hồi lỗi. - Giao thức lớp 2 (Multiplexing Class - lớp dồn kênh) là một cải tiến của lớp 0 cho phép dồn một số liên kết chuyển vận vào một liên kết mạng duy nhất, đồng thời có thể kiểm soát luồng dữ liệu để tránh tắc nghẽn. Giao thức lớp 2 không có khả năng phát hiện và phục hồi lỗi. Do vậy nó cần đặt trên một tầng mạng loại A. - Giao thức lớp 3 (Error Recovery and Multiplexing Class - lớp phục hồi lỗi cơ bản và dồn kênh) là sự mở rộng giao thức lớp 2 với khả năng phát hiện và phục hồi lỗi, nó cần đặt trên một tầng mạng loại B. - Giao thức lớp 4 (Error Detection and Recovery Class - Lớp phát hiện và phục hồi lỗi) là lớp có hầu hết các chức năng của các lớp trước và còn bổ sung thêm một số khả năng khác để kiểm soát việc truyền dữ liệu. 7. Tầng Giao dịch (Session) Tầng giao dịch (session layer) thiết lập "các giao dịch" giữa các trạm trên mạng, nó đặt tên nhất quán cho mọi thành phần muốn đối thoại với nhau và lập ánh xa giữa các tên với địa chỉ của chúng. Một giao dịch phải được thiết lập trước khi dữ liệu được truyền trên mạng, tầng giao dịch đảm bảo cho các giao dịch được thiết lập và duy trì theo đúng qui định. Tầng giao dịch còn cung cấp cho người sử dụng các chức năng cần thiết để quản trị các giao dịnh ứng dụng của họ, cụ thể là: - Điều phối việc trao đổi dữ liệu giữa các ứng dụng bằng cách thiết lập và giải phóng (một cách lôgic) các phiên (hay còn gọi là các hội thoại - dialogues) - Cung cấp các điểm đồng bộ để kiểm soát việc trao đổi dữ liệu. - Áp đặt các qui tắc cho các tương tác giữa các ứng dụng của người sử dụng. - Cung cấp cơ chế "lấy lượt" (nắm quyền) trong quá trình trao đổi dữ liệu. Trong trường hợp mạng là hai chiều luân phiên thì nẩy sinh vấn đề: hai người sử dụng luân phiên phải "lấy lượt" để truyền dữ liệu. Tầng giao dịch duy trì tương tác luân phiên bằng cách báo cho mỗi người sử dụng khi đến lượt họ được truyền dữ liệu. Vấn đề đồng bộ hóa trong tầng giao dịch cũng được thực hiện như cơ chế kiểm tra/phục hồi, dịch vụ này cho phép người sử dụng xác định các điểm đồng bộ hóa trong dòng dữ liệu đang chuyển vận và khi cần thiết có thể khôi phục việc hội thoại bắt đầu từ một trong các điểm đó Ở một thời điểm chỉ có một người sử dụng đó quyền đặc biệt được gọi các dịch vụ nhất định của tầng giao dịch, việc phân bổ các quyền này thông qua trao đổi thẻ bài (token). Ví dụ: Ai có được token sẽ có quyền truyền dữ liệu, và khi người giữ token trao token cho người khác thi cũng có nghĩa trao quyền truyền dữ liệu cho người đó. ThS. Nguyễn Hứa Duy Khang 24
  28. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Tầng giao dịch có các hàm cơ bản sau: - Give Token cho phép người sử dụng chuyển một token cho một người sử dụng khác của một liên kết giao dịch. - Please Token cho phép người sử dụng chưa có token có thể yêu cầu token đó. - Give Control dùng để chuyển tất cả các token từ một người sử dụng sang một người sử dụng khác. 8. Tầng Trình bày (Presentation) Trong giao tiếp giữa các ứng dụng thông qua mạng với cùng một dữ liệu có thể có nhiều cách biểu diễn khác nhau. Thông thường dạng biểu diễn dùng bởi ứng dụng nguồn và dạng biểu diễn dùng bởi ứng dụng đích có thể khác nhau do các ứng dụng được chạy trên các hệ thống hoàn toàn khác nhau (như hệ máy Intel và hệ máy Motorola). Tầng trình bày (Presentation layer) phải chịu trách nhiệm chuyển đổi dữ liệu gửi đi trên mạng từ một loại biểu diễn này sang một loại khác. Để đạt được điều đó nó cung cấp một dạng biểu diễn chung dùng để truyền thông và cho phép chuyển đổi từ dạng biểu diễn cục bộ sang biểu diễn chung và ngược lại. Tầng trình bày cũng có thể được dùng kĩ thuật mã hóa để xáo trộn các dữ liệu trước khi được truyền đi và giải mã ở đầu đến để bảo mật. Ngoài ra tầng biểu diễn cũng có thể dùng các kỹ thuật nén sao cho chỉ cần một ít byte dữ liệu để thể hiện thông tin khi nó được truyền ở trên mạng, ở đầu nhận, tầng trình bày bung trở lại để được dữ liệu ban đầu. 9. Tầng Ứng dụng (Application) Tầng ứng dụng là tầng cao nhất của mô hình OSI, nó xác định giao diện giữa người sử dụng và môi trường OSI và giải quyết các kỹ thuật mà các chương trình ứng dụng dùng để giao tiếp với mạng. Để cung cấp phương tiện truy nhập môi trường OSI cho các tiến trình ứng dụng, Người ta thiết lập các thực thể ứng dụng (AE), các thực thể ứng dụng sẽ gọi đến các phần tử dịch vụ ứng dụng (Application Service Element - viết tắt là ASE) của chúng. Mỗi thực thể ứng dụng có thể gồm một hoặc nhiều các phần tử dịch vụ ứng dụng. Các phần tử dịch vụ ứng dụng được phối hợp trong môi trường của thực thể ứng dụng thông qua các liên kết (association) gọi là đối tượng liên kết đơn (Single Association Object - viết tắt là SAO). SAO điều khiển việc truyền thông trong suốt vòng đời của liên kết đó cho phép tuần tự hóa các sự kiện đến từ các ASE thành tố của nó. 10. Giao thức TCP/IP Giao thức TCP/IP được phát triển từ mạng ARPANET và Internet và được dùng như giao thức mạng và vận chuyển trên mạng Internet. TCP (Transmission Control Protocol) là giao thức thuộc tầng vận chuyển và IP (Internet Protocol) là giao thức thuộc tầng mạng của mô hình OSI. Đến năm 1981, TCP/IP phiên bản 4 (IPv4) 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. ThS. Nguyễn Hứa Duy Khang 25
  29. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Đế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. 10.1. Kiến trúc TCP/IP TCP/IP có một số đặc tính quan trọng sau: - Là bộ giao thức chuẩn mở và sẵn có vì: nó không thuộc sở hữu của bất cứ một tổ chức nào; các đặc tả thì sẵn có và rộng rãi. Vì vậy, bất kì ai cũng có thể xây dựng phần mềm truyền thông qua mạng máy tính dựa trên nó. - TCP/IP độc lập với phần cứng mạng vật lý, điều này cho phép TCP.IP có thể được dùng để kết nối nhiều loịa mạng có kiến trúc vật lý khác nhau như Ethernet, Token Ring, FDDI, X25, ATM - TCP/IP dùng địa chỉ IP để định danh các host trên mạng tạo thành một mạng ảo thống nhất khi kết nối mạng. Ghi chú: SMTP: Simple Mail Transfer Protocol. FTP: File Transfer Protocol. DNS: Doname System SNMP: Simple Network Management Protocol. ICMP: Internet Control Message Protocol. ARP: Address Resolution Protocol. RIP: Routing Information Protocol. FDDI: Fiber Distributed Data Interface. Hình 2-4: Mô hình OSI và mô hình kiến trúc của TCP/IP Nếu tách riêng TCP và IP thì đó là những chuẩn riêng về giao thức truyền thông, tương đương với lớp vận chuyển và lớp mạng trong mô hình OSI. Nhưng người ta cũng dùng TCP/IP để chỉ một mô hình truyền thông ra đời trước khi có chuẩn OSI. ThS. Nguyễn Hứa Duy Khang 26
  30. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP 10.1.1 Lớp ứng dụng Lớp ứng dụng thực hiện chức năng hỗ trợ cần thiếtcho nhiều ứng dụng khác nhau. Với mỗi loại ứng dụng cần module riêng biệt, ví dụ FTP (File Transfer Protocol) cho chuyển giao file, TELNET cho làm việc với trạm chủ từ xa, SMTP (Simple Mail Transfer Protocol) cho chuyển thư điện tử, SNMP (Simple Network Management Protocol) cho quản trị mạng và DNS (Domain Name Service) phục vụ quản lí và tra cứu danh sách và tên địa chỉ Internet. 10.1.2 Lớp vận chuyển Cơ chế bảo đảm dữ liệu được vận chuyển một cách đáng tin cậy, hoàn toàn không phụ thuộc vào đặc tính của các ứng dụng sử dụng dữ liệu. TCP (Transmission Control Protocol) là giao thức tiêu biểu nhất, phổ biến nhất phục vụ việc thực hiện chức năng nói trên. TCP hỗ trợ việc trao đổi dữ liệu trên cơ sở dịch vụ có nối. Bên cạnh TCP, giao thức UDP (User Datagram Protocol) cũng được sử dụng cho lớp vận chuyển. Khác với TCP, UDP cung cấp dịch vụ không có nối cho việc gửi dữ liệu mà không đảm bảo tuyệt đối đến đích và trình tự đến đích của các gói dữ liệu. Tuy nhiên UDP lại đơn giản và hiệu xuất, chỉ đòi hỏi cơ chế xử lí giao thức tối thiểu, vì vậy thường được sử dụng làm cơ sở thực hiện các giao thức cao cấp theo yêu cầu riêng của người sử dụng, ví dụ giao thức SNMP. 10.1.3 Lớp Internet Tương đương với lớp Network của OSI bao gồm các giao thức: - IP (Internet Protocol) - ICMP (Internet Control Message Protocol). - IGMP (Internet Group Managerr Protocol) - ARP (Address Resolution Protocol) - RARP ( Reserver Address Resolution Protocol) Tương tự như lớp mạng ở OSI, lớp Internet có chức năng chuyển giao dữ liệu giữa nhiều mạng được liên kết với nhau. Giao thức IP (Internetworking Protocol) được sử dụng ở chính lớp này. Giao thức IP được thực hiện không những ở các thiết bị đầu cuối mà còn ở các bộ Router. Một router chính là một thiết bị xử lí giao thức dùng để liên kết hai mạng, có chức năng chuyển giao dữ liệu từ một mạng này sang một mạng khác, trong đó có cả nhiệm vụ tìm đường tối ưu. 10.1.4 Lớp truy nhập mạng Bao gồm hai lớp Physical và Data Link của mô hình OSI 7 lớp. Lớp truy nhập mạng liên quan tới việc trao đổi dữ liệu giữa hai trạm thiết bị trong cùng một mạng. Các chức năng bao gồm việc kiểm soát truy nhập môi trường truyền dẫn, kiểm lỗi và lưu thông dữ liệu. 10.1.5 Lớp vật lí Lớp vật lí đề cập tới giao diện vật lí giữa một thiết bị truyền dữ liệu (PC hay PLC) với môi trường truyền dẫn hay mạng, trong đó có đặc tính tín hiệu, chế độ truyền, tốc độ truyền và cấu trúc cơ học các phích cắm và giắc cắm. 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 ThS. Nguyễn Hứa Duy Khang 27
  31. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP 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. 10.2. Giao thức IP Nhiệm vụ chính của giao thức IP là cung cấp khả năng kết nối các mạng con thành liên kết mạng để truyền dữ liệu, vai trò của IP là vai trò của giao thức tầng mạng trong mô hình OSI. Giao thức IP là một giao thức kiểu không liên kết (connectionlees) có nghĩa là không cần có giai đoạn thiết lập liên kết trước khi truyền dữ liệu. 10.2.1 Địa chỉ IP Sơ đồ địa chỉ hóa để định danh các trạm (host) trong liên mạng được gọi là địa chỉ IP 32 bits (32 bit IP address). Mỗi giao diện trong 1 máy có hỗ trợ giao thức IP đều phải được gán 1 địa chỉ IP (một máy tính có thể gắn với nhiều mạng do vậy có thể có nhiều địa chỉ IP). Địa chỉ IP gồm 2 phần: Địa chỉ mạng (netid) Địa chỉ máy (hostid) Mỗi địa chỉ IP có độ dài 32 bits được tách thành 4 vùng (mỗi vùng 1 byte), có thể biểu thị dưới dạng thập phân, bát phân, thập lục phân hay nhị phân. Cách viết phổ biến nhất là dùng ký pháp thập phân có dấu chấm (dotted decimal notation) để tách các vùng. xxxx xxxx xxxx xxxx Mục đích của địa chỉ IP là để định danh duy nhất cho một máy tính bất kỳ trên liên mạng. Do tổ chức và độ lớn của các mạng con (subnet) của liên mạng có thể khác nhau, người ta chia các địa chỉ IP thành 5 lớp, ký hiệu là A, B, C, D và E. Trong lớp A, B, C chứa địa chỉ có thể gán được. Lớp D dành riêng cho lớp kỹ thuật multicasting. Lớp E được dành những ứng dụng trong tương lai. Netid trong địa chỉ mạng dùng để nhận dạng từng mạng riêng biệt. Các mạng liên kết phải có địa chỉ mạng (netid) riêng cho mỗi mạng. Ở đây các bit đầu tiên của byte đầu ThS. Nguyễn Hứa Duy Khang 28
  32. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP tiên được dùng để định danh lớp địa chỉ (0 - lớp A, 10 - lớp B, 110 - lớp C, 1110 - lớp D và 11110 - lớp E). Ở đây ta xét cấu trúc của các lớp địa chỉ có thể gán được là lớp A, lớp B, lớp C. Cấu trúc của các địa chỉ IP như trong hình 2-5 NetID HostID Địa chỉ lớp A 0xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp B 10xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp C 110xxxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp D 1110xxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp E 11110xxx xxxxxxxx xxxxxxxx xxxxxxxx Hình 2-5: Cấu trúc các lớp địa chỉ IP Hiện tại đã dùng hết lớp A,B và gần hết lớp C, còn lớp D và E Tổ chức internet đang để dành cho mục đích khác không phân, hiện tại chỉ sử dụng 3 lớp đầu. Địa chỉ lớp Vùng địa chỉ lý thuyết Số mạng tối đa Số máy tối đa A Từ 0.0.0.0 đến 127.0.0.0 126 16.777.214 B Từ 128.0.0.0 đến 191.255.0.0 16.382 65.534 C Từ 192.0.0.0 đến 223.255.255.0 2.097.150 254 D Từ 224.0.0.0 đến 240.0.0.0 Không phân E Từ 241.0.0.0 đến 255.0.0.0 Không phân Bảng 2-1: Phân phối địa chỉ IP trên các lớp Một số địa chỉ có tính chất đặc biệt: Một địa chỉ có HostID = 0 được dùng để hướng tới mạng định danh bởi vùng netID. Ngược lại, một địa chỉ có vùng hostID gồm toàn số 1 được dùng để hướng tới tất cả các host nối vào mạng netID, và nếu vùng netID cũng gồm toàn số 1 thì nó hướng tới tất cả các host trong liên mạng 00001010 00001010 00001010 00001010 =10.0.0.1 (lớp A); NetID=10 10000000 00000011 00000010 00000011 =128.3.2.3 (lớp B) NetID=128.3; HostID=2.3 11000000 00000000 00000001 11111111 =192.0.1.255 (lớp C) NetID=192.0.1; HostID=255 → Hướng tới tất cả các host Hình 2-6: Ví dụ cấu trúc các lớp địa chỉ IP Cần lưu ý rằng các địa chỉ IP được dùng để định danh các host và mạng ở tầng mạng của mô hình OSI, và chúng không phải là các địa chỉ vật lý (hay địa chỉ MAC) của các trạm trên đó một mạng cục bộ (Ethernet, Token Ring ). ThS. Nguyễn Hứa Duy Khang 29
  33. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP 10.2.2 Mạng con (subnet) Trong nhiều trường hợp, một mạng có thể được chia thành nhiều mạng con (subnet), lúc đó có thể đưa thêm các vùng subnetid để định danh các mạng con. Vùng subnetid được lấy từ vùng hostid, cụ thể đối với lớp A, B, C như ví dụ sau: 0 7 8 15 16 23 24 26 27 31 NetID SubnetID HostID (Lớp A) NetID SubnetID HostID (Lớp B) NetID SubnetID HostID (Lớp C) Hình 2-7: Ví dụ địa chỉ khi bổ sung vùng subnetid 10.2.3 Gói tin 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). 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. Gói tin IP (datagram), có khuôn dạng như hình 2-8. Bit 0 Bit 31 VERS HLEN Service type Total length Identification Flags Fragment offset Time to Live Protocal Header checksum Header Source IP address Destination IP address IP Options (maybe one) Padding IP datagram data (up to 65353 bytes) Hình 2-8: Dạng thức của gói tin IP Ý nghĩa của thông số như sau: - VER (4 bits): chỉ version hiện hành của giao thức IP hiện được cài đặt, Việc có chỉ số version cho phép có các trao đổi giữa các hệ thống sử dụng version cũ và hệ thống sử dụng version mới. - IHL (4 bits): chỉ độ dài phần đầu (Internet header Length) của gói tin datagram, tính theo đơn vị từ ( 32 bits). Trường này bắt buột phải có vì phần đầu IP có thể có độ dài thay đổi tùy ý. Độ dài tối thiểu là 5 từ (20 bytes), độ dài tối đa là 15 từ hay là 60 bytes. - Type of service (8 bits): đặc tả các tham số về dịch vụ nhằm thông báo cho mạng biết dịch vụ nào mà gói tin muốn được sử dụng, chẳng hạn ưu tiên, thời ThS. Nguyễn Hứa Duy Khang 30
  34. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP hạn chậm trễ, năng suất truyền và độ tin cậy. Hình sau cho biết ý nghĩ của trường 8 bits này. Precedence (3 bit): chỉ thị về quyền ưu tiên gửi datagram, nó có giá trị từ 0 (gói tin bình thường) đến 7 (gói tin kiểm soát mạng). D (Delay) (1 bit): chỉ độ trễ yêu cầu trong đó 0 1 2 3 4 5 6 7 Precedence D T R Reserved D = 0 gói tin có độ trễ bình thường D = 1 gói tin độ trễ thấp T (Throughput) (1 bit): chỉ độ thông lượng yêu cầu sử dụng để truyền gói tin với lựa chọn truyền trên đường thông suất thấp hay đường thông suất cao. T = 0 thông lượng bình thường và T = 1 thông lượng cao R (Reliability) (1 bit): chỉ độ tin cậy yêu cầu. R = 0 độ tin cậy bình thường và R = 1 độ tin cậy cao - Total Length (16 bits): chỉ độ dài toàn bộ gói tin, kể cả phần đầu tính theo đơn vị byte với chiều dài tối đa là 65535 bytes. Hiện nay giới hạn trên là rất lớn nhưng trong tương lai với những mạng Gigabit thì các gói tin có kích thước lớn là cần thiết. - Identification (16 bits): cùng với các tham số khác (như Source Address và Destination Address) tham số này dùng để định danh duy nhất cho một datagram trong khoảng thời gian nó vẫn còn trên liên mạng. - Flags (3 bits): liên quan đến sự phân đoạn (fragment) các datagram, Các gói tin khi đi trên đường đi có thể bị phân thành nhiều gói tin nhỏ, trong trường hợp bị phân đoạn thì trường Flags được dùng điều khiển phân đoạn và tái lắp ghép bó dữ liệu. Tùy theo giá trị của Flags sẽ có ý nghĩa là gói tin sẽ không phân đoạn, có thể phân đoạn hay là gói tin phân đoạn cuối cùng. Trường Fragment Offset cho biết vị trí dữ liệu thuộc phân đoạn tương ứng với đoạn bắt đầu của gói dữ liệu gốc. Ý nghĩa cụ thể của trường Flags là: 0 1 2 0 DF MF bit 0: reserved - chưa sử dụng, luôn lấy giá trị 0. bit 1: (DF) = 0 (May Fragment) = 1 (Don't Fragment) bit 2: (MF) = 0 (Last Fragment) = 1 (More Fragments) - Fragment Offset (13 bits): chỉ vị trí của đoạn (fragment) ở trong datagram tính theo đơn vị 8 bytes, có nghĩa là phần dữ liệu mỗi gói tin (trừ gói tin cuối cùng) phải chứa một vùng dữ liệu có độ dài là bội số của 8 bytes. Điều này có ý nghĩa là phải nhân giá trị của Fragment offset với 8 để tính ra độ lệch byte. - Time to Live (8 bits): qui định thời gian tồn tại (tính bằng giây) của gói tin trong mạng để tránh tình trạng một gói tin bị quẩn trên mạng. Thời gian này được cho bởi trạm gửi và được giảm đi (thường qui ước là 1 đơn vị) khi datagram đi qua mỗi router của liên mạng. Thời lượng này giảm xuống tại mỗi router với mục đích giới hạn thời gian tồn tại của các gói tin và kết thúc những lần lặp lại vô hạn trên mạng. Sau đây là 1 số điều cần lưu ý về trường Time To Live: ThS. Nguyễn Hứa Duy Khang 31
  35. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Nút trung gian của mạng không được gởi 1 gói tin, có giá trị 0. Một giao thức có thể ấn định Time To Live để thực hiện cuộc tra tìm tài nguyên trên mạng trong phạm vi mở rộng. Một giá trị cố định tối thiểu phải đủ lớn cho mạng hoạt động tốt. - Protocol (8 bits): chỉ giao thức tầng trên kế tiếp sẽ nhận vùng dữ liệu ở trạm đích (hiện tại thường là TCP hoặc UDP được cài đặt trên IP). Ví dụ: TCP có giá trị trường Protocol là 6, UDP có giá trị trường Protocol là 17 - Header Checksum (16 bits): Mã kiểm soát lỗi của header gói tin IP. - Source Address (32 bits): Địa chỉ của máy nguồn. - Destination Address (32 bits): địa chỉ của máy đích - Options (độ dài thay đổi): khai báo các lựa chọn do người gửi yêu cầu (tuỳ theo từng chương trình). - Padding (độ dài thay đổi): Vùng đệm, được dùng để đảm bảo cho phần header luôn kết thúc ở một mốc 32 bits. - Data (độ dài thay đổi): Trên một mạng cục bộ như vậy, hai trạm chỉ có thể liên lạc với nhau nếu chúng biết địa chỉ vật lý của nhau. Như vậy vấn đề đặt ra là phải thực hiện ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý (48 bits) của một trạm. 10.2.4 Phân mảnh và hợp nhất các gói IP 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 MTU 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. P 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. Original IP packet Fragment 1 Fragment 2 04 05 00 2000 04 05 00 2000 04 05 00 2000 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 05 06 Checksum 05 06 Checksum 05 06 Checksum 128.82.24.12 128.82.24.12 128.82.24.12 192.12.2.5 192.12.2.5 192.12.2.5 Data Data Data 1980 bytes 1480 bytes 500 bytes Hình 2-9: Nguyên tắc phân mảnh gói dữ liệu 10.2.5. Định tuyến IP Có hai loại định tuyến: - Đị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ý. ThS. Nguyễn Hứa Duy Khang 32
  36. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP - Định tuyến gián tiếp: Định tuyến gián 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. Host A1 Host C1 Application Application Transport Gateway 1 Gateway 2 Transport Internet Internet Internet Internet Network Access Network Access Network Access Network Access Network A Network B Network C Hình 2-10: Định tuyến giữa hai hệ thống 10.3. Một số giao thức điều khiển 10.3.1. Giao thức ICMP ICMP ((Internet Control Message Protocol) là một giao thức điều khiển của mức IP, được dùng để trao đổi các thông tin điều khiển dòng số liệu, thông báo lỗi và các thông tin trạng thái khác của bộ giao thức TCP/IP. Ví dụ: - Điều khiển lưu lượng dữ liệu (Flow control). - Thông báo lỗi : ví dụ "Destination Unreachable". - Định hướng lại các tuyến đường: gói tin redirect - Kiểm tra các trạm ở xa: gói tin echo Ví dụ khuôn dạng của thông điệp ICMP redirect như hình 2-11 0 7 8 15 16 31 Type (5) Code (0-3) Checksum Địa chỉ IP của Router mặc định IP header (gồm option) và 8 bytes đầu của gói dữ liệu IP nguồn Hình 2-11: Cấu trúc thông điệp ICMP – redirect 10.3.2. Giao thức ARP và giao thức RARP Trên một mạng cục bộ hai trạm chỉ có thể liên lạc với nhau nếu chúng biết địa chỉ vật lý của nhau. Như vậy vấn đề đặt ra là phải thực hiện ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý (48 bits) của một trạm. Giao thức ARP (Address Resolution Protocol) đã được xây dựng để chuyển đổi từ địa chỉ IP sang địa chỉ vật lý khi cần thiết. Ngược lại, giao thức RARP (Reverse Address Resolution Protocol) được dùng để chuyển đổi địa chỉ vật lý sang địa chỉ IP. Các giao thức ARP và RARP không phải là bộ phận của IP mà IP sẽ dùng đến chúng khi cần. ThS. Nguyễn Hứa Duy Khang 33
  37. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP 10.4. Giao thức TCP (Lớp chuyển tải – Transport layer) 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: 1. Thiết lập, duy trì, kết thúc liên kết giữa hai quá trình. 2. Phân phát gói tin một cách tin cậy. 3. Đánh số thứ tự (sequencing) các gói dữ liệu nhằm truyền dữ liệu tin cậy. 4. Cho phép điều khiển lỗi. 5. 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. 6. Truyền dữ liệu sử dụng cơ chế song công (full-duplex). 10.4.1 Cấu trúc gói dữ liệu TCP 0 31 Source port Destination port Sequence number Acknowledgment number Data U A P R S F Offset Resersed R C S S Y I Window G K H T N N Checksum Urgent pointer Options Padding TCP Data Hình 2-12: Cấu trúc gói dữ liệu TCP 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). 10.4.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 (Tree- way Handsake) hình 2-13. ThS. Nguyễn Hứa Duy Khang 34
  38. Kỹ thuật mạng máy tính Chương 1: Mô hình OSI và TCP/IP Bước 1: 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. 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. Bước 2: 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 3: 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. Hình 2-13: Quá trình kết nối theo 3 bước - Kết thúc kết nối Khi có nhu cầu kết thúc kết nối một 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. ThS. Nguyễn Hứa Duy Khang 35
  39. Chương 3 KÊNH TRUYỀN VÀ THIẾT BỊ KẾT NỐI MẠNG Về cơ bản, một hệ thống mạng truyền dữ liệu đơn giản nhất được mô tả như sau: Hình 3-1: Hệ thống truyền dữ liệu đơn giản Trong mô hình trên, dữ liệu gồm có văn bản, hình ảnh, âm thanh, phim ảnh cần được số hóa dưới dạng nhị phân (bit 0, 1) để dễ dàng cho xử lý và truyền tải. Thiết bị truyền được nối với thiết bị nhận bằng một đường truyền hữu tuyến hoặc vô tuyến. Truyền tin là quá trình thiết bị truyền gởi đi lần lượt các bit của dữ liệu lên kênh truyền để nó lan truyền sang thiết bị nhận và như thế là dữ liệu đã được truyền đi. Các thiết bị truyền và nhận là các máy tính. Để cho hệ thống này có thể hoạt động được thì các vấn đề sau cần phải được xem xét: - Cách thức mã hóa thông tin thành dữ liệu số. - Các loại kênh truyền dẫn có thể sử dụng để truyền tin. - Sơ đồ nối kết các thiết bị truyền và nhận lại với nhau. - Cách thức truyền tải các bit từ thiết bị truyền sang thiết bị nhận. Hệ thống trên là hệ thống cơ bản nhất cho các hệ thống truyền dữ liệu. Nó thực hiện đầy đủ các chức năng mà tầng vật lý trong mô hình OSI qui định.
  40. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối 1. Các loại kênh truyền 1.1. Kênh truyền hữu tuyến Cáp thuộc loại kênh truyền hữu tuyến được sử dụng để nối máy tính và các thành phần mạng lại với nhau. Hiện nay có 3 loại cáp được sử dụng phổ biến là: - Cáp xoắn đôi (twisted pair). - Cáp đồng trục (coaxial). - Cáp quang (fiber optic). Việc chọn lựa loại cáp sử dụng cho mạng tùy thuộc vào nhiều yếu tố như: giá thành, khoảng cách, số lượng máy tính, tốc độ yêu cầu, băng thông 1.1.1 Cáp xoắn đôi Cáp xoắn đôi là cáp gồm hai dây đồng xoắn lại với nhau để tránh gây nhiễu cho các đôi dây khác, có thể kéo dài tới vài km mà không cần khuyếch đại. Dải tần trên cáp xoắn đôi đạt khoảng 300–4000Hz, tốc độ truyền đạt vài kbps đến vài Mbps. Cáp xoắn có hai loại: - Loại có bọc kim loại để tăng cường chống nhiễu gọi là STP (Shield Twisted Pair). Loại này trong vỏ bọc kim có thể có nhiều đôi dây. Về lý thuyết thì tốc độ truyền có thể đạt 500 Mb/s nhưng thực tế thấp hơn rất nhiều (chỉ đạt 155 Mbps với cáp dài 100 m) - Loại không bọc kim gọi là UTP (UnShield Twisted Pair), chất lượng kém hơn STP nhưng rất rẻ. Cáp UTP được chia làm 5 hạng tuỳ theo tốc độ truyền. Cáp xoắn đôi đã trở thành loại cáp mạng được sử dụng nhiều nhất hiện nay. Nó hỗ trợ hầu hết các khoảng tốc độ và các cấu hình mạng khác nhau và được hỗ trợ bởi hầu hết các nhà sản xuất thiết bị mạng. a) Cáp xoắn không võ bọc b) Cáp xoắn có võ bọc Hình 3-2: Các loại cáp xoắn đôi Các đặc tính của cáp xoán đôi là: - Được sử dụng trong mạng token ring (cáp loại 4 tốc độ 16MBps), chuẩn mạng Ethernet 10BaseT (Tốc độ 10MBps), hay chuẩn mạng 100BaseT (tốc độ 100Mbps) - Giá cả chấp nhận được. - UTP thường được sử dụng bên trong các tòa nhà vì nó ít có khả năng chống nhiễu hơn so với STP. - Cáp loại 2 (CAT-2) có tốc độ đạt đến 1Mbps (cáp điện thoại) . - Cáp loại 3 (CAT-3) có tốc độ đạt đến 10Mbps (Dùng trong mạng Ethernet 10BaseT) (Hình a) ThS. Nguyễn Hứa Duy Khang 37
  41. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối - Cáp loại 5 (CAT-5) có tốc độ đạt đến 100MBps (dùng trong mạng 10BaseT và 100BaseT) (Hình b) - Cáp loại 5E (CAT-5E) và loại 6 (CAT-6) có tốc độ đạt đến 1000 MBps (dùng trong mạng 1000 BaseT) 1.1.2. Cáp đồng trục băng tần cơ sở (Base band coaxial cable) Cáp đồng trục là loại cáp mà hai dây của nó có lõi lồng nhau, lõi ngoài là lưới kim loại. Khả năng chống nhiễu rất tốt nên có thể sử dụng với chiều dài từ vài trăm met đến vài km. Có hai loại cáp: - Cáp đồng trục gầy (thin coaxial cable) có trở kháng đặc tính 75 ohm, ký hiệu RG-58AU, được dùng trong chuẩn mạng Ethernet 10Base2. (hình 3-4) - Cáp đồng trục béo (thick coaxial cable) có trở kháng đặc tính 50 ohm, ký hiệu RG-11, được dùng trong chuẩn mạng 10Base5. Các loại đầu nối được sử dụng với cáp đồng trục gầy là đầu nối chữ T (T connector), đầu nối BNC và thiết bị đầu cuối (Terminator) như hình 3-5 Băng thông của cáp này còn phụ thuộc vào chiều dài của cáp. Với khoảng cách 1km có thể đạt tốc độ truyền từ 1– 2 Gbps. Cáp đồng trục băng tần cơ sở thường được chọn lựa cho các mạng cục bộ nhỏ ít người dùng, giá thành thấp. Hình 3-3: Cấu tạo cáp đồng trục Hình 3-4: Cáp đồng trục gầy Hình 3-5: Đầu nối chữ T và BNC 1.1.3. Cáp đồng trục băng rộng (Broadband Coaxial Cable) Đây là loại cáp theo tiêu chuẩn truyền hình (thường dùng trong truyền hình cáp) có dải thông từ 4 – 300 Khz trên chiều dài 100 km. Thuật ngữ “băng rộng” vốn là thuật ngữ của ngành truyền hình còn trong ngành truyền số liệu điều này chỉ có nghĩa là cáp loại này cho phép truyền thông tin tuơng tự (analog) mà thôi. Các hệ thống dựa trên cáp đồng trục băng rộng có thể truyền song song nhiều kênh. Việc khuyếch đại tín hiệu chống suy hao có thể làm theo kiểu khuyếch đại tín hiệu tương tự (analog). Để truyền thông cho máy tính cần chuyển tín hiệu số thành tín hiệu tương tự. 1.1.4. Cáp quang Dùng để truyền các xung ánh sáng trong lòng một sợi thuỷ tinh phản xạ toàn phần. Môi trường cáp quang rất lý tưởng vì: ThS. Nguyễn Hứa Duy Khang 38
  42. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối - Xung ánh sáng có thể đi hàng trăm km mà không giảm cuờng độ sáng. - Dải thông rất cao vì tần số ánh sáng dùng đối với cáp quang cỡ khoảng 1014 – 1016 - An toàn và bí mật, không bị nhiễu điện từ Chỉ có hai nhược điểm là khó nối dây và giá thành cao. Hình 3-6: Cấu trúc cáp quang Cáp quang truyền tải các sóng điện từ dưới dạng ánh sáng. Thực tế, sự xuất hiện của một sóng ánh sáng tương ứng với bit “1”và sự mất ánh sáng tương ứng với bit “0”. Các tín hiệu điện tử được chuyển sang tín hiệu ánh sáng bởi bộ phát, sau đó các tín hiệu ánh sáng sẽ được chuyển thành các sung điện tử bởi bộ nhận. Nguồn phát quang có thể là các đèn LED (Light Emitting Diode) cổ điển, hay các diod laser. Bộ dò ánh sáng có thể là các tế bào quang điện truyền thống hay các tế bào quang điện dạng khối. Hình 3-7: Truyền tín hiệu bằng cáp quang Dựa vào sự phản xạ trên bề mặt, cáp quang cũng có hai loại - Loại đa mode (multi mode fiber): khi góc tới thành dây dẫn lớn đến một mức nào đó thì có hiện tượng phản xạ toàn phần và cho phép nhiều tia sáng khác nhau truyền song song. Các cáp đa mode có đường kính khoảng 50µm - Loại đơn mode (single mode fiber): khi đường kính dây dẫn bằng bước sóng thì cáp quang giống như một ống dẫn sóng, không có hiện tượng phản xạ nhưng chỉ cho một tia đi. Loại này có đường kính khoản 8µm và phải dùng diode laser. Cáp quang đa mode có thể cho phép truyền xa tới hàng trăm km mà không cần phải khuyếch đại. (a) Cáp quang đơn mode (b) Đa mode không thẩm thấu (c) Đa mode thẩm thấu Hình 3-8: Các loại cáp quang ThS. Nguyễn Hứa Duy Khang 39
  43. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối Trong đơn mode: chiết suất n2 > n1. Tia laser có bước sóng từ 5 đến 850µm được tập trung về một hướng. Các sợi loại này cho phép tốc độ bit cao nhưng khó xử lý và phức tạp trong các thao tác nối kết. Trong đa mode không thẩm thấu: Các tia sáng di chuyển bằng cách phản xạ giữa bề mặt của 2 môi trường có chiết suất khác nhau (n2>n1) và mất nhiều thời gian hơn để các sóng di chuyển so với chế độ đơn. Độ suy giảm đường truyền từ 30dB/km đối với các loại cáp thủy tinh và từ 100dB/km đối với loại cáp bằng chất dẽo. Với đa mode bị thẩm thấu: Chiết suất tăng dần từ trung tâm về vỏ của ống. Vì thế sự phản xạ trong trường hợp này thì rất nhẹ nhàng. Từ cách đây nhiều năm người ta có thể thực hiện đa hợp trên cùng một sợi quang nhiều thông tin bằng cách dùng các sóng có độ dài khác nhau. Kỹ thuật này được gọi là WDM (Wavelength Division Multiplexing). 1.2. Kênh truyền vô tuyến (Radio) Kênh truyền vô tuyến thì thật sự tiện lợi cho tất cả chúng ta, đặc biệt ở những địa hình mà kênh truyền hữu tuyến không thể thực hiện được hoặc phải tốn nhiều chi phí (rừng rậm, hải đảo, miền núi). Kênh truyền vô tuyến truyền tải thông tin ở tốc độ ánh sáng. Gọi: - c là tốc độ ánh sáng; f là tần số của tín hiệu sóng ; λ là độ dài sóng. c  f Tín hiệu có độ dài sóng càng lớn thì khoảng cách truyền càng xa mà không bị suy giảm, ngược lại những tín hiệu có tần số càng cao thì có độ phát tán càng thấp. Hình 3- 9 mô tả phổ của sóng điện tử được dùng cho truyền dữ liệu. Khoảng tần số càng cao càng truyền tải được nhiều thông tin. Hình 3-9: Phân bổ tần số điện từ trên kênh truyền vô tuyến 2. Các thiết bị kết nối 2.1. Card giao tiếp mạng (NIC) Các chức năng của mạng Ethernet chỉ liên quan đến tầng một và tầng hai trong mô hình tham khảo OSI, cho nên chúng thông thường được cài đặt trong Card giao tiếp ThS. Nguyễn Hứa Duy Khang 40
  44. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối mạng (NIC-Network Interface Card) được cắm vào bản mạch chính (motherboard) của máy tính. Khi chọn lựa một card mạng cần chú ý các vấn đề sau: - Chuẩn khe cắm (slot) thiết bị ngoại vi được hỗ trợ bởi bản mạch chính: Các máy tính cá nhân hiện đại thông thường hỗ trợ loại khe cắm thiết bị ngoại vi theo chuẩn PCI. Các máy tính đời cũ có hỗ trợ chuẩn ISA. Khe cắm chuẩn ISA dài hơn so với khe cắm chuẩn PCI. Card mạng vì thế cũng có hai loại. Không thể sử dụng card mạng chuẩn PCI cắm vào khe cắm ISA và ngược lại. Chính vì thế khi mua card mạng cần lưu ý đến loại khe cắm. - Loại đầu nối vào dây cáp: Mỗi chuẩn mạng thường qui định loại dây dẫn được sử dụng. Để nối card mạng vào dây dẫn cần có loại đầu nối riêng tùy thuộc vào từng loại dây dẫn. Ví dụ, để nối vào dây cáp đồng trục gầy trên card mạng cần có đầu nối BNC; để nối với dây cáp xoắn đôi card mạng cần có đầu nối UTP, Cần chọn card mạng có đầu nối theo đúng loại dây dẫn do chuẩn mạng qui định. Card mạng là một thiết bị ngoại vi, vì thế bạn cần lưu ý đến các thông số xác định địa chỉ của nó như số hiệu ngắt (Interrupt), số hiệu cổng (port) và địa chỉ nền (Base address). Cần phải đặt chúng sao cho không trùng với các thiết bị khác đã có trên máy tính. Thông thường có phần mềm cài đặt (install/setup) đi kèm với card mạng khi mua, cho phép kiểm tra trạng thái của card mạng cũng như đặt lại các thông số trên. Mỗi card mạng có một địa chỉ vật lý là một dãy số 48 bits (thường được viết dưới dạng 12 số thập lục phân), gọi là địa chỉ MAC. Một card mạng có địa chỉ MAC riêng, không trùng lấp lẫn nhau. Chúng được các nhà sản xuất cài vào khi sản xuất. 2.2. Repeater Repeater là loại thiết bị phần cứng đơn giản nhất trong các thiết bị liên kết mạng, nó được hoạt động trong tầng vật lý của mô hình hệ thống mở OSI. Repeater dùng để nối 2 mạng giống nhau hoặc các phần một mạng cùng có một nghi thức và một cấu hình. Khi Repeater nhận được một tín hiệu từ một phía của mạng thì nó sẽ phát tiếp vào phía kia của mạng. Hình 3-10: Mô hình liên kết mạng của Repeater. Hình 3-11: Hoạt động của bộ tiếp sức trong mô hình OSI ThS. Nguyễn Hứa Duy Khang 41
  45. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối Repeater không có xử lý tín hiệu mà nó chỉ loại bỏ các tín hiệu méo, nhiễu, khuếch đại tín hiệu đã bị suy hao (vì đã được phát với khoảng cách xa) và khôi phục lại tín hiệu ban đầu. Việc sử dụng Repeater đã làm tăng thêm chiều dài của mạng. Hiện nay có hai loại Repeater đang được sử dụng là Repeater điện và Repeater điện quang. 2.2.1 Repeater điện Repeater điện nối với đường dây điện ở cả hai phía của nó, nó nhận tín hiệu điện từ một phía và phát lại về phía kia. Khi một mạng sử dụng Repeater điện để nối các phần của mạng lại thì có thể làm tăng khoảng cách của mạng, nhưng khoảng cách đó luôn bị hạn chế bởi một khoảng cách tối đa do độ trễ của tín hiệu. Ví dụ với mạng sử dụng cáp đồng trục 50 thì khoảng cách tối đa là 2.8 km, khoảng cách đó không thể kéo thêm cho dù sử dụng thêm Repeater. 2.2.2. Repeater điện quang Repeater điện quang liên kết với một đầu cáp quang và một đầu là cáp điện, nó chuyển một tín hiệu điện từ cáp điện ra tín hiệu quang để phát trên cáp quang và ngược lại. Việc sử dụng Repeater điện quang cũng làm tăng thêm chiều dài của mạng. Việc sử dụng Repeater không thay đổi nội dung các tín hiện đi qua nên nó chỉ được dùng để nối hai mạng có cùng giao thức truyền thông (như hai mạng Ethernet hay hai mạng Token ring) nhưng không thể nối hai mạng có giao thức truyền thông khác nhau (như một mạng Ethernet và một mạng Token ring). Thêm nữa Repeater không làm thay đổi khối lượng chuyển vận trên mạng nên việc sử dụng không tính toán nó trên mạng lớn sẽ hạn chế hiệu năng của mạng. Khi lưa chọn sử dụng Repeater cần chú ý lựa chọn loại có tốc độ chuyển vận phù hợp với tốc độ của mạng. 2.3. Hub Hub là một trong những thiết bị kết nối quan trọng nhất của LAN, đây là điểm kết nối dây trung tâm của mạng, tất cả các trạm trên mạng LAN được kết nối thông qua HUB có dạng hình sao. Một HUB thông thường có nhiều cổng nối với người sử dụng để gắn máy tính và các thiết bị ngoại vi. Mỗi cổng hỗ trợ một bộ kết nối dùng cặp dây xoắn 10BASE-T từ mỗi trạm của mạng. Khi gói tín hiệu Ethernet được truyền từ một trạm tới HUB, nó được lặp lại trên tất cả các cổng khác của HUB. Các HUB thông minh có thể định dạng, kiểm tra, cho phép hoặc không cho phép bởi người điều hành mạng từ trung tâm quản lý HUB. Có 3 loại HUB: - HUB đơn (Stand alone hub): - HUB phân tầng (stackable hub): - HUB module (Modular Hub) 2.3.1 Hub thụ động (Passive Hub): Hub bị động không chứa các linh kiện điện tử và cũng không xử lý các tín hiệu dữ liệu, nó có chức năng duy nhất là tổ hợp các tín hiệu từ một số đoạn cáp mạng. Khoảng cách giữa một máy tính và Hub không thể lớn hơn một nửa khoảng cách tối đa cho phép giữa 2 máy tính trên mạng (ví dụ khoảng cách tối đa cho phép giữa 2 máy ThS. Nguyễn Hứa Duy Khang 42
  46. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối tính của mạng là 200m thì khoảng cách tối đa giữa một máy tính và hub là 100m). Các mạng ARCnet thường dùng Hub bị động. 2.3.2. Hub chủ động (Active Hub): Hub chủ động có các linh kiện điện tử có thể khuyếch đại và xử lý các tín hiệu điện tử truyền giữa các thiết bị của mạng. Qúa trình xử lý tín hiệu được gọi là tái sinh tín hiệu, nó làm cho tín hiệu trở nên tốt hơn, ít nhạy cảm với lỗi do vậy khoảng cách giữa các thiết bị có thể tăng lên. Tuy nhiên những ưu điểm đó cũng kéo theo giá thành của Hub chủ động cao hơn nhiều so với Hub bị động. Các mạng Token ring có xu hướng dùng Hub chủ động. 2.3.3. Hub thông minh (Intelligent Hub): Cũng là Hub chủ động nhưng có thêm các chức năng mới so với loại trước, nó có thể có bộ vi xử lý của mình và bộ nhớ mà qua đó nó không chỉ cho phép điều khiển hoạt động thông qua các chương trình quản trị mạng mà nó có thể hoạt động như bộ tìm đường hay một cầu nối. Nó có thể cho phép tìm đường cho gói tin rất nhanh trên các cổng của nó, thay vì phát lại gói tin trên mọi cổng thì nó có thể chuyển mạch để phát trên một cổng có thể nối tới trạm đích. 2.4. Giới thiệu về liên mạng (Internetwork) Liên mạng là một tập hợp của nhiều mạng riêng lẻ được nối kết lại bởi các thiết bị nối mạng trung gian và chúng vận hành như chỉ là một mạng lớn. Người ta thực hiện liên mạng (Internetworking) để nối kết nhiều mạng lại với nhau nhờ đó mở rộng được phạm vi, số lượng máy tính trong mạng, cũng như cho phép các mạng được xây dựng theo các chuẩn khác nhau có thể giao tiếp được với nhau. Liên mạng có thể được thực hiện ở những tầng khác nhau, tùy thuộc vào mục đích cũng như thiết bị mà ta sử dụng. Tầng nối kết Mục đích Thiết bị sử dụng Tầng vật lý Tăng sốlượng và phạm vi mạng LAN HUB / Repeater Tầng liên kết Nối kết các mạng LAN có tầng vật lý Cầu nối (Bridge) dữ liệu khác nhau Phân chia vùng đụng độ để cải thiện hiệu Bộ chuyển mạch suất mạng (Switch) Tầng mạng Mở rộng kích thước và số lượng máy tính Router trong mạng, hình thành mạng WAN Các tầng còn lại Nối kết các ứng dụng lại với nhau Gateway Bảng 3-1: Mục đích sử dụng các thiết bị liên mạng Trong phần này ta sẽ xem xét các vấn đề liên quan đến việc liên mạng ở tầng 2, giới thiệu về cơ chế hoạt động, tính năng của cầu nối (Brigde). Nhược điểm của các thiết bị liên mạng ở tầng 1 (Repeater/HUB) Hình 3-12: Hạn chế của Repeater/HUB ThS. Nguyễn Hứa Duy Khang 43
  47. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối Xét một liên mạng gồm 2 nhánh mạng LAN1 và LAN2 nối lại với nhau bằng một Repeater. Giả sử máy N2 gởi cho N1 một Frame thông tin. Frame được lan truyền trên LAN1 và đến cổng 1 của Repeater dưới dạng một chuỗi các bits. Repeater sẽ khuếch đại chuỗi các bits nhận được từ cổng 1 và chuyển chúng sang cổng 2. Điều này vô tình đã chuyển cả khung N2 gởi cho N1 sang LAN2. Trên LAN1, N1 nhận toàn bộ Frame. Trên LAN2 không có máy trạm nào nhận Frame cả. Tại thời điểm đó, nếu N5 có nhu cầu gởi khung cho N4 thì nó sẽ không thực hiện được vì đường truyền đang bị bận. Ta nhận thấy rằng, Frame N2 gởi cho N1 không cần thiết phải gởi sang LAN 2 để tránh lãng phí đường truyền trên LAN 2. Tuy nhiên, do Repeater hoạt động ở tầng 1, nó không hiểu Frame là gì, nó sẽ chuyển đi mọi thứ mà nó nhận được sang các cổng còn lại. Liên mạng bằng Repeater hay Hub sẽ làm tăng vùng đụng độ của mạng, khả năng đụng độ khi truyền tin của các máy tính sẽ tăng lên, hiệu năng mạng sẽ giảm xuống. 2.5. Cầu nối - Bridge Bây giờ ta thay thế Repeater bằng một Bridge. Khi Frame N2 gởi cho N1 đến công 1 của Bridge nó phân tích và thấy rằng không cần thiết phải chuyển Frame sang LAN 2. Hình 3-13: Bridge khắc phục nhược điểm của Repeater/HUB Bridge là một thiết bị hoạt động ở tầng 2 trong mô hình OSI. Bridge làm nhiệm vụ chuyển tiếp các khung từ nhánh mạng này sang nhánh mạng khác. Điều quan trọng là Bridge « thông minh », nó chuyển frame một cách có chọn lọc dựa vào địa chỉ MAC của các máy tính. Bridge còn cho phép các mạng có tầng vật lý khác nhau có thể giao tiếp được với nhau. Bridge chia liên mạng ra thành những vùng đụng độ nhỏ, nhờ đó cải thiện được hiệu năng của liên mạng tốt hơn so với liên mạng bằng Repeater hay Hub. Có thể phân Bridge thành 3 loại: Bridge trong suốt, Bridge xác định đường đi từ nguồn và Bridge trộn lẫn. 2.5.1 Cầu nối trong suốt (Transparent Bridge): Cầu nối trong suốt được phát triển lần đầu tiên bởi Digital Equipment Corporation vào những năm đầu thập niên 80. Digital đệ trình phát minh của mình cho IEEE và được đưa vào chuẩn IEEE 802.1. Cầu nối trong suốt được sử dụng để nối các mạng Ethernet/Fast Ethernet lại với nhau. Người ta gọi là cầu nối trong suốt bởi vì sự hiện diện và hoạt động của nó thì trong suốt với các máy trạm. Khi liên mạng bằng cầu nối trong suốt, các máy trạm không cần phải cấu hình gì thêm để có thể truyền tải thông tin qua liên mạng. Khi cầu nối trong suốt được mở điện, nó bắt đầu học vị trí của các máy tính trên mạng bằng cách phân tích địa chỉ máy gởi của các khung mà nó nhận được từ các cổng của mình. Ví dụ, nếu cầu nối nhận được một khung từ cổng số 1 do máy A gởi, nó sẽ kết luận rằng máy A có thể đến được nếu đi ra hướng cổng 1 của nó. Dựa trên tiến trình này cầu nối xây dựng được một Bảng địa chỉ cục bộ (Local address table) mô tả địa chỉ của các máy tính so với các cổng của nó. ThS. Nguyễn Hứa Duy Khang 44
  48. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối Địa chỉ máy tính (Địa chỉ MAC) Cổng hướng đến máy tính 00-2C-A3-4F-EE-07 1 00-2C-A3-5D-5C-2F 2 Bảng 3-2: Bảng địa chỉ cục bộ của cầu nối Cầu nối sử dụng bảng địa chỉ cục bộ này làm cơ sở cho việc chuyển tiếp khung. Khi khung đến một cổng của cầu nối, cầu nối sẽ đọc 6 bytes đầu tiên của khung để xác định địa chỉ máy nhận khung. Nó sẽ tìm địa chỉ này trong bảng địa chỉ cục bộ và sẽ ứng xử theo một trong các trường hợp sau: - Nếu máy nhận nằm cùng một cổng với cổng đã nhận khung, cầu nối sẽ bỏ qua khung vì biết rằng máy nhận đã nhận được khung. - Nếu máy nhận nằm trên một cổng khác với cổng đã nhận khung, cầu nối sẽ chuyển khung sang cổng có máy nhận. - Nếu không tìm thấy địa chỉ máy nhận trong bảng địa chỉ, cầu nối sẽ gởi khung đến tất cả các cổng còn lại của nó, trừ cổng đã nhận khung. Trong mọi trường hợp, cầu nối đều cập nhật vị trí của máy gởi khung vào trong bảng địa chỉ cục bộ. Cầu nối trong suốt thành công trong việc phân chia mạng thành những vùng đụng độ riêng rời. Đặc biệt khi quá trình gởi dữ liệu diễn ra giữa hai máy tính nằm về cùng một hướng cổng của cầu nối, cầu nối sẽ lọc không cho luồng giao thông này ảnh hưởng đến các nhánh mạng trên các cổng còn lại. Nhờ điều này cầu nối trong suốt cho phép cải thiện được băng thông trong liên mạng. 2.5.2. Cầu nối xác định đường đi từ nguồn (Source Routing Bridge): Cầu nối xác định đường đi từ nguồn (SRB-Source Route Bridge) được phát triển bởi IBM và được đệ trình lên ủy ban IEEE 802.5 như là một giải pháp để nối các mạng Token Ring lại với nhau. Cầu nối SRB được gọi tên như thế bởi vì chúng qui định rằng: đường đi đầy đủ từ máy tính gởi đến máy nhận phải được đưa vào bên trong của khung dữ liệu gởi đi bởi máy gởi (Source). Các cầu nối SRB chỉ có nhiệm vụ lưu và chuyển các khung như đã được chỉ dẫn bởi đường đi được lưu trong trong khung. Xét một liên mạng gồm 4 mạng Token Ring được nối lại với nhau bằng 4 cầu nối SRB như hình 3-14 Giả sử rằng máy X muốn gởi một khung dữ liệu cho máy Y. Đầu tiên X chưa biết được Y có nằm cùng LAN với nó hay không. Để xác định điều này, X gởi một Khung kiểm tra (Test Frame). Nếu khung kiểm tra trở về X mà không có dấu hiệu đã nhận của Y, X sẽ kết luận rằng Y nằm trên một nhánh mạng khác. Để xác định chính xác vị trí của máy Y trên mạng ở xa, X gởi một Khung thăm dò (Explorer Frame). Mỗi cầu nối khi nhận được khung thăm dò (Bridge 1 và Bridge 2 trong trường hợp này) sẽ copy khung và chuyển nó sang tất cả các cổng còn lại. Thông tin về đường đi được thêm vào khung thăm dò khi chúng đi qua liên mạng. Khi các khung thăm dò của X đến được Y, Y gởi lại các khung trả lời cho từng khung mà nó ThS. Nguyễn Hứa Duy Khang 45
  49. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối nhận được theo đường đi đã thu thập được trong khung thăm dò. X nhận được nhiều khung trả lời từ Y với nhiều đường đi khác nhau. X sẽ chọn một trong số đường đi này, theo một tiêu chuẩn nào đó. Thông thường đường đi của khung trả lời đầu tiên sẽ được chọn vì đây chính là đường đi ngắn nhất trong số các đường đi (trở về nhanh nhất). Hình 3-14: Cầu nối trong mạng Token Ring Sau khi đường đi đã được xác định, nó được đưa vào các khung dữ liệu gởi cho Y trong trường thông tin về đường đi (RIF- Routing Information Field). RIF chỉ được sử dụng đến đối với các khung gởi ra bên ngoài LAN. Hình 3-15 : Cấu trúc của RIF trong khung 2.5.3. Cầu nối trộn lẫn (Mixed Media Bridge): Cầu nối trong suốt được dùng để nối các mạng Ethernet lại với nhau. Cầu nối xác định đường đi từ nguồn dùng để nối các mạng Token Ring. Để nối hai mạng Ethernet và Token Ring lại với nhau, người ta dùng loại cầu nối thứ ba, đó là cầu nối trộn lẫn đường truyền. Cầu nối trộn lẫn đường truyền có hai loại: - Cầu nối biên dịch (Translational Bridge) - Cầu nối xác định đường đi từ nguồn trong suốt (Source-Route-Transparence Bridge) ThS. Nguyễn Hứa Duy Khang 46
  50. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối 2.6. Bộ chuyển mạch - Switch LAN Switch là một thiết bị hoạt động ở tầng 2, có đầy đủ tất cả các tính năng của một cầu nối trong suốt như: - Học vị trí các máy tính trên mạng - Chuyển tiếp khung từ nhánh mạng này sang nhánh mạng khác một cách có chọn lọc Hình 3-16: Nối mạng bằng switch Ngoài ra Switch còn hỗ trợ thêm nhiều tính năng mới như: - Hỗ trợ đa giao tiếp đồng thời: Cho phép nhiều cặp giao tiếp diễn ra một cách đồng thời nhờ đó tăng được băng thông trên toàn mạng. Hình 3-17: Switch hỗ trợ đa giao tiếp đồng thời - Hỗ trợ giao tiếp song công (Full-duplex communication): Tiến trình gởi khung và nhận khung có thể xảy ra đồng thời trên một cổng. Điều này làm tăng gấp đôi thông lượng tổng của cổng. Hình 3-18: Switch hỗ trợ chế độ giao tiếp song công - Điều hòa tốc độ kênh truyền: Cho phép các kênh truyền có tốc độ khác nhau giao tiếp được với nhau. Ví dụ, có thể hoán chuyển dữ liệu giữa một kênh truyền 10 Mbps và một kênh truyền 100 Mbps. ThS. Nguyễn Hứa Duy Khang 47
  51. Kỹ thuật mạng máy tính Chương 3: Kênh truyền và thiết bị kết nối 2.6.1. Kiến trúc của switch Switch được cấu tạo gồm hai thành phần cơ bản là: - Bộ nhớ làm Vùng đệm tính toán và Bảng địa chỉ (BAT-Buffer anh Address Table). - Giàn hoán chuyển (Switching Fabric) để tạo nối kết chéo đồng thời giữa các cổng Hình 3-19: Cấu trúc bên trong của switch 2.6.2. Các giải thuật hoán chuyển Việc chuyển tiếp khung từ nhánh mạng này sang nhánh mạng kia của switch có thể được thực hiện theo một trong 3 giải thuật hoán chuyển sau: 1. Giải thuật hoán chuyển lưu và chuyển tiếp (Store and Forward Switching) Khi khung đến một cổng của switch, toàn bộ khung sẽ được đọc vào trong bộ nhớ đệm và được kiểm tra lỗi. Khung sẽ bị bỏ đi nếu như có lỗi. Nếu khung không lỗi, switch sẽ xác định địa chỉ máy nhận khung và dò tìm trong bảng địa chỉ để xác định cổng hướng đến máy nhận. Kế tiếp sẽ chuyển tiếp khung ra cổng tương ứng. Giải thuật này có thời gian trì hoãn lớn do phải thực hiện thao tác kiểm tra khung. Tuy nhiên nó cho phép giao tiếp giữa hai kênh truyền khác tốc độ. 2. Giải thuật xuyên cắt (Cut-through) Khi khung đến một cổng của switch, nó chỉ đọc 6 bytes đầu tiên của khung (là địa chỉ MAC của máy nhận khung) vào bộ nhớ đệm. Kế tiếp nó sẽ tìm trong bảng địa chỉ để xác định cổng ra tương ứng với địa chỉ máy nhận và chuyển khung về hướng cổng này. Giải thuật cut-through có thời gian trì hoãn ngắn bởi vì nó thực hiện việc hoán chuyển khung ngay sau khi xác định được cổng hướng đến máy nhận. Tuy nhiên nó chuyển tiếp luôn cả các khung bị lỗi đến máy nhận. 3. Hoán chuyển tương thích (Adaptive – Switching) Giải thuật hoán chuyển tương thích nhằm tận dụng tối đa ưu điểm của hai giải thuật hoán chuyển Lưu và chuyển tiếp và giải thuật Xuyên cắt. Trong giải thuật này, người ta định nghĩa một ngưỡng lỗi cho phép. Đầu tiên, switch sẽ hoạt động theo giải thuật Xuyên cắt. Nếu tỉ lệ khung lỗi lớn hơn ngưỡng cho phép, switch sẽ chuyển sang chế độ hoạt động theo giải thuật Lưu và chuyển tiếp. Ngược lại khi tỷ lệ khung lỗi hạ xuống nhỏ hơn ngưỡng, switch lại chuyển về hoạt động theo giải thuật Xuyên cắt. 2.6.3. Thông lượng tổng (Aggregate throughput) Thông lượng tổng là một đại lượng dùng để đo hiệu suất của switch. Nó được định nghĩa là lượng dữ liệu chuyển qua switch trong một giây. Nó có thể được tính bằng tích giữa số nối kết tối đa đồng thời trong một giây nhân với băng thông của từng nối kết. Như vậy, thông lượng tổng của một switch có N cổng sử dụng, mỗi cổng có băng thông là B được tính theo công thức sau: Aggregate throughput = (N div 2) * (B*2) = N*B ThS. Nguyễn Hứa Duy Khang 48