This translation is incomplete. Please help translate this article from English.
How the Web works cung cấp cho bạn một cái nhìn đơn giản về những gì xảy ra khi bạn mở một trang web trên điện thoại hay trên máy tính.
Những lý thuyết này không thật sự thiết yếu cho việc lập trình web trong tầm ngắn hạn, nhưng việc hiểu được những gì thật sự diễn ra đằng sau sẽ mang lại rất nhiều những lợi ích dài hạn cho bạn trong tương lai không xa.
Máy khách và Máy chủ
Máy tính kết nối với mạng toàn cầu được gọi là Máy khách và Máy chủ. Đây là một giản đồ đơn giản về cách chúng có thể tương tác với nhau:
- Máy khách là những thiết bị kết nối mạng của những người dùng Internet (Ví dụ: máy tính hay điện thoại của bạn) và những phần mềm kết nối mạng trên những thiết bị đó(thường là một trình duyệt như firefox hay chrome).
- Máy chủ là những máy tính lưu trữ trang web hay những ứng dụng. Khi một thiết bị khách muốn truy cập một trang web, một bản sao của trang web được tải từ máy chủ về máy khách để hiển thị trên trình duyệt của người dùng.
Những phần khác của câu chuyện
Máy chủ và máy khách không phải là toàn bộ câu chuyện đằng sau một trang web. Còn có rất nhiều bộ phận liên quan nữa sẽ được mô tả ngay sau đây :).
Tạm thời, hãy cứ tưởng tượng Mạng toàn cầu giống như một con đường vậy. Ở một đầu của con đường là Máy khách, nó giống như là ngôi nhà của bạn vậy. Còn ở phía cuối con đường là Máy chủ – một cửa hàng mà bạn đến để mua một món đồ chẳng hạn.
Ngoại trừ Máy chủ và Máy khách, còn có những thứ cần thiết sau:
- Mạng Internet: Cho phép bạn nhận và gửi dữ liệu qua nó. Nó về cơ bản giống như con đường giữa nhà bạn và cửa hàng.
- TCP/IP: Bộ giao thức liên kết mạng là một bộ giao thức xác định cách thức dữ liệu được truyền tải qua mạng Internet. Nó giống như là một phương tiện di chuyển giúp bạn đi đến cửa hàng và mua hàng hóa của mình. Trong ví dụ của chúng tôi nó giống như là một chiếc xe hơi hay xe đạp vậy (hoặc đôi chân của bạn).
- DNS: Hệ thống tên miền giống như một cuốn sổ địa chỉ dành riêng cho Mạng Internet vậy. Khi bạn nhập một địa chỉ web vào trình duyệt, trình duyệt sẽ nhìn vào cuốn sổ địa chỉ đó để tìm địa chỉ của trang web. Trình duyệt cần tìm ra được máy chủ của trang web, để có thể gửi những tin HTTP tới đúng chổ (xem bên dưới). Chuyện này giống như việc bạn tìm địa chỉ của cửa hàng để tìm đến nó vậy.
- HTTP: Giao thức truyền tải siêu văn bản là một giao thức ứng dụng xác định ngôn ngữ giao tiếp giữa các máy chủ và máy khách.
- Những file thành phần: Một trang web được lập nên từ rất nhiều file thành phần. Những file này được chia làm hai loại:
- Code file: Một trang web thường được xây dựng chủ yếu bằng những file HTML, CSS và JavaScript. Bạn sẽ được tiếp xúc với các công nghệ khác sau này.
- Assets: Assets chỉ tất cả những thứ khác hợp thành trang web, như ảnh, nhạc, video, v.v
Vậy chính xác chuyện gì đã xảy ra?
Khi bạn nhập một địa chỉ web vào trình duyệt:
- Trình duyệt tìm đến máy chủ DNS và tìm địa chỉ thật sự của máy chủ chứa trang web.
- Trình duyệt gửi một tin yêu cầu HTTP (HTTP request) tới máy chủ đó yêu cầu nó gửi về một bản copy của trang web tới máy của người dùng. Yêu cầu HTTP đó, và tất cả dữ liệu khác gửi qua lại giữa máy chủ và máy khách, được truyền tải qua mạng Internet sử dụng giao thức TCP/IP.
- Nếu máy chủ chấp nhận yêu cầu của máy khách, máy chủ sẽ gửi một tin nhắn “200 OK”, có nghĩa là “Tất nhiên là bạn có thể xem trang web này rồi! Nhận lấy này!”, và sau đó bắt đầu gửi những file của trang web tới trình duyệt dưới dạng những mảnh nhỏ dữ liệu được gọi là gói dữ liệu (data packets).
- Trình duyệt sẽ ráp những mảnh nhỏ đó thành một trang web hoàn chỉnh và hiển thị nó lên màn hình.
Giải thích DNS
Địa chỉ thật của một trang web không phải những chuổi ký tự dễ nhớ mà bạn vẫn hay gõ vào hàng ngày đâu. Chúng thật ra là một chuỗi những con số, Ví dụ: 63.245.217.105.
Nó được gọi là địa chỉ IP, và nó đại diện cho một vị trí độc nhất trên mạng toàn cầu. Tuy nhiên, làm sao bạn có thể nhớ nổi các con số vô nghĩa đó? Đó chính là lý do người ta phát minh ra DNS. Chúng là những máy chủ biến những địa chỉ phù hợp (như “mozilla.org”) thành những địa chỉ thật sự ( địa chỉ IP).
Bạn hoàn toàn có thể truy cập một trang web qua địa chỉ IP của nó. Hãy thử truy cập trang chủ của Mozilla qua địa chỉ IP sau 63.245.217.105
.
Giải thích về Packets
Trước đó chúng tôi đã dùng thuật ngữ “packets” để diễn tả hình thức mà dữ liệu được gửi từ máy chủ tới máy khách. Vậy nó mang ý nghĩa như thế nào? Về cơ bản, khi dữ liệu được gửi qua mạng Internet, nó được gửi dưới dạng hàng nghìn mảnh nhỏ, để giúp cho nhiều người dùng có thể tải trang web cùng một lúc. Nếu trang web được gửi dưới dạng một miếng lớn, thì chỉ duy nhất một người dùng có thể tải trang web một lúc, điều tất nhiên sẽ làm cho trang web kém hiệu quả và khó chịu cho người dùng.
Xem thêm
- How the Internet works
- HTTP — an Application-Level Protocol
- HTTP: Let’s GET It On!
- HTTP: Response Codes
Credit
Street photo: Street composing, by Kevin D.