Giáo trình Thiết kế và xây dựng mạng LAN và WAN (Phần 1)

pdf 30 trang hapham 1800
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Thiết kế và xây dựng mạng LAN và WAN (Phần 1)", để 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_thiet_ke_va_xay_dung_mang_lan_va_wan.pdf

Nội dung text: Giáo trình Thiết kế và xây dựng mạng LAN và WAN (Phần 1)

  1. TRUNG TÂM KHOA HỌC TỰ NHIÊN VÀ CÔNG NGHỆ QUỐC GIA VIỆN CÔNG NGHỆ THÔNG TIN GIÁO TRÌNH THIẾT KẾ VÀ XÂY DỰNG MẠNG LAN VÀ WAN Hà nội, 01/2004
  2. MỤC LỤC 1 Chương I - Tổng quan Mạng Máy Tính 1 1.1 Kiến thức cơ bản 1 1.1.1 Sơ lược lịch sử phát triển: 1 1.1.2 Khái niệm cơ bản 1 1.1.3 Phân biệt các loại mạng 2 1.1.4 Mạng toàn cầu Internet: 4 1.1.5 Mô hình OSI (Open Systems Interconnect) 4 1.1.5.1 Các giao thức trong mô hình OSI 5 1.1.5.2 Các chức năng chủ yếu của các tầng của mô hình OSI 6 1.1.5.3 Luồng dữ liệu trong OSI 11 1.1.6 Một số bộ giao thức kết nối mạng 12 1.1.6.1 TCP/IP 12 1.1.6.2 NetBEUI 12 1.1.6.3 IPX/SPX 12 1.1.6.4 DECnet 12 1.2 Bộ giao thức TCP/IP 12 1.2.1 Tổng quan về bộ giao thức TCP/IP 12 1.2.2 Một số giao thức cơ bản trong bộ giao thức TCP/IP 15 1.2.2.1 Giao thức liên mạng IP (Internet Protocol): 15 1.2.2.2 Giao thức UDP (User Datagram Protocol) 27 1.2.2.3 Giao thức TCP (Transmission Control Protocol) 28 1.3 Giới thiệu một số các dịch vụ cơ bản trên mạng 30 1.3.1 Dịch vụ truy nhập từ xa Telnet 30 1.3.2 Dịch vụ truyền tệp (FTP) 30 1.3.3 Dịch vụ Gopher 31 1.3.4 Dịch vụ WAIS 31 1.3.5 Dịch vụ World Wide Web 31 1.3.6 Dịch vụ thư điện tử (E-Mail) 32 1.4 Tóm tắt chương 1 33 2 Chương II - Mạng LAN và thiết kế mạng LAN 35 2.1 Kiến thức cơ bản về LAN 35 2.1.1 Cấu trúc tôpô của mạng 35 I
  3. 2.1.1.1 Mạng dạng hình sao (Star topology). 35 2.1.1.2 Mạng hình tuyến (Bus Topology). 36 2.1.1.3 Mạng dạng vòng (Ring Topology). 37 2.1.1.4 Mạng dạng kết hợp. 37 2.1.2 Các phương thức truy nhập đường truyền 38 2.1.2.1 Giao thức CSMA/CD (Carrier Sense Multiple Access with Collision Detection) 38 2.1.2.2 Giao thức truyền thẻ bài (Token passing) 38 2.1.2.3 Giao thức FDDI. 39 2.1.3 Các loại đường truyền và các chuẩn của chúng 40 2.1.4 Hệ thống cáp mạng dùng cho LAN. 42 2.1.4.1 Cáp xoắn 42 2.1.4.2 Cáp đồng trục 42 2.1.4.3 Cáp sợi quang (Fiber - Optic Cable) 43 2.1.4.4 Hệ thống cáp có cấu trúc theo chuẩn TIA/EIA 568 44 2.1.4.5 Các yêu cầu cho một hệ thống cáp 46 2.1.5 Các thiết bị dùng để kết nối LAN. 47 2.1.5.1 Bộ lặp tín hiệu (Repeater) 47 2.1.5.2 Bộ tập trung (Hub) 48 2.1.5.3 Cầu (Bridge) 49 2.1.5.4 Bộ chuyển mạch (Switch) 53 2.1.5.5 Bộ định tuyến(Router) 53 2.1.5.6 Bộ chuyển mạch có định tuyến (Layer 3 switch) 57 2.1.6 Các hệ điều hành mạng 57 2.2 Công nghệ Ethernet 58 2.2.1 Giới thiệu chung về Ethernet 58 2.2.2 Các đặc tính chung của Ethernet 59 2.2.2.1 Cấu trúc khung tin Ethernet 59 2.2.2.2 Cấu trúc địa chỉ Ethernet 60 2.2.2.3 Các loại khung Ethernet 60 2.2.2.4 Hoạt động của Ethernet 61 2.2.3 Các loại mạng Ethernet 64 2.3 Các kỹ thuật chuyển mạch trong LAN 65 2.3.1 Phân đoạn mạng trong LAN 65 II
  4. 2.3.1.1 Mục đích của phân đoạn mạng 65 2.3.1.2 Phân đoạn mạng bằng Repeater 65 2.3.1.3 Phân đoạn mạng bằng cầu nối 67 2.3.1.4 Phân đoạn mạng bằng router 68 2.3.1.5 Phân đoạn mạng bằng bộ chuyển mạch 69 2.3.2 Các chế độ chuyển mạch trong LAN 70 2.3.2.1 Chuyển mạch lưu-và-chuyển ( store- and- forward switching )70 2.3.2.2 Chuyển mạch ngay (cut-through switching) 70 2.3.3 Mạng LAN ảo (VLAN) 71 2.3.3.1 Tạo mạng LAN ảo với một bộ chuyển mạch 71 2.3.3.2 Tạo mạng LAN ảo với nhiều bộ chuyển mạch 72 2.3.3.3 Cách xây dựng mạng LAN ảo 72 2.3.3.4 Ưu điểm và nhược điểm của mạng LAN ảo 73 2.4 Thiết kế mạng LAN 74 2.4.1 Mô hình cơ bản. 74 2.4.1.1 Mô hình phân cấp (Hierarchical models) 74 2.4.1.2 Mô hình an ninh-an toàn(Secure models) 75 2.4.2 Các yêu cầu thiết kế 75 2.4.3 Các bước thiết kế 76 2.5 Một số mạng LAN mẫu 77 2.5.1 Xây dựng mạng LAN quy mô một toà nhà 77 2.5.1.1 Hệ thống mạng bao gồm: 77 2.5.1.2 Phân tích yêu cầu: 78 2.5.1.3 Thiết kế hệ thống 79 2.5.2 Xây dựng hệ thống tường lửa kết nối mạng với Internet 84 2.6 Tóm tắt chương 2 85 3 Chương III – Mạng WAN và thiết kế mạng WAN 86 3.1 Các kiến thức cơ bản về WAN 86 3.1.1 Khái niệm về WAN 86 3.1.1.1 Mạng WAN là gì ? 86 3.1.1.2 Các lợi ích và chi phí khi kết nối WAN. 87 3.1.1.3 Những điểm cần chú ý khi thiết kế WAN 88 3.1.2 Một số công nghệ kết nối cơ bản dùng cho WAN 89 3.1.2.1 Mạng chuyển mạch (Circuit Swiching Network) 89 III
  5. 3.1.2.2 Mạng chuyển gói (Packet Switching Network) 105 3.1.2.3 Kết nối WAN dùng VPN 115 3.1.3 Giao thức kết nối WAN cơ bản trong mạng TCP/IP. 116 3.1.3.1 Giao thức PPP 116 3.1.4 Các thiết bị dùng cho kết nối WAN 118 3.1.4.1 Router (Bộ định tuyến) 118 3.1.4.2 Chuyển mạch WAN 118 3.1.4.3 Access Server 119 3.1.4.4 Modem 120 3.1.4.5 CSU/DSU 123 3.1.4.6 ISDN terminal Adaptor 123 3.1.5 Đánh giá và so sánh một số công nghệ dùng cho kết nối WAN 124 3.2 Thiết kế mạng WAN. 125 3.2.1 Các mô hình WAN 125 3.2.1.1 Mô hình phân cấp 125 3.2.1.2 Các mô hình tôpô 127 3.2.2 Các mô hình an ninh mạng. 127 3.2.2.1 An ninh-an toàn mạng là gì ? 127 3.2.2.2 Xây dựng mô hình an ninh-an toàn khi kết nối WAN 130 3.2.2.3 Một số công cụ triển khai mô hình an toàn-an ninh 131 3.2.2.4 Bảo mật thông tin trên mạng 136 3.3 Phân tích một số mạng WAN mẫu 140 3.4 Tóm tắt chương 3 157 4 Kết luận. 158 5 Tài liệu tham khảo 159 IV
  6. 1 Chương I - Tổng quan Mạng Máy Tính 1.1 Kiến thức cơ bản 1.1.1 Sơ lược lịch sử phát triển: Vào giữa những năm 50, những hệ thống máy tính đầu tiên ra đời sử dụng các bóng đèn điện tử nên kích thước rất cồng kềnh và tiêu tốn nhiều năng lượng. Việc nhập dữ liệu vào máy tính được thực hiện thông qua các bìa đục lỗ và kết quả được đưa ra máy in, điều này làm mất rất nhiều thời gian và bất tiện cho người sử dụng. Đến giữa những năm 60, cùng với sự phát triển của các ứng dụng trên máy tính và nhu cầu trao đổi thông tin với nhau, một số nhà sản xuất máy tính đã nghiên cứa chế tạo thành công các thiết bị truy cập từ xa tới các máy tính của họ, và đây chính là những dạng sơ khai của hệ thống mạng máy tính. Đến đầu những năm 70, hệ thống thiết bị đầu cuối 3270 của IBM ra đời cho phép mở rộng khả năng tính toán của các trung tâm máy tính đến các vùng ở xa. Đến giữa những năm 70, IBM đã giới thiệu một loạt các thiết bị đầu cuối được thiết kế chế tạo cho lĩnh vực ngân hàng, thương mại. Thông qua dây cáp mạng các thiết bị đầu cuối có thể truy cập cùng một lúc đến một máy tính dùng chung. Đến năm 1977, công ty Datapoint Corporation đã tung ra thị trường hệ điều hành mạng của mình là “Attache Resource Computer Network” (Arcnet) cho phép liên kết các máy tính và các thiết bị đầu cuối lại bằng dây cáp mạng, và đó chính là hệ điều hành mạng đầu tiên. 1.1.2 Khái niệm cơ bản Nói một cách cơ bản, mạng máy tính là hai hay nhiều máy tính được kết nối với nhau theo một cách nào đó sao cho chúng có thể trao đổi thông tin qua lại với nhau. Hình 1-1: Mô hình mạng cơ bản Mạng máy tính ra đời xuất phát từ nhu cầu muốn chia sẻ và dùng chung dữ liệu. Không có hệ thống mạng thì dữ liệu trên các máy tính độc lập muốn chia sẻ với nhau phải thông qua việc in ấn hay sao chép qua đĩa mềm, CD ROM, điều này 1
  7. gây rất nhiều bất tiện cho người dùng. Các máy tính được kết nối thành mạng cho phép các khả năng: • Sử dụng chung các công cụ tiện ích • Chia sẻ kho dữ liệu dùng chung • Tăng độ tin cậy của hệ thống • Trao đổi thông điệp, hình ảnh, • Dùng chung các thiết bị ngoại vi (máy in, máy vẽ, Fax, modem ) • Giảm thiểu chi phí và thời gian đi lại. 1.1.3 Phân biệt các loại mạng ¾ Phương thức kết nối mạng được sử dụng chủ yếu trong liên kết mạng: có hai phương thức chủ yếu, đó là điểm - điểm và điểm - nhiều điểm. − Với phương thức "điểm - đ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. Mỗi máy tính có thể truyền và nhận trực tiếp dữ liệu hoặc có thể làm trung gian như lưu trữ những dữ liệu mà nó nhận được rồi sau đó chuyển tiếp dữ liệu đi cho một máy khác để dữ liệu đó đạt tới đích. − Với phương thức "điểm - nhiều điểm", tất cả các trạm phân chia chung một đường truyền vật lý. Dữ liệu được gửi đi từ một máy tính sẽ có thể được tiếp nhận bởi tất cả các máy tính còn lại, bởi vậy cần chỉ ra điạ chỉ đích của dữ liệu để mỗi máy tính căn cứ vào đó kiểm tra xem dữ liệu có phải dành cho mình không nếu đúng thì nhận còn nếu không thì bỏ qua. ¾ Phân loại mạng máy tính theo vùng địa lý: − GAN (Global Area Network) kết nối máy tính từ các châu lục khác nhau. Thông thường kết nối này được thực hiện thông qua mạng viễn thông và vệ tinh. − WAN (Wide Area Network) - Mạng diện rộng, kết nối máy tính trong nội bộ các quốc gia hay giữa các quốc gia trong cùng một châu lục. Thông thường kết nối này được thực hiện thông qua mạng viễn thông. Các WAN có thể được kết nối với nhau thành GAN hay tự nó đã là GAN. − MAN (Metropolitan Area Network) kết nối các máy tính trong phạm vi một thành phố. Kết nối này được thực hiện thông qua các môi trường truyền thông tốc độ cao (50-100 Mbit/s). 2
  8. − LAN (Local Area Network) - Mạng cục bộ, kết nối các máy tính trong một khu vực bán kính hẹp thông thường khoảng vài trǎm mét. Kết nối được thực hiện thông qua các môi trường truyền thông tốc độ cao ví dụ cáp đồng trục thay cáp quang. LAN thường được sử dụng trong nội bộ một cơ quan/tổ chức Các LAN có thể được kết nối với nhau thành WAN. ¾ Phân loại mạng máy tính theo tôpô − Mạng dạng hình sao (Star topology): Ở dạng hình sao, tất cả các trạm được nối vào một thiết bị trung tâm có nhiệm vụ nhận tín hiệu từ các trạm và chuyển tín hiệu đến trạm đích với phương thức kết nối là phương thức "điểm - điểm". − Mạng hình tuyến (Bus Topology): Trong dạng hình tuyến, các máy tính đều được nối vào một đường dây truyền chính (bus). Đường truyền chính này được giới hạn hai đầu bởi một loại đầu nối đặc biệt gọi là terminator (dùng để nhận biết là đầu cuối để kết thúc đường truyền tại đây). Mỗi trạm được nối vào bus qua một đầu nối chữ T (T_connector) hoặc một bộ thu phát (transceiver). − Mạng dạng vòng (Ring Topology): Các máy tính được liên kết với nhau thành một vòng tròn theo phương thức "điểm - điểm", qua đó mỗi một trạm có thể nhận và truyền dữ liệu theo vòng một chiều và dữ liệu được truyền theo từng gói một. − Mạng dạng kết hợp: trong thực tế tuỳ theo yêu cầu và mục đích cụ thể ta có thể thiết kế mạng kết hợp các dạng sao, vòng, tuyến để tận dụng các điểm mạnh của mỗi dạng. ¾ Phân loại mạng theo chức năng − Mạng Client-Server: một hay một số máy tính được thiết lập để cung cấp các dịch vụ như file server, mail server, Web server, Printer server, Các máy tính được thiết lập để cung cấp các dịch vụ được gọi là Server, còn các máy tính truy cập và sử dụng dịch vụ thì được gọi là Client. − Mạng ngang hàng (Peer-to-Peer): các máy tính trong mạng có thể hoạt động vừa như một Client vừa như một Server. − Mạng kết hợp: Các mạng máy tính thường được thiết lập theo cả hai chức năng Client-Server và Peer-to-Peer. ¾ Phân biệt mạng LAN-WAN 3
  9. − Địa phương hoạt động o Mạng LAN sử dụng trong một khu vực địa lý nhỏ. o Mạng WAN cho phép kết nối các máy tính ở các khu vực địa lý khác nhau, trên một phạm vi rộng. − Tốc độ kết nối và tỉ lệ lỗi bit o Mạng LAN có tốc độ kết nối và độ tin cậy cao. o Mạng WAN có tốc độ kết nối không thể quá cao để đảm bảo tỉ lệ lỗi bit có thể chấp nhận được. − Phương thức truyền thông: o Mạng LAN chủ yếu sử dụng công nghệ Ethernet, Token Ring, ATM o Mạng WAN sử dụng nhiều công nghệ như Chuyển mạch vòng (Circuit Switching Network), chuyển mạch gói (Packet Switching Network), ATM (Cell relay), chuyển mạch khung (Frame Relay), 1.1.4 Mạng toàn cầu Internet: Mạng toàn cầu Internet là một tập hợp gồm hàng vạn mạng trên khắp thế giới. Mạng Internet bắt nguồn từ một thử nghiệm của Cục quản lý các dự án nghiên cứu tiên tiến (Advanced Research Projects Agency – ARPA) thuộc Bộ quốc phòng Mỹ đã kết nối thành công các mạng máy tính cho phép các trường đại học và các công ty tư nhân tham gia vào các dự án nghiên cứu Về cơ bản, Internet là một liên mạng máy tính giao tiếp dưới cùng một bộ giao thức TCP/IP (Transmission Control Protocol/Internet Protocol). Giao thức này cho phép mọi máy tính trên mạng giao tiếp với nhau một cách thống nhất giống như một ngôn ngũ quốc tế mà mọi người sử dụng để giao tiếp với nhau hàng ngày. Số lượng máy tính kết nối mạng và số lượng người truy cập vào mạng Internet trên toàn thế giới ngày càng tăng lên nhanh chóng, đặc biệt từ những năm 90 trở đi. Mạng Internet không chỉ cho phép chuyển tải thông tin nhanh chóng mà còn giúp cung cấp thông tin, nó cũng là diễn đàn và là thư viện toàn cầu đầu tiên. 1.1.5 Mô hình OSI (Open Systems Interconnect) Ở thời kỳ đầu của công nghệ nối mạng, việc gửi và nhận dữ liệu ngang qua mạng thường gây nhầm lẫn do các công ty lớn như IBM, Honeywell và Digital Equipment Corporation tự đề ra những tiêu chuẩn riêng cho hoạt động kết nối máy tính. 4
  10. Năm 1984, tổ chức Tiêu chuẩn hoá Quốc tế - ISO (International Standard Organization) chính thức đưa ra mô hình OSI (Open Systems Interconnection), là tập hợp các đặc điểm kỹ thuật mô tả kiến trúc mạng dành cho việc kết nối các thiết bị không cùng chủng loại. Mô hình OSI được chia thành 7 tầng, mỗi tầng bao gồm những hoạt động, thiết bị và giao thức mạng khác nhau. Hình 1-2: Mô hình OSI bảy tầng 1.1.5.1 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. − 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. 5
  11. − 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. Hình 1-3: Phương thức xác lập các gói tin trong 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. 1.1.5.2 Các chức năng chủ yếu của các tầng của mô hình OSI. ¾ Tầng Vật lý (Physical) Tầng vật lý (Physical layer) 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ý 6
  12. 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 baseT đị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. ¾ Tầng Liên kết dữ liệu (Data link) Tầng liên kết dữ liệu (data link layer) là tầng mà ở đó ý nghĩa được gán cho các bit đượ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 "điểm - điểm" và phương thức "điểm - điểm". Với phương thức "điểm - đ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 "điểm - điểm" tất cả các máy phân chia chung một đường truyền vật lý. 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. ¾ Tầng Mạng (Network) 7
  13. Tầng mạng (network layer) 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. 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 8
  14. 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. − 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. ¾ 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. ¾ 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ữ 9
  15. 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 đó. 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 một 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. ¾ Tầng Thể hiện (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ệ 10
  16. máy Motorola). Tầng thể hiện (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 thể hiện 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 thể hiệ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. ¾ Tầng Ứng dụng (Application) Tầng ứng dụng (Application layer) 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. 1.1.5.3 Luồng dữ liệu trong OSI Hình 1-4: luồng dữ liệu trong OSI (PDU: protocol data unit) 11
  17. 1.1.6 Một số bộ giao thức kết nối mạng 1.1.6.1 TCP/IP − Ưu thế chính của bộ giao thức này là khả năng liên kết hoạt động của nhiều loại máy tính khác nhau. − TCP/IP đã trở thành tiêu chuẩn thực tế cho kết nối liên mạng cũng như kết nối Internet toàn cầu. 1.1.6.2 NetBEUI − Bộ giao thức nhỏ, nhanh và hiệu quả được cung cấp theo các sản phẩm của hãng IBM, cũng như sự hỗ trợ của Microsoft. − Bất lợi chính của bộ giao thức này là không hỗ trợ định tuyến và sử dụng giới hạn ở mạng dựa vào Microsoft. 1.1.6.3 IPX/SPX − Đây là bộ giao thức sử dụng trong mạng Novell. − Ưu thế: nhỏ, nhanh và hiệu quả trên các mạng cục bộ đồng thời hỗ trợ khả năng định tuyến. 1.1.6.4 DECnet − Đây là bộ giao thức độc quyền của hãng Digital Equipment Corporation. − DECnet định nghĩa mô hình truyền thông qua mạng LAN, mạng MAN và WAN. Hỗ trợ khả năng định tuyến. 1.2 Bộ giao thức TCP/IP TCP/IP - Transmission Control Protocol/ Internet Protocol 1.2.1 Tổng quan về bộ giao thức TCP/IP TCP/IP là bộ giao thức cho phép kết nối các hệ thống mạng không đồng nhất với nhau. Ngày nay, TCP/IP được sử dụng rộng rãi trong các mạng cục bộ cũng như trên mạng Internet toàn cầu. TCP/IP được xem là giản lược của mô hình tham chiếu OSI với bốn tầng như sau: − Tầng liên kết mạng (Network Access Layer) − Tầng Internet (Internet Layer) − Tầng giao vận (Host-to-Host Transport Layer) − Tầng ứng dụng (Application Layer) 12
  18. Hình 1-5: Kiến trúc TCP/IP ¾ Tầng liên kết: Tầng liên kết (còn được gọi là tầng liên kết dữ liệu hay là tầng giao tiếp mạng) là tầng thấp nhất trong mô hình TCP/IP, bao gồm các thiết bị giao tiếp mạng và chương trình cung cấp các thông tin cần thiết để có thể hoạt động, truy nhập đường truyền vật lý qua thiết bị giao tiếp mạng đó. ¾ Tầng Internet: Tầng Internet (còn gọi là tầng mạng) xử lý qua trình truyền gói tin trên mạng. Các giao thức của tầng này bao gồm: IP (Internet Protocol), ICMP (Internet Control Message Protocol), IGMP (Internet Group Messages Protocol). ¾ Tầng giao vận: Tầng giao vận phụ trách luồng dữ liệu giữa hai trạm thực hiện các ứng dụng của tầng trên. Tầng này có hai giao thức chính: TCP (Transmission Control Protocol) và UDP (User Datagram Protocol) TCP cung cấp một luồng dữ liệu tin cậy giữa hai trạm, nó sử dụng các cơ chế như chia nhỏ các gói tin của tầng trên thành các gói tin có kích thước thích hợp cho tầng mạng bên dưới, báo nhận gói tin,đặt hạn chế thời gian time-out để đảm bảo bên nhận biết được các gói tin đã gửi đi. Do tầng này đảm bảo tính tin cậy, tầng trên sẽ không cần quan tâm đến nữa. UDP cung cấp một dịch vụ đơn giản hơn cho tầng ứng dụng. Nó chỉ gửi các gói dữ liệu từ trạm này tới trạm kia mà không đảm bảo các gói tin đến được tới đích. Các cơ chế đảm bảo độ tin cậy cần được thực hiện bởi tầng trên. ¾ Tầng ứng dụng: Tầng ứng dụng là tầng trên cùng của mô hình TCP/IP bao gồm các tiến trình và các ứng dụng cung cấp cho người sử dụng để truy cập mạng. Có rất nhiều ứng 13
  19. dụng được cung cấp trong tầng này, mà phổ biến là: Telnet: sử dụng trong việc truy cập mạng từ xa, FTP (File Transfer Protocol): dịch vụ truyền tệp, Email: dịch vụ thư tín điện tử, WWW (World Wide Web). Hình 1-6: Quá trình đóng/mở gói dữ liệu trong TCP/IP Cũng tương tự như trong mô hình OSI, khi truyền dữ liệu, quá trình tiến hành từ tầng trên xuống tầng dưới, qua mỗi tầng dữ liệu được thêm vào một thông tin điều khiển được gọi là phần header. Khi nhận dữ liệu thì quá trình xảy ra ngược lại, dữ liệu được truyền từ tầng dưới lên và qua mỗi tầng thì phần header tương ứng được lấy đi và khi đến tầng trên cùng thì dữ liệu không còn phần header nữa. Hình vẽ 1.7 cho ta thấy lược đồ dữ liệu qua các tầng. Trong hình vẽ này ta thấy tại các tầng khác nhau dữ liệu được mang những thuật ngữ khác nhau: − Trong tầng ứng dụng dữ liệu là các luồng được gọi là stream. − Trong tầng giao vận, đơn vị dữ liệu mà TCP gửi xuống tầng dưới gọi là TCP segment. − Trong tầng mạng, dữ liệu mà IP gửi tới tầng dưới được gọi là IP datagram. − Trong tầng liên kết, dữ liệu được truyền đi gọi là frame. 14
  20. Hình 1-7: Cấu trúc dữ liệu trong TCP/IP TCP/IP với OSI: mỗi tầng trong TCP/IP có thể là một hay nhiều tầng của OSI. Bảng sau chỉ rõ mối tương quan giữa các tầng trong mô hình TCP/IP với OSI OSI TCP/IP Physical Layer và Data link Layer Data link Layer Network Layer Internet Layer Transport Layer Transport Layer Session Layer, Presentation Layer, Application Layer Application Layer Sự khác nhau giữa TCP/IP và OSI chỉ là: − Tầng ứng dụng trong mô hình TCP/IP bao gồm luôn cả 3 tầng trên của mô hình OSI − Tầng giao vận trong mô hình TCP/IP không phải luôn đảm bảo độ tin cậy của việc truyển tin như ở trong tầng giao vận của mô hình OSI mà cho phép thêm một lựa chọn khác là UDP 1.2.2 Một số giao thức cơ bản trong bộ giao thức TCP/IP 1.2.2.1 Giao thức liên mạng IP (Internet Protocol): ¾ Giới thiệu chung Giao thức liên mạng IP là một trong những giao thức quan trọng nhất của bộ giao thức TCP/IP. Mục đích của giao thức liên mạng IP là cung cấp khả năng kết nối các mạng con thành liên mạng để truyền dữ liệu. IP là giao thức cung cấp dịch vụ phân phát datagram theo kiểu không liên kết và không tin cậy 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, không đảm bảo rằng IP 15
  21. datagram sẽ tới đích và không duy trì bất kỳ thông tin nào về những datagram đã gửi đi. Khuôn dạng đơn vị dữ liệu dùng trong IP được thể hiện trên hình vẽ 1-7 Hình 1-8: Khuôn dạng dữ liệu trong IP Ý nghĩa các tham số trong IP header: − Version (4 bit): chỉ phiên bản (version) hiện hành của IP được cài đặt. − IHL (4 bit): chỉ độ dài phần header tính theo đơn vị từ (word - 32 bit) − Type of Service (8 bit): đặc tả tham số về yêu cầu dịch vụ − Total length (16 bit): chỉ độ dài toàn bộ IP datagram tính theo byte. Dựa vào trường này và trường header length ta tính được vị trí bắt đầu của dữ liệu trong IP datagram. − Indentification (16 bit): là trường định danh, cùng các tham số khác như địa chỉ nguồn (Source address) và địa chỉ đích (Destination address) để định danh duy nhất cho mỗi datagram được gửi đi bởi 1 trạm. Thông thường phần định danh (Indentification) được tăng thêm 1 khi 1 datagram được gửi đi. − Flags (3 bit): các cờ, sử dụng trong khi phân đoạn các datagram. 012 0 DF MF Bit 0: reseved (chưa sử dụng, có giá trị 0) bit 1: ( DF ) = 0 (May fragment) = 1 (Don’t fragment) bit 2 : ( MF) =0 (Last fragment) =1 (More Fragment) 16
  22. − Fragment Offset (13 bit): chỉ vị trí của đoạn phân mảnh (Fragment) trong datagram tính theo đơn vị 64 bit. − TTL (8 bit): thiết lập thời gian tồn tại của datagram để tránh tình trạng datagram bị quẩn trên mạng. TTL thường có giá trị 32 hoặc 64 được giảm đi 1 khi dữ liệu đi qua mỗi router. Khi trường này bằng 0 datagram sẽ bị hủy bỏ và sẽ không báo lại cho trạm gửi. − Protocol (8 bit): chỉ giao thức tầng trên kế tiếp − Header checksum (16 bit): để kiểm soát lỗi cho vùng IP header. − Source address (32 bit): địa chỉ IP trạm nguồn − Destination address (32 bit): địa chỉ IP trạm đích − Option (độ dài thay đổi): khai báo các tùy chọn do người gửi yêu cầu, thường là: o Độ an toàn và bảo mật, o Bảng ghi tuyến mà datagram đã đi qua được ghi trên đường truyền, o Time stamp, o Xác định danh sách địa chỉ IP mà datagram phải qua nhưng datagram không bắt buộc phải truyền qua router định trước, o Xác định tuyến trong đó các router mà IP datagram phải được đi qua. ¾ Kiến trúc địa chỉ IP (IPv4) Địa chỉ IP (IPv4): Địa chỉ IP (IPv4) có độ dài 32 bit và được tách thành 4 vùng, mỗi vùng (mỗi vùng 1 byte) thường được biểu diễn dưới dạng thập phân và được cách nhau bởi dấu chấm (.). Ví dụ: 203.162.7.92. Địa chỉ IPv4 được chia thành 5 lớp A, B, C, D, E; trong đó 3 lớp địa chỉ A, B, C được dùng để cấp phát. Các lớp này được phân biệt bởi các bit đầu tiên trong địa chỉ. Lớp A (0) cho phép định danh tới 126 mạng với tối đa 16 triệu trạm trên mỗi mạng. Lớp này thường được dùng cho các mạng có số trạm cực lớn (thường dành cho các công ty cung cấp dịch vụ lớn tại Mỹ) và rất khó được cấp. Lớp B (10) cho phép định danh tới 16384 mạng với tối đa 65534 trạm trên mỗi mạng. Lớp địa chỉ này phù hợp với nhiều yêu cầu nên được cấp phát nhiều nên hiện nay đã trở nên khan hiếm. Lớp C (110) cho phép định danh tới 2 triệu mạng với tối đa 254 trạm trên mỗi mạng. Lớp này được dùng cho các mạng có ít trạm. 17
  23. 7-bits 24-bits Class A 0 netid hostid 14-bits 16-bits Class B 1 0 netid hostid 21-bits 8-bits Class C 1 1 0 netid hostid 28-bits Class D 1 1 1 0 multicast group ID 27-bits Class E 1 1 1 1 0 reserved for future use Hình 1-9: Phân lớp địa chỉ IPv4 Lớp D (1110) dùng để gửi gói tin IP đến một nhóm các trạm trên mạng (còn được gọi là lớp địa chỉ multicast) Lớp E (11110) dùng để dự phòng Lớp Khoảng địa chỉ A 0.0.0.0 đến 127.255.255.255 B 128.0.0.0 đến 191.255.255.255 C 192.0.0.0 đến 223.255.255.255 D 224.0.0.0 đến 239.255.255.255 E 240.0.0.0 đến 247.255.255.255 Bảng các lớp địa chỉ Internet Ngoài ra còn một số địa chỉ được quy định dùng riêng (private address). Các địa chỉ này chỉ có ý nghĩa trong mạng của từng tổ chức nhất định mà không được định tuyến trên Internet. Việc sử dụng các địa chỉ này không cần phải xin cấp phép. Ví dụ: 192.168.0.0 – 192.168.255.255 Cách chuyển đổi địa chỉ IP từ dạng nhị phân sang thập phân: Ví dụ: Dạng Nhị phân Dạng Thập phân 11001011 10100010 00000111 01011100 203.162.7.92 18
  24. 00001001 01000011 00100110 00000001 9.67.38.1 11001011.10100010.00000111.01011100 Æ 203.162.7.92 11001011 27 + 26 + 23 + 21 + 20 = 128 + 64 + 8 +2 + 1 = 203 10100010 27 + 25 +21 = 128 + 32 + 2 = 162 00000111 22 + 21 +20 = 4 + 2 + 1 = 7 01011100 26 + 24 + 23 + 22 = 64 + 16 + 8 + 4 = 92 Địa chỉ mạng con: Đối với các địa chỉ lớp A, B số trạm trong một mạng là quá lớn và trong thực tế thường không có một số lượng trạm lớn như vậy kết nối vào một mạng đơn lẻ. Địa chỉ mạng con cho phép chia một mạng lớn thành các mạng con nhỏ hơn. Người quản trị mạng có thể dùng một số bit đầu tiên của trường hostid trong địa chỉ IP để đặt địa chỉ mạng con. Chẳng hạn đối với một địa chỉ thuộc lớp A, việc chia địa chỉ mạng con có thể được thực hiện như sau: Việc chia địa chỉ mạng con là hoàn toàn trong suốt đối với các router nằm bên ngoài mạng, nhưng nó là không trong suốt đối với các router nằm bên trong mạng. Hình 1-10: Ví dụ minh họa cấu hình Subnet 19
  25. Mặt nạ địa chỉ mạng con: Bên cạnh địa chỉ IP, một trạm cũng cần được biết việc định dạng địa chỉ mạng con: bao nhiêu bit trong trường hostid được dùng cho phần địa chỉ mạng con (subnetid). Thông tin này được chỉ ra trong mặt nạ địa chỉ mạng con (subnet mask). Subnet mask cũng là một số 32 bit với các bit tương ứng với phần netid và subnetid được dặt bằng 1 còn các bit còn lại được đặt bằng 0. Như vậy, địa chỉ thực của một trạm sẽ là hợp của địa chỉ IP và subnet mask. Ví dụ với địa chỉ lớp C: 203.162.7.92, trong đó: 203.162.7 Æ Địa chỉ mạng 92 Æ Địa chỉ IP của trạm Nếu dùng 3 bit đầu của trường hostid để đánh subnet Æ subnet mask sẽ là: 11111111.11111111.11111111.11100000 = 255.255.255.224 Địa chỉ của subnet: 11001011.10100010.00000111.01011100 11111111.11111111.11111111.111- - - - - AND Logic 11001011.10100010.00000111.010- - - - - = 203.162.7.64 (Subnet address) Địa chỉ trạm: trạm thứ 28 trong Subnet 203.162.7.64 Trong thực tế subnet mask thường được viết kèm với địa chỉ IP theo dạng thu gọn sau: 203.162.7.92/27; trong đó 27 chính là số bit được đặt giá trị là 1 (gồm các bit thuộc địa chỉ mạng và các bit dùng cho Subnet). Như vậy ở đây ta có thể hiểu ngay được với subnet mask là 27 thì tương ứng với 11111111.11111111.11111111.111 - - - - -. Các địa chỉ IP đặc biệt: có 7 loại địa chỉ IP đặc biệt được mô tả như trong bảng sau: Địa chỉ IP Vai trò Mô tả netID subnetID hostID Địa Địa chỉ chỉ nguồn đích 0 0 có không Trạm hiện tại trong mạng hiện tại 0 hostID có không Trạm hostID trong mạng hiện tại 127 Bất kỳ có có Địa chỉ phản hồi 1 1 không có Điạ chỉ quảng bá giới hạn (không 20
  26. được chuyển tiếp) netID 1 không có Địa chỉ quảng bá tới mạng netID netID subnetID 1 không có Địa chỉ quảng bá tới mạng con subnetID, netID netID 1 1 không có Địa chỉ quảng bá tới mọi mạng con trong netID Bảng các địa chỉ IP đặc biệt Trong bảng trên, 0 nghĩa là tất cả các bit của trường đều bằng 0, còn 1 nghĩa là tất cả các bit của trường đều bằng 1. ¾ Phân mảnh và hợp nhất các gói IP Phân mảnh dữ liệu là một trong những chức năng quan trọng của giao thức IP. Khi tầng IP nhận được IP datagram để gửi đi, IP sẽ so sánh kích thước của datagram với kích thước cực đại cho phép MTU (Maximum Transfer Unit), vì tầng dữ liệu qui định kích thước lớn nhất của Frame có thể truyền tải được, và sẽ phân mảnh nếu lớn hơn. Một IP datagram bị phân mảnh sẽ được ghép lại bởi tầng IP của trạm nhận với các thông tin từ phần header như identification, flag và fragment offset. Tuy nhiên nếu một phần của datagram bị mất trên đường truyền thì toàn bộ datagram phải được truyền lại. ¾ Một số giao thức điều khiển • Giao thức ICMP ICMP (Internet Control Message Protocol) là một giao thức của lớp 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 TCP/IP. Ví dụ: − Điều khiển dòng truyền (Flow Control): khi các gói dữ liệu đến quá nhanh, trạm đích hoặc một gateway ở giữa sẽ gửi một thông điệp ICMP trở lại nơi gửi, yêu cầu nơi gửi tạm thời dừng việc gửi dữ liệu. − Thông báo lỗi: trong trường hợp địa chỉ đích là không tới được thì hệ thống sẽ gửi một thông báo lỗi “Destination Unreachable”. − Định hướng các tuyến đường: một gateway sẽ gửi một thông điệp ICMP “Redirect Router” để nói với một trạm là nên dùng gateway khác. Thông điệp này có thể chỉ được dùng khi mà trạm nguồn ở trên cùng một mạng với cả hai gateway. − Kiểm tra các trạm ở xa: một trạm có thể gửi một thông điệp ICMP “Echo” đi để biết được liệu một trạm ở xa có hoạt động hay không. 21
  27. • Giao thức ARP ARP (Address Resolution Protocol) là giao thức giải (tra) địa chỉ để từ địa chỉ mạng xác định được địa chỉ liên kết dữ liệu (địa chỉ MAC). Ví dụ: khi IP gửi một gói dữ liệu cho một hệ thống khác trên cùng mạng vật lý Ethernet, IP cần biết địa chỉ Ethernet của hệ thống đích để tầng liên kết dữ liệu xây dựng khung. Thông thường , có thể xác định địa chỉ đó trong bảng địa chỉ IP – địa chỉ MAC ở mỗi hệ thống. Nếu không, có thể sử dụng ARP để làm việc này. Trạm làm việc gửi yêu cầu ARP (ARP_Request) đến máy phục vụ ARP Server, máy phục vụ ARP tìm trong bảng địa chỉ IP – MAC của mình và trả lời bằng ARP_Response cho trạm làm việc. Nếu không, máy phục vụ chuyển tiếp yêu cầu nhận được dưới dạng quảng bá cho tất cả các trạm làm việc trong mạng. Trạm nào có trùng địa chỉ IP được yêu cầu sẽ trả lời với địa chỉ MAC của mình. • Giao thức RARP RARP (Reverse Address Resolution Protocol) là giao thức giải ngược (tra ngược) từ địa chỉ MAC để xác định IP. Quá trình này ngược lại với quá trình giải thuận địa chỉ IP – MAC mô tả ở trên. ¾ Chọn tuyến (IP routing): Bên cạnh việc cung cấp địa chỉ để chuyển phát các gói tin, chọn tuyến là một chức năng quan trọng của lớp IP. Ta thấy rằng lớp IP nhận datagram từ TCP, UDP, ICMP hoặc IGMP để gửi đi hoặc nhận datagram từ giao tiếp mạng để chuyển tiếp. Lớp IP có một bảng định tuyến để truy cập mỗi khi nhận được một datagram để gửi đi. Khi một datagram được nhận từ tầng kết nối dữ liệu, đầu tiên IP sẽ kiểm tra xem địa chỉ IP đích là địa chỉ của chính nó hay một địa chỉ quảng bá, nếu đúng thì datagram sẽ được cấp phát cho giao thức đã được chỉ định trong protocol của IP header. Nếu datagram không được gửi tới địa chỉ IP này nó sẽ được chuyển tiếp trong trường hợp lớp IP được cấu hình đóng vai trò như môt router hoặc bị hủy bỏ trong trường hợp ngược lại. IP duy trì một bảng chọn tuyến để truy nhập mỗi khi có gói tin cần chuyển tiếp. Mỗi mục trong bảng chọn tuyến gồm những thông tin sau: − Địa chỉ IP đích: là địa chỉ đìch cần tới, đó có thể là địa chỉ IP của một trạm hoặc địa chỉ IP của một mạng tùy thuộc vào cờ của đầu vào này. 22
  28. − Địa chỉ IP của router kế tiếp: là địa chỉ của router được nối trực tiếp với mạng và ta có thể gửi datagram tới đó để cho router kế tiếp phân phát. Router kế tiếp không phải là đích nhưng nó có thể nhận lấy datagram được gửi tới và chuyển tiếp datagram này tới đích cuối cùng. − Cờ: xác định địa chỉ IP của router kế tiếp là một địa chỉ một trạm hay là một mạng, router kế tiếp là một router thực hay là một trạm kết nối trực tiếp vào mạng. − Giao tiếp mạng: xác định giao tiếp mạng nào mà datagram phải gửi qua đó để tới đích. Hình 1-11: Chọn tuyến trong IP Việc chọn tuyến của IP được thực hiện theo các trình tự sau: − Tìm kiếm trong bảng chọn tuyến xem có mục nào khớp với địa chỉ đích (cả phần networkID và hostID). Nếu thấy thì sẽ gửi gói dữ liệu tới router kế tiếp hay giao tiếp mạng kết nối trực tiếp đã được chỉ định trong mục này. − Tìm trong bảng chọn tuyến xem có mục nào được coi là mặc định (default). Nếu thấy thì gửi gói dữ liệu tới router kế tiếp đã được chỉ ra. Nếu sau các bước trên mà datagram không được gửi đi thì trạm thực hiện việc chuyển tiếp gửi thông báo lỗi “host unreachable” hoặc “network unreachable” tới trạm tạo ra datagram này. Khả năng xác định một tuyến tới một mạng mà không phải là tuyến tới một trạm là một đặc trưng cơ bản của việc chọn tuyến trong lớp giao thức IP. Điều này cho phép giảm kích thước của bảng chọn tuyến, cho phép router trên Internet chỉ có bảng chọn tuyến với hàng ngìn đầu vào thay vì hàng triệu đầu vào tới các trạm. 23
  29. Hình 1-12: Quá trình xử lý thực hiện ở lớp IP Ở đây ta cần phân biệt thêm về hai khái niệm: cơ chế chọn tuyến và chiến lược chọn tuyến. Cơ chế chọn tuyến là việc tìm kiếm trong bảng định tuyến và quyết định xem gói tin sẽ được gửi ra ngoài theo giao diện mạng nào. Cơ chế chọn tuyến được thực hiện bởi lớp IP. Chiến lược chọn tuyến là một tập hợp các luật qui định xem các tuyến nào sẽ được đưa vào bảng chọn tuyến. Chiến lược chọn tuyến được thực hiện bởi chương trình chọn tuyến (chẳng hạn routed). Chương trình chọn tuyến thực hiện việc cập nhật bảng chọn tuyến bằng cách giao tiếp với chương trình chọn tuyến của các trạm khác trong mạng. Việc giao tiếp này giữa các chương trình chọn tuyến tuân thủ thao một giao thức nhất định. Có thể tóm tắt việc chọn tuyến thực hiện ở lớp IP trong sơ đồ hình 1.12. ¾ Giao thức liên mạng thế hệ mới (IPv6) Giao thức IPv4 đã được coi là nền tảng cho mạng Internet với những tính chất ưu việt của nó, tuy nhiên với sự bùng nổ về Internet giao thức IPv4 đã bộc lộ một số yếu điểm về tính năng, trong đó nổi bật là: 24
  30. − Thiếu hụt về tính năng xác thực, an ninh của gói tin trên mạng. Khả năng mở rộng hạn chế. − Thiếu hụt không gian địa chỉ. Với sự phát triển của mạng Internet, không gian địa chỉ IP có thể sử dụng thực sự là rất nhỏ do các địa chỉ lớp A được dành chủ yếu cho các công ty cung cấp dịch vụ lớn tại Mỹ và rất hạn chế trong việc cấp phát. Các địa chỉ lớp B nhanh chóng bị sử dụng hết do nó cung cấp số địa chỉ vừa phải. Hiện nay nhiều yêu cầu chỉ được đáp ứng bằng các địa chỉ lớp C với số địa chỉ rất hạn chế. − Sự gia tăng số lượng các chỉ mục trong bảng định tuyến do cơ chế định tuyến không phân cấp dẫn đến yêu cầu nâng cấp các router và và định tuyến không hiệu quả. − Ngày nay, với các nhu cầu kết nối vào mạng Internet của các dịch vụ khác như điện thoại di động, truyền hình số, đòi hởi giao thức IPv4 cần có các sửa đổi để đáp ứng các nhu cầu mới. Trước những nhu cầu này, giao thức liên mạng thế hệ mới IPv6 đã ra đời nhằm thay thế cho IPv4, nhưng cho đến nay IPv6 vẫn chỉ mới chủ yếu là đang trong quá trình thử nghiệm và hoàn thiện. Trong khuôn khổ giáo trình cũng đề cập một cách tổng quát về giao thức liên mạng thế hệ mới IPv6. Một số đặc điểm mới của IPv6: − Khuôn dạng header mới: Header của IPv6 được thiết kế để giảm chi phí đến mức tối thiểu. Điều này đạt được bằng cách chuyển các trường lựa chọn sang các header mở rộng được đặt phía sau của IPv6 header. Khuôn dạng mới của IPv6 tạo ra sự xử lý hiệu quả hơn tại các router. − Header của IPv4 và IPv6 không thể xử lý chung. Một trạm hay một router phải cài đặt cả IPv4 và IPv6 để có thể xử lý được cả hai khuôn dạng header này. Header của IPv6 chỉ có kích thước gấp 2 lần header của IPv4 mặc dù không gian địa chỉ của IPv6 lớn gấp 4 lần không gian địa chỉ IPv4. − Không gian địa chỉ lớn: IPv6 có địa chỉ nguồn và đích dài 128 bit. Mặc dù 128 bit có thể tạo ra hơn 3.4x1038 tổ hợp, không gian địa chỉ của IPv6 được thiết kế cho phép phân bổ địa chỉ và mạng con từ trục xương sống Internet đến từng mạng con trong một tổ chức. − Hiện tại chỉ một lượng nhỏ các địa chỉ hiện đang được phân bổ để sử dụng bởi các trạm, vẫn còn dư thừa rất nhiều địa chỉ sẵn sàng cho việc sử dụng trong tương lai. 25