1. 程式人生 > >傳輸層 和網路層的區別

傳輸層 和網路層的區別

在協議棧中,傳輸層位於網路層之上,傳輸層協議為不同主機上執行的程序提供邏輯通訊,而網路層協議為不同主機提供邏輯通訊。這個區別很微妙,但是卻非常重要。讓我們用一家人作為類比來說明一下這個區別。

  設想一下有兩所房子,一個位於東海岸而另一個位於西海岸,每所房子裡都住著12個小孩。東海岸的房子裡的小孩和西海岸房子裡的小孩是堂兄妹。兩所房子裡的孩子喜歡互相通訊——每個孩子每週都給每一個堂兄妹寫一封信,每一封信都由老式的郵局分別用信封來寄。這樣,每一家每週就都有144封信要送到另一家(這些孩子如果可以用電子郵件的話就可以省掉很多錢了!)在每一家裡面.都由一個孩子——西海岸的房子裡的Ann和東海岸房子裡的BilI——負責郵件的收集和分發。每週Ann都從她的兄弟姐妹那裡收集起來信件,並將這些信件送到每天都來的郵遞服務員那裡。當信件到達西海岸的房子,Ann又將這些信件分發給她的兄弟姐妹。BilI在東海岸有著同樣的工作。

  在這個例於中,郵遞服務提供著兩所房子之間的邏輯通訊——郵遞服務在兩所房子之間傳遞郵件,而不是針對每個人的服務。另一方面,Ann和BilI提供堂兄妹之間的邏輯通訊——Ann和BilI從他們的兄弟姐妹那裡收集郵件並將郵件遞送給他們。注意,從這些堂兄妹的角度看,Ann和BilI是郵件的服務人,儘管他們倆只是端到端寄送服務的一部分(終端系統部分)。這個例子是傳輸層和網路層之間的關係的一個形象比喻: