Thiết kế mạng_1

Chương 1. Nhắc lại một số kiến thức cơ bản về mạng máy tính

Chương này sẽ nhắc lại một số khái niệm và thuật ngữ cơ bản, có liên quan đến các nội dung sẽ được trình bày ở phần tiếp theo của tài liệu.
Các nội dung gồm:
-         Mô hình OSI.
-         LAN.
-         WAN.
-         Các thiết bị mạng.
-         TCP/IP.
-         Định tuyến (routing).
-         Địa chỉ IP.
-         Chuyển mạch (switching) tầng 2, tầng 3.
-         STP.
-         VLAN.

Giới thiệu về mạng máy tính

Vào những năm 1960, 1970, hệ thống máy tính thường gồm một máy tính trung tâm gọi là mainframe, người dùng sẽ kết nối tới máy tính trung tâm này bằng các thiết bị đầu cuối gọi là các terminal. Các thiết bị đầu cuối này không có khả năng xử lý, chỉ có chức năng hiển thị, giao tiếp với máy mainframe dựa trên dòng lệnh. Hệ thống mạng máy tính chỉ có nhiệm vụ kết nối máy mainframe và các terminal.
Vào năm 1981, IBM PC ra đời, đánh dấu một sự thay đổi lớn, máy PC có thể xử lý công việc mà trước đây phải nhờ tới máy mainframe. Từ đây, hệ thống mạng máy tính có nhiệm vụ mới, là kết nối các PC này lại với nhau.
Mạng máy tính hay gọi ngắn gọn là mạng (computer network, network) là một hệ thống kết nối giữa các máy tính và các thiết bị phần cứng khác để chia sẻ  thông tin và tài nguyên.
Mạng đơn giản nhất là mạng gồm hai máy tính kết nối với nhau bằng một sợị cáp (cable). Tuy nhiên, hầu hết các mạng luôn có rất nhiều các thiết bị kết nối với nhau.
Liên mạng (internetwork hay internet) là hai hay nhiều mạng nối với nhau bằng các thiết bị định tuyến (router) cho phép truyền dữ liệu giữa các mạng. Internet là một liên mạng.
Kết nối liên mạng (internetworking) là việc sử dụng các kĩ thuật, phần cứng, phần mềm để thiết kế, triển khai và quản trị các  liên mạng.
Mạng LAN là 1 hệ thống cho phép nhiều người dùng có thể giao tiếp, trao đổi dữ liệu (trao đổi file, thông điệp, chia sẻ máy in, ổ đĩa…v.v) với nhau trong phạm vi địa lý nhỏ.
Mạng WAN là 1 hệ thống cho phép người dùng chia sẻ thông tin như mạng LAN, tuy nhiên, điểm khác biệt là mạng WAN kết nối các mạng LAN khác nhau, nằm ở các vị trí địa lý khác nhau.

Mô hình OSI

Hãy tưởng tượng khi gửi 1 email từ nơi bạn đang ở tới cho một người bạn đang ở Nhật Bản, việc gửi email gồm các bước sau:
-         Bạn phải mở ứng dụng để gửi email (web mail hoặc application mail).
-         Nhập nội dung email.
-         Nhập địa chỉ người nhận.
-         Bấm nút Send để gửi.
-         Máy tính sẽ chuyển email bạn vừa gửi qua cạc mạng, tới cáp mạng…tới modem.
-         Modem của bạn phải ở trạng thái sẵn sàng gửi dữ liệu ra ngoài Internet.
-         Các thiết bị mạng trên Internet sẽ lựa chọn đường đi tốt nhất để email được chuyển tới đúng người nhận.
Mô hình OSI sẽ mô tả cách thức giao tiếp và mối quan hệ giữa các thành phần trong quá trình giao tiếp trên mạng.
OSI viết tắt của Open System Interconnection – kết nối các hệ thống mở. Là mô hình được sử dụng để tham chiếu.
Mô hình OSI được Hội đồng tiêu chuẩn quốc tế (ISO) đưa ra vào năm 1984, gồm các quy định, các mô tả để gửi dữ liệu trên hệ thống mạng. Mô hình này được chia thành bảy tầng.

7
Application
Các tầng phía trên
6
Presentation
5
Sessision
4
Transport
Các tầng phía dưới
3
Network
2
Data link
1
Physical
Lưu ý, mô hình OSI chỉ đưa ra tất cả những gì (what) cần phải làm để truyền dữ liệu mà không đề cập tới cách thức làm như thế nào (how). Vì vậy, các giao thức khác nhau ở cùng một tầng có thể có cách thực hiện các chức năng khác nhau, ví dụ giao thức IP và IPX tại tầng Network.
Các tầng phía trên liên quan tới ứng dụng nhiều hơn: giao tiếp với người dùng, định dạng dữ liệu.
Các tầng phía dưới liên quan tới việc truyền dữ liệu: cách thức truyền dữ liệu, các yếu tố vật lý của hệ thống mạng.

Giao thức (Protocol)

Giao thức là một tập các quy định. Quy định về cách thức giao tiếp giữa các máy tính, thiết bị trên hệ thống mạng, nó cũng giống như các quy định khi tham gia giao thông – gặp đèn đỏ thì dừng lại, đợi tới đèn xanh thì được đi.
Hai máy tính phải cùng sử dụng một giao thức thì mới có thể giao tiếp với nhau được. Hai máy tính sử dụng hai giao thức khác nhau để giao tiếp thì cũng như một người sử dụng tiếng Việt để nói với một người chỉ biết tiếng Anh?!?.
Có rất nhiều giao thức mạng khác nhau đang được sử dụng: giao thức mạng LAN, giao thức mạng WAN, giao thức định tuyến (routing)…v.v.
Bộ giao thức (protocol suite) là tập hợp các giao thức tương ứng với các tầng của mô hình OSI. Bộ giao thức còn được gọi là chồng giao thức (protocol stack).
Bộ giao thức TCP/IP là một bộ giao thức được sử dụng nhiều nhất hiện nay. TCP/IP là nền tảng của Internet và hệ thống mạng của các tổ chức. Ngoài ra còn có 1 số các bộ giao thức khác như: NetWare của Novell, AppleTalk của Apple và System Network Architecture của IBM.

Các tầng trong mô hình OSI

Tầng 1 (Layer 1) – Physical
Tầng này đặc tả các vấn đề liên quan đến điện và cơ học như: các điều kiện về dòng điện, cơ  khí cần thiết cho việc kích hoạt, duy trì, và kết thúc kết nối vật lý giữa các thiết bị. Bao gồm các đặc tả về: mức điện áp, chiều dài tối đa của cáp kết nối, loại kết nối, tốc độ truyền dữ liệu tối đa…v.v.
Hoạt động của tầng vật lý liên quan đến việc truyền dữ liệu dạng nhị phân, được gọi là bit (viết tắt của binary digits), một bit mang một giá trị dữ liệu: 0 hoặc 1.
Tầng 2 (Layer 2) – Data link
Mô tả định dạng của dữ liệu được truyền giữa các mạng vật lý. Quá trình truyền dữ liệu tại tầng này có thể có cơ chế kiểm tra tính tin cậy của dữ liệu hoặc không, tùy thuộc vào giao thức sử dụng.
Tầng này chỉ ra cách thức để truy cập đường truyền, bao gồm: địa chỉ vật lý, phát hiện lỗi, sửa lỗi, và kiểm soát lưu lượng (flow control).
Có nhiệm vụ truyền dữ liệu giữa các nút mạng kề nhau trong mạng WAN hoặc giữa các nút mạng trong cùng một đoạn mạng (segment) LAN.
Đơn vị dữ liệu (PDU – protocol data unit) sử dụng ở tầng này là khung dữ liệu (gọi là frame). Có nhiều loại frame khác nhau tùy theo thiết bị và môi trường truyền.
Frame gồm: dữ liệu cần truyền, thông tin địa chỉ và thông tin điều khiển.
Trong mạng LAN, tổ chức IEEE chia tầng Data link thành hai tầng con là: Logical Link Control (LLC) và Media Access Control (MAC).
Tầng LLC (được mô tả trong IEEE 802.2) cho phép nhiều giao thức tại tầng Network có thể giao tiếp trên cùng một liên kết vật lý. Điều này được thực hiện bằng cách chỉ rõ giao thức được sử dụng tại tầng Network trong LLC của frame.
Tầng MAC được mô tả trong IEEE 802.3 Ethernet và IEEE 802.5 Token Ring.
Tầng MAC xem địa chỉ vật lý – MAC address - là định danh duy nhất của một thiết bị trên mạng. Mỗi frame gửi đi sẽ bao gồm địa chỉ MAC của thiết bị nguồn (thiết bị gửi) và thiết bị đích (thiết bị nhận), và chỉ có thiết bị đích mới nhận và xử lý frame.
Tầng 3 (Layer 3) – Network
Tầng Network chịu trách nhiệm tìm đường đi cho dữ liệu, nó chuyển tiếp dữ liệu qua các mạng logic (mạng logic có thể chứa nhiều mạng vật lý).
Địa chỉ IP được mô tả ở tầng này.
Trong khi tầng Data link chỉ thực hiện truyền dữ liệu giữa các trạm liền kề, trực tiếp (hop-to-hop), thì tầng Network thực hiện truyền dữ liệu giữa các trạm liền kề và trong liên mạng (end-to-end).
Giao thức định tuyến (routing protocol) được mô tả tại tầng này, giúp tìm đường đi tốt nhất để truyền dữ liệu từ nguồn tới đích.
Đơn vị dữ liệu tại tầng này là các datagram (hoặc packet). Các giao thức khác nhau sử dụng các loại datagram khác nhau.
Datagram có thể được chia nhỏ thành các packet và được lắp ghép lại khi đi qua các mạng khác nhau. Như vậy datagram là đơn vị dữ liệu lý thuyết, còn packet là đơn vị dữ liệu vật lý (dùng để truyền trên mạng). Trong một số trường hợp, nếu datagram không bị chia nhỏ thì datagram và packet là một. Hai khái niệm này có thể dùng thay thế cho nhau.
Tầng 4 (Layer 4) - Transport
Tầng này mô tả cách thức kết nối và truyền dữ liệu giữa các người dùng đầu cuối (end-to-end).
Tầng này mô tả 2 kiểu truyền dữ liệu:
Một là, truyền dữ liệu tin cậy hướng kết nối (connection-oriented), kiểu truyền này có thiết lập một kết nối logic và sử dụng cơ chế tuần tự (sequence number) để đảm bảo truyền đủ dữ liệu tới máy nhận.
Hai là, truyền dữ liệu phi kết nối (connectionless) và không đảm bảo tính tin cậy của dữ liệu truyền. Với kiểu truyền dữ liệu không tin cậy, việc kiểm tra tính tin cậy của dữ liệu được thực hiện ở tầng cao hơn hoặc bởi người sử dụng.
Truyền đa công (multiplexing) cho phép nhiều ứng dụng sử dụng chung một kết nối vật lý, khi đó dữ liệu sẽ được gán thẻ (tag) là các số để xác định dữ liệu đó thuộc ứng dụng nào.
Đơn vị dữ liệu truyền tại tầng này là segment (đoạn dữ liệu).
Các tầng còn lại – Layer 5 đến 7
Ba tầng ở phía trên có nhiệm vụ định hình dữ liệu được truyền từ nguốn tới đích; khi tìm hiểu về hạ tầng mạng, chúng ít được quan tâm. Sau đây là mô tả ngắn gọn chức năng của các tầng:
-         Tầng 5 (Layer 5) – session: chịu trách nhiệm thiết lập, duy trì và kết thúc một phiên giao tiếp giữa các ứng dụng chạy trên các thiết bị (host) khác nhau.
-         Tầng 6 (Layer 6) – presentation: mô tả về định dạng, cấu trúc, mã hóa, nén, và các vấn đề liên quan khác để biểu diễn dữ liệu, đảm bảo thông tin được gửi từ tầng application của thiết bị nguồn có thể đọc được tại tầng application của thiết bị đích.
-         Tầng 7 (Layer 7) – application: là tầng gần với người dùng nhất, nó tương tác trực tiếp với các phần mềm ứng dụng mạng, cung cấp các dịch vụ, giao thức cho các ứng dụng.
Giao tiếp giữa các tầng trong mô hình OSI
Phần này sẽ mô tả cách thức giao tiếp giữa bảy tầng trong mô hình OSI. Khi bạn gửi một email từ Toronto tới San Francisco, thực tế chính là gửi một email từ ứng dụng email của bạn tới ứng dụng email trên máy tính của người bạn tại San Francisco.
Trong mô hình OSI, việc trao đổi thông tin được xem xét trên từng tầng, ví dụ, tầng application trên máy của bạn sẽ giao tiếp với tầng application trên máy của người bạn kia, tuy nhiên, để thực hiện điều này email phải đi qua và đáp ứng các mô tả  tại các tầng khác trên máy tính của bạn; ví dụ, nó phải có địa chỉ ở tầng mạng (IP), lựa chọn loại frame phù hợp, sau đó, được truyền trên hệ thống mạng, và khi tới máy đích nó lại phải đi qua và đáp ứng tất cả các tầng tại máy đích trước khi tới được tầng application trên máy đích.
Từ tầng application, khi email chuyển xuống các tầng thấp hơn, nó sẽ được gắn thêm các thông tin điều khiển, những thông tin này giúp truyền dữ liệu tới đích. Nghĩa là tại mỗi tầng, dữ liệu sẽ được đóng gói (encapsulate hoặc wrap) với những thông tin thích hợp, gồm: địa chỉ, thông tin điểu khiển, thông tin kiểm tra lỗi.
Hình sau đây mô tả quá trình đóng gói (khi gửi email) đi từ tầng trên xuống các tầng phía dưới và quá trình mở gói (unencapsulate hoặc decapsulate) (tại máy nhận email) khi đi từ tầng dưới lên các tầng phía trên.

Ví dụ, ở hình trên,
-         Tại tầng 4, email này được đóng gói trong một segment.
-         Tại tầng 3, segment này được đóng gói trong một packet.
-         Tại tầng 2, packet này được đóng gói trong một frame.
-         Tại tầng 1, frame này được gửi đi trên dây cáp (không khí – nếu là mạng không dây) dưới dạng các bit.
Đơn vị dữ liệu trao đổi tại mỗi tầng gọi là PDU (protocol data unit). Tại tầng 4 là segment, tại tầng 3 là packet, tại tầng 2 là frame.
Lưu ý: tổng kích thước của thông tin sẽ được tăng thêm sau mỗi tầng trong quá trình đóng gói. Và trong quá trình mở gói, thông tin thêm vào (trong quá trính đóng gói) sẽ được gỡ bỏ từng bước qua mỗi tầng trước khi tới tầng application.
Tại mỗi tầng thường có nhiều giao thức để chọn lựa. Ví dụ, các packet có thể được gửi đi bằng giao thức IP hoặc IPX, tuy nhiên, để giao tiếp được với nhau thì tầng tương ứng của hai hệ thống phải sử dụng cùng một loại giao thức.
-----------------------------------------------------------
LGC - Lược dịch “Designing for Cisco Internetwork Solutions”