互联网协议入门 : 用户 ------ 底层
1號電腦要向4號電腦發送一個數據包。它先判斷4號電腦是否在同一個子網絡,結果發現不是(后文介紹判斷方法),于是就把這個數據包發到網關A。網關A通過路由協議,發現4號電腦位于子網絡B,又把數據包發給網關B,網關B再轉發到4號電腦。
1號電腦把數據包發到網關A,必須知道網關A的MAC地址。所以,數據包的目標地址,實際上分成兩種情況:
| 場景 | 數據包地址 |
| 同一個子網絡 | 對方的MAC地址,對方的IP地址 |
| 非同一個子網絡 | 網關的MAC地址,對方的IP地址 |
發送數據包之前,電腦必須判斷對方是否在同一個子網絡,然后選擇相應的MAC地址。接下來,我們就來看,實際使用中,這個過程是怎么完成的。
?
?
八、用戶的上網設置
買了一臺新電腦,插上網線,開機,這時電腦能夠上網嗎?
通常你必須做一些設置。有時,管理員(或者ISP)會告訴你下面四個參數,你把它們填入操作系統,計算機就能連上網了:
* 本機的IP地址
* 子網掩碼
* 網關的IP地址
* DNS的IP地址
下圖是Windows系統的設置窗口。
?
九、一個實例:訪問網頁
我們假定,經過上一節的步驟,用戶設置好了自己的網絡參數:
* 本機的IP地址:192.168.1.100
* 子網掩碼:255.255.255.0
* 網關的IP地址:192.168.1.1
* DNS的IP地址:8.8.8.8
然后他打開瀏覽器,想要訪問Google,在地址欄輸入了網址:www.google.com。
?
1:發送數據包,必須要知道對方的IP地址 , 現在知道網址www.google.com,不知道它的IP地址。那么向DNS服務器發送請求,獲取ip地址
2:判斷,這個IP地址是不是在同一個子網絡,這就要用到子網掩碼。
如果不是:通過網關192.168.1.1轉發,也就是說,接收方的MAC地址將是網關的MAC地址。
如果是:廣播方式發送
3:瀏覽網頁用的是HTTP協議,它的整個數據包會被嵌在TCP數據包之中。T
?
4:TCP協議,TCP數據包需要設置端口,接收方的,發送方(本機)的端口是一個隨機生成的1024-65535之間的整數,假定為51775。
5:?IP協議:IP數據包需要設置雙方的IP地址
6:以太網協議:以太網數據包需要設置雙方的MAC地址
7:多個網關的轉發,Google的服務器172.194.72.105,收到了這四個以太網數據包。
根據IP標頭的序號,Google將四個包拼起來,取出完整的TCP數據包,然后讀出里面的"HTTP請求",接著做出"HTTP響應",再用TCP協議發回來。
本機收到HTTP響應以后,就可以將網頁顯示出來,完成一次網絡通信。
?
轉載于:https://www.cnblogs.com/vs1435/p/6909266.html
總結
以上是生活随笔為你收集整理的互联网协议入门 : 用户 ------ 底层的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 世界级版本控制工具Vault v10.0
- 下一篇: 洛谷 P2513 [HAOI2009]逆