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