Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Προχωρημένα Θέματα Δικτύων

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Προχωρημένα Θέματα Δικτύων"— Μεταγράφημα παρουσίασης:

1 Προχωρημένα Θέματα Δικτύων
Πρόγραμμα Μεταπτυχιακών Σπουδών Τμήμα Πληροφορικής ΑΠΘ Μάθημα: 9 – Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου

2 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Πρόβλημα: Περιορισμένο bandwidth σε απομακρυσμένες μονάδες Οι χρήστες πρέπει να προστατευθούν από άλλους χρήστες που καταχρώνται δικτυακούς πόρους (π.χ. P2P) Κατάχρηση! Κεντρικός Δρομολογητής WAN Link 12 Mbps Μπλέ: εξερχόμενη Πράσινο: εισερχόμενη Campus Θέρμης Η κατάχρηση γίνεται αντιληπτή ως καθυστέρηση στο φόρτωμα και χαμηλές ταχύτητες Campus Βέροιας WAN Link 4 Mbps Internet

3 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
The Leaky Bucket algorithm Πακέτα καταφτάνουν στην ουρά με οποιοδήποτε ρυθμό στέλνουν τα πακέτα τους οι υπολογιστές του δικτύου Η ουρά στέλνει τα πακέτα με όποιο ρυθμό επιτρέπει η σύνδεση δικτύου που διαθέτει. Εάν τα πακέτα καταφθάνουν στην ουρά με υψηλότερο ρυθμό από αυτόν που είναι δυνατόν να σταλούν, μένουν στην ουρά αναμένοντας την σειρά τους. Εάν επί πολλή ώρα ο ρυθμός που φθάνουν τα πακέτα είναι μεγαλύτερος από τον ρυθμό που αυτά μπορούν να αποσταλλούν, η ουρά γεμίζει. Εάν η ουρά γεμίσει, τα νέα πακέτα δεν έχουν χώρο να περιμένουν, οπότε απορρίπτονται. Παράμετροι Λειτουργίας Α. Bandwidth (ρυθμός αποστολής) Β. Burstiness (το κατά πόσο η κίνηση καταφθάνει σε ριπές) Γ. Χωρητικότητα

4 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Όταν σε κάποιο (WAN) link κάποιος/κάποιοι καταχρώνται το διαθέσιμο bandwidth, πρέπει κάπως να περιορίσουμε την κίνησή τους Για το περιορισμό τους υπάρχουν δυο τρόποι: Traffic Policing vs. Traffic Shaping Policing: H κίνηση που υπερβαίνει τον θεμιτό ρυθμό απορρίπτεται (ουρά μηδενικού μεγέθους) Shaping: H κίνηση που υπερβαίνει τον θεμιτό ρυθμό κατακρατείται σε μια ουρά κάποιου μεγέθους και αποστέλλεται όταν έρθει η σειρά της

5 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Traffic Policing vs. Traffic Shaping Policing: Διάγραμμα κίνησης πριονωτό – λείπουν οι κορυφές του διαγράμματος λόγω απόρριψης πακέτων – επίσης, πρωτόκολλα όπως το TCP ρίχνουν στο μισό το ρυθμό τους σε περίπτωση απώλειας πακέτων Shaping: Λόγω του ότι δεν απορρίπτονται πακέτα (εκτός εάν...), το διάγραμμα έχει μια ομαλή μορφή που τείνει στο θεμιτό ρυθμό

6 Router Interface Configuration
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Traffic Policing σε εξερχόμενη κίνηση (1) Router Interface Configuration policy-map JOUR-child class JOUR-Abusers police rate percent 30 conform-action transmit exceed-action drop policy-map JOUR class ALL-EX-IT police rate percent 95 service-policy JOUR-child interface ATM0/1/0.1 point-to-point description JOUR ip address ip broadcast-address ip flow ingress ipv6 address 2001:648:2800:2103:FACE::1/64 ipv6 enable ipv6 ospf 1 area 0 service-policy output JOUR pvc 0/100 encapsulation aal5snap ! class-map match-all JOUR-Abusers match access-group name egnatia-jour-abusers class-map match-any ALL-EX-IT match access-group name all-ex-it ip access-list extended egnatia-jour-abusers permit ip any host ip access-list extended all-ex-it deny ip host any permit ip any any “Όλοι εκτός από τον server του IT μπορούν να πιάσουν μέχρι 95% της γραμμής. Μέχρι το 30% του 95% μπορούν να πιάσουν οι abusers” Στόχος: Διασφάλιση διαθέσιμου εύρους ζώνης για τον server!

7 Router Interface Configuration
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Traffic Policing σε εξερχόμενη κίνηση (2) Router Interface Configuration 90 Mbps interface TenGigabitEthernet2/2 description ATLANTAS switchport switchport trunk encapsulation dot1q switchport trunk allowed vlan 100 switchport mode trunk switchport nonegotiate udld port mls qos trust dscp service-policy input limit-abusers ! policy-map limit-abusers class ABUSERS police cir conform-action transmit exceed-action drop violate-action drop class-map match-all ABUSERS match access-group name acl-abusers “Συγκέντρωση των χρηστών που καταχρώνται πόρους δικτύου σε μια κλάση που όλοι μαζί μπορούν να πιάσουν μέχρι 90 Μbps” ip access-list extended acl-abusers permit ip host any permit ip host any

8 Router Interface Configuration
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Traffic Shaping σε εξερχόμενη κίνηση Router Interface Configuration policy-map LYCEE class class-default shape average service-policy LYCEE-child interface Tunnel9 description Tunnel to LYCEE bandwidth 12415 ip address ip mtu 1452 ip flow ingress ip tcp adjust-mss 1452 no clns route-cache tunnel source tunnel destination service-policy output LYCEE ! policy-map LYCEE-child class NOC-Mgmnt priority percent 5 class LYCEE-Abusers bandwidth percent 25 class class-default bandwidth percent 70 “Οι χρήστες IT-Mgmnt θα έχουν διαθέσιμο τουλάχιστον 5% του εύρους ζώνης, οι abusers τουλάχιστον 25% και οι υπόλοιποι τουλάχιστον 70%” Αν δεν υπάρχουν όμως πχ. abusers; Το διαθέσιμο καταλαμβάνεται από τους υπόλοιπους! class-map match-all LYCEE-Abusers match access-group name lycee-abusers ip access-list extended lycee-abusers

9 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Portchannels: Link aggregation Πρόβλημα: Κάποιο switch uplink αρχίζει σε καθημερινή βάση και γεμίζει Δεν γίνεται απλώς να συνδέσουμε άλλο ένα interface του κεντρικού με ένα ακόμα interface του κόμβου ορόφου! (Spanning Tree Protocol – loop!) Κεντρικός Κόμβος Κόμβοι ορόφων STP block! H λύση βρίσκεται στο link aggregation που είναι η 'ενοποίηση' πολλών interfaces και παρέχει: Διαμοιρασμό φόρτου Ανοχή σε βλάβες (διακοπή ενός link) Αύξηση εύρους ζώνης Διάγραμμα Κίνησης Πάνω από 50% χρήση!

10 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Portchannels: Link aggregation Διαμοιρασμός φόρτου Η συνολική χρήση διαμοιράζεται μεταξύ των aggregated links βάσει source ID, destination ID, exchange ID Ανοχή σε βλάβες (διακοπή ενός link) Σε περίπτωση αποτυχίας ενός από τα aggregated links, τα υψηλότερα layers δεν αντιλαμβάνονται τίποτα, απλώς μειώνεται το διαθέσιμο εύρος ζώνης Αύξηση εύρους ζώνης Το διαθέσιμο εύρος ζώνης ισούται με το άθροισμα των aggregated links Κεντρικός Κόμβος Κόμβοι ορόφων PortChannel 2 x 100 Mbps

11 To configuration είναι ακριβώς ίδιο και στα δυο switch
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Portchannels: Link aggregation - Configuration σε Cisco - PortChannel Εύκολο configuration Προσοχή: Πρέπει ΠΡΩΤΑ να γίνει το configuration και μετά να γίνουν 'no shutdown' τα Ethernet Interfaces αλλιώς STP block! Aggregate μπορούν να γίνουν αρκετά links – ο ακριβής αριθμός διαφέρει ανά μοντέλο μεταγωγέα Κεντρικός Κόμβος Κόμβοι ορόφων interface Port-channel1 switchport mode trunk flowcontrol send off end To configuration είναι ακριβώς ίδιο και στα δυο switch interface FastEthernet0/1 switchport mode trunk speed 100 duplex full channel-group 1 mode on interface FastEthernet0/2 switchport mode trunk speed 100 duplex full channel-group 1 mode on

12 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Παράγοντες και Μετρικές Ποιότητας Uptime (διαθεσιμότητα) Μέτρηση και στατιστικά με open source εργαλεία (π.χ. NMIS) Φόρτος (CPU Load) Mέτρηση και στατιστικά με open source εργαλεία (π.χ. MRTG) Yψηλός φόρτος σημαίνει μείωση εύρους ζώνης! (Τα ενεργά στοιχεία δεν προλαβαίνουν να επεξεργαστούν τα πακέτα)

13 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Παράγοντες και Μετρικές Ποιότητας Packet Delay Variation (Jitter) (διακύμανση καθυστέρησης) Προκαλεί προβλήματα σε real time applications (VoIP, video) Latency (καθυστέρηση μετάδοσης) Προκαλεί προβλήματα σε real time applications (VoIP, video) Round-Trip-Time (RTT) Προκαλεί προβλήματα σε real time applications (VoIP, video) Μειώνει το throughput στο TCP για δεδομένους TCP buffers (Eίναι το βασικό πρόβλημα του διαπλανητικού Internet!) Link Congestion (κορεσμός συνδέσεων) Μειωμένο εύρος ζώνης, dropped packets, υψηλό RTT

14 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Εργαλεία Μέτρησης Ποιότητας Δικτύου Με χρήση του Ping μετράμε: Packet Delay Variation (Jitter) (διακύμανση καθυστέρησης) Round-Trip-Time (RTT) Στέλνουμε 5 πακέτα προς το aris ~ $ ping -c 5 PING origin- ( ) 56(84) bytes of data. 64 bytes from www1.cisco.com ( ): icmp_req=1 ttl=104 time=183 ms 64 bytes from www1.cisco.com ( ): icmp_req=2 ttl=104 time=183 ms 64 bytes from www1.cisco.com ( ): icmp_req=3 ttl=104 time=183 ms 64 bytes from www1.cisco.com ( ): icmp_req=4 ttl=104 time=183 ms 64 bytes from www1.cisco.com ( ): icmp_req=5 ttl=104 time=183 ms --- origin- ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4009ms rtt min/avg/max/mdev = / / /0.282 ms Σταθερό RTT = πολύ χαμηλό jitter! Μέση τιμή RTT Jitter = Διακύμανση RTT Μέτρηση – παρακολούθηση με MRTG!

15 ΠΡΟΣΟΧΗ ΣΤΟ DEFAULT WINDOW SIZE!!!
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Εργαλεία Μέτρησης Ποιότητας Δικτύου Με χρήση του iperf μετράμε: Link Congestion (κορεσμός συνδέσεων (ανά κατεύθυνση)) Σετάρουμε τον server της δοκιμής: Στέλνει ο client προς τον server δεδομένα και μετριέται η ταχύτητα postmortem:~# iperf -s -p 4444 Server listening on TCP port 4444 TCP window size: 85.3 KByte (default) [ 4] local port 4444 connected with port 38871 [ ID] Interval Transfer Bandwidth [ 4] sec MBytes Mbits/sec ΠΡΟΣΟΧΗ ΣΤΟ DEFAULT WINDOW SIZE!!! Σετάρουμε τον client της δοκιμής: aris ~ $ iperf -c p 4444 Client connecting to , TCP port 4444 TCP window size: 16.0 KByte (default) [ 3] local port connected with port 4444 [ ID] Interval Transfer Bandwidth [ 3] sec MBytes Mbits/sec Στην επόμενη διαφάνεια φαίνεται η ίδια δοκιμή με μικρό TCP Window Size

16 Mε το default window size: 95 Mbps Mε μικρό window size: 20 Mbps!
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Εργαλεία Μέτρησης Ποιότητας Δικτύου Ίδια δοκιμή με μικρό TCP Window Size (1 KB) Σετάρουμε τον server της δοκιμής: postmortem:~# iperf -w 1K -s -p 4444 WARNING: TCP window size set to 1024 bytes. A small window size will give poor performance. See the Iperf documentation. Server listening on TCP port 4444 TCP window size: 2.00 KByte (WARNING: requested 1.00 KByte) [ 4] local port 4444 connected with port 38878 [ ID] Interval Transfer Bandwidth [ 4] sec MBytes Mbits/sec Mε το default window size: 95 Mbps Mε μικρό window size: 20 Mbps! Σετάρουμε τον client της δοκιμής: aris ~ $ iperf -w 1K -c p 4444 WARNING: TCP window size set to 1024 bytes. A small window size will give poor performance. See the Iperf documentation. Client connecting to , TCP port 4444 TCP window size: 2.00 KByte (WARNING: requested 1.00 KByte) [ 3] local port connected with port 4444 [ ID] Interval Transfer Bandwidth [ 3] sec MBytes Mbits/sec

17 Το option 'Window Size' υλοποιεί το Flow Control
Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου Το πρωτόκολλο TCP Το option 'Window Size' υλοποιεί το Flow Control Το Window Size είναι το πόσα δεδομένα είναι πρόθυμος ο αποδέκτης να δεχτεί μαζεμένα από τον αποστολέα. Συμφωνείται μεταξύ των επικοινωνούντων κατά το αρχικό TCP handshake αλλά αλλάζει και κατά την επικοινωνία με τα ACK πακέτα. Ο αποστολέας θα στείλει τόσα TCP segments (έκαστο ίσο με το MSS – Maximum Segment Size) ώστε να γεμίσει το window που του υπέδειξε ο παραλήπτης. Μετά θα σταματήσει και θα περιμένει το ACK, μέσα στο οποίο ο παραλήπτης θα τον ενημερώνει με το νέο window size, το πόσα δεδομένα δηλαδή επιτρέπει να του στείλει μαζεμένα ο αποστολέας κατά την επόμενη αποστολή.

18 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Το πρωτόκολλο TCP – Window Size Παράδειγμα: Ο TCP receiver (B) είναι μια μικρή handheld συσκευή (π.χ. PDA) και ο αποστολέας (A) είναι ένας web server. Το δίκτυο είναι γρήγορο, και ο server μπορεί να στείλει δεδομένα στο PDA πολύ γρηγορότερα από ό,τι η μικρή CPU του PDA μπορεί να τα επεξεργαστεί. Αρχικά, οι A και B συμφωνούν ότι ο ένας θα στέλνει στον άλλο συνολικά το πολύ 32 KB σε διαδοχικά unacknowledged segments. (στο παράδειγμα, κάθε TCP segment είναι μεγέθους 1460 bytes) O A στέλνει 22 TCP segments (22 x 1460 bytes ~= 32KB) και σταματάει, περιμένοντας ACK. O B επεξεργάζεται κάποια από τα δεδομένα και στέλνει ένα ACK όπου λέει ότι έλαβε σωστά τα πρώτα 22 TCP segments και ταυτόχρονα λέει στον Α να μειώσει τον ρυθμό αποστολής σε 16ΚΒ. Μόλις το λάβει ο Α, θα στείλει 16ΚΒ σε 11 TCP segments των 1460 bytes και θα περιμένει ACK.

19 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Το πρωτόκολλο TCP – Window Size Scaling (1) Το Window Size έχει max μέγεθος 64KB (2 bytes) Άρα το πολύ 64ΚΒ μπορούν να σταλούν πριν ο αποστολέας σταματήσει και αναμένει για ACK. Unacknowledged Data Χωρητικότητα δικτύου Τα data που έχουν μεταδοθεί αλλά δεν έχουν ακόμα παραληφθεί εξαρτώνται από δυο παράγοντες: Ταχύτητα Μετάδοσης (Bandwidth) [bits/sec] End to End Delay (~RTT) [seconds] Άρα τα unacknowledged data μπορεί να είναι το πολύ BDP (Bandwidth Delay Product) = Bandwidth x Delay bits 44 ΠΡΟΒΛΗΜΑ!!! Αν το BDP στο δίκτυό μας είναι πάνω από 64KB, τότε τη στιγμή που ο αποστολέας θα έχει στείλει όσα TCP segments αντιστοιχούν σε 64ΚΒ, ο παραλήπτης δεν θα έχει καν αρχίσει να λαμβάνει το πρώτο από τα segments! Έτσι το δίκτυο παραμένει ανενεργό πολύ χρόνο (underutilized) Tα δίκτυα με BDP > 64KB λέγονται Long-Fat networks (LFN – aka Elephant).

20 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Το πρωτόκολλο TCP – Window Size Scaling (2) TCP window scale option Για τα LFN networks, δημιουργήθηκε το TCP window scale option στον TCP header Χρησιμοποιείται για να αυξηθεί το max window size πάνω από το όριο των 64KB μέχρι τα 1,073,725,440 bytes (~ 1 GB). Γιατί δεν λύθηκε το πρόβλημα απλώς αλλάζοντας το Window Size option ώστε να φτάνει μέχρι το 1 GB αλλά προστέθηκε και extra πεδίο; Παράδειγμα: T1 transmission line of 1.5Mbits/second over a satellite link with a 513 millisecond round trip time (RTT) Βandwidth-Delay Product is ( * 0.513) = 769,500 bits (96,188 bytes) Using the maximum window size of 64K only allows the buffer to be filled to (65535 / 96188) = 68% of the theoretical maximum speed of 1.5Mbits/second, or 1.02 Mbit/s By using the window scale option, files can be transferred at nearly 1.5Mbit/second utilizing nearly all of the available bandwidth

21 Διασφάλιση Ποιότητας Υπηρεσιών Δικτύου
Εργασία: Ανα δυο, κάντε μετρήσεις στους ISP που έχετε σπίτι σας με τη χρήση του iperf, και προς τις δυο κατευθύνσεις. Μετρήστε από το σπίτι του καθενός και προς τον , και δείτε την ταχύτητα που πιάνετε ως προς την ονομαστική του router. Καταγράψτε τις μετρήσεις σας και τα συμπεράσματά σας. Προαιρετική εργασία: Φτιάξτε μια παρουσίαση σχετικά με το πως λειτουργεί το TCP Congestion Control. Η παρουσίαση να είναι περίπου 6-7 διαφάνειες και να εξηγεί τη φιλοσοφία λειτουργίας του πρωτοκόλλου. Η καλύτερη θα παρουσιαστεί στο επόμενο μάθημα.


Κατέβασμα ppt "Προχωρημένα Θέματα Δικτύων"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google