Information Technology | Networks » Az Internet hiba és vezérlőüzenet továbbító protokollja

Datasheet

Year, pagecount:1999, 7 page(s)

Language:Hungarian

Downloads:103

Uploaded:September 19, 2009

Size:57 KB

Institution:
-

Comments:

Attachment:-

Download in PDF:Please log in!



Comments

No comments yet. You can be the first!

Content extract

-1- Internet Control Message Protocol (ICMP) Az Internet hiba és vezérlő üzenet továbbító protokollja Az adatgramma haladása során router-ek során halad, míg eléri célállomást. Ha egy router nem képes továbbítani az adatgrammát, vagy valamilyen rendellenességet tapasztal (pl. torlódás) értesítenie kell az adatgrammát feladó számítógépet, hogy orvosolja a problémát. A hosztok és router-ek az ICMP protokoll segítségével küldhetnek hiba és vezérlő információt. Az Internet Control Message Protocol Néhány lehetséges hiba, ami miatt hibajelzésről gondoskodni kell:     Vonalak, hardver eszközök meghibásodása, Az IP nem tudja eljuttatni a csomagot a célba, mert a célállomás átmenetileg vagy véglegesen ki van kapcsolva vagy nincs csatlakoztatva a hálózatra. A Time to Live számláló értéke eléri a 0-át. A router-eken torlódnak a csomagok. A hibák jelzését a TCP/IP protokoll család ICMP protokollja

segítségével oldják meg. Az ICMP üzenetek az IP adatgaramma adat-részében utaznak. Az ICMP üzenet célja nem az alkalmazói program vagy felhasználó, hanem a célállomás ICMP modulja. Majd az ICMP modul dönti el, hogy mit kezd az üzenettel, melyik szoftver modult értesíti. Összefoglalva: Az ICMP lehetővé teszi, hogy hosztok vagy router-ek hiba vagy vezérlő üzenetet küldjenek más hosztoknak vagy router-eknek. Az ICMP mindig két gép IP szoftvere között biztosít kommunikációt. Hibajelzés vagy hibajavítás Az ICMP technikailag egy hibajelző mechanizmus. Amikor egy adatgramma hibát okoz, az ICMP jelzi a hibát az adatgramma eredeti feladójának. A feladó állomásnak kell a hibát összekapcsolnia a megfelelő alkalmazással, vagy megtenni a szükséges intézkedést a hiba kiküszöbölésére. A hibák egy része az adatgramma eredeti feladójától származik, más része nem. Az ICMP mindig az adatgramma eredeti feladóját értesíti, a közbenső

router-eket nem képes értesíteni. Pl. Tegyük fel, hogy az adatgramma az R 1 , R 2 , R k router-eken halad keresztül. Ha R k hibás routing információk alapján R E -nek továbbítja a csomagot, R E nem tudja az ICMP-vel értesíteni az R k router-t, hanem csak a csomag eredeti feladóját. -2Ennek oka az IP adatgramma struktúrájában rejlik. Az IP fejrésze csak a feladó és a célállomás IP címét tartalmazza, a router-ekét nem! A router-ek nem rendelkeznek azon eszközök címével, amelyeken a csomag áthaladt. Az ICMP üzenetkézbesítés Az ICMP üzenet egy IP csomagban utazik az interneten. Ugyanúgy halad router-eken keresztül, mint a normális adatot szállító IP csomag. Az ICMP üzenet továbbítása is lehet sikertelen, azonban egy ICMP üzenetet szállító IP csomag elakadásáról újabb ICMP üzenet nem generálódik! ICMP feje Adatgramma feje Keret feje ICMP adat-része Adatgramma adat-része Keret adat-része ICMP beágyazása

adatgrammába, majd az adatgramma keretbe foglalása Az ICMP üzenet IP csomagba ágyazódik, az ICMP mégsem tekinthető magasabb szintű protokollnak. Az ICMP az IP szükséges része Az ICMP üzenet nem továbbítható közvetlenül a fizikai hálózaton, mivel a célállomás eléréséhez általában több fizikai hálózaton kell keresztülhaladnia. Az ICMP üzenet formátuma Mindegyik ICMP üzenet saját formátummal rendelkezik, az első 3 mezőjük azonos: TYPE CODE CHECKSUM Azonosítja az üzenetet. További információt ad az üzenet típusáról. Az ICMP üzenet ellenőrző összege. A fentieken kívül azon üzenetek, amelyek valamilyen hibát jeleznek, mindig tartalmazzák a hibát okozó adatgramma első 64 bit-jét. -3Az ICMP TYPE mező meghatározza az üzenet jelentését és a formáját: Type mező 0 3 4 5 8 11 12 13 14 15 16 17 18 ICMP üzenet típus Echo Reply Destination Unreachable Source Quench Redirect (change a route) Echo Request Time Exceeded for

Datagram Parameter Problem on Datagram Timestamp Request Timestamp Reply Information Request (obsolete) Information Reply (obsolete) Address Mask Request Address Mask Reply A célállomás elérhetőségének tesztelése A hálózati problémák feltárásához nyújt segítséget az echo request és echo reply üzenet. Minden gép, amely kap egy echo request üzenetet, egy echo reply üzenetben megválaszolja. Ezzel tesztelhető a hálózati alrendszer. A legtöbb operációs rendszer a ping programmal teszi ezt a mechanizmust közvetlenül elérhetővé a felhasználók számára. Az Echo Request és Echo Reply üzenet formátum 0 8 TYPE (8 v. 0) 16 31 CHECKSUM CODE (0) SEQUENCE NUMBER IDENTIFIER OPTIONAL DATA . ICMP echo kérés és válasz OPTIONAL DATA IDENTIFIER SEQUENCE NUMBER TYPE A feladó kitöltheti ezt a mezőt tetszőleges adattal, a célállomás a válaszüzenetébe átmásolja ezt. A kérést és a választ rendeli egymáshoz A kérést és a választ

rendeli egymáshoz kérés = 8; válasz = 0 -4- Elérhetetlen célállomás Ha egy router nem tudja kézbesíteni vagy továbbítani a csomagot, ezt az üzenetet küldi az eredeti feladónak. 0 8 TYPE (3) 16 31 CHECKSUM CODE (0-12) UNUSED (CSUPA 0) INTERNET HEADER + FIRST 64 BITS OF DATAGRAM . ICMP cél nem elérhető Az ICMP CODE mező részletezi a problémát: Code mező 0 1 2 3 4 5 6 7 8 9 10 11 12 Jelentés Network Unreachable Host Unreachable Protocol Unreachable Port Unreachable Fragmentation needed and DF set Source route failed Destination network unknown Destination host unknown Source host isolated Communication with destination network administratively prohibited Communication with destination host administratively prohibited Network unreachable for type of service Host unreachable for type of service A router destination unreachable üzenetet küld, valahányszor egy adatgrammát nem képes kézbesíteni vagy továbbítani. A router-ek azonban nem mindig

észlelik a hibát Pl Ethernet hálózaton MAC szinten nincs visszaigazolás. Torlódás és adatfolyam vezérlés (Congestion and Datagram Flow Control) Torlódás akkor fordul elő, ha a router nem képes olyan gyorsan továbbítani a csomagokat, mint amilyen gyorsan érkeznek. Ennek alapvetően két oka lehet: Gyors forrás A csomagok több forrásból származnak A router-ekben és a hosztokban lévő puffrek átmenetileg kiküszöbölhetik a forgalmi csúcsokat, de tartósan megnövekedett forgalmat nem tudnak feloldani. -5A gépek az ICMP forrás elfojtás üzenettel jelezhetik a forrásnak a torlódást. A router-ek minden eldobott csomag-ról generálnak egy forrás elfojtás üzenetet. Egyes router-ek csak a legnagyobb forgalmat generáló forrást értesítik, vagy már a torlódás bekövetkezte előtt (hosszú várakozó sorok) elküldik a hibaüzenetet. A forrás elfojtás üzenetnek nincs fordított párja. Ezért a hoszt IP protokollja úgy működik, hogy ha adott

célállomásra küldött üzenetről forrás elfojtás üzenetet kap, addig csökkenti a sebességet, amíg a hibaüzenetek megszűnnek, majd fokozatosan növeli az üzenetek gyakoriságát addig, amíg újra forrás elfojtás üzenet nem érkezik. Forrás elfojtás (Source Quench) 0 8 TYPE (4) 16 31 CHECKSUM CODE (0) UNUSED (CSUPA 0) INTERNET HEADER + FIRST 64 BITS OF DATAGRAM . ICMP forrás elfojtás Útvonal megváltoztatás kérés (Route Change Request) A hosztok általában csak egyetlen router címét ismerik, és neki küldik az összes továbbítandó csomagot. A router, ha az adott célállomásra jobb kiinduló router-t ismer, ICMP üzenetben jelzi a hosztnak, hogy a többi csomagot melyik router-nek továbbítsa ezután. Routing ciklus vagy túl hosszú útvonal (Time exceeded for a datagram) A hibás routing táblákból eredő ciklusokat, és a túl hosszú útvonalakat a Time to Live számlálóval küszöbölik ki. Ha a TTL miatt kell egy csomagot eldobni,

ezt az ICMP üzenetet generálja a router. Egyéb problémák jelzése (Parameter problem on datagram) Általában a hibás adatgramma fejléceket jelzik ezzel az ICMP üzenettel. -6- Órák szinkronizálása és csomag haladási idejének becslése (Timestamp request and reply) A gépek lekérdezhetik a másik gép óráját, amely korrigálható a csomagok haladási idejével. Ezzel a mechanizmussal egyúttal a csomag haladási ideje is becsülhető az adott útvonalon. Subnet maszk kérés és válasz (Address mask request and reply) Subnet használata esetén a Subnet Mask határozza meg, hogy az adott osztályú cím hosztokat azonosító részéből mely bitek határozzák meg az adott fizikai hálózatot. Ez a maszk beállítható a hoszt hálózati konfigurálásakor, de ezzel az ICMP kéréssel be is szerezhető a router-től. A kérés a router-nek közvetlenül is elküldhető, vagy broadcast-tal is kérhető 0 8 TYPE (17 v. 18) 16 CODE (0) IDENTIFIER 31

CHECKSUM SEQUENCE NUMBER ADDRESS MASK ICMP cím maszk kérés és válasz Ping segédprogram Cél elérhetőségének tesztelése: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] destination-list -t -a -n count -l size -f -i TTL -v TOS -r count -s count -j host-list -k host-list -w timeout Ping the specifed host until interrupted. Resolve addresses to hostnames. Number of echo requests to send. Send buffer size. Set Dont Fragment flag in packet. Time To Live. Type Of Service. Record route for count hops. Timestamp for count hops. Loose source route along host-list. Strict source route along host-list. Timeout in milliseconds to wait for each reply. -7- Feladatok Analizáljuk az előre felvett hálózati forgalom ICMP üzeneteit! A netmon programmal vegyük fel a hálózati forgalmat, szűrjük ki az ICMP üzeneteket, elemezzük ezeket! Generáljunk olyan hálózati forgalmat, amely kiváltja a

forrás elfojtás üzenetet! Használjuk a ping programot hosztok és router-ek elérhetőségének vizsgálatára! Próbáljunk meg elérni egy nem létező szervert a helyi hálózati szegmensen és egy távoli szegmense. Melyik esetben kapunk hibaüzenetet, és miért?