NFV service chains at the speed of the underlying commodity hardware
Authors: Κατσίκας Γεώργιος 
Published: January 2024

Οι ταχύτητες σύνδεσης στα δίκτυα στο εγγύς μέλλον θα φτάσουν και θα ξεπεράσουν τα 100 Gbps. Ενώ το διαθέσιμο εξειδικευμένο υλικό μπορεί να διεκπεραιώσει αυτές τις ταχύτητες, τα σύγχρονα δίκτυα έχουν υιοθετήσει ένα νέο πρότυπο δικτύωσης γνωστό ως Network Functions Virtualization (NFV), που αντικαθιστά το ακριβό εξειδικευμένο υλικό με λογισμικό ανοιχτού κώδικα που εκτελείται σε υλικό γενικού σκοπού. Ωστόσο, η επίτευξη υψηλών επιδόσεων με χρήση υλικού γενικού σκοπού είναι ένα δύσκολο πρόβλημα κυρίως λόγω του χάσματος απόδοσης επεξεργαστή-μνήμης. Αυτό το χάσμα υποδηλώνει ότι μόνο οι πιο γρήγορες μνήμες προσπέλασης δεδομένων των σημερινών εξυπηρετητών (servers) μπορούν να επιτύχουν την επιθυμητή ταχύτητα πρόσβασης για δίκτυα υψηλής ταχύτητας. Υπάρχοντα NFV συστήματα πραγματοποιούν αλυσιδωτές λειτουργίες δικτύου (γνωστές και ως service chains) χρησιμοποιώντας κυρίως πιο αργές μνήμες. Αυτό συνεπάγεται την ανάγκη χρήσης πολλαπλών επεξεργαστών ή ακόμα και πολλαπλών εξυπηρετητών για την επίτευξη υψηλής ταχύτητας επεξεργασίας πακέτων. Αντίθετα, αυτή η διατριβή συνδυάζει τέσσερις συνεισφορές για την υλοποίηση αλυσιδωτών λειτουργιών δικτύου με δραματικά υψηλότερη απόδοση και καλύτερη αποδοτικότητα από ότι είναι εφικτό σήμερα. Η πρώτη συνεισφορά είναι ένα σύστημα που αναλύει την απόδοση NFV αλυσίδων για να ανακαλύψει πιθανούς λόγους υποβάθμισης της απόδοσης, ενώ η δεύτερη συνεισφορά αξιοποιεί τα δεδομένα της ανάλυσης για να επιταχύνει αυτές τις αλυσίδες υπηρεσιών συνδυάζοντας την πολυπλεξία κλήσεων συστήματος (system calls' multiplexing) με στρατηγικές χρονο-προγραμματισμού διεργασιών του λειτουργικού συστήματος. Η τρίτη συνεισφορά συνθέτει μεθόδους εισόδου/εξόδου και επεξεργασίας NFV υπηρεσιών για την αύξηση της χωρικής τοπικότητας των πακέτων του δικτύου στις κρυφές μνήμες ενός συστήματος. Η τέταρτη συνεισφορά συνδυάζει τα ευρήματα του αναλυτή από την πρώτη συνεισφορά και τη συνθετική προσέγγιση της τρίτης συμβολής για την υλοποίηση αλυσίδων υπηρεσιών NFV στην ταχύτητα του υποκείμενου υλικού γενικού σκοπού. Για να γίνει αυτό, οι εργασίες ταξινόμησης των πακέτων του δικτύου εκφορτώνονται στο διαθέσιμο υλικό (πχ επαναπρογραμματιζόμενοι μεταγωγείς ή/και κάρτες δικτύου) και μια ετικέτα συσχετίζεται με κάθε κατηγορία πακέτων. Στην πλευρά του εξυπηρετητή, οι κατηγορίες πακέτων εισόδου ταξινομούνται από το υλικό με βάση τις τιμές αυτών των ετικετών, οι οποίες υποδεικνύουν τον πυρήνα της CPU που πρέπει να αναλάβει την επεξεργασία τους, εκμηδενίζοντας παράλληλα την επικοινωνία μεταξύ πυρήνων. Με χρήση υλικού γενικού σκοπού, αυτή η διατριβή πραγματοποιεί υπηρεσίες σε επίπεδο Παροχέα Υπηρεσιών Διαδικτύου (Internet Service Provider) καθώς και αναλυτική επιθεώρηση πακέτων (deep packet inspection) με ρυθμό 40 Gbps και αλυσίδες υπηρεσιών στην ταχύτητα μιας κάρτας δικτύου 100 GbE με χρήση ενός μόνο εξυπηρετητή με 16 επεξεργαστές. Αυτό έχει ως αποτέλεσμα έως (i) 4,7 φορές χαμηλότερη καθυστέρηση, (ii) 8,5 φορές υψηλότερη ρυθμααπόδοση και (iii) 6,5 φορές καλύτερη αποδοτικότητα από την τελευταία λέξη της τεχνολογίας. Οι τεχνικές που περιγράφονται σε αυτή τη διατριβή είναι ζωτικής σημασίας για την επίτευξη NFV υπηρεσιών υψηλής ταχύτητας στο εγγύς μέλλον.