比如有一個(gè)網(wǎng)絡(luò):
路由器A ======================= 路由器B
| INTERNET |
| |
交換機(jī)A 交換機(jī)B
| | | |
| | | |
PC-A PC-B PC-C PC-D
1、PC-A、PC-B、PC-C、PC-D都有一個(gè)MAC地址,路由器是不是也有一個(gè)MAC地址?
2、假設(shè)我們使用兩層交換機(jī),交換機(jī)就可以不要MAC地址?使用三層交換機(jī)的話交換機(jī)就有一個(gè)MAC地址嗎?
3、假設(shè)我現(xiàn)在有一個(gè)數(shù)據(jù)包從PC-A發(fā)送到PC-C,請(qǐng)講解一下數(shù)據(jù)轉(zhuǎn)發(fā)的具體過(guò)程?
4、在這個(gè)網(wǎng)絡(luò)中,PC-A、PC-C的MAC地址設(shè)置為相同的網(wǎng)絡(luò)也能正常通信嗎?
5、網(wǎng)關(guān)的設(shè)置是怎么回事呢?
1.某些帶有以太或快速以太接口的路由器在這兩種接口里會(huì)帶有MAC地址,也就是說(shuō)在路由器局域網(wǎng)接口才會(huì)有MAC地址,
而MAC的實(shí)質(zhì)是一種數(shù)據(jù)封裝的類型;路由器有些也有廣域網(wǎng)接口,廣域網(wǎng)接口就沒有這樣的局域網(wǎng)地址,但也有類似數(shù)據(jù)封裝結(jié)構(gòu),
比如ppp,hdlc等。
2.不管是二層還是三層交換機(jī),在每個(gè)交換機(jī)的交換接口都有一個(gè)MAC地址,但此MAC地址不會(huì)在數(shù)據(jù)轉(zhuǎn)發(fā)時(shí)起作用,
我們通常所說(shuō)的交換機(jī)通過(guò)MAC地址來(lái)完成數(shù)據(jù)交換是說(shuō)交換機(jī)通過(guò)學(xué)習(xí)到下連的client的地址來(lái)完成數(shù)據(jù)轉(zhuǎn)發(fā)服務(wù)。
二層交換機(jī)是說(shuō)此交換機(jī)只處理數(shù)據(jù)包中的第二層封裝信息;而三層交換機(jī)是說(shuō)此交換機(jī)集成了路由器與二層交換機(jī)的功能,
可處理數(shù)據(jù)包中二層及三層信息。
3.數(shù)據(jù)包的發(fā)包路由過(guò)程是一個(gè)較為復(fù)雜的過(guò)程,要首先了解數(shù)據(jù)包的封裝結(jié)構(gòu)。pc-a要發(fā)包給pc-c,如果pc-a沒有知道pc-c的ip地址,
則pc-a首先要發(fā)出一個(gè)dns的請(qǐng)求,路由器a或dns解析服務(wù)器會(huì)給pc-a回應(yīng)pc-c的ip地址。這樣pc-a關(guān)于數(shù)據(jù)包第三層的ip地址信息就全
了:源ip地址:pc-a,目的ip地址:pc-c。下一步,pc-a要具體了解有關(guān)如何到達(dá)pc-c,則還要了解到達(dá)pc-c要經(jīng)過(guò)的下一跳信息,
pc-a會(huì)發(fā)出一個(gè)arp的地址解析請(qǐng)求,路由器a會(huì)對(duì)pc-a的arp地址請(qǐng)求作出回應(yīng):要去往pc-c可以發(fā)包到自己這兒處理,
然后回應(yīng)路由器a的以太口MAC地址給pc-a,這樣pc-a關(guān)于去往pc-c的數(shù)據(jù)包的第二層信息也全了:源mac地址:pc-a的mac地址,
目的mac地址:路由器的以太口mac地址。這樣二三層信息收集完全,可以發(fā)包出去了。數(shù)據(jù)到達(dá)了交換機(jī)a,交換機(jī)a查看數(shù)據(jù)包的第二層
目的mac地址,是去往路由器a的,就把數(shù)據(jù)幀發(fā)到路由器a,路由器a收到此數(shù)據(jù)包,首先查看此數(shù)據(jù)包的第三層ip目的地址,如果在自己
路由表中有去往pc-c的路由,說(shuō)明這是一個(gè)可路由的數(shù)據(jù)包,然后路由器要進(jìn)行一個(gè)所謂的線內(nèi)重寫的過(guò)程:首先更換此數(shù)據(jù)包的第二層
包頭信息,因?yàn)槁酚善?/span>a去往pc-c要經(jīng)過(guò)一個(gè)廣域網(wǎng),廣域網(wǎng)封裝協(xié)議有很多,比如hdlc、ppp、slip、frame-relay等,各種不同的封裝
協(xié)議都有其自身的結(jié)構(gòu),是全然與局域網(wǎng)的mac封裝不同,但起到的作用類似:就是發(fā)往目的地的具體下一跳信息。同時(shí)做完第二層和第三
層的數(shù)據(jù)包重校驗(yàn),線內(nèi)重寫另一個(gè)主要工作是在第三層中的ttl值減一。這樣把數(shù)據(jù)包從internet中發(fā)出去,到達(dá)對(duì)端有相反的處理過(guò)程。
4.pc-a 與pc-c的mac設(shè)為相同不會(huì)影響正常通信,因?yàn)檫@兩個(gè)主機(jī)所處的lan被廣域網(wǎng)分割開來(lái),通過(guò)上面發(fā)包的過(guò)程可了解不會(huì)有任何問(wèn)題。
5.所謂網(wǎng)關(guān),是說(shuō)這樣一種設(shè)備:如果主機(jī)要發(fā)包,就往這個(gè)設(shè)備發(fā)送。也就是說(shuō)此設(shè)備要有路由功能或有去往外部網(wǎng)路的路徑。
在實(shí)際網(wǎng)絡(luò)里,網(wǎng)關(guān)一般由路由器或server充當(dāng)。
網(wǎng)絡(luò)各層次物理設(shè)備區(qū)別(總結(jié))
網(wǎng)絡(luò)各層次物理設(shè)備區(qū)別(總結(jié)) ——中繼器,集線器,網(wǎng)橋,交換機(jī)等 1:首先這些設(shè)備均工作在不同的層次上,如下圖: 2:物理層設(shè)備: 轉(zhuǎn)發(fā)器或者中繼器:工作在物理層,它是模擬設(shè)備,用于連接兩根電纜段,在一段線路上衰減信號(hào)的被放大和修復(fù)還原后放到另一段線路上,中繼器不關(guān)心幀,分組和包頭這些概念,它只理解電壓值。 集線器:工作物理層,集線器有許多條輸入線路。它將這些輸入線路連接起來(lái),在任何一條線路上到達(dá)的幀均被發(fā)送到所有其它的線路上。如果有兩個(gè)幀同時(shí)到達(dá),將產(chǎn)生沖突,換句話說(shuō),整個(gè)集線器構(gòu)成了一個(gè)沖突域(沖突域:在有集線器構(gòu)成得局域網(wǎng)中,任意時(shí)刻只能有一個(gè)機(jī)器在發(fā)送數(shù)據(jù),否則將產(chǎn)生沖突。)連接到統(tǒng)同一集線器上的所有線路必須運(yùn)行在同樣的速度上。集線器與中繼器不同,它不會(huì)對(duì)信號(hào)進(jìn)行放大,并且集線器中可以容納多個(gè)線卡,每個(gè)線卡上有多個(gè)輸入,初次以外兩者的差別不大。 3:數(shù)據(jù)鏈路層設(shè)備 網(wǎng)橋:網(wǎng)橋工作在數(shù)據(jù)鏈層,用來(lái)連接兩個(gè)或多個(gè)LAN,當(dāng)一個(gè)幀到達(dá)時(shí),網(wǎng)橋內(nèi)部的軟件從幀頭中提取出目標(biāo)主機(jī)的地址,然后在一張轉(zhuǎn)發(fā)表中查找該地址,已確定該幀應(yīng)該發(fā)送到哪里。對(duì)于以太網(wǎng),該目標(biāo)主機(jī)的地址是48位的MAC地址。同集線器一樣,現(xiàn)代網(wǎng)橋也有線卡,每塊線卡通常支持某種特定類型的4條或8條輸入線路。注意:針對(duì)以太網(wǎng)的線卡不能處理令牌環(huán)的幀,以為他不知道從幀頭中哪個(gè)地方找到目的地址。然而,一個(gè)網(wǎng)橋可以有多個(gè)線卡,每塊線卡針對(duì)不同的網(wǎng)絡(luò)類型和不同的速度。在一個(gè)網(wǎng)橋中,每個(gè)線路有它自己的沖突域,這與集線器不同。網(wǎng)橋同時(shí)具有存儲(chǔ)轉(zhuǎn)發(fā)功能。 交換機(jī):工作數(shù)據(jù)鏈路層。和網(wǎng)橋類似,它們都基于幀地址進(jìn)行路由?;蛘哒f(shuō)可以認(rèn)為交換機(jī)是一個(gè)多端口的網(wǎng)橋。主要區(qū)別在于:交換機(jī)常常被用來(lái)連接獨(dú)立的計(jì)算機(jī),而不是LAN。 因此,當(dāng)圖1中的主機(jī)A想要給主機(jī)B發(fā)送幀時(shí),網(wǎng)橋拿到幀后,只是將它丟棄,相反,在圖2中,交換機(jī)必須主動(dòng)地將幀從主機(jī)A發(fā)送給主機(jī)B,因?yàn)闆]有其它的辦法(路徑)可以完成從A到B的幀轉(zhuǎn)發(fā)工作。由于交換機(jī)的每個(gè)端口通常連接到一臺(tái)計(jì)算機(jī)上,所以,交換機(jī)必須有足夠的空間以便容納比網(wǎng)橋更多的線卡數(shù)量,畢竟網(wǎng)橋的設(shè)計(jì)目標(biāo)是連接LAN。同時(shí)每一塊線卡必須提供緩沖區(qū)空間(即具有存儲(chǔ)-轉(zhuǎn)發(fā)功能),以便將在它的端口上達(dá)到的幀緩存起來(lái)。由于每一端口有它自己的沖突域,所以交換機(jī)永遠(yuǎn)不會(huì)由于沖突而丟失幀。然而,如果幀到達(dá)的速度超過(guò)了這些幀被重新轉(zhuǎn)送出去的速度,那么交換機(jī)可能會(huì)用完緩沖區(qū)空間,從而不得不開始丟幀。 4:網(wǎng)絡(luò)層設(shè)備 路由器:當(dāng)一個(gè)分組進(jìn)入網(wǎng)絡(luò)層是,幀頭和幀尾都已經(jīng)被剝?nèi)?。路由軟件根?jù)IP分組的頭信息來(lái)選擇一條輸出線路。 5:傳輸網(wǎng)關(guān) 傳輸網(wǎng)關(guān)工作在傳輸層,它將兩臺(tái)使用了不同的面向連接傳輸協(xié)議的計(jì)算機(jī)連接起來(lái)。比如,j假設(shè)一臺(tái)計(jì)算機(jī)使用了面向連接的TCP/IP協(xié)議,另一臺(tái)使用了面向連接的ATM傳輸協(xié)議,現(xiàn)在他們需要通話,于是傳輸網(wǎng)關(guān)可以將分組從一個(gè)連接復(fù)制到另一個(gè)連接中,并且根據(jù)需要對(duì)分組重新格式化。 6:應(yīng)用網(wǎng)關(guān) 應(yīng)用網(wǎng)關(guān)工作在應(yīng)用層,主要理解數(shù)據(jù)的格式和內(nèi)容,并且將消息從一種格式轉(zhuǎn)譯為另一種格式,例如,電子郵件協(xié)議網(wǎng)關(guān)將Internet消息轉(zhuǎn)譯為移動(dòng)電話的SMS消息。 |
一層設(shè)備:中繼器(repeater),集線器(hub)
網(wǎng)絡(luò)設(shè)備都是按照層次劃分滴,每一層滴設(shè)備都會(huì)具有所在層滴功能和特點(diǎn)。所以,把設(shè)備分層記憶會(huì)很簡(jiǎn)單。下次別人再說(shuō)哪個(gè)設(shè)備是第幾層滴,你就能很快滴知道這個(gè)設(shè)備大概滴功能是什么了.但是,功能并不局限于這個(gè)設(shè)備所在層。比如,路由器上有ping,ping是一個(gè)應(yīng)用層程序。那么就能說(shuō)路由器是一個(gè)七層設(shè)備嗎?并不是這樣滴。這些只是輔助功能,主要功能還是集中在三層。一層設(shè)備,主要功能就是對(duì)信號(hào)進(jìn)行放大和整形。我們可以認(rèn)為這樣滴設(shè)備就是一條線纜一樣。那么只不過(guò)這條線纜具有信號(hào)滴放大和整形滴作用。
所有的設(shè)備共享同一根總線,也就是說(shuō),所有的數(shù)據(jù)都會(huì)發(fā)到這個(gè)總線上。假設(shè)左上的機(jī)器要發(fā)給下面這臺(tái)機(jī)器一個(gè)數(shù)據(jù)。那么數(shù)據(jù)到了總線上會(huì)向兩端傳輸,這樣,所有串在總線上的設(shè)備都會(huì)收到這個(gè)數(shù)據(jù)。不過(guò),只有下面滴機(jī)器會(huì)處理和相應(yīng)這個(gè)數(shù)據(jù)。這就是說(shuō)總線型網(wǎng)絡(luò)上,只要有一個(gè)設(shè)備占用了總線,其余滴數(shù)據(jù)就沒有辦法傳輸了。那要是其他設(shè)備傳輸了數(shù)據(jù)會(huì)怎么樣呢?這個(gè)時(shí)候就會(huì)和總線上正在傳輸?shù)螖?shù)據(jù)沖突了,兩個(gè)數(shù)據(jù)發(fā)生碰撞之后就會(huì)損壞了。
所有連在同一個(gè)總線上滴設(shè)備,組成滴區(qū)域叫做沖突域。所以,需要一種機(jī)制來(lái)避免這樣的沖突,來(lái)提高數(shù)據(jù)滴正確率。網(wǎng)絡(luò)中傳輸?shù)螖?shù)據(jù)會(huì)包含目的IP地址和目的MAC地址。右上滴機(jī)器看到這些內(nèi)容和自己滴IP以及MAC不同,便不會(huì)處理這些數(shù)據(jù)。在總線型網(wǎng)絡(luò)中,避免沖突滴方式是一種叫做CSMA/CD滴東東。
補(bǔ)充一下:他們兩個(gè)都同時(shí)發(fā)出了數(shù)據(jù)。還是會(huì)發(fā)生沖突。沖突了咋辦?這個(gè)就是CD=沖突檢測(cè) 所有連在集線器上滴設(shè)備都有可能發(fā)生沖突。而且這些設(shè)備只能以半雙工滴方式工作。之所以不能以全雙工模式工作,是因?yàn)榭偩€型網(wǎng)絡(luò)上滴機(jī)器木有辦法雙向傳輸。
Carrier Sense Multiple Access with Collision Detection(CSMA/CD)
以太網(wǎng)使用一種叫做帶沖突檢測(cè)的載波監(jiān)聽多路訪問(wèn)(CSMA/CD)技術(shù)進(jìn)行通信.這是一種比較友好的會(huì)話方式.比如你有話要說(shuō),但是你很禮貌的先聽聽看有沒有別的人在說(shuō)話(carrier sense),如果有人在說(shuō)話,你就等他把話說(shuō)完,你才開始說(shuō);如果沒人說(shuō)話,你就開始說(shuō).但是假如有2 個(gè)人同時(shí)說(shuō)話怎么辦?假如有2 個(gè)人同時(shí)說(shuō)話了,雙方一旦聽到同時(shí)有除自己以外的人在說(shuō)話的話(collision detection),就停止繼續(xù)說(shuō)話,2 個(gè)人都隨機(jī)等待一段時(shí)間,然后其中1 個(gè)人再開始繼續(xù)說(shuō)話,另外那個(gè)人等他說(shuō)完再接著說(shuō)。是不是這樣就不會(huì)發(fā)生沖突了呢?也不是。因?yàn)槿绻麅蓚€(gè)PC,同時(shí)偵聽網(wǎng)絡(luò),都沒有數(shù)據(jù)傳輸,他們兩個(gè)都同時(shí)發(fā)出了數(shù)據(jù)。還是會(huì)發(fā)生沖突。沖突了咋辦?這個(gè)時(shí)候兩個(gè)數(shù)據(jù)會(huì)回退,等待一個(gè)隨機(jī)滴時(shí)間再次偵聽網(wǎng)絡(luò)。注意,不是一個(gè)一定滴時(shí)間。因?yàn)槿绻且欢ǖ螘r(shí)間,兩個(gè)還會(huì)同時(shí)發(fā)送數(shù)據(jù),還是會(huì)發(fā)生沖突。所以是等待一個(gè)隨機(jī)滴時(shí)間。
二層設(shè)備:網(wǎng)橋(Bridge),交換機(jī)(switch)
先說(shuō)說(shuō)這兩個(gè)設(shè)備滴主要區(qū)別。主要有三點(diǎn)區(qū)別:1.網(wǎng)橋是靠軟件實(shí)現(xiàn)滴,交換機(jī)靠ASIC硬件實(shí)現(xiàn)。所以交換機(jī)滴轉(zhuǎn)發(fā)效率要比網(wǎng)橋快很多。2.網(wǎng)橋最多支持16個(gè)端口,交換機(jī)理論上可以無(wú)限支持。3.網(wǎng)橋分成很多種類,而交換機(jī)只是實(shí)現(xiàn)其中滴一個(gè)功能,就是透明網(wǎng)橋。 二層設(shè)備對(duì)于一層設(shè)備來(lái)說(shuō),提升滴功能就是可以認(rèn)識(shí)二層地址了(二層地址有很多種,現(xiàn)階段理解為MAC地址就行了)。認(rèn)識(shí)二層地址滴好處就是不會(huì)像集線器那樣,從一個(gè)端口收到數(shù)據(jù),會(huì)轉(zhuǎn)發(fā)到所有端口。二層設(shè)備是可以學(xué)習(xí)端口上連接滴設(shè)備滴MAC地址。所以,數(shù)據(jù)會(huì)根據(jù)二層設(shè)備上學(xué)習(xí)到滴MAC地址信息進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。
正是因?yàn)橛辛?span lang="EN-US">MAC地址表,所以才充分避免了沖突,因?yàn)榻粨Q機(jī)通過(guò)目的MAC地址知道應(yīng)該把這個(gè)數(shù)據(jù)轉(zhuǎn)發(fā)到哪個(gè)端口。而不會(huì)像HUB一樣,會(huì)轉(zhuǎn)發(fā)到所有滴端口。所以,交換機(jī)是可以劃分沖突域滴。因?yàn)闆_突會(huì)導(dǎo)致網(wǎng)絡(luò)傳輸效率降低。所以劃分多個(gè)沖突域,減小沖突域范圍是很有必要滴。
交換機(jī)每一個(gè)端口就是一個(gè)沖突域。是說(shuō)接在交換機(jī)端口上滴設(shè)備有可能會(huì)在這個(gè)范圍內(nèi)沖突。但是絕對(duì)不會(huì)和交換機(jī)上其他端口滴設(shè)備發(fā)生沖突。
三層設(shè)備:三層交換機(jī),路由器(Router )
還是先說(shuō)這兩個(gè)滴區(qū)別:1.三層交換機(jī)端口多于路由器。但是三層交換機(jī)只有快速以太口和吉比特以太口,不如路由器接口種類豐富。2.三層交換機(jī)滴路由功能是通過(guò)在二層交換機(jī)上增加一個(gè)路由模塊來(lái)完成。只是一塊ASIC卡。所以三層處理能力不如路由器(不是轉(zhuǎn)發(fā)能力)。
在三層設(shè)備上,比二層設(shè)備更突出的一個(gè)功能就是能夠隔離廣播域。在一層和二層設(shè)備上,廣播是會(huì)被發(fā)到所有滴端口,除了發(fā)出廣播滴端口。這個(gè)功能是通過(guò)一個(gè)叫做路由表滴東東實(shí)現(xiàn)滴。這個(gè)類似于交換機(jī)里面滴MAC地址表。但是這里面放滴是IP地址信息。 路由器不像交換機(jī),交換機(jī)不配置滴話也是可以正常使用滴。路由器是必須要配置滴,至少要給每一個(gè)接口上配置一個(gè)IP地址,路由器才能夠正常滴工作。記住一點(diǎn),路由器上每個(gè)接口滴IP地址不能夠在同一個(gè)網(wǎng)段(不懂滴這里先記下,網(wǎng)段這個(gè)概念在講IP地址之后就懂了)。 廣播是不能夠透過(guò)路由器滴接口從一端轉(zhuǎn)發(fā)到另一端滴(嚴(yán)格來(lái)講,這種說(shuō)法是錯(cuò)誤滴,不過(guò)現(xiàn)階段講錯(cuò)在哪就多了,所以暫且認(rèn)為路由器可以隔離所有廣播)。這樣,我們就可以靠路由器來(lái)隔離廣播域了。因?yàn)楹芏鄥f(xié)議都是基于廣播實(shí)現(xiàn)滴(比如ARP和DHCP等),所以,網(wǎng)絡(luò)中廣播多了也會(huì)影響網(wǎng)絡(luò)滴性能。隔離廣播域也是很必要滴。是接收處理,但不轉(zhuǎn)發(fā)。因?yàn)樵谕粋€(gè)網(wǎng)段滴廣播,任何本網(wǎng)段內(nèi)滴設(shè)備都必須處理.三層交換機(jī)接口分為兩種,一個(gè)是switchport,一個(gè)是routed port。缺省情況下,所有滴都是switchport。switchport只能配置VLAN信息,trunk信息。不能配置IP地址。
先說(shuō)什么是面向連接什么是無(wú)連接。面向連接滴意思就是說(shuō),在傳輸數(shù)據(jù)之前,會(huì)先在源和目的地之間建立一個(gè)邏輯滴連接信道。后面?zhèn)鬏數(shù)嗡袛?shù)據(jù)都會(huì)從這個(gè)建立滴邏輯連接上傳輸。無(wú)連接滴意思則是指會(huì)如圖,A是源,E是目的。如果是面向連接滴傳輸,在傳輸之前會(huì)先協(xié)商起一個(gè)邏輯滴路徑。比如走A-C-D-E這個(gè)路線。那么后續(xù)滴所有數(shù)據(jù)都會(huì)通過(guò)這個(gè)路線傳輸?shù)侥康牡亍H绻菬o(wú)連接滴傳輸,那么每個(gè)數(shù)據(jù)包都可以任意走任何路線。比如第一個(gè)數(shù)據(jù)包走A-B-E這條路,第二個(gè)有可能走A-E這條路線。 什么是可靠什么是不可靠呢?可靠就是指有確認(rèn)機(jī)制,如果沒有確認(rèn)滴數(shù)據(jù)包,源會(huì)主動(dòng)滴重發(fā)。這樣,保證了數(shù)據(jù)包肯定到達(dá)了對(duì)端。不可靠就是沒有這種確認(rèn)機(jī)制。如果有傳輸?shù)五e(cuò)誤,導(dǎo)致有些包沒有到達(dá)。對(duì)端,則需要靠上層滴協(xié)議或者應(yīng)用程序來(lái)解決重傳滴問(wèn)題。
TCP是面向連接可靠傳輸。所以,TCP傳輸是可靠性高,但是效率會(huì)比較低下。UDP是無(wú)連接不可靠傳輸,所以UDP有可能會(huì)有錯(cuò)誤,但是效率會(huì)比較高.現(xiàn)在網(wǎng)絡(luò)線路滴可靠性很高,不容易出錯(cuò)。所以UDP是一種對(duì)延遲要求很高滴應(yīng)用很好滴選擇?,F(xiàn)在滴video和voice基本都是基于UDP協(xié)議滴。
聯(lián)系客服