Giới thiệu về OSI

Khi mạng ARPA mới được phát triển, chúng tôi thực sự muốn làm cho nó trở nên thông minh nhất có thể. Nhưng mạng càng phức tạp thì càng khó phát triển và bảo trì. Như một giải pháp, người ta đã đề xuất chia tất cả các chức năng mạng thành các lớp logic.

Mô hình vận hành mạng được gọi là mô hình mạng của ISO/OSI Open Systems Interconnection Base Reference Model. Tóm lại - mô hình OSI (Kết nối hệ thống mở).

mô hình OSI

Tổng cộng, có 7 cấp độ trong mô hình này. Sự tương tác của các cấp độ được chuẩn hóa nghiêm ngặt và giảm thiểu. Cấp độ thấp hơn không biết gì về sự hiện diện của các cấp độ cao hơn và cấu trúc của chúng.

Lớp thấp nhất chỉ có thể gửi bit . Thậm chí không truyền, cụ thể là gửi. Anh ấy không biết liệu họ có muốn hay không. Đã gửi và bị lãng quên.

Cấp độ cao hơn đã hoạt động với các nhóm bit - khung và biết một chút về thiết bị vật lý của mạng, hiểu địa chỉ MAC và những thứ tương tự.

Cấp độ tiếp theo là hàng loạt. Anh ấy thậm chí còn thông minh hơn và biết cách vận hành với các địa chỉ IP mạng. Và như thế.

Tại sao tất cả điều này là cần thiết? Để tối đa hóa tính linh hoạt.

Hãy tưởng tượng rằng mỗi lớp là một giao diện Java và nó có thể có một số triển khai khác nhau. Vì vậy, ở đây quá. Ở cấp độ vật lý, bạn có thể gửi bit qua dây, gửi qua vô tuyến (Wi-Fi), gửi qua vệ tinh và tất cả các cấp độ khác thậm chí sẽ không biết gì về nó. Và mọi thứ sẽ hoạt động như dự định.

ngăn xếp giao thức OSI

Bạn có thể nghiên cứu chi tiết hơn về ngăn xếp giao thức trong hình bên dưới :

Nhưng nếu bạn không phải là quản trị viên hệ thống, thì bạn không cần những giao thức chi tiết như vậy. Thú vị hơn có thể là nghiên cứu về ngăn xếp giao thức TCP (Transmission Control Protocol) / IP (Internet Protocol).

Ba lớp trên cùng trong mô hình OSI, tức là lớp ứng dụng, lớp trình bày và lớp phiên, không được phân biệt riêng biệt trong mô hình TCP/IP, mô hình chỉ có một lớp ứng dụng phía trên lớp vận chuyển:

Phân phối các giao thức theo các lớp của mô hình OSI

TCP/IP OSI
áp dụng áp dụng HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP
đại diện XDR, AFP, TLS, SSL
phiên họp ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP
Chuyên chở Chuyên chở TCP, UDP, SCTP, SPX, ATP, DCCP, GRE
mạng mạng IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
ống dẫn ống dẫn Ethernet, Vòng mã thông báo, HDLC, PPP, X.25, Chuyển tiếp khung, ISDN, ATM, SPB, MPLS, ARP/td>
Thuộc vật chất dây điện, thông tin vô tuyến, dây cáp quang, bức xạ hồng ngoại

Ngăn xếp giao thức TCP/IP

Ngăn xếp giao thức TCP/IP bao gồm bốn lớp:

  • Lớp ứng dụng
  • Lớp vận chuyển
  • Lớp Internet (Lớp mạng) (Lớp Internet)
  • Lớp liên kết (Lớp truy cập mạng)

Các giao thức của các lớp này thực hiện đầy đủ tất cả các chức năng của mô hình OSI. Tất cả sự tương tác của người dùng trong mạng IP được xây dựng trên ngăn xếp giao thức TCP/IP.

Ngăn xếp giao thức TCP/IP độc lập với phần cứng vật lý, ngoài những thứ khác, đảm bảo tương tác hoàn toàn minh bạch giữa mạng có dây và mạng không dây.

Lớp Ứng dụng là nơi hầu hết các ứng dụng mạng chạy.

Lớp ứng dụng

Đối với sự tương tác của các chương trình, có các giao thức cấp cao để trao đổi thông tin. Ví dụ: các trình duyệt hoạt động bằng giao thức HTTP, thư được gửi bằng giao thức SMTP, Telegram hoạt động bằng giao thức được mã hóa của riêng nó.

Nhưng chúng tôi không quan tâm lắm đến các giao thức riêng tư. Thông thường, bạn sẽ gặp phải các giao thức hàng loạt, chẳng hạn như ứng dụng khách ftp cho FTP (truyền tệp), SSH (kết nối an toàn với máy từ xa), DNS (dịch ký tự sang địa chỉ IP) và nhiều giao thức khác.

Hầu như tất cả các giao thức này đều chạy trên TCP, mặc dù một số chạy trên UDP (Giao thức gói dữ liệu người dùng) để tăng tốc mọi thứ. Nhưng quan trọng là các giao thức này có các cổng mặc định. Ví dụ:

  • 20 FTP sang cổng TCP 20 (để truyền dữ liệu) và 21 (cho các lệnh điều khiển)
  • 22-SSH
  • 23 - Điện thoại
  • 53 - Truy vấn DNS
  • 80-HTTP
  • 443-HTTPS

Các cổng này được xác định bởi Cơ quan gán tên và tham số duy nhất (IANA).

Có một số giao thức tầng ứng dụng phổ biến khác: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

lớp vận chuyển

Các giao thức tầng vận chuyển được thiết kế để giải quyết vấn đề gửi tin nhắn được đảm bảo.

Một tin nhắn (gói dữ liệu) có thể được gửi đi và bị mất ở đâu đó trên mạng. Trong trường hợp này, lớp truyền tải sẽ giám sát các tình huống này và gửi lại thông báo nếu cần.

Một nhiệm vụ quan trọng khác của giao thức tầng vận chuyển là kiểm soát thứ tự các thông báo đến. Thường xảy ra trường hợp các tin nhắn được gửi theo thứ tự này và đến theo thứ tự khác. Và nếu bạn tập hợp một thông điệp lớn từ những phần như vậy, bạn sẽ trở nên vô nghĩa.

Để ngăn điều này xảy ra, lớp vận chuyển sẽ liệt kê các tin nhắn hoặc không gửi tin nhắn mới cho đến khi nó nhận được xác nhận đã nhận tin nhắn trước đó. Các giao thức định tuyến tự động hiện diện một cách hợp lý ở lớp này (vì chúng chạy trên IP) thực sự là một phần của các giao thức lớp mạng.

Giao thức TCP là một cơ chế vận chuyển được thiết lập trước kết nối “được đảm bảo”, cung cấp cho ứng dụng luồng dữ liệu đáng tin cậy, đảm bảo rằng dữ liệu nhận được không có lỗi, yêu cầu lại dữ liệu trong trường hợp mất và loại bỏ sự trùng lặp dữ liệu.

TCP cho phép bạn điều chỉnh tải trên mạng, cũng như giảm thời gian chờ dữ liệu khi truyền trên một khoảng cách xa. Hơn nữa, TCP đảm bảo rằng dữ liệu nhận được được gửi theo cùng một trình tự. Đây là điểm khác biệt chính của nó so với UDP.

UDP là một giao thức datagram không kết nối. Nó còn được gọi là giao thức truyền "không đáng tin cậy", theo nghĩa là không có khả năng xác minh việc gửi tin nhắn đến người nhận, cũng như khả năng trộn các gói. Các ứng dụng yêu cầu truyền dữ liệu đảm bảo sử dụng giao thức TCP.

UDP thường được sử dụng trong các ứng dụng như phát trực tuyến video và chơi trò chơi trong đó việc mất gói được chấp nhận và việc thử lại khó khăn hoặc không chính đáng hoặc trong các ứng dụng phản hồi thách thức (chẳng hạn như truy vấn DNS) khi thiết lập kết nối cần nhiều tài nguyên hơn Gửi lại.

Cả TCP và UDP đều sử dụng một số gọi là cổng để xác định giao thức lớp trên.