How Does The Internet Work?

1. How does the internet work?

internet hoạt động thông qua mạng định tuyến gói cùng với (Internet Protocol (IP)), Transport Control Protocol(TCP) và giao thức khác.

2. What's a protocol?

Protocol là một tập hơp cá quy tắc chỉ định các máy tính nên giao tiếp với nhau qua mạng. Ví dụ như Transport control protocol có quy tắc là nếu một máy tính gửi dữ liệu đến một máy tính khác, máy tính đích sẽ cho máy tính nguồn biết nếu có dữ liệu nào bị thiếu để máy tính nguồn có thể gửi lại . Hoặc giao thức internet chỉ đinh cách máy tính định tuyến thông tin các máy tính đến các máy tính khác bằng cách đính kèm địa chỉ vào dữ liệu mà nó gửi.

3. What's a packet?

Dữ liệu được gửi qua Internet được gọi là mesage. Trước khi message được gửi ,đầu tiên nó được chia thành nhiều phần được gọi là packets. Các gói này được gửi độc lập với nhau. Kích thước tối đa thường từ 1000 đến 3000 ký tự. Giao thức internet chỉ định cách các message nên được đóng gói.

4. What’s a packet routing network?

Đây là một mạng định tuyến các gói từ máy tính nguồn đến máy đinh. Internet được tạo thành từ mạng lưới lớn các máy tính chuyên dụng gọi là bộ định tuyến. Mỗi công việc của bộ định tuyến là biết cách di chuyển từ các gói nguồn đến đích. một gói sẽ di chuyển qua nhiều bộ đinh tuyến trong suốt quá trình của nó.

khi một gói chuyển từ bộ định tuyến này sang bộ định tuyến tiếp theo, nó gọi là hop. Bạn có thể sử dụng cmd -tool để có được danh sách hop packets giữa các máy chủ.

Command-line utility traceroute showing all the hops between my computer and google’s servers

Giao thức internet chỉ định cách các địa chỉ mạng nên được gắn vào các Header của gói tin, một không gian được chỉ định trong gói chứa dữ liệu meta của nó. Giao thức intenet cũng chỉ định cách các bộ đinh tuyến sẽ chuyển các gói dựa trên địa chỉ trong tiêu đề.

5. Where did these Internet routers come from? Who owns them?

Các bộ đinh tuyến này có nguồn gốc từ nắm 1960 với cái tên ARPANET, là một dự án quân sự với mục đích ban đầu là một máy tính được phân cấp để chính phủ có thể truy cập và phân phối thông tin trong trường hợp xảy ra sự kiện khẩn cấp. Kể từ đó một số tập đoàn cung cấp dịch vụ internet(ISP) đã thêm bộ đinh tuyến vào các bộ đinh tuyến ARPANET này.

Không một ai là chủ sở hữu của bộ định tuyến này , mà là nhiều chủ sở hữu các cơ quan chính phủ và trường đại học liên kết với ARPANET trong những ngày đầu và các tập đoàn ISP như AT và sau này là Verizon.

6. Do the packets always arrive in order? If not, how is the message re-assembled?

Các gói có thể đến không đúng thứ tự gửi . Điều này xảy ra khi một gói đi qua một bộ định tuyến khác nhanh hơn gói trước . Nhưng Header của gói tin sẽ chưa toàn bộ thông tin thứ tự , giao thức sẽ sử dụng thông tin này để sắp xếp lại cho đúng tại điểm đích.

7. Do packets always make it to their destination?

Internet Protocol không đảm băng răng sẽ các gói tin sẽ luôn luôn tới đúng đích thì thoảng sẽ bị mất gói tín, nó cũng thương xay ra thoi khi mà một số dích đến có nhiều hơn số gói tin cần nhận.

Tuy nhiên Transport Control Protocol xử lý khi bị mật gói tin bằng cách gửi lại. Bởi các máy đích đến sẽ luôn gửi lại số gói tín đã nhận tơi máy nguồn như vậy máy chủ sẽ biết máy đích đang thiếu hay đã đủ gói tin. cách thức giao tiếp giữa 2 máy chủ và máy đích là kết nối TCP

8. What do these Internet addresses look like?

Các địa chị này được gọi là địa chỉ IP và có 2 chuẩn hiện nay.

Chuẩn đâu tiên được gọi là IPv4 và nó như thế này 212.78.1.25. Nhưng vì IPv4 chỉ hỗ trợ 2^32(khoảng đâu đó 4 tỷ) địa chỉ có thể. Internet Task Force đã đề xuất chuẩn mới IPv6 và nó thì 3ffe:1893:3456:f231:d454:34fd. IPv6 hỗ trợ 2^128 đĩa chỉ có thể . Như vậy thì sẽ có nhiều thiết bị tham gia vào network hơn. và việc chuyển đổ từ IPv4 sang IPv6 sẽ mất khá khá thời gian, năm 2014 thì Google họ đã tiết lộ răng IPv6 của hộ mới chỉ 3%.

9. How can there be over 8 billion networked devices on the Internet if there are only about 4 billion IPv4 addresses?

Thực tế là có một số IP puplic và private. Nhiều thiết bị mạng cục bộ được kết nối với Internet được share cung địa chỉ IP pupblic. Trong mạng cục bộ các thiết bị được phân biệt bởi các IP riêng thường có dạng 192.168.xx or 172.16.x.x or 10.x.x.x vói x (1..255). Các private IP được assigned bởi các Dynamic Host Configuration Protocol (DHCP)

Ví dụ nhé : Nếu một laptop và smart phone cùng mạng cục bộ cả 2 cùng gửi request www.google.com , trước khi gói tin rời khỏi modem, nó được chỉnh sửa header và assigns port cho gói đó . Sau khi đáp ứng request từ 2 thiết bị đó thì google sẽ trả lại modem tại port đã được set trước đó vậy nên modem sẽ biết đính tuyến sẽ đên smartphone hay laptop.

Như vậy các bạn có thể thấy là địa chỉ IP này không phải sẽ gắn cố cho một thiết bị nhé mà địa chỉ MAC sẽ không thay đôi trong suốt vong đời máy tính .

Giao thức ánh xạ địa chỉ IP riêng này thành địa chỉ IP công cộng được gọi là giao thức dịch địa chỉ mạng (NAT). Nó có thể hỗ trợ hơn 8 tỷ thiết bị được kết nối mạng chỉ với 4 tỷ địa chỉ IPv4 có thể.

10. How does the router know where to send a packet? Does it need to know where all the IP addresses are on the Internet? Mọi bộ định tuyến không cần phải biết địa chỉ IP ở đâu . Nó chỉ cần biết một thằng địa chỉ hàng xóm của nó thôi được gọi là liên kết ngoài, để định tuyến đừng gói đến. Lưu ý rằng địa chỉ IP có thể break down thành 2 phần Network Prefix và Host Identifier

Network Prefix: 129.42
Host Identifier: 13.69

Tất cả các thiết bị connect với internet đều thông qua một kết nối duy nhất sẽ cũng chia sẻ cùng một network prefix Bộ đinh tuyến sẽ send all gói tin từ 129.42.. đến cùng nơi. Vì vậy, thay vi theo dõi hàn tỷ địa chỉ IP, bộ đinh tuyến chỉ phải keep track ít hơn 1 triệu network prefix

11. But a router still needs to know a lot of network prefixes . If a new router is added to the Internet how does it know how to handle packets for all these network prefixes?

Một bộ định tuyến mới có thể đi kèm với một vài tuyến đường được cấu hình sẵn. Nhưng nếu nó gặp một gói và không biết đinh tuyến như thế nào, nó sẽ truy vấn các đinh tuyến hàng xóm. Nếu như anh hàng zóm biết đường đến của gói tin này , nó sẽ gửi lại info trở lại cho bộ đinh tuyến yêu cầu. Bộ đinh tuyến yêu cầu sẽ lưu info này để sử dụng sau này.Theo cách này, một bộ định tuyến mới xây dựng bảng định tuyến của riêng mình, một cơ sở dữ liệu gồm các tiền tố mạng cho các liên kết ngoài. Nếu bộ định tuyến lân cận không biết, nó sẽ truy vấn hàng xóm của mình và cứ thế.

12. How do networked computers figure out ip addresses based on domain names? Chúng tôi gọi tìm kiếm địa chỉ IP của một tên miền giống như www.google.com , Máy tính sẽ phân địa chỉ IP qua hệ thống tên miên (DNS) , một cơ sở dự liệu phi tập trung ánh xạ từ tên miền sang địa chỉ IP

Để giải quyết 1 địa chỉ IP, máy tính đầu tiên sẽ kiểm tra nó trong bộ nhớ DNS cục bộ nơi lưu trữ tạm thời khi mà bạn thường xuyên truy cập vào một địa chỉ IP . Nếu như mà không tìm thấy ddianj chỉ IP hoặc là nó đã hết hạn 😃 . Nó sẽ truy vấn đến ÍP's DNS server để được gải quyết . Nếu mà ISP's DNS server không thấy nữa thì sẽ truy vấn root name server . Có thể giải quyết mọi cho một tên miền câp cao (một số tên miền: .cm, .net, .org). 13. How do applications communicate over the Internet? Ồ, cũng giống như nhiều dự án kỹ thuật phưc tạp khác, Internet được chia nhỏ thành các thành phần độc lập, khi nào làm việc sẽ xác định rõ interfaces. Các thành phần này được gọi là Internet network layer và chúng bào gồm Link Layer, Internet Layer, Transport Layer và Aplication Layer. Chúng có thể gọi các layers vì chúng xây dựng chồng lến nhau. Mỗi layer lại sử dụng ccs lớp bên duới nó mà không cần quantaam chi tiết thực hiện của nó.

Ứng dụng internet tất nhiên là làm việc ở Application Layer và không cần biết chi tiết ở layer dưới. Ví du như một ứng dụng khác connect TCP với một ứng dụng khác sử dụng cấu trúc socket, nó trừu tượng hóa các chi tiết của các gói đinh tuyến và lắp ghép lại các thành các gói tin nhắn.

14. What do each of these Internet layers do?

Ở cấp độ thấp nhất Link layer là lớp vật lý của Google của internet. Lớp này liên quan đến việc truyền các bit dữ liệu thông qua một số phương tiện vật lý như cáp quang hoặc tín hiệu vô tuyến wifi.

Internet layer liên quan đến việc định tuyến các gói đến đúng nơi được yêu cầu. Giao thức Internet được đề cập trước đó tồn tại trong lớp này (do đó cùng tên). Giao thức Internet tự đông điều chỉnh và định tuyến lại các gói dựa trên tải mảng hoặc mất điện. Nó sẽ không đảm bảo mọi gói tin sẽ đến đúng nơi cần đến. Transport layer là lớp để bù đắp những dữ liệu bị mất trong các Link Layer or Internet Layer . Lớp này chủ yếu là tập hợp và chuyển lại các gói tin bị mất. Apllication Layer sử dụng tất cả các lớp bên dưới để xử lý các chi tiết phức tạp trong việc di chuyển các gói trên Internet. Nó dễ dàng cho phép các ứng dụng thực hiện kết nối với các ứng dụng khác trên internet. Giao thức HTTP chỉ đinh cách trình duyệt Web và máy chủ Web sẽ tương tác với nhau trong tâng này. Giao thức IMAP chỉ định cách ứng dụng email khách truy xuất vòng đời email trong tâng này. Giao thức FTP chỉ dịnh giao thức truyền tệp dữ liệu giữa các máy khách tải xuống tệp và máy chủ lữu trữ nằm trong tâng này.

15. What’s a client versus a server?

Mặc dù client hay server đều là ứng dụng giao tiếp với internet, nhưng client thì gần gũi với người dùng hơn chúng có các ứng dụng thân thiện với người dùng hơn webbrowser, email clients, smart phone apps. Server thì là các ứng dụng chạy trên máy tính từ xa mà client liện lạc qua internet khi cần. Ứng dung khởi tạo kết nối TCP là client, server là bên nhận kết nối này.

16. How can sensitive data like credit cards be transmitted securely over the Internet? Nhưng ngày đầu thifnos đủ đảm bảo rằng các bộ định tuyến và liên kết mạng nằm ở những vị trí an toàn về mặt vật lý. Nhưng khi mà internet tăng kích thước, nhiều bộ định tuyến hơn có nghĩ là nhiều điểm dễ bị tổn hại hơn. Cùng với đó là wifi đã ra đời tin tặc có thể chặn các gói tin . Giải pháp là mã hóa và xác thực thông qua SSL/TLS.

17. What is SSL/TLS?

SLL là viết tắt của Secured Socket Layer. TLS viết tắt * Transport Layer Security*. SSL lần đầu tiên được phát triển bởi Netcape 1994 nhưng một phiện bản an toàn hơn sau đó đã được nghĩ ra và đổi tên thành TLS. SSL/ TLS là lớp nằm giữa Transport và Application. Nó cho phép truyền thông Internet an toàn các thông tin nhạy cảm thông qua mã hóa và xác thực.

Mã hóa có nghĩa là client có thể yêu cầu kết nối TCP đến server được mã hóa. Bạn có thể hiều là các thông tin được mã hóa trước khi chia thành các gói tin . Nếu tin tăc có bắt được cách gói tin này thì cũng không có khẳ năng tái tạo lại bản hoàn chỉnh. Xác thực là client có thể tin tưởng rằng đây là thông tin được bên server gửi sang . Nó giúp bảo về và chống lại các cuộc tấn công trung gian. Đó là khi một bên chăn kết nối giưa client và server để nghe lén và giả mạo thông ti liên lạc của họ.

SSL hoạt động liên tục khi web hộ trợ SSL trên các trình duyệt hiện nay. Khi mà trình duyệt yêu cầu sử dụng giao thức https thay cho http , tức là nó đang nói với server là nó muốn có kết nối được mã hóa SSL. Nếu hộ trợ thì kết nối mã hóa an toàn được tạo và chúng ta sẽ thấy biểu tượng khóa bên cạnh thanh địa chỉ trên trình duyệt.

18. How does SSL authenticate the identity of a server and encrypt their communication?

Mã hóa bất đối xứng là một sơ đồ hóa sử dụng public key và private key. Các khóa này về cơ bản chỉ là số bắt nguồn từ các số nguyên tố lớn . Private key được sử dụng để giải mã dữ liệu va ký các tài liệu . public key được sử dụng để mã hóa dữ liệu và xác minh các mã hóa tự động tạo ra khả năng giải mã. Nó thực hiện điều này băng cách sử dụng các nguyên tắc trong nhanh toán học gọi là lý thuyết số.(https://medium.com/@User3141592/notes-on-computational-cryptography-98db5f2908f1)

SSL certificate là một kỹ thuật số bao gồm public key được giao cho server bởi các cơ quan chứng nhận. Hệ điều hành , thiết bị di động và trình duyệt đi kèm với cơ sở dữ liệu của một số cơ quan cấp chứng chỉ để nó có thể xác mình chứng chỉ SSL. Khi client yêu câu kết nối được mã hóa SSL cới server, thì nó sẽ gửi lại chứng chỉ SSL. Client kiểm tra chứng chỉ SSL

  • được cấp cho máy chủ này
  • được ký bởi cơ quan chứng nhận tin cậy
  • chưa hêt hạn

Sau đó client sử dụng public key. Chứng chỉ SSL mã hóa private key tam thời được tạo ngẫu nhiện và gửi lại cho server. Bời vì server có private key riêng tương ứng, nó có thể giải mã private key tam thời này. vì vậy cả hai có thể sự dụng nó để mã hóa đối xứng các tín nhắn họ gửi cho nhau, loại bỏ private key tạm thời sau khi kết thúc phiên .

19. What happens if a hacker intercepts an SSL-encrypted session?

Giá sử nêu bị hacker bắt được gói tin giưa client và server, thì tin tặc nhìn thấy chứng chỉ SSL mà máy chủ gửi cũng như private key tạm thời được mã hóa của client. nhưng vì hacker không có private key nên nó có thẻ giải mã khóa bí mật tạm thời và bời vì nó không có private key tạm thời nên nó có thể giải mã bất kỳ tin nhắn nào giữa clientvaf server.

Link tham khảo

https://medium.com/@User3141592/how-does-the-internet-work-edc2e22e7eb8