250 likes | 393 Views
ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΡΟΜΟΛΟΓΗΣΗ & ΕΡΓΑΛΕΙΑ ΔΙΑΧΕΙΡΙΣΗΣ ΣΤΟ INTERNET - E ΙΣΑΓΩΓΗ ΣΤΟ SNMP. Β. Μάγκλαρης maglaris@netmode.ntua.gr www.netmode.ntua.gr 19 /12/2011. ΕΠΑΝΑΛΗΨΗ: ΤΑΞΙΝΟΜΗΣΗ ΑΛΓΟΡΙΘΜΩΝ ΔΡΟΜΟΛΟΓΗΣΗΣ. Διαχειριστικός Έλεγχος
E N D
ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝΔΡΟΜΟΛΟΓΗΣΗ & ΕΡΓΑΛΕΙΑ ΔΙΑΧΕΙΡΙΣΗΣ ΣΤΟ INTERNET -EΙΣΑΓΩΓΗ ΣΤΟ SNMP Β. Μάγκλαρης maglaris@netmode.ntua.gr www.netmode.ntua.gr 19/12/2011
ΕΠΑΝΑΛΗΨΗ: ΤΑΞΙΝΟΜΗΣΗ ΑΛΓΟΡΙΘΜΩΝ ΔΡΟΜΟΛΟΓΗΣΗΣ • Διαχειριστικός Έλεγχος • Συγκεντρωτικός: Δημόσια Δίκτυα Μεταγωγής Πακέτου Χ.25/Χ.75 • Κατανεμημένος: Internet • Δρομολόγηση με ή χωρίς Εναλλακτικούς Δρόμους • Single choice: • Δρομολόγηση Επιπέδου 3 στο Internet - IGP (OSPF, IS-IS) • Δρομολόγηση Επιπέδου 2 - Bridged EthernetLANs • Alternate routing: • Δρομολόγηση Επιπέδου 3 στο Internet -BGP • Δρομολόγηση Επιπέδου 2 ½ - MPLS/TE • Τηλεφωνικά Δίκτυα PSTN (Public Switched Telephone Networks) • Διαχειριστική Δυναμική • Στατική δρομολόγηση: • Direct Routingστο Internet - Default Gateway • Υπολογισμός εναλλακτικών δρόμων με σταθερά βάρη γραμμών (Χ.25/Χ.75) • Δυναμική δρομολόγηση: • Μεταβαλλόμενα βάρη γραμμών (ARPANet) • Μεταβολές ανάλογα με διαθεσιμότητα γραμμών (InternetIGP, BGP)
ΕΠΑΝΑΛΗΨΗ: ΔΡΟΜΟΛΟΓΗΣΗΕΠΙΠΕΔΟΥ 3Layer 3 Routing • Interior Gateway Protocols (IGP):Μια έξοδος προς επόμενο Interface για κάθε τελικό προορισμό (δίκτυο) • RIP: Bellman Ford • OSPF (Open Shortest Path First): Dijkstra, ιεραρχικό με stub areas) • IS-IS • Exterior (Border) Gateway Protocols (EGP/BGP): Πολλές εναλλακτικές διαδρομές με βάρη προς όλα τα γνωστά δίκτυα (περίπου 300.000 σήμερα) μεταξύ ακραίων (border) routers αυτονόμων συστημάτων (Autonomous Systems, AS, περίπου 40.000 σήμερα). • Η διαδρομή καταγράφεται στον BGP Table των ακραίων δρομολογητών (border gateways) ενός AS ανά δίκτυο προορισμού και την σειρά των AS’s της προτεινόμενης διαδρομής (μαζί με το βάρος της) • Οι πίνακες BGP φυλάσσονται στην ηλεκτρονική μνήμη των border gateways και ανανεώνονται δυναμικά όποτε υπάρχουν αλλαγές στο Internet με ευθύνη των γειτονικών δρομολογητών (border gateways) που ανακοινώνουν τα δίκτυα των αυτονόμων κοινοτήτων(AS’s) που γνωρίζουν (advertising)
ΕΠΑΝΑΛΗΨΗ: ΑΛΓΟΡΙΘΜΟΙ ΕΥΡΕΣΗΣ ΔΡΟΜΩΝ ΣΤΟ ΕΠΙΠΕΔΟ 3 ΤΟΥ INTERNET • DV: Distance Vector (αλγόριθμος Bellman-Ford) • IGP: RIP (Routing Information Protocol) • EGP: BGP (Border Gateway Protocol) • LS: Link State (αλγόριθμος Dijkstra) • IGP: OSPF (Open Shortest Path First): Link State Data Base + αλγόριθμος Dijkstra στον κορμό Αυτόνομου Δικτύου (Core of an Autonomous System, AS) • Κόστος γραμμών δικτύου: Ανάλογα με την ταχύτητα ή οριζόμενα από τον Διαχειριστή • Ανανέωση κόστους γραμμών: κάθε 240 sec (default) ή λόγω μεταβολής κατάστασης • Στα περιφερειακά υποδίκτυα(stub areas): Default G/W
ΕΠΑΝΑΛΗΨΗ:ΑΛΓΟΡΙΘΜΟΙ DISTANCE VECTORIGP RIP - BGP • Κάθε κόμβος υπολογίζει την επόμενη «βέλτιστη» στάση προς όλες τις κατευθύνσεις, σύμφωνα με την εικόνα που έχει τοπικά (πραγματικά κατανεμημένος αλγόριθμος) • Χρειάζεται γνώση του «κόστους» των άμεσων συνδέσεων (interfaces) και το εκτιμώμενο «κόστος» από τους άμεσους γείτονες προς όλους τους προορισμούς (π.χ. όλα τα δίκτυα στο Internet που ανακοινώνουν - announce – σε έναν ακραίο δρομολογητή μιας αυτόνομης κοινότητας - AS - οι γειτονικές του αυτόνομες κοινότητες στο πρωτόκολλο BGP) • Βασίζεται στον δυναμικό προγραμματισμό (με πιθανές επεκτάσεις για την ανακάλυψη εναλλακτικών δρόμων στο BGP) • Οι κόμβοι εντοπίζουν τους βέλτιστους δρόμους (shortest paths) προς όλους τους κόμβους εκτελώντας αλγόριθμο βασισμένο στον δυναμικό προγραμματισμό (dynamic programming) που εισήγαγε ο Bellman • Αρχικά παρουσίασε αστάθειες (π.χ. δρόμους με κύκλους - loops) αλλά σήμερα το πρωτόκολλο EGP BGP είναι η καρδιά του Internet • Το πρωτόκολλο IGP RIP σήμερα έχει αντικατασταθεί από το OPSF
ΕΠΑΝΑΛΗΨΗ: ΑΝΑΚΟΙΝΩΣΗ ΔΙΚΤΥΟΥ 135.207.0.0/16 ΜΕΣΩ BGP Distance Vector(από παρουσίαση του Timothy G. Griffin,AT&T Research, Paris 2002) BGP 4: RFC 4271 Signaling over TCP Port 179 i-BGP: Internal BGP (pass inter-AS peering to intra-AS fully connected routers) e-BGP: External routing (between AS’s over direct router inter-AS links)
ΕΠΑΝΑΛΗΨΗ:ΑΛΓΟΡΙΘΜΟΣ LINK STATEIGP OSPF • Κάθε δρομολογητής μιας περιοχής OSPF (core area) έχει πλήρη εικόνα της περιοχής του – τοπολογία, κόστη συνδέσεων • Όλοι οι δρομολογητές εκτελούν τον αλγόριθμο Dijkstra για εντοπισμό όλων των δρόμων ελαχίστου κόστους (shortest paths) σε ρόλο κεντρικού συστήματος ελέγχου, περιοδικά (default 240 sec) ή όποτε αντιληφθούν ότι άλλαξε η κατάσταση του δικτύου – θεωρητικά όλοι έχουν την ίδια εικόνα • Θεωρείται ευσταθής αλγόριθμος, επαρκής για IGP: Μια αυτόνομη κοινότητα ιεραρχείται εσωτερικά σε περιοχές OSPF (μία ή περισσότερες) + περιφερειακές stub areas με static routing (στο δίκτυο του ΕΜΠ, OSPF τρέχουν μόνο 2 δρομολογητές) • Γενίκευση του OSPF: Αλγόριθμος IS-IS (Intermediate System to Intermediate System)
ΕΠΑΝΑΛΗΨΗ: ΕΠΙΠΕΔΟ ΖΕΥΞΗΣ -LINK LAYERΔΙΑΜΟΡΦΩΣΗ ΔΕΝΔΡΙΚΗΣ ΤΟΠΟΛΟΓΙΑΣ ΜΕΤΑΓΩΓΕΩΝ (Spanning TreeProtocol - STP of Ethernet Switches, IEEE 802.1D) • Εξέλιξη των Αλγορίθμων Διάρθρωσης Διαφανών Γεφυρών Spanning Tree Protocol (STP) for Transparent Ethernet Bridges • Radia Perlman, DEC & MIT 1985 http://www1.cs.columbia.edu/~ji/F02/ir02/p44-perlman.pdf • Αναδιαμόρφωση Spanning Treehttp://en.wikipedia.org/wiki/Spanning_tree_protocol • Χρόνος Αντίδρασης σε Βλάβη: ~ 60 sec Γέφυρες (Bridges, Switches): 3 (Root), 24, 92, 4, 5, 7, 12 Τοπικά δίκτυα Ethernet: a, b, c, d, e, f RP: Root Port DP: Designated Port BP: Blocking Port
ΕΠΑΝΑΛΗΨΗ: ΔΙΑΡΘΡΩΣΗ ΕΠΙΚΑΛΥΠΤΟΝΤΟΣΔΕΝΔΡΟΥETHERNET SPANNING TREE PROTOCOL - STP (IEEE 802.1D) RP: Root Port DP: Designated Port BP: Blocked Port SWITCH 1: Root Bridge PC_1 Layer 2 Manager Ενεργή σύνδεση PC_2 Ανενεργή σύνδεση DP DP SWITCH 2 SWITCH 3 Γνωστό στο Switch 4 Άγνωστο στο Switch 4 Aging: 300 sec (default) BP BP RP DP RP Forwarding Data Base per Switch Port Forward MAC frames to known destinations, e.g.. PC_6, PC_7, PC_2, PC_3, PC_5 to port from which it last heard them prior to aging, e.g. RP Forward to PC_10 only MAC frames addressed to it & broadcasts Broadcast unknown destination MAC frames (promiscuous mode) PC_8 PC_3 PC_6 PC_7 PC_4 PC_5 Bridge Protocol Data Units (BPDUs)Περιοδικά μηνύματα πρωτοκόλλου STP κάθε 2 sec (default) SWITCH 4 RP PORT STATES Listening: Ακούει τα BPDU’s Learning: Μαθαίνει τις διευθύνσεις MAC πίσω της & δημιουργεί την filteringή switching data base. Blocking: Ακούει τα BPDU’s αλλά δεν ενεργοποιεί προώθηση πακέτων εκτός να αντιληφθεί ότι το επικαλύπτον δένδρο έχει διασπαστεί Forwarding: Ακούει τα BPDU’s και προωθεί κανονικά τα πακέτα Disabled: Μη ενεργή PC_9 PC_10
ΕΠΑΝΑΛΗΨΗ: ΔΡΟΜΟΛΟΓΙΣΗ ΜΕ VLANs (IEEE 802.1Q) VLAN “Red” (VID 00d) Switch Ports 1 & 9 Subnet 147.102.13.0/24 Default Gateway 147.102.13.200 VLAN “Blue” (VID 003) Switch Ports 4 & 12 IP Subnet 147.102.3.0/24 Default Gateway 147.102.3.200 Trunk Switch Port 5 IP ROUTER warp.core.ntua.gr 00:08:7c:63:e4:00 147.102.13.200 147.102.3.200 ETHERNET SWITCH ΦΥΣΙΚΗ ΣΥΝΔΕΣΗ: ΛΟΓΙΚΗ ΔΙΑΣΥΝΔΕΣΗ: matrix.netmode.ntua.gr 147.102.13.60 00:13:a9:34:dd:aa DG: 147.102.13.200 00:08:7c:63:e4:00 DNS ARP 147.102.3.1 00:13:72:f6:5f:83 DG: 147.102.3.200 00:08:7c:63:e4:00 147.102.13.38 00:50:da:51:95:10 DG: 147.102.13.200 00:08:7c:63:e4:00 147.102.3.90 00:16:17:72:72:76 DG: 10.2.0.200 00:08:7c:63:e4:00 802.1Q Framing Add-On’s TPID: Tag Protocol ID PCP: Priority Code Point CFI: Canonical Format Identifier VID: VLAN ID (< 4096) MAC Address ETHERNET II IP, TCP/UDP, Data
ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ TCP/IPSimple Network Management Protocol - SNMP • Πρωτόκολλο του στρώματος εφαρμογής για τη διαχείριση συσκευών συνδεδεμένων στο δίκτυο με TCP/IP stack (IP addressable Network Elements). • Οι συσκευές μπορεί να είναι routers, switches με 1 πόρτα IP για management, Η/Υ, monitoring devices, sensors, έξυπνες συσκευές διαχειριζόμενες από το Internet ... • Το SNMP υλοποιεί απλές διαχειριστικές λειτουργίες. • Ακολουθεί το μοντέλο Manager (που ρωτά) - Agent(που απαντά). • Χρησιμοποιεί υπόβαθρο UDP στα Ports UDP 161 (agent demon) καιUDP162 (manager demon για αυτόνομα μηνύματα των agents -SNMPtraps) • Υπενθύμιση: το UDP είναι πρωτόκολλο χωρίς επιβεβαίωση. • Προτυποποίηση: RFC (Request for Comments) της IETF (Internet Engineering Task Force): • RFC 1157 SNMPv1 και RFCs 1155,1212 SMIv1 • RFCs 1905-1907 SNMPv2 και RFCs 2578-2580 SMIv2 • RFC 1905-1907 & 2571-2575 SNMPv3
ΜΟΝΤΕΛΛΟ ΔΙΑΧΕΙΡΙΣΗΣ SNMP Network Management Station (NMS) Σύστημα συνδεμένο στο δίκτυο που μπορεί να εκτελεί οποιαδήποτε εργασία Κλήση SNMP Απάντηση στην ερώτηση Ασύγχρονο μήνυμα (Trap)προς το manager
ΠΡΩΤΟΚΟΛΛΟ ΑΝΤΑΛΛΑΓΗΣ ΠΛΗΡΟΦΟΡΙΩΝ ΔΙΑΧΕΙΡΙΣΗΣ • Χρειαζόμαστε ένακοινό (standard)τρόπο για να ορίζουμε τα αντικείμενα που διαχειριζόμαστε και τη συμπεριφορά τους • Χρειάζεται να γνωρίζουμε ποια αντικείμενα είναι διαθέσιμα στον agent και ποιες είναι οι ιδιότητες τους • π.χ. κατάσταση ενός Router Interface: Up, Down, Testing • Τις πληροφορίες αυτές τις ορίζει η Βάση Πληροφοριών Διαχείρισης (Management Information Base -MIB) • Η ΜΙΒ δεν είναι βάση δεδομένων – απλά τυποποιεί αντικείμενα / δείκτες ώστε να απευθύνεται σε αυτά ο manager ανεξάρτητα από κατασκευαστή, λειτουργικό κ.λπ. • Η πληροφορία σε αυτή δομείται σύμφωνα με τους κανόνες Structure of Management Information - SMI • Υπάρχουν πολλές MIB ανάλογα με το είδος εργασιών • π.χ. ATM MIB (RFC 2515), DNS MIB (RFC 1611) κ.λπ. • Όλοι οι agent σε routers στο Internet υλοποιούν τουλάχιστον την MIBII (RFC 1213)
ΟΡΙΣΜΟΣ ΑΝΤΙΚΕΙΜΕΝΩΝ ΣΤΗ MIB • Η MIB είναι δενδρική δομή δεδομένων (data structure) που ορίζει διαχειριζόμενα αντικείμενα(managed objects) με τυποποιημένο τρόπο • Κάθε διαχειριζόμενο αντικείμενο έχει ορισμένο τύπο και θέση στη ΜΙΒ • Όπου & όταν χρειάζεται, ο agent αναλαμβάνει την αντιστοίχηση των αντικειμένων της MIB με μεταβλητές τιμές που του αποδίδει το συγκεκριμένο σύστημα - operating system, π.χ. χρόνος που το σύστημα είναι σε λειτουργία, System Uptime • Οι agents γίνονται compiled για κάθε operating system που υπάρχει στα στοιχεία του δικτύου • Ο ορισμός - κωδικοποίηση των αντικειμένων για να περιληφθούν στη MIB γίνεται με την συντακτική αφηρημένη γλώσσα ASN.1 και τους κανόνες Basic Encoding Rules (BER) • Ο διαχειριστής χρειάζεται να γνωρίζει μόνο το είδος - τύπο της πληροφορίας και που θα τη βρει και όχι τον τρόπο που αυτή είναι εσωτερικά κωδικοποιημένη • Σύνοψη των ορισμών • ASN.1: "αφηρημένη" γλώσσα περιγραφής δομών και τύπων ανεξάρτητα από την εφαρμογή • BER:Κανόνες κωδικοποίησης σε ASN.1 για τον ορισμό MIBs • SMI: Γενική περιγραφή της δομής που πρέπει να έχει μια MIB
ΔΕΝΔΡΙΚΗ ΔΟΜΗ MIB • Τα διαχειριζόμενα αντικείμενα οργανώνονται σε μια δενδρική δομή, βάση της οποίας προκύπτει και το όνομα τους (που υποδηλώνει τη μοναδική τους θέση στο δένδρο) root sysUpTime(3) system(1) ccitt(0) iso(1) joint(2) interfaces(2) org(3) at(3) dod(6) ip(4) internet(1) directory(1) icmp(5) mgmt(2) mibΙΙ(1) tcp(6) experimental(3) udp(7) private(4) egp(8) Έτσι, π.χ. το αντικείμενο sysUptimeέχει τη μοναδική αναφορά: 1.3.6.1.2.1.1.3.0 transmission(10) snmp(11)
ΠΑΚΕΤΑ - ΕΝΤΟΛΕΣ SNMP • get-request (NMS Agent, UDP port 161) • get-response (Agent NMS) • getnext-request (NMS Agent) • getnext-response (Agent NMS) • walk (NMS Agent) • bulk-get-request (NMS Agent) • set-request (NMS Agent) • trap (Agent NMS, UDP port 162) Παραδείγματα Εντολών SNMP snmpget – c – public 147.102.13.19 system.sysUpTime.0 snmpwalk – c – public maria.netmode.ece.ntua.gr
ΣΥΝΤΑΞΗ ΑΝΤΙΚΕΙΜΕΝΩΝ Τα διαχειριζόμενα αντικείμενα κωδικοποιούνται στη μορφή (SNMPv2 SMI): <όνομα> OBJECT-TYPE SYNTAX <τύπος αντικειμένου> MAX-ACCESS <"not-accessible" | "accessible-for-notify" | "read-only" | "read-write" | "read-create"> STATUS <"current" | "deprecated" | "obsolete"> DESCRIPTION <κείμενο> INDEX{…} DEFVAL{…} ::= {<θέση του αντικειμένου στον προηγούμενο κλάδο του δένδρου>}
ΤΥΠΟΙ ΑΝΤΙΚΕΙΜΕΝΩΝSyntax • INTEGER (μπορεί να χρησιμοποιηθεί και για λίστα απαρίθμησης) • Integer32 • Unsigned32 • Counter32& Counter64 • Gauge32 • Timeticks (εκατοστά του δευτερολέπτου, όπως μετρούνται στο σύστημα) • OCTET STRING • OBJECT IDENTIFIER • Opaque • RowStatus (TC) • DisplayString (TC) • IpAddress (TC) Max 0 Gauge
ΕΡΓΑΛΕΙΑ ΔΙΑΧΕΙΡΙΣΗΣ • ICMP: ping, traceroute • tcpdump • net-snmp • snmp_get • snmp_walk • trap • snmp_set • MRTG • RRDtool • Transmission (DWDM, SDH tools): CMIP, TMN, Proprietary • TL1, Q3, Corba
ΟΛΟΚΛΗΡΩΜΕΝΑ ΕΡΓΑΛΕΙΑ • Αυτοματοποιούν διαδικασίες • Ομαδοποιούν λειτουργίες • Open Source • Nagios – Service Monitoring http://www.nagios.org/ • OpenNMS – Network Monitoring http://www.opennms.org/index.php/Main_Page • Ganglia – Cluster Management http://ganglia.info/ • Commercial • HP Openview • IBM Tivoli
NAGIOS PLUGINS RETURN CODE | TEXT OUTPUT | OPTIONAL PERFDATA | LONG TEXT LINE … | PERFDATA … 0 | PING OK - Packet loss = 0%, RTA = 0.15 ms 0 | DISK OK - free space: / 3326 MB (56%); | /=2643MB;5948;5958;0;5968
ΠΑΡΑΔΕΙΓΜΑΤΑ NAGIOS PLUGINS • check_http • check_snmp • check_icmp • check_ntp • check_ifoperstatus • check_mrtg • check_ssh • check_ifstatus • check_ntp_time • check_imap • check_ups • check_ftp check_ping -H <host> -w <wrta>,<wpl>% -c <crta>,<cpl>%