1. 程式人生 > >TCP/IP學習20180630-數據鏈路層-router choose

TCP/IP學習20180630-數據鏈路層-router choose

直連 需要 鏈路層 不可靠 路由器 bsp 目標 匹配 器)

IP路由選擇

當一個IP數據包準備好了的時候,IP數據包(或者說是路由器)是如何將數據包送到目的地的呢?它是怎麽選擇一個合適的路徑來"送貨"的呢?

最特殊的情況是目的主機和主機直連,那麽主機根本不用尋找路由,直接把數據傳遞過去就可以了。至於是怎麽直接傳遞的,這就要靠ARP協議了,後面會講到。

稍微一般一點的情況是,主機通過若幹個路由器(router)和目的主機連接。那麽路由器就要通過ip包的信息來為ip包尋找到一個合適的目標來進行傳遞,比如合適的主機,或者合適的路由。

路由器或者主機將會用如下的方式來處理某一個IP數據包
搜索路由表,優先搜索匹配主機,如果能找到和IP地址完全一致的目標主機,則將該包發向目標主機
搜索路由表,如果匹配主機失敗,則匹配同子網的路由器,這需要“子網掩碼”的協助。如果找到路由器,則將該包發向路由器。
搜索路由表,如果匹配同子網路由器失敗,則匹配同網號路由器,如果找到路由器,則將該包發向路由器。
搜索陸遊表,如果以上都失敗了,就搜索默認路由,如果默認路由存在,則發包
如果都失敗了,就丟掉這個包。

這再一次證明了,ip包是不可靠的。因為它不保證送達。

TCP/IP學習20180630-數據鏈路層-router choose