Phần cứng / Phần mềm đằng sau đóng gói các lớp IP / TCP


2

Mỗi hướng dẫn tôi đọc đều nói về cách các lớp "giao tiếp" với nhau, nhưng không bao giờ đề cập đến phần cứng / phần mềm nào nhận được, thêm vào và gửi từng lớp dữ liệu điều khiển.

Phần cứng và phần mềm nào nhận / đóng gói / gửi dữ liệu liên quan đến từng lớp IP / TCP?

Ví dụ, bộ định tuyến của tôi hoạt động trên lớp nào? Phần mềm nào dịch tập tin văn bản thành SMTP? Cái gì / ở đâu trong máy tính của tôi là phần mềm để điều khiển / vận chuyển?


2
"IP / TCP" ??? Các giao thức Internet này luôn được gọi là "TCP / IP", không bao giờ có cách khác.
jlliagre

Câu trả lời:


3
Layer 1 - Physical - Signaling 

Layer 2 - Data Link - Switching (Ethernet frames) 

Layer 3 - Network - Routing (IP packets)

Layer 4 - Transport - Multiplexing (TCP segments)

Layer 5 - Session

Layer 6 - Presentation

Layer 7 - Application

Lý do tại sao việc triển khai phần mềm / phần cứng cụ thể không được đề cập là vì đó là toàn bộ quan điểm phát triển tiêu chuẩn. Mỗi lớp không quan tâm làm thế nào lớp bên trên và bên dưới đảm nhiệm chức năng của nó, miễn là dữ liệu được trình bày theo tiêu chuẩn. Nó có thể là phần mềm, phần cứng, chương trình cơ sở, thông qua một thiết bị phi điện tử cơ học hoặc thậm chí là thủ công của con người (google "TCP over Carrier pigeon" cho một ví dụ không nghiêm trọng).

Các phần mềm và phần cứng cụ thể liên quan rất khác nhau trong thế giới thực. Hoàn toàn có thể thực hiện tất cả các chức năng trong phần mềm (giá rẻ nhưng chậm). Nó cũng hoàn toàn có thể làm tất cả chúng trong phần cứng (nhanh nhưng đắt tiền). Các thiết bị mạng chuyên dụng như bộ định tuyến của Cisco, v.v. sẽ thực hiện nhiều chức năng trong phần cứng hơn là một PC chạy Linux được cấu hình như một bộ định tuyến.

Nói chung, Lớp 1 và chủ yếu là Lớp 2 được đảm bảo thực hiện trong phần cứng. Lớp 3 hầu hết được thực hiện bằng phần cứng trên bộ định tuyến cấp doanh nghiệp, chẳng hạn như của Cisco. Nhiều NIC đi kèm với một tính năng gọi là "Công cụ giảm tải TCP" có thể tăng tốc hầu hết Lớp 3 và 4 thông qua phần cứng trên NIC. Các bộ định tuyến cấp tiêu dùng của bạn từ Wal-mart thường làm chức năng định tuyến hoàn toàn trong phần mềm. Lớp 5, 6 và 7 thường không được thực hiện trong phần cứng và nếu có, các thiết bị làm như vậy được gọi là "máy gia tốc".


1
Đây là ISO, không phải IP / TCP nhưng điều này cũng giải thích mọi thứ như vậy =)! Một câu hỏi cuối cùng mặc dù. Làm thế nào là một con đường của các cổng được tìm thấy cho gói đi du lịch? Có một số loại phần mềm máy chủ nhận thức được mọi vị trí cổng, vì vậy nó có thể tạo đường dẫn tốt nhất đến đích?
Griffin

Không có phần mềm máy chủ nhưng có một ISP giao thức sử dụng để thông báo cho nhau về các cổng tới các ISP / mạng con khác trong không gian địa chỉ IP: BGP.
LawrenceC

Ok câu hỏi cuối cùng, Khi một máy chủ chuyển kết nối ổ cắm xuống quy trình xử lý luồng mới, liệu dữ liệu đến / đi mới vẫn phải được xử lý bởi máy chủ chính vì vậy nó có thể được chuyển hướng đến đúng quy trình con không?
Griffin

Có thể nhận được câu trả lời tốt hơn khi đọc tài liệu Apache (ví dụ về máy chủ "forking") hoặc trên stackoverflow.com
LawrenceC

2

Phần cứng và phần mềm nào nhận / đóng gói / gửi dữ liệu liên quan đến từng lớp IP / TCP?

Phần cứng Ethernet thường chỉ được sử dụng ở các lớp thấp nhất, các lớp vật lý và liên kết. Dựa trên địa chỉ MAC của nó, phần cứng sẽ chỉ chấp nhận các khung unicast phù hợp. Trình điều khiển thiết bị Ethernet thường chịu trách nhiệm cung cấp giao diện phần mềm cho thiết bị này. Thiết bị thường có thể đọc và ghi các khung Ethernet hoàn chỉnh từ và tới các bộ đệm được sắp xếp trong một vòng (liên kết) được liên kết và trình điều khiển có thể ngắt hoặc trạng thái thăm dò ý kiến ​​cho bất kỳ thay đổi nào về trạng thái vòng đệm (nghĩa là hoàn thành thao tác đọc hoặc ghi khung)

Phần mềm được gọi chung là giao thức ngăn xếp . Nó là một tập hợp các thủ tục và hàm được tích hợp trong kernel. Chúng được gọi giống như bất kỳ hệ thống phân cấp phần mềm nào. Khi chương trình người dùng thực hiện cuộc gọi hệ thống R / W của socket, một thói quen ứng dụng lớp trên cùng được gọi. Hệ thống phân cấp chương trình con / thủ tục này giống như bất kỳ phần mềm được xây dựng tốt nào khác thực thi mô đun, khớp nối lỏng lẻo và độ gắn kết cao.

Mỗi lớp trong giao thức được thực hiện bằng một hoặc nhiều lệnh gọi thủ tục (lồng nhau) cho đến khi gói dữ liệu được lưu trữ trong bộ đệm khung, sẵn sàng cho đầu ra bằng phần cứng. Khi hoàn thành ghi, trạng thái được trả về cuộc gọi của người dùng.

Ví dụ, bộ định tuyến của tôi hoạt động trên lớp nào?

Internet được mô tả bởi Mô hình TCP / IP :

  • Lớp ứng dụng
  • Lớp vận chuyển
  • Lớp Internet
  • Lớp liên kết
  • Lớp vật lý

Bộ định tuyến của bạn chỉ đạo các gói dựa trên địa chỉ IP, đó là lớp Internet. Nhưng bộ định tuyến có ngăn xếp giao thức riêng để thực hiện các dịch vụ khác như tiện ích cấu hình dựa trên web của nó. Mỗi máy chủ trên mạng có thể sẽ có một ngăn xếp giao thức hoàn chỉnh; các lớp không được phân phối giữa các máy chủ / thiết bị mạng.

Phần mềm nào dịch tập tin văn bản thành SMTP?

Giao diện chương trình thư của bạn với lớp Ứng dụng.

Cái gì / ở đâu trong máy tính của tôi là phần mềm để điều khiển / vận chuyển?

Có lẽ là lớp Giao thông, nơi TCP hoạt động.


"Các lớp không được phân phối giữa các máy chủ / thiết bị mạng" không phải phần mềm / bộ định tuyến máy chủ có áp dụng các lớp của riêng chúng không? Địa chỉ Mac thay đổi giữa mỗi hop chẳng hạn. Hệ điều hành Windows của tôi không áp dụng mọi lớp xuống lớp vật lý phải không?
Griffin

Tôi nói từ đó kém. Ngăn xếp giao thức của một máy chủ sẽ bao gồm tất cả các giao thức và các lớp mà máy chủ đó phải xử lý. Mặc dù bộ định tuyến của bạn "hoạt động ở lớp 3, lớp Internet", điều đó không có nghĩa là không có lớp Internet trong bất kỳ ngăn xếp giao thức nào khác trong bất kỳ máy chủ nào. PC Windows của bạn có tất cả các lớp trong ngăn xếp giao thức của nó và các giao thức khác nhau có thể được định cấu hình là bật hoặc tắt hoặc thêm (ví dụ: máy chủ DHCP). Và hầu hết các hoạt động mạng của bạn sẽ sử dụng tất cả các lớp trên PC của bạn xuống lớp Vật lý (vì bạn mong đợi nó thoát ra khỏi dây).
sawdust
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.