大多數(shù)的產(chǎn)品都支持環(huán)回接口( Loopback Interface),以允許運(yùn)行在同一臺(tái)主機(jī)上的客戶(hù) 程序和服務(wù)器程序通過(guò) T C P / I P進(jìn)行通信绢慢。 A類(lèi)網(wǎng)絡(luò)號(hào)1 2 7就是為環(huán)回接口預(yù)留的。 根據(jù)慣例, 大多數(shù)系統(tǒng)把I P地址1 2 7 . 0 . 0 . 1分配給這個(gè)接口,并命名為 l o c a l h o s t辨绊。一個(gè)傳給環(huán)回接口的 I P數(shù) 據(jù)報(bào)不能在任何網(wǎng)絡(luò)上出現(xiàn)客蹋。
有網(wǎng)絡(luò)層的邏輯操作塞蹭。但是大多數(shù)的產(chǎn)品還是照樣完成傳輸層和網(wǎng)絡(luò)層的所有過(guò)程,只是當(dāng) IP數(shù)據(jù)報(bào)離開(kāi)網(wǎng)絡(luò)層時(shí)把它返回給自己。
圖1是環(huán)回接口處理IP數(shù)據(jù)報(bào)的簡(jiǎn)單過(guò)程讶坯。
圖中需要指出的關(guān)鍵點(diǎn)是:?
1) 傳給環(huán)回地址(一般是127.0.0.1)的任何數(shù)據(jù)均作為IP輸入番电。
2) 傳給廣播地址或多播地址的數(shù)據(jù)報(bào)復(fù)制一份傳給環(huán)回接口, 然后送到以太網(wǎng)上。 這是 因?yàn)閺V播傳送和多播傳送的定義包含主機(jī)本身辆琅。?
3) 任何傳給該主機(jī)IP地址的數(shù)據(jù)均送到環(huán)回接口漱办。 看上去用傳輸層和 I P層的方法來(lái)處理環(huán)回?cái)?shù)據(jù)似乎效率不高, 但它簡(jiǎn)化了設(shè)計(jì), 因?yàn)榄h(huán) 回接口可以被看作是網(wǎng)絡(luò)層下面的另一個(gè)鏈路層。 網(wǎng)絡(luò)層把一份數(shù)據(jù)報(bào)傳送給環(huán)回接口, 就 像傳給其他鏈路層一樣,只不過(guò)環(huán)回接口把它返回到 IP的輸入隊(duì)列中婉烟。
在圖1中,另一個(gè)隱含的意思是送給主機(jī)本身 I P地址的I P數(shù)據(jù)報(bào)一般不出現(xiàn)在相應(yīng)的網(wǎng) 絡(luò)上娩井。例如,在一個(gè)以太網(wǎng)上,分組一般不被傳出去然后讀回來(lái)。某些 B S D以太網(wǎng)的設(shè)備驅(qū) 動(dòng)程序的注釋說(shuō)明,許多以太網(wǎng)接口卡不能讀回它們自己發(fā)送出去的數(shù)據(jù)似袁。由于一臺(tái)主機(jī)必須處理發(fā)送給自己的IP數(shù)據(jù)報(bào),因此圖1所示的過(guò)程是最為簡(jiǎn)單的處理辦法洞辣。
4.4BSD系統(tǒng)定義了變量useloopback,并初始化為1咐刨。但是,如果這個(gè)變量置為 0, 以太網(wǎng)驅(qū)動(dòng)程序就會(huì)把本地分組送到網(wǎng)絡(luò),而不是送到環(huán)回接口上。它也許不能工作, 這取決于所使用的以太網(wǎng)接口卡和設(shè)備驅(qū)動(dòng)程序屋彪。