Computer >> Máy Tính >  >> Kết nối mạng >> Internet

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet

Ứng dụng mạng là các ứng dụng máy tính tham gia vào một mạng máy tính. Các ứng dụng này nói chuyện với nhau bằng cách cắm vào mạng.

Ví dụ:khi bạn truy cập google.com, trình duyệt của bạn hoạt động như một ứng dụng mạng tận dụng Internet để nói chuyện với ứng dụng mạng đang chạy trên máy tính của Google.

Thông thường, cơ chế của giao tiếp này được tóm tắt từ một nhà phát triển ứng dụng.

Nhìn bề ngoài, giao tiếp này có thể giống như Giao tiếp giữa các quá trình giữa hai ứng dụng đang chạy trên cùng một máy tính. Tuy nhiên, truyền thông mạng có một loạt thách thức khác nhau.

Ví dụ, giao tiếp có thể mất vĩnh viễn trong thời gian máy tính. Mất 0,1337 giây (2 * 3,14 * 6400/30000) để ánh sáng di chuyển quanh trái đất. Giả sử một CPU khiêm tốn chạy ở tốc độ 1GHz, nó có thể thực hiện 10 ^ 9 ops trong 1 giây.

Giả sử phải mất một vài thao tác để các quá trình (chạy trên cùng một máy) giao tiếp, khoảng 10 ^ -7 - 10 ^ -8 giây. Điều đó dẫn đến thời gian giao tiếp chậm hơn ~ 1 triệu lần với một máy tính ở phía bên kia Trái đất!

Bài viết này sẽ xem xét cách các ứng dụng mạng nói chuyện với nhau, cụ thể là qua Internet. Để biết tổng quan cấp cao về Internet, hãy xem bài viết này.

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

Một sự phức tạp nữa liên quan đến giao tiếp mạng là sự đa dạng của các hệ thống đầu cuối (điện thoại di động, máy tính xách tay, windows, mac). Sự phức tạp này được quản lý bằng cách trừu tượng hóa sự khác biệt và giới thiệu một bộ quy tắc thống nhất được gọi là Giao thức .

Giao thức là nền tảng của giao tiếp giữa các ứng dụng mạng. Một số giao thức phổ biến bao gồm HTTP, TCP, IP, SMTP. Giống như cách ngôn ngữ của con người (chẳng hạn như tiếng Anh) cho phép nhiều người giao tiếp có ý nghĩa, các Giao thức lấp đầy một khoảng trống tương tự trong giao tiếp mạng.

Giao tiếp mạng là một thách thức do quy mô và sự không chắc chắn vốn có trong mạng.

Ví dụ, các liên kết có thể bị tắc nghẽn, dẫn đến việc giảm các gói tin. Một chiến lược để giải quyết một vấn đề phức tạp là chia vấn đề thành các bài toán con, giải quyết các bài toán con và kết hợp chúng để giải quyết vấn đề ban đầu.

Ngăn xếp giao thức sử dụng ý tưởng này để giải quyết giao tiếp mạng.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Ngăn xếp giao thức

Hãy tưởng tượng bạn đang xây dựng một trang web để bán bánh pizza. Khi người dùng tương tác với trang web của bạn, giao diện người dùng cần giao tiếp với máy chủ phụ trợ của bạn. Sẽ thật tuyệt nếu bạn có thể tập trung vào việc xây dựng cửa hàng pizza trực tuyến của mình mà không phải lo lắng về cách dữ liệu đó được truyền từ giao diện người dùng đến máy chủ phụ trợ qua Internet?

Ngăn xếp giao thức chăm sóc giao tiếp mạng cho chúng tôi. Một ứng dụng (giao diện người dùng) sử dụng Lớp ứng dụng để giao tiếp với một ứng dụng khác (phụ trợ).

Lớp ứng dụng sử dụng các "dịch vụ" do Lớp truyền tải cung cấp để truyền thông tin qua mạng. Lớp truyền tải cũng sử dụng các dịch vụ do Lớp mạng cung cấp để thực hiện thỏa thuận dịch vụ của nó.

Theo cách này, lớp cao hơn sử dụng các dịch vụ được cung cấp bởi các lớp thấp hơn để giao tiếp với các ứng dụng khác qua mạng. Lớp vật lý tạo thành các dây dẫn mang tín hiệu điện.

Về bản chất, ngăn xếp giao thức chứa nhiều lớp khác nhau, nơi mỗi lớp tập trung vào giải quyết một phần của vấn đề lớn hơn.

Các giao thức mô tả giải pháp cho các vấn đề phụ, cung cấp cho chúng tôi ngăn xếp giao thức tên. Nói chung, các giao thức xác định các quy tắc giao tiếp giữa hai thực thể, chẳng hạn như,

  • Các loại tin nhắn, ví dụ:tin nhắn yêu cầu và phản hồi
  • Cú pháp của các loại tin nhắn khác nhau, chẳng hạn như các trường trong tin nhắn
  • Ngữ nghĩa của các trường, đó là ý nghĩa của thông tin trong các trường
  • Các quy tắc để xác định thời điểm và cách thức gửi và phản hồi tin nhắn

Hãy đi sâu hơn vào ngăn xếp giao thức, bắt đầu từ trên cùng.

Lớp Ứng dụng

Các ứng dụng kinh doanh sử dụng Lớp ứng dụng để giao tiếp qua mạng. Ví dụ:đặt hàng trên cửa hàng pizza trực tuyến của bạn được thực hiện bằng Lớp ứng dụng. HTTP là một tùy chọn để đăng thông tin lên máy chủ phụ trợ của bạn.

Giao thức lớp ứng dụng xác định cách các ứng dụng chạy trên các hệ thống đầu cuối khác nhau truyền thông điệp cho nhau. Ngoài các quy tắc giao tiếp (giao thức), các ứng dụng cũng cần một cách để tìm thấy nhau, nghĩa là, địa chỉ của nhau. Địa chỉ của ứng dụng được xác định bởi:

  1. Địa chỉ IP:nhãn số được gán cho hệ thống cuối
  2. Số cổng:số nhận dạng chỉ định quá trình nhận trong máy chủ đích. Số cổng là điều cần thiết để giải thích cho nhiều ứng dụng mạng chạy trên một máy chủ lưu trữ. Ví dụ:hai tab trong trình duyệt web hoạt động như hai quá trình khác nhau.

Địa chỉ của một ứng dụng xác định danh tính của nó trên mạng và giao thức xác định các quy tắc giao tiếp. Cùng với nhau, chúng tạo thành địa chỉ Socket (loại giao thức, địa chỉ IP, số cổng).

Một ổ cắm là một giao diện giữa lớp ứng dụng và lớp truyền tải. Nó hoạt động như một điểm vào mạng, là một ứng dụng gửi tin nhắn vào và nhận tin nhắn mạng thông qua Socket của nó.

Tóm lại, các ứng dụng nói chuyện với nhau bằng giao thức Lớp ứng dụng. Tầng ứng dụng dựa vào các dịch vụ được cung cấp bởi Tầng vận chuyển để truyền dữ liệu giữa các hệ thống đầu cuối. Cặp địa chỉ IP và số cổng xác định một ứng dụng. Thông tin chuyển từ một ứng dụng vào mạng thông qua Socket của nó.

Hãy xem một ví dụ về hai ứng dụng giao tiếp qua Internet bằng HTTP.

HTTP là một giao thức lớp ứng dụng phổ biến. Giao tiếp giữa trình duyệt web của tôi và máy chủ ứng dụng (ilovecookies.com). Khi tôi nhập địa chỉ này vào trình duyệt web của mình, nó sẽ gửi một thông báo yêu cầu HTTP đến máy chủ ứng dụng.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Thông báo yêu cầu HTTP do trình duyệt web của tôi gửi tới máy chủ ilovecookies.com

Một số điều cần lưu ý về thông báo yêu cầu này:

  • Loại yêu cầu là GET
  • Máy chủ mà nó gửi thư đến là ilovecookies.com (phiên bản địa chỉ IP con người có thể đọc được được gọi là tên máy chủ)
  • Máy nguồn chấp nhận các định dạng, ngôn ngữ phản hồi cụ thể, v.v..

Cấu trúc này là một phần của HTTP xác định các quy tắc giao tiếp giữa hai ứng dụng. Khi ứng dụng lưu trữ nhận được thông báo này, nó sẽ phản hồi bằng một thông báo phản hồi.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Thông báo phản hồi HTTP mà trình duyệt web của tôi nhận được từ máy chủ ilovecookies.com có ​​chứa HTML để tạo trang web

Chúng ta có thể thấy rằng thông báo phản hồi chứa dữ liệu theo giao thức cụ thể như mã trạng thái (200), loại nội dung, v.v. và dữ liệu HTML (được cắt bớt cho phù hợp). Cặp yêu cầu-phản hồi tạo thành giao tiếp mạng giữa hai ứng dụng hiển thị thành công trang web (ilovecookies.com) trên màn hình của tôi.

Lớp Truyền tải

Tiếp theo, hãy đi xuống một cấp của ngăn xếp giao thức và hiểu cách lớp truyền tải giúp giao tiếp mạng.

Lớp truyền tải cung cấp logic giao tiếp giữa các ứng dụng chạy trên các máy chủ khác nhau:từ góc độ của các ứng dụng, nó giống như thể hai máy được kết nối trực tiếp. Lưu ý rằng giao tiếp được cung cấp bởi lớp truyền tải là logic chứ không phải vật lý:không có liên kết trực tiếp hoặc dây giữa các máy chủ cuối.

Lớp truyền tải chuyển đổi các thông điệp ứng dụng thành các phần nhỏ hơn, đóng gói mỗi phần trong một thông điệp truyền tải có chứa các tiêu đề và chuyển phần này đến lớp mạng.

Lý do đằng sau việc chia nhỏ thông tin thành nhiều mảnh là việc sử dụng mạng hiệu quả. Internet rộng lớn đến mức một số đường dẫn song song truyền dữ liệu giữa hai máy chủ cuối.

Ví dụ, có hai con đường khả thi để đi lại giữa New York và Stamford. Internet là một phiên bản hơi cực đoan của ý tưởng này.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Hai tuyến đường thay thế giữa New York và Stamford

Thứ tự tương đối của các gói là một câu hỏi tự nhiên xoay quanh việc phân chia và sử dụng mạng hiệu quả:các phần này cần được đặt lại theo thứ tự giống nhau tại máy chủ nhận. Lớp vận chuyển trong máy chủ nhận chịu trách nhiệm khâu các mảnh lại theo thứ tự thích hợp.

Lớp truyền tải cũng cần một số dữ liệu bổ sung có liên quan đến các chức năng của nó. Ví dụ:các số thứ tự tương đối được thêm vào các phần để ghép lại thông điệp ứng dụng.

Một ví dụ khác về thông tin cụ thể của lớp truyền tải là số cổng. Trên máy chủ nhận, số cổng đích rất hữu ích để định tuyến thông báo đến đúng ứng dụng.

Internet cung cấp sẵn hai giao thức lớp truyền tải:

  • Giao thức sơ đồ người dùng (UDP)
  • Giao thức điều khiển truyền (TCP)

Hai giao thức khác nhau một chút về các dịch vụ truyền tải mà chúng cung cấp cho lớp ứng dụng.

TCP UDP
Truyền dữ liệu đáng tin cậy Truyền dữ liệu không đáng tin cậy
Thông tin bị mất hoặc bị hỏng được khôi phục bằng cách truyền lại Không có cơ chế phục hồi dữ liệu bị mất hoặc bị hỏng
Độ trễ cao hơn với chi phí liên lạc đáng tin cậy Độ trễ thấp hơn với chi phí giao tiếp không đáng tin cậy

Các yêu cầu dịch vụ của một ứng dụng chi phối giao thức bạn chọn. Ví dụ:một hệ thống thanh toán sẽ cần giao tiếp đáng tin cậy (TCP), trong khi dịch vụ phát trực tuyến video có thể không sao nếu mất một số thông tin để phát trực tuyến nhanh hơn (UDP).

Tóm lại, lớp truyền tải phân chia các thông điệp ứng dụng thành nhiều phần và đóng gói chúng trong các thông báo có chứa thông tin cụ thể của lớp truyền tải. Các mảnh được đặt lại theo đúng thứ tự trên hệ thống nhận để tạo lại thông điệp và chuyển đến ứng dụng thích hợp bằng số cổng.

Hãy tiếp tục giao tiếp ví dụ HTTP giữa trình duyệt web của tôi và máy chủ ứng dụng.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Gói TCP đóng gói tiêu đề và thông báo yêu cầu HTTP

Bạn có thể quan sát các byte được giải mã ở phía dưới bên phải đại diện cho yêu cầu HTTP GET mà trình duyệt của tôi thực hiện cho máy chủ ứng dụng. Chúng tôi thấy yêu cầu HTTP như một trường tải trọng TCP trong gói này.

Ngoài ra, gói đầu tiên được sắp xếp theo thứ tự tương đối với số thứ tự là 1. Nó cũng chứa số cổng (65012) được liên kết với tab trên trình duyệt web của tôi và số cổng đích (80) trên máy chủ ứng dụng.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Đầu tiên (số thứ tự 1) và thứ hai (số thứ tự 1449 bắt đầu ở cuối gói 1) Các gói TCP tương ứng với thông báo phản hồi HTTP nhận được từ máy chủ ilovecookies.com

Hai gói đầu tiên từ phản hồi HTTP (57 gói TCP) được hiển thị ở đây. Ở dưới cùng bên phải của cả hai hình ảnh, chúng ta có thể thấy thông tin cụ thể về HTTP và một số HTML tương ứng với trang web ilovecookies.com.

Bạn cũng có thể xem thông tin cụ thể của lớp vận chuyển như số cổng và số thứ tự. Lưu ý rằng số cổng nguồn và cổng đích bị lật so với các gói thông báo yêu cầu.

Lớp Mạng

Ngược lại với lớp truyền tải, lớp mạng cung cấp giao tiếp logic giữa hai máy chủ cuối. Lưu ý sự khác biệt nhỏ giữa dịch vụ lớp truyền tải và lớp mạng.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Bên trái:giao tiếp logic được cung cấp bởi lớp truyền tải, Bên phải:giao tiếp logic được cung cấp bởi lớp mạng

Lớp mạng nhận một gói truyền tải từ lớp truyền tải và đóng gói nó trong một gói mạng. Việc đóng gói rất hữu ích để thêm thông tin cụ thể cho hoạt động của giao thức lớp mạng.

Lớp mạng cung cấp dịch vụ nỗ lực cao nhất (thời gian, thứ tự tương đối, phân phối cuối cùng không được đảm bảo) để di chuyển dữ liệu giữa hai máy chủ. Dịch vụ nỗ lực cao nhất là động lực đằng sau TCP. Vì các giao thức lớp mạng vốn không đáng tin cậy, nên TCP chứa thêm logic để đảm bảo truyền dữ liệu đáng tin cậy.

Lớp mạng chịu trách nhiệm chuyển các gói từ máy chủ gửi sang máy chủ nhận. Ngoài máy chủ lưu trữ cuối, các giao thức lớp mạng cũng chạy trên Bộ định tuyến , một phần của lõi mạng. Bộ định tuyến là thiết bị chuyển mạch gói có nhiệm vụ chuyển tiếp các gói.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Bên trái:thiết bị chuyển mạch gói, Bên phải:một mạng nhỏ bao gồm 3 máy chủ cuối và 1 bộ định tuyến kết nối chúng cùng nhau

Giả sử máy chủ cuối 1 muốn gửi một gói đến máy chủ cuối 2. Máy chủ cuối 1 chuyển gói đến bộ định tuyến. Bộ định tuyến xem xét thông tin trong gói mạng và tìm ra rằng nó cần chuyển tiếp gói trên liên kết 2, mà máy chủ cuối 2 được kết nối.

Mỗi bộ định tuyến đều có một bảng chuyển tiếp được lưu trữ trong RAM (được xây dựng động) để giải quyết liên kết chuyển tiếp chính xác cho gói tin. Ví dụ:bảng định tuyến cho thiết lập trên sẽ giống như sau:

Địa chỉ Liên kết
192.168.1.1 Liên kết 1
168.134.1.1 Liên kết 2
172.158.1.2 Liên kết 3

Các bộ định tuyến sử dụng thông tin (địa chỉ máy chủ đích) từ gói mạng để lập chỉ mục (XOR theo chiều bit) vào bảng này. Bạn có thể xem bảng định tuyến trên máy tính của mình bằng cách chạy các lệnh sau:

Mac: netstat -nrf inet
Linux: netstat -nr
Windows: Get-NetRoute -AddressFamily IPv4

Lưu ý một mục cụ thể trong bảng định tuyến của bạn, mặc định hoặc 0.0.0.0, được gọi là cổng mặc định. Một gói được chuyển đến cổng mặc định nếu không có mục nào khớp với địa chỉ đích.

Internet chứa rất nhiều thiết bị như vậy chuyển tiếp các gói để cho phép giao tiếp logic giữa hai máy chủ cuối.

Khi mọi người chia sẻ bộ định tuyến và dây dẫn dữ liệu trên Internet, bộ định tuyến chứa các hàng đợi chứa các gói đến khi các gói đi được bộ định tuyến xử lý (/ chuyển tiếp). Tính không đáng tin cậy được đưa vào các giao thức lớp mạng nếu hàng đợi đã đầy, có thể bị đóng gói khi lưu lượng truy cập tăng lên.

Giao thức mạng Internet được gọi là Giao thức Internet (IP). Các thành phần chính của lớp mạng Internet là,

  1. IP:xác định quy ước địa chỉ (IPv4, IPv6), định dạng gói, quy ước xử lý gói
  2. Giao thức định tuyến:xác định đường dẫn một gói đi từ nguồn đến máy chủ
  3. ICMP:cơ sở để báo cáo lỗi trong các gói và phản hồi các yêu cầu về thông tin lớp mạng nhất định

Tóm lại, lớp mạng cung cấp giao tiếp logic giữa hai máy chủ cuối. Các giao thức lớp mạng chạy trên máy chủ cuối và các thiết bị lõi của mạng như bộ định tuyến. Bộ định tuyến chuyển tiếp các gói mạng, giúp hình thành giao tiếp logic giữa hai máy chủ cuối.

Hãy tiếp tục với ví dụ về giao tiếp của chúng tôi với ilovecookies.com.

Chúng tôi đã thấy rằng trình duyệt web của tôi tạo một thông báo yêu cầu HTTP (giao thức lớp ứng dụng) và chuyển nó xuống lớp truyền tải, sử dụng giao thức TCP để giao tiếp đầu cuối giữa ứng dụng trình duyệt web của tôi và ứng dụng máy chủ (ilovecookies.com ).

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Một gói IP đóng gói một gói TCP

Chúng ta có thể thấy rằng gói mạng bao gói gói TCP, gói này sẽ gói gói ứng dụng. Văn bản được đánh dấu màu xanh lá cây thể hiện nội dung của gói mạng, màu vàng là gói truyền tải, và phần văn bản còn lại bắt đầu từ GET là gói ứng dụng.

Các trường gói mạng có liên quan đến chức năng của nó. Ví dụ:địa chỉ nguồn là địa chỉ IP máy của tôi và địa chỉ đích là địa chỉ máy chủ ilovecookies.com.

Việc đóng gói và thông tin cụ thể về lớp chứa trong các gói cũng liên quan đến ý tưởng giao tiếp logic giữa các máy chủ và ứng dụng chạy trên chúng.

Ví dụ, gói mạng bao gồm địa chỉ IP của các máy cuối, trong khi gói truyền tải chỉ chứa số cổng. Lớp vận chuyển dựa vào lớp mạng để di chuyển dữ liệu giữa các máy cuối. Khi dữ liệu đến thiết bị nhận, lớp truyền tải sẽ tiếp nhận và định tuyến gói tin đến đúng ứng dụng bằng cách sử dụng số cổng có trong gói truyền tải.

So với các lớp mà chúng ta đã thấy cho đến nay, lớp liên kết có phạm vi hẹp hơn:nó cung cấp các dịch vụ để di chuyển các gói qua các liên kết riêng lẻ trong đường dẫn end-to-end.

Ví dụ, các liên kết là các đường chấm màu đỏ (xem hình minh họa ở trên). Lớp liên kết cho phép di chuyển từ nút này sang nút khác của các gói ở lớp mạng qua một liên kết duy nhất trong đường dẫn.

Giao thức lớp liên kết xác định:

  • định dạng của các gói được trao đổi giữa các nút ở các đầu của liên kết
  • các hành động được thực hiện trên các gói bởi các nút đó

Bộ điều hợp mạng thực hiện các giao thức lớp liên kết. Bộ điều hợp mạng cấu thành phần cứng vật lý cho phép máy tính kết nối với mạng và trao đổi thông tin.

Thử chạy lệnh này để xem danh sách các bộ điều hợp mạng trong máy tính của bạn:

Mac: networksetup -listallhardwareports
Linux: lshw -class network -short
Windows: Get-NetAdapter -Name *

Trong đầu ra, bạn sẽ nhận thấy rằng mỗi thiết bị có một địa chỉ lớp liên kết được gọi là địa chỉ MAC. ROM của bộ điều hợp chứa các địa chỉ MAC được chỉ định tại thời điểm sản xuất được coi là vĩnh viễn. Mỗi nút (máy chủ và bộ định tuyến) có một địa chỉ lớp liên kết dọc theo đường dẫn.

Trước đó chúng ta đã nói về địa chỉ IP, đây cũng là một số nhận dạng cho các thiết bị. Tình huống tương tự như có nhiều định danh:địa chỉ nhà và số an sinh xã hội. Có một số lý do tại sao các nút có địa chỉ MAC và địa chỉ lớp mạng.

  • Các giao thức ở các lớp khác nhau được cho là có thể thay thế được. Ví dụ:IPX không sử dụng địa chỉ lớp mạng.
  • Địa chỉ IP được lưu trữ trong RAM và được định cấu hình lại mỗi khi bộ điều hợp được di chuyển hoặc cấp nguồn, tức là tạm thời.
  • Giả sử giao thức bỏ qua địa chỉ MAC. Bộ điều hợp sẽ cần chuyển từng gói mà nó nhận được lên ngăn xếp giao thức. Lớp mạng sẽ kiểm tra xem có khớp với địa chỉ IP hay không. Tuy nhiên, điều này có thể không hiệu quả nếu thực hiện quá nhiều lần:Ngắt giúp chuyển các gói tin có thể tốn kém.

Tóm lại, để các lớp trở thành các khối xây dựng phần lớn độc lập trong kiến ​​trúc mạng, nhiều lớp cần phải có sơ đồ địa chỉ của chúng.

Như một bản tóm tắt nhanh, chúng ta đã xem xét ba loại địa chỉ cho đến bây giờ:

  • Tên máy chủ cho lớp ứng dụng (ilovecookies.com). Chúng được chuyển đổi thành địa chỉ IP tương ứng bằng DNS.
  • Địa chỉ IP cho lớp mạng
  • Địa chỉ MAC cho lớp liên kết

Giống như Hệ thống tên miền, giúp phân giải địa chỉ IP từ tên máy chủ, Giao thức phân giải địa chỉ (ARP) hữu ích để xác định địa chỉ MAC (đích) từ địa chỉ IP.

ARP xây dựng một bảng trong RAM chứa ánh xạ địa chỉ IP sang địa chỉ MAC. Giao thức bao gồm các thông số kỹ thuật (chẳng hạn như một gói cụ thể) để tạo bảng này tự động.

Lớp mạng chuyển gói và địa chỉ MAC (từ bảng ARP) của nút đích đến lớp liên kết. Lớp liên kết đóng gói gói tin trong một gói lớp liên kết và di chuyển nó dọc theo liên kết đến nút đích.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Một mạng chứa hai máy chủ và một bộ định tuyến

Giả sử trong thiết lập trên, máy chủ 222.222.222.220 muốn gửi một gói tin đến máy chủ khác 222.222.222.222. Lớp mạng sử dụng ARP để phân giải địa chỉ MAC tương ứng là 49-BD-D2-C7-56-A2 và chuyển gói tin và địa chỉ MAC đến lớp liên kết. Lớp liên kết di chuyển gói qua liên kết giữa hai máy chủ.

Tiếp theo, hãy xem xét một tình huống phức tạp hơn trong đó một máy chủ lưu trữ muốn gửi một gói tin đến một máy chủ lưu trữ khác trên một mạng khác. Ví dụ:một gói từ máy tính của tôi đến ilovecookies.com sẽ truyền từ mạng gia đình của tôi sang một mạng khác.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Một bộ định tuyến kết nối hai mạng con. Bộ định tuyến chứa hai bộ điều hợp để liên kết và hai địa chỉ IP, xác định nó trên mỗi mạng con

Có hai điều cần chú ý về bức tranh này. Đầu tiên, bộ định tuyến có hai địa chỉ IP. Vì bộ định tuyến tham gia vào hai mạng khác nhau, nó yêu cầu hai địa chỉ IP để xác định nó trong mạng tương ứng. Để biết thêm chi tiết, hãy xem phần này.

Thứ hai, hai mạng riêng biệt được gọi là mạng con. Mạng con là một nhóm hợp lý các thiết bị mạng giúp cho việc quản lý thiết bị mạng dễ tiếp cận hơn.

Giả sử trong thiết lập này, máy chủ 222.222.222.222 muốn gửi một gói đến máy chủ 111.111.111.111, liên quan đến việc thực hiện một chuyến xuyên mạng. Nó sẽ không định vị máy chủ đích (111.111.111.111) trong mạng con của nó và nó sẽ chuyển tiếp gói đến cổng mặc định (bộ định tuyến).

Lớp mạng sử dụng bảng ARP để phân giải địa chỉ MAC là 88-B2-2F-54-1A-0F. Bộ định tuyến sử dụng bảng định tuyến của nó để chuyển gói tin đến liên kết kết nối với mạng con khác. Một lần nữa, bảng ARP giúp phân giải địa chỉ MAC của máy chủ đích và gói tin di chuyển dọc theo liên kết.

Tóm lại, phần bộ điều hợp của phần cứng máy tính của bạn thực hiện các giao thức lớp liên kết. Giao thức lớp liên kết xác định một lược đồ đánh địa chỉ được gọi là địa chỉ MAC và ARP được sử dụng để ánh xạ địa chỉ IP với địa chỉ MAC. Lớp liên kết đóng gói các gói của lớp mạng và di chuyển chúng qua một liên kết.

Một trong những giao thức lớp liên kết phổ biến là Ethernet. Hãy tiếp tục ví dụ của chúng tôi (ilovecookies.com) để kiểm tra giao thức Ethernet đang hoạt động.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Một gói Ethernet đóng gói một gói IP

Chúng ta có thể thấy gói Ethernet chứa địa chỉ MAC nguồn và đích (bị bỏ qua), và nó đóng gói gói IP.

Tóm tắt

Hãy tóm tắt những gì chúng ta đã thấy trong bài viết này bằng hình ảnh bên dưới.

Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet
Giao tiếp mạng đầu cuối giữa máy chủ A và máy chủ B

Các ứng dụng máy tính chạy trên hai hệ thống khác nhau (được gọi là máy chủ) giao tiếp bằng giao thức.

Giao thức là các quy tắc chi phối giao tiếp giữa hai máy chủ. Ngăn xếp giao thức giải quyết nhiều vấn đề con để giải quyết vấn đề truyền thông mạng. Mỗi lớp tập trung vào việc giải quyết một vấn đề phụ bằng cách sử dụng các dịch vụ được cung cấp bởi các lớp thấp hơn trong phân cấp trừu tượng.

Các giao thức lớp ứng dụng hoạt động ở mức trừu tượng cao nhất. Một ứng dụng giao tiếp bằng cách gửi các thông báo tuân thủ các quy tắc của một giao thức ứng dụng (ví dụ:HTTP).

DNS được sử dụng để ánh xạ tên máy chủ (www.ilovecookies.com) với một địa chỉ IP. Các thông báo này được đẩy qua giao diện socket để được truyền qua mạng bằng cách sử dụng lớp truyền tải.

Lớp truyền tải thể hiện một giao tiếp logic giữa hai ứng dụng chạy trên các máy chủ khác nhau. Nó chia nhỏ các thông điệp ứng dụng thành các phần nhỏ hơn và gói chúng trong các gói chứa thông tin bổ sung (tiêu đề).

Thông điệp ứng dụng được tạo từ các gói này và được đẩy qua giao diện socket bằng cách sử dụng số cổng trên gói. Các gói này được gửi qua mạng bằng cách dựa vào lớp mạng.

Tiếp theo, lớp mạng tiếp quản, cung cấp giao tiếp logic giữa hai máy chủ. Nó cũng đóng gói gói truyền tải trong một gói mạng.

Internet chứa các thiết bị chuyển mạch gói chuyển tiếp các gói mạng, sử dụng các bảng định tuyến được lưu trữ trong RAM và được xây dựng động bằng cách sử dụng các giao thức định tuyến. Lớp mạng dựa vào lớp liên kết để di chuyển các gói.

Lớp liên kết chịu trách nhiệm di chuyển các gói tin qua các liên kết riêng lẻ. Các thiết bị phần cứng, được gọi là bộ điều hợp, thực hiện các giao thức lớp liên kết và có một địa chỉ cố định được liên kết với chúng, được gọi là địa chỉ MAC. Địa chỉ MAC đóng vai trò là định danh cho lớp này. Giao thức phân giải địa chỉ (ARP) ánh xạ địa chỉ IP với địa chỉ MAC.

Cuối cùng, lớp liên kết chuyển các gói đến lớp vật lý, lớp này tạo thành các dây dẫn thông tin đi qua đó.

Cảm ơn bạn đã đọc! Tôi hy vọng bạn đã học được điều gì đó mới về mạng máy tính hôm nay.

Nguồn

Mạng máy tính:Phương pháp tiếp cận từ trên xuống, ấn bản thứ 7 Kết nối mạng máy tính:Phương pháp tiếp cận từ trên xuống, ấn bản thứ 7 Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet James F. Kurose, Đại học Massachusetts, Amherst Keith RossPearson Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet Wireshark · Đi sâu. Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet Hướng dẫn kết nối mạng máy tính - Cách các ứng dụng mạng nói chuyện qua Internet