網際網路概論I:當拿起手機上網時
在我們深入後端開發的世界之前,我們需要先了解一下整個網際網路是如何運作的。
網際網路如何工作
想像一下,網際網路就像一個巨大的全球郵政系統。在這個系統中:
- 每台連接到網際網路的設備(如你的電腦或手機)就像一個家庭地址。
- 網站和在線服務就像不同的辦公室或商店。
- 封包就像信件或包裹,在這個全球系統中傳遞。
實際案例:瀏覽網站時發生了什麼事情?
當你在瀏覽器中輸入 www.google.com 並按下 Enter 時,事實上發生了以下過程:
- 你的瀏覽器首先向DNS(域名系統)伺服器發送請求,就像查詢電話簿一樣,將網站名稱轉換為IP地址。
- 得到IP地址後,你的設備會向該地址發送請求,就像寄一封信一樣。
- 發送出的請求經過多個路由器(就像郵局分送中心)傳遞,直到抵達目標伺服器。
- 伺服器處理請求並發送回應(網頁內容),就像回信一樣。
- 回應透過網際網路(一樣經過多個路由器)返回到你的設備,你的瀏覽器再將回應顯示於網頁。
而上述整個過程通常會在幾秒鐘內完成,快到令我們幾乎沒有感覺,這就是神奇的網際網路世界!
數據如何在網路中傳輸
在網際網路這個全球郵政系統中,數據是如何傳輸的呢?讓我們繼續使用郵政系統的比喻:
- 封包就像旅行中的包裹。
- 每個封包都有一個”寄件人地址”(源IP)和一個”收件人地址”(目標IP)。
- 封包有大小限制,故大型文件或訊息會被分成多個的封包,批次傳遞。
封包的旅程
讓我們用一個簡單的工具來展示封包的傳輸過程。在Windows上,你可以使用tracert
命令;在Mac或Linux上,使用traceroute
命令。
打開命令行工具,輸入以下命令:
tracert www.example.com # Windows
traceroute www.example.com # Mac/Linux
你會看到類似這樣的輸出:
1 <1 ms <1 ms <1 ms 192.168.1.1
2 * * * Request timed out.
3 20 ms 19 ms 19 ms 10.20.30.40
4 15 ms 15 ms 15 ms 20.30.40.50
...
每一行代表封包經過的一個”郵局分送中心”(路由器)。你可以看到封包如何從你的設備跳到最終目的地,這就是數據在網際網路中的旅行方式!
HTTP/HTTPS簡介
HTTP(超文本傳輸協議)和它的安全版本HTTPS是網路通信的基礎。讓我們用一個簡單的比喻來理解它們:
- HTTP就像發送明信片。任何人都可以在傳輸過程中直接看見內容。
- HTTPS就像發送上了鎖的信封。只有收件人可以打開信封閱讀內容。
實例:HTTP請求和回應
讓我們看一個簡單的HTTP請求和回應:
請求(從你的瀏覽器發送到伺服器):
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
回應(從伺服器發送回你的瀏覽器):
HTTP/1.1 200 OK
Content-Type: text/html
<!DOCTYPE html>
<html>
<body>
<h1>Welcome to Example.com!</h1>
</body>
</html>
網路協議在日常生活中的應用
網路協議無處不在,讓我們以線上購物為例,看看各種協議是如何協同工作的:
- DNS:當你輸入購物網站的網址時,DNS將其轉換為IP地址。
- TCP/IP:確保你的封包可靠地到達購物網站的伺服器。
- HTTPS:保護你的個人訊息和交易密碼的安全。
- HTTP:用於在你的瀏覽器和購物網站伺服器之間傳輸數據。
每次你瀏覽網頁、發送電子郵件或使用應用程式時,這些協議都在背後默默工作,使我們的網路體驗變得順暢和安全。
結語
今天,我們探索了網路通信的基礎知識,包括網際網路的工作原理、數據傳輸方式、HTTP/HTTPS的基本概念,以及這些技術在日常生活中的應用。理解這些概念對於成為一名優秀的後端開發者很重要,因為它們是撰寫高效能、安全的網路應用程式的基礎知識。