Αυτό το στάδιο είναι αρκετά σημαντικό, γιατί εδώ συλλέγονται πληροφορίες σχετικά με τις διάφορες απαιτήσεις γύρω από το σχεδιασμό του δικτύου. Σ’ αυτές συμπεριλαμβάνονται οι απαιτήσεις των χρηστών, οι απαιτήσεις των δικτυακών κόμβων, οι απαιτήσεις των υποστηριζόμενων από το δίκτυο εφαρμογών και οι οικονομικές απαιτήσεις, οι οποίες είναι εγγενείς στη σχεδίαση ενός δικτύου..
Το στάδιο της ανάλυσης των απαιτήσεων περιλαμβάνει συνεντεύξεις με το προσωπικό και τους τελικούς χρήστες του δικτύου. Είναι πολύ συνηθισμένο οι Ν συνεντεύξεις να καταλήγουν σε Ν+1 διαφορετικά σύνολα απαιτήσεων. Το δικτυακό προσωπικό θα πρέπει να βρίσκεται σε στενή επαφή με τους τελικούς χρήστες συνεχώς κατά την πορεία της σχεδίασης, έτσι ώστε η τελική υλοποίηση να ανταποκρίνεται στις πραγματικές ανάγκες τους. Κάτι που γίνεται συνήθως, είναι το προσωπικό της δικτύωσης να μην έχει ξεκάθαρη ιδέα για το ποιες είναι οι ανάγκες των χρηστών, είτε γιατί οι συνεντεύξεις είναι ελλιπείς, είτε γιατί δε γίνονται καθόλου. Στην περίπτωση αυτή, η υλοποίηση καταλήγει να έχει βασιστεί σε παράγοντες τελείως διαφορετικούς από αυτό που χρειάζονται πραγματικά οι χρήστες. Το πρόβλημα με αυτού του τύπου τους σχεδιασμούς είναι ότι δεν είναι αντικειμενικοί και συχνά η επιλογή οικείων τεχνολογιών, πρωτοκόλλων και προμηθευτών μπορεί να αποτελούν φτωχές επιλογές για ένα συγκεκριμένο περιβάλλον.
Γενικά, η συλλογή όλων των απαιτούμενων
πληροφοριών για τη σύνταξη μιας ολοκληρωμένης και πλήρους ανάλυσης των
δικτυακών απαιτήσεων θεωρείται χρονοβόρα και πολύπλοκη. Αυτό οφείλεται στο
γεγονός του ότι τις περισσότερες φορές οι πληροφορίες αυτές είτε είναι
ανύπαρκτες, είτε υπάρχουν αλλά δεν είναι σε μορφή κατάλληλη για ανάλυση.
Ας υποθέσουμε ότι έχουμε το παρακάτω γενικό δικτυακό σύστημα, το οποίο αποτελείται από τέσσερα επίπεδα: το επίπεδο των χρηστών, το επίπεδο των εφαρμογών, το επίπεδο του δικτυακού κόμβου[1] και το επίπεδο δικτύου. Θα ξεκινήσουμε την ανάλυσή μας περιγράφοντας τις απαιτήσεις του πρώτου επιπέδου, οι οποίες θα οδηγήσουν στην ανάπτυξη πιο συγκεκριμένων απαιτήσεων καθώς θα προχωράμε στα παρακάτω επίπεδα.
Γενικά, το τελικό σύστημα θα πρέπει να
προσαρμοστεί στο περιβάλλον των χρηστών, να παρέχει γρήγορη και αξιόπιστη
πρόσβαση και μεταφορά δεδομένων και να παρέχει καλή ποιότητα υπηρεσιών. Αυτό
υποδεικνύει τις παρακάτω γενικές απαιτήσεις:
Ικανοποιητικό χρονικό όριο διεκπεραίωσης
εργασιών: Αυτή η απαίτηση,
αφορά τη δυνατότητα να μπορεί ο χρήστης να έχει πρόσβαση, να μεταφέρει και να
τροποποιεί δεδομένα μέσα σε ένα ικανοποιητικό χρονικό πλαίσιο. Το πως ορίζεται
το «ικανοποιητικό», βέβαια, εξαρτάται από την αντίληψη που έχει ο
χρήστης για την καθυστέρηση στο σύστημα. Για παράδειγμα, ένας χρήστης μπορεί να
έχει την απαίτηση να μεταφέρει τα αρχεία του από έναν εξηπηρέτη (server) και να ολοκληρώνει τη μεταφορά τους το πολύ μέσα
σε 10 λεπτά, ή ακόμη, μπορεί να θέλει να λαμβάνει εικόνες video κάθε 30 ms. Ο κάθε ένας από
αυτούς τους χρόνους προσδιορίζει και ένα όριο χρονικής καθυστέρησης,
το οποίο θα πρέπει να τηρείται από το δίκτυο. Μετρήσεις της καθυστέρησης από
κόμβο - σε - κόμβο (end - to - end delay) και της καθυστέρησης από άκρο σε άκρο και πάλι πίσω (round trip delay) βοηθούν πολύ στην ποσοτικοποίησή της απαίτησης
αυτής.
Διαδραστικότητα: Η απαίτηση αυτή είναι παρόμοια με την
προηγούμενη, αλλά επικεντρώνεται στο χρόνο που χρειάζεται για να απαντήσει το
σύστημα (και το δίκτυο) πίσω στο χρήστη και όχι σε κάποια
εφαρμογή. Ας θεωρήσουμε την προηγούμενη περίπτωση, όπου ένας χρήστης θέλει να
έχει τη δυνατότητα να μεταφέρει αρχεία από έναν απομακρυσμένο server μέσα σε 10 λεπτά. Ο χρόνος αυτός αποτελεί το
χρόνο ολοκλήρωσης της μεταφοράς των αρχείων και άρα το χρόνο
απόκρισης του απομακρυσμένου υπολογιστή στην εφαρμογή του χρήστη.
Για την τελευταία, είναι λογικό να περιμένει έως και 10 λεπτά για να
ολοκληρωθεί η απάντηση από το απομακρυσμένο σύστημα, για το χρήστη, όμως, που
αλληλεπιδρά με αυτήν, όχι. Στον τελευταίο, δηλαδή, υπάρχει η απαίτηση της ικανοποιητικής
διαδραστικότητας, της απόκρισης δηλαδή από το σύστημα σε χρόνους με
βάση τον ανθρώπινο παράγοντα και όχι τον παράγοντα του λογισμικού. Για την
ποσοτικοποίησή της θα πρέπει να ληφθούν μετρήσεις σχετικά με την καθυστέρηση
από άκρο σε άκρο και πάλι πίσω (roundtrip delay).
Αξιοπιστία: Η απαίτηση αυτή, αποτελεί απαίτηση για σταθερή
και συνεπής διαθεσιμότητα του δικτύου. Δηλαδή, ο χρήστης
όχι μόνο θα πρέπει να μπορεί να έχει πρόσβαση στους πόρους τους συστήματος για ένα
μεγάλο ποσοστό του χρόνου, αλλά και το επίπεδο της λαμβανόμενης υπηρεσίας (σε
όρους απόδοσης του δικτύου και / ή του συστήματος), θα πρέπει να είναι συνεπές.
Η απαίτηση αυτή συνδέεται στενά με την απόδοση του συστήματος σε αξιοπιστία, σε
καθυστέρηση και σε χωρητικότητα.
Ποιότητα: Η απαίτηση αυτή έχει σχέση με την ποιότητα
παρουσίασης της πληροφορίας. Αυτή εξαρτάται από τη διαίσθηση που έχει ο χρήστης
ως προς την αναπαράσταση του ήχου, της εικόνας και των δεδομένων. Ως παράδειγμα
μπορούμε να θεωρήσουμε τις δυνατότητες που υπάρχουν μέσω του Internet για videoconferencing, για
video feeds και για τηλεφωνία. Παρόλο που υπάρχει ο μηχανισμός για την παροχή των
υπηρεσιών αυτών μέσα από το διαδίκτυο, υπάρχουν και άλλοι μηχανισμοί, οι οποίοι
μπορούν να προσφέρουν πολύ καλύτερη ποιότητα παρουσίασης. Πολλές φορές, δεν
είναι αρκετό απλά το να παρέχεται μια δυνατότητα μέσω δικτύου, αλλά θα πρέπει η
δυνατότητα αυτή να έχει τουλάχιστον την ίδια ή καλύτερη ποιότητα παρουσίασης
από άλλους μηχανισμούς, γιατί σε αντίθετη περίπτωση ο χρήστης είναι πιθανό να
απογοητευτεί. Μετρήσεις για την ποιότητα των παρεχόμενων υπηρεσιών
περιλαμβάνουν μετρήσεις γύρω από την απόδοση του συστήματος σε όλους τους
τομείς.
Προσαρμοστικότητα: Η απαίτηση της προσαρμοστικότητας είναι η
ικανότητα που έχει το σύστημα να προσαρμόζεται στις συνεχώς μεταβαλλόμενες
ανάγκες των χρηστών. Ένα παράδειγμα αποτελεί η ανάγκη των χρηστών για
κινητικότητα (mobility). Η κινητικότητα αναφέρεται στην
περίπτωση όπου ο χρήστης μπορεί να προσπελάσει υπηρεσίες και πόρους του δικτύου
(π.χ. τον εκτυπωτή) από οπουδήποτε χρησιμοποιώντας φορητούς υπολογιστές και
τηλεφωνική πρόσβαση στο δίκτυο.
Ασφάλεια: Η ασφάλεια σχετίζεται με τη δυνατότητα του
συστήματος να μπορεί εγγυηθεί για την ακεραιότητα (ακρίβεια και αυθεντικότητα)
των δεδομένων και των φυσικών πόρων του χρήστη, καθώς επίσης και για την ασφαλή
πρόσβαση στο σύστημα. Η απαίτηση αυτή ίσως να σχετίζεται περισσότερο με την
αξιοπιστία του συστήματος, αλλά επηρεάζει επίσης την καθυστέρηση και τη
χωρητικότητα.
Οικονομική δυνατότητα υλοποίησης: Η απαίτηση αυτή αποτελεί και την
τελευταία στο επίπεδο των χρηστών. Παρόλο που δεν είναι τεχνικής φύσεως,
επηρεάζει το σχεδιασμό του δικτύου από οικονομικής πλευράς. Είναι πολύ βασικό η
δικτυακή σχεδίαση να βρίσκεται εντός των οικονομικών δυνατοτήτων της
επιχείρησης, έτσι ώστε η τελευταία να είναι σε θέση να πραγματοποιήσει τις
ανάλογες επενδύσεις για την υλοποίησή του.
Επιπρόσθετα, είναι αναγκαίο να γίνει μια
εκτίμηση του αριθμού των χρηστών που θα χρησιμοποιούν το δίκτυο καθώς επίσης
και των τοποθεσιών τους. Επίσης θα πρέπει, εάν και εφόσον αυτό είναι δυνατό, να
εκτιμηθεί ο ρυθμός μεταβολής των χρηστών στα επόμενα ένα έως τρία χρόνια μετά
την υλοποίηση του συστήματος, καθώς επίσης και ο κύκλος ζωής του δικτύου.
Το επίπεδο των εφαρμογών αλληλεπιδρά με τα
επίπεδα των χρηστών και του δικτυακού κόμβου και αποτελεί ένα σημαντικό τμήμα
της ανάλυσης των απαιτήσεων.
Οι υπηρεσίες (εφαρμογές) ενός δικτύου
μπορούν να περιγραφθούν καλύτερα μέσω των παρακάτω απαιτήσεων απόδοσης:
της αξιοπιστίας, της χωρητικότητας και της καθυστέρησης.
Στο προηγούμενο τμήμα συσχετίσαμε τις απαιτήσεις των χρηστών με τις απαιτήσεις
αυτές με τον τρόπο που φαίνεται στο παρακάτω σχήμα. Ξεκινώντας από το σχήμα
αυτό θα αντιστοιχίσουμε τις απαιτήσεις των χρηστών και τις απαιτήσεις απόδοσης
με εφαρμογές λογισμικού, τις οποίες στη συνέχεια θα κατατάξουμε με βάση τις
απαιτήσεις αυτές.
ΤΥΠΟΙ ΕΦΑΡΜΟΓΩΝ
Στο γενικό δικτυακό μοντέλο του σχήματος
2, το τμήμα των εφαρμογών είναι το τμήμα εκείνο όπου οι απαιτήσεις των χρηστών
μεταφράζονται σε απαιτήσεις απόδοσης για το δίκτυο και τους δικτυακούς κόμβους.
Παλαιότερα οι δικτυακές εφαρμογές
υποστήριζαν μόνο μερικές βασικές λειτουργίες συνδεσιμότητας και μεταφοράς
δεδομένων. Σήμερα, ενώ οι περισσότερες εφαρμογές έχουν ακόμη ως βάση τους αυτές
τις λειτουργίες, οι απαιτήσεις των χρηστών και οι απαιτήσεις απόδοσης
κερδίζουν ολοένα και περισσότερο έδαφος, με αποτέλεσμα την ενσωμάτωση ολοένα
και περισσότερων λειτουργιών. Μπορούμε να χρησιμοποιήσουμε αυτές τις δύο
κατηγορίες απαιτήσεων, για να διακρίνουμε εκείνες τις εφαρμογές που χρειάζεται
να προσφέρουν συγκεκριμένα επίπεδα απόδοσης υπηρεσιών από εκείνες που δε
χρειάζεται. Κατά συνέπεια, μπορούμε να κατατάξουμε τις δικτυακές εφαρμογές ως
εξής:
Η περιγραφή των απαιτήσεων απόδοσης, θα
οδηγήσει στο διαχωρισμό των υπηρεσιών ανάμεσα σε καθορισμένες και
σε μέγιστης δυνατής προσπάθειας (best-effort). Οι πρώτες είναι υπηρεσίες, οι οποίες θα
πρέπει να παρέχουν ένα εγγυημένο επίπεδο απόδοσης, ενώ οι μέγιστης
δυνατής προσπάθειας παρέχουν το καλύτερο δυνατό επίπεδο απόδοσης, το οποίο
όμως δεν είναι ούτε εγγυημένο, ούτε σταθερό.
ΑΞΙΟΠΙΣΤΙΑ
Η αξιοπιστία αποτελεί ένα μέτρο της
ικανότητας του δικτύου να παρέχει εγγυημένη και ακριβής διανομή της
πληροφορίας. Ας δούμε, όμως, τον τρόπο με τον οποίο σχετίζεται με τις
εφαρμογές.
Υπάρχουν εφαρμογές, οι οποίες θα πρέπει να
προσφέρουν ένα υψηλό επίπεδο αξιοπιστίας, έτσι ώστε να μπορούν να λειτουργήσουν
σωστά. Απώλεια της αξιοπιστίας μπορεί να έχει από πολύ σοβαρές έως
καταστροφικές συνέπειες, όπως:
Εφαρμογές με απαιτήσεις αξιοπιστίας που το
επίπεδό τους πρέπει να είναι είτε υψηλό, είτε προβλέψιμο, ονομάζονται εφαρμογές
ζωτικής σημασίας (mission-critical applications).
ΧΩΡΗΤΙΚΟΤΗΤΑ
Όσον αφορά τη χωρητικότητα, υπάρχουν
εφαρμογές που απαιτούν ένα συγκεκριμένο και καλά καθορισμένο επίπεδο
χωρητικότητας για να λειτουργήσουν. Αυτές ονομάζονται εφαρμογές ελεγχόμενου
ρυθμού (controlled-rate applications) και συμπεριλαμβάνουν εφαρμογές φωνής, video, τηλεδιάσκεψης, κλπ. Οι εφαρμογές ελεγχόμενου
ρυθμού συνήθως απαιτούν άνω και κάτω όρια καθώς και εγγυήσεις στην ελάχιστη,
στη μέγιστη και στη μέση τιμή της χωρητικότητας του καναλιού.
ΚΑΘΥΣΤΕΡΗΣΗ
Η καθυστέρηση θα μπορούσε να οριστεί ως ένα
μέτρο των χρονικών διαφορών στη μεταφορά και την επεξεργασία των πληροφοριών.
Υπάρχουν πολλές πηγές προέλευσης της καθυστέρησης, όπως είναι η επεξεργασία, η
μετάδοση, η διάδοση, η δρομολόγηση των δεδομένων, κλπ. Το τμήμα αυτό
επικεντρώνεται στις καθυστερήσεις απ’ άκρο σ’ άκρο (end - to - end delay) και απ’ άκρο σ’ άκρο και πάλι πίσω (roundtrip delay), στις οποίες
περικλείονται όλοι οι τύποι καθυστέρησης. Από την άποψη των παρεχόμενων από μια
εφαρμογή υπηρεσιών, είναι πολύ πιο σημαντική η βελτιστοποίηση των
καθυστερήσεων απ’ άκρο σ’ άκρο ή απ’
άκρο σ’ άκρο και πάλι πίσω, παρά η βελτιστοποίηση των επιμέρους πηγών
καθυστέρησης (π.χ. η ταχύτητα μετάδοσης των δεδομένων). Οι επιμέρους πηγές
αποκτούν μεγαλύτερη σημασία στα παρακάτω επίπεδα του δικτυακού μοντέλου, όπως
επίσης και στη διαδικασία βελτιστοποίησης της δικτυακής σχεδίασης.
Σήμερα βρισκόμαστε σε ένα σημείο όπου
εφαρμογές με απαιτήσεις στην καθυστέρηση, σιγά - σιγά μεταναστεύουν στο χώρο
του διαδικτύου, ή στο χώρο των IP intranets. Εφαρμογές που παλαιότερα χρησιμοποιούνταν από
ένα μόνο χρήστη ή σε ένα μόνο υπολογιστή, τώρα χρησιμοποιούνται στο Internet και στα intranets (όπως επίσης
και σε άλλα είδη δικτύων), πιέζοντας έτσι για μια επαναξιολόγηση του τύπου των
υπηρεσιών που προσφέρονται στο διαδίκτυο και ενθαρρύνοντας την εισαγωγή πιο
«απαιτητικών» εφαρμογών.
Ο όρος πραγματικού - χρόνου (real-time) χρησιμοποιείται για να περιγράψει την
ανάγκη της αυστηρής ανεκτικότητας σε καθυστέρηση και ερμηνεύεται με πολλούς
διαφορετικούς τρόπους. Ο επικρατέστερος από αυτούς είναι «το γρηγορότερο
δυνατό», το οποίο, όμως, είναι αρκετά δύσκολο να ποσοτικοποιηθεί. Υπάρχουν
αρκετοί τύποι εφαρμογών που θέτουν απαιτήσεις στην καθυστέρηση. Μερικές από
αυτές είναι:
Εφαρμογές πραγματικού χρόνου. Αυτές
έχουν τις πιο αυστηρές απαιτήσεις σε καθυστέρηση μεταξύ της πηγής και του
προορισμού, με μετρητές για τη λήψη των δεδομένων στον προορισμό. Όσα δεδομένα
καταφθάσουν στον προορισμό μετά τη λήξη των μετρητών, θεωρούνται άνευ αξίας και
αγνοούνται. Κατά συνέπεια, αυτός ο ορισμός του πραγματικού χρόνου δε σημαίνει
ότι τα δεδομένα θα πρέπει να μεταφερθούν μέσα σε ένα καλώς ορισμένο χρονικό
διάστημα, αλλά ότι το χρονικό όριο στην καθυστέρηση μεταφοράς της πληροφορίας
έχει γίνει κατανοητό από τον πομπό και το δέκτη και ότι ο δέκτης δεν πρόκειται
να περιμένει για επιπλέον δεδομένα μετά από αυτό το όριο.
Οι εφαρμογές μη πραγματικού χρόνου.
Αυτές περιλαμβάνουν απαιτήσεις στην καθυστέρηση απ’ άκρο σ’ άκρο, με
περισσότερο αυστηρές χρονικές τιμές απ’ ότι οι εφαρμογές πραγματικού χρόνου,
αλλά διαφέρουν στο ότι ο προορισμός θα περιμένει (μέσα σε λογικά πλαίσια)
μέχρις ότου ληφθούν όλα τα δεδομένα. Το μέγεθος του χρονικού διαστήματος το
οποίο θα περιμένει ο δέκτης είναι συνάρτηση των μετρητών των εφαρμογών και των
δικτυακών κόμβων. Στις εφαρμογές μη πραγματικού χρόνου περικλείονται οι ασύγχρονες
και οι διαδραστικές εφαρμογές, οι οποίες περιγράφονται παρακάτω.
Οι διαδραστικές εφαρμογές υποθέτουν
ότι υπάρχει χρονική αλληλεξάρτηση μεταξύ της πηγής και του προορισμού εν’ όσω η
σύνοδος των συνδεδεμένων εφαρμογών είναι ενεργή. Διαδραστικές εφαρμογές είναι
ότι πολλοί θα θεωρούσαν ως πραγματικού χρόνου, κάτω από την
επικρατέστερη έννοιά του, που είναι «το γρηγορότερο δυνατό». Εφαρμογές
που ανήκουν σ’ αυτή την κατηγορία είναι Telnet, Ftp, καθώς επίσης και εφαρμογές Web.
Οι ασύγχρονες εφαρμογές είναι
εφαρμογές που δεν είναι ευαίσθητες σε χρονικές απαιτήσεις, με την έννοια ότι
υποθέτουν ότι δεν υπάρχει χρονική αλληλεξάρτηση μεταξύ των επικοινωνούντων
εφαρμογών. Ένα καλό παράδειγμα αυτής της περίπτωσης είναι το ηλεκτρονικό
ταχυδρομείο. Όταν αποστέλλεται ένα e-mail, ο αποστολέας δεν έχει (και ούτε αποκτά) καμία
χρονική επίγνωση περί της παράδοσης του μηνύματός του, είτε όταν αυτό παραδοθεί
σε κάποιον ενδιάμεσο σταθμό, είτε στον τελικό προορισμό. Μόνο εάν υπάρξει λάθος
στο σύστημα, ή στη διεύθυνση του παραλήπτη, ή εάν έχει ζητηθεί ξεκάθαρα, ο
αποστολέας ειδοποιείται σχετικά με την πορεία παράδοσης του μηνύματός του.
Επιπλέον, οι διαδραστικές εφαρμογές
διαχωρίζονται περαιτέρω σε εφαρμογές απότομης επεξεργασίας (burst processing) και σε επεξεργασίας όγκου δεδομένων (bulk processing). Οι εφαρμογές που έχουν μικρό χρόνο
επεξεργασίας και αλληλεπιδρούν συχνά με το χρήστη, ανήκουν στην κατηγορία της απότομης
επεξεργασίας δεδομένων (burst processing). Παράδειγμα αποτελεί η απομακρυσμένη σύνδεση
τερματικού (Telnet). Οι εφαρμογές στις οποίες ο χρήστης
χρειάζεται να περιμένει ένα σημαντικό διάστημα μέχρις ότου η εφαρμογή
επεξεργαστεί τα δεδομένα, τότε μιλάμε για μια εφαρμογή επεξεργασίας όγκου
δεδομένων. Ένα παράδειγμα αυτού του τύπου είναι η μεταφορά αρχείων (Ftp).
Στο παρακάτω σχήμα φαίνονται οι κατηγορίες
στις οποίες διαχωρίζονται οι εφαρμογές, καθώς επίσης και μερικά παραδείγματα
από εφαρμογές της κάθε μίας.
Στο τμήμα αυτό περιγράφονται οι διάφοροι
τύποι, οι απαιτήσεις και τα χαρακτηριστικά απόδοσης των κόμβων ενός δικτύου. Αν
και αυτό το τμήμα μοιάζει να είναι κάπως «τεχνικό» για τα δεδομένα του
κεφαλαίου αυτού, κρίθηκε σκόπιμο να συμπεριληφθεί ως μια εισαγωγή στα τεχνικά
θέματα που μπορεί να προκύψουν κατά τη δικτυακή σχεδίαση.
ΤΥΠΟΙ ΚΟΜΒΩΝ ΚΑΙ ΕΞΟΠΛΙΣΜΟΣ
Οι κόμβοι και ο εξοπλισμός ενός δικτύου
μπορούν να ομαδοποιηθούν σε τρεις κατηγορίες: συσκευές γενικών υπολογιστικών
δραστηριοτήτων (generic computing devices), εξηπηρέτες
(servers) και εξειδικευμένος εξοπλισμός.
Στις συσκευές γενικών υπολογιστικών
δραστηριοτήτων ανήκουν οι κοινοί υπολογιστές γραφείου που έχουν οι
περισσότεροι χρήστες. Παραδείγματα αποτελούν οι προσωπικοί υπολογιστές (PC) DOS και Windows, υπολογιστές Macintosh και σταθμοί εργασίας UNIX. Οι απαιτήσεις
τους έχουν σημασία από την άποψη απ’ άκρη σ’ άκρη (end-to-end) - όπου σε κάθε «άκρη» βρίσκεται ένας υπολογιστής (ή τερματικό σύστημα) -
επειδή παρέχουν τη διασύνδεση ανάμεσα στις εφαρμογές και το επικοινωνιακό
δίκτυο. Συνήθως τείνουν να μη λαμβάνουν ιδιαίτερης προσοχής και θεωρούνται ως «μαύρα
κουτιά», όπου απλά το δίκτυο συνδέεται σ’ αυτά και όπου εκτελούνται οι
εφαρμογές.
Οι διακομιστές
(servers) είναι υπολογιστές που έχουν σκοπό την παροχή
υπηρεσιών σε έναν ή περισσότερους πελάτες (clients)[2]. Συνήθως είναι πιο ισχυροί από τους
προσωπικούς υπολογιστές σε θέματα κύριας και δευτερεύουσας μνήμης,
υπολογιστικής δύναμης, δικτυακών δυνατοτήτων και περιφερειακών. Παραδείγματα
διακομιστών είναι οι υπολογιστικοί (computing servers), οι αποθήκευσης (storage servers - επίσης γνωστά και ως αποθηκευτικά συστήματα ή συστήματα μαζικής
αποθήκευσης) και οι διακομιστές εφαρμογών (application servers).
Οι απαιτήσεις ενός server είναι εξειδικευμένες στον εξυπηρετικό ρόλο που
εκτελεί κάθε φορά, που σημαίνει ότι οι απαιτήσεις που τίθενται κατά το
σχεδιασμό του έχουν άμεση σχέση με τις συγκεκριμένες αρμοδιότητες που έχει ως
προς τους πελάτες που εξυπηρετεί.
Ο εξειδικευμένος εξοπλισμός μπορεί
να είναι είτε προσωπικοί υπολογιστές, είτε κόμβοι, είτε διακομιστές. Για
παράδειγμα, ένα σύστημα παράλληλης επεξεργασίας που υποστηρίζει μια μεγάλη βάση
δεδομένων μπορεί να θεωρηθεί εξειδικευμένος εξοπλισμός, αλλά επίσης μπορεί να
θεωρηθεί και κόμβος ή διακομιστής. Κατά τη συνήθη περίπτωση, ο εξειδικευμένος
εξοπλισμός δεν έχει άμεση πρόσβαση στις εφαρμογές των χρηστών, αλλά
χρησιμοποιείται για τη συλλογή, την παραγωγή, ή την επεξεργασία δεδομένων στο
παρασκήνιο, τα οποία στη συνέχεια αποστέλλονται στον τελικό χρήστη.
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΠΟΔΟΣΗΣ
Η μελέτη της απόδοσης των δικτυακών κόμβων
επικεντρώνεται στη μελέτη της απόδοσης των επιμέρους τμημάτων τους: στο υλικό (hardware), στο υλικολογισμικό (firmware) και στο λογισμικό (software), τα οποία συνδέουν τους χρήστες με τις
εφαρμογές και με ολόκληρο το δίκτυο.
Σε πολλές περιπτώσεις μπορεί να είναι πολύ
δύσκολο, αν όχι αδύνατο, να καθοριστούν και να εκτιμηθούν τα χαρακτηριστικά
απόδοσης ενός δικτυακού κόμβου. Τμήματα του κόμβου μπορεί να μην ανήκουν στην
επιχείρηση που υλοποιεί το δίκτυο και να έχουν από πολύ αραιή έως καθόλου
πληροφόρηση. Το λογισμικό και το υλικολογισμικό ενός κόμβου (λειτουργικό
σύστημα, οδηγοί συσκευών, κλπ) είναι αρκετά περίπλοκα και τις περισσότερες
φορές η πολυπλοκότητά τους βρίσκεται εκτός των δυνατοτήτων του προσωπικού που είναι
υπεύθυνο για τη συντήρησή του.
Ένα γενικό και απλό διάγραμμα ενός κόμβου (π.χ. διακομιστή) φαίνεται στο παρακάτω σχήμα. Η απόδοση καθενός από τα επιμέρους τμήματά του επιδρά στην απόδοση ολόκληρου του κόμβου. Τα χαρακτηριστικά απόδοσης που μελετούμε κυρίως περιλαμβάνουν:
Πληροφορίες γύρω από οποιοδήποτε από τα παραπάνω τμήματα μπορούν να βοηθήσουν αρκετά στην εκτίμηση ή τουλάχιστον στην αναγνώριση των περιοριστικών παραγόντων της απόδοσης του κόμβου.
Στο παρακάτω σχήμα, το γενικό δικτυακό
μοντέλο έχει επεκταθεί για να απεικονισθεί ότι το τμήμα του δικτύου ενσωματώνει
όλα τα προϋπάρχοντα δίκτυα τα οποία θα διασυνδεθούν με το νέο δικτυακό
σχεδιασμό.
Όσον αφορά το δικτυακό τμήμα, οι απαιτήσεις της δικτυακής σχεδίασης θα πρέπει να συμπεριλάβουν και τις απαιτήσεις, τις υπηρεσίες και τα χαρακτηριστικά των ήδη υλοποιημένων δικτύων, τα οποία θα ενσωματωθούν, ή τουλάχιστον θα αλληλεπιδράσουν, με το νέο δικτυακό σχεδιασμό.
ΠΡΟΫΠΑΡΧΟΝΤΑ
ΔΙΚΤΥΑ ΚΑΙ ΜΕΤΑΒΑΣΗ
Σήμερα οι περισσότεροι σχεδιασμοί χρειάζεται να ενσωματώσουν στη δομή τους και ένα ή περισσότερα ήδη υλοποιημένα δίκτυα. Αυτό περιλαμβάνει «ανανεώσεις» στο σύστημα και την επέκταση ή τη μείωση του μεγέθους και του εύρους του δικτύου.
Η δικτυακή σχεδίαση θα πρέπει να λάβει υπόψη της και τυχόν περιορισμούς, οι οποίοι μπορεί να επιβάλλονται από ένα προ-υλοποιημένο δίκτυο. Οι απαιτήσεις των χρηστών, των εφαρμογών και των δικτυακών κόμβων των υπαρχόντων δικτύων, θα πρέπει να θεωρούνται ως μέρος του σχεδιαζόμενου συστήματος και η ανάλυση των απαιτήσεών τους θα πρέπει να μελετάται διεξοδικά καθ’ όλη τη διάρκεια της ανάλυσης των απαιτήσεων του νέου δικτύου. Επιπλέον, οι εξειδικευμένες απαιτήσεις των ήδη υπαρχόντων δικτύων αποτελούν μια σημαντική ένδειξη της επιρροής τους και της κλίμακάς τους. Όσες περισσότερες εξειδικευμένες απαιτήσεις έχει ένα δίκτυο, τόσο περισσότερη επιρροή ασκεί στην πορεία ενός δικτυακού σχεδιασμού μιας και ο τελευταίος θα πρέπει να κάνει υποχωρήσεις και συμβιβασμούς, έτσι ώστε να ενσωματωθεί στην τελική υλοποίηση.
Επίσης θα πρέπει να αντιμετωπιστούν και τα διάφορα λειτουργικά θέματα τα οποία μπορεί να προκύψουν στην επικοινωνία μεταξύ των παλαιών και των νέων δικτυακών δομών. Αυτά εμφανίζονται συνήθως στα σημεία διασύνδεσης των δικτύων και ειδικότερα στα σημεία όπου χρησιμοποιούνται διαφορετικά επικοινωνιακά μέσα ή πρωτόκολλα, όπως για παράδειγμα η διασύνδεση ενός Ethernet δικτύου με ένα δίκτυο token ring, ή ΑΤΜ. Θα πρέπει στις απαιτήσεις της σχεδίασης να συμπεριληφθούν οι τεχνολογίες, τα επικοινωνιακά μέσα, και οι οποιεσδήποτε εγγυήσεις σε απόδοση ή / και σε παροχή υπηρεσιών που προσφέρονται από τα ήδη υλοποιημένα δίκτυα.
ΟΙΚΟΝΟΜΙΚΕΣ ΑΠΑΙΤΗΣΕΙΣ
Μία πολύ σημαντική απαίτηση έχει να κάνει
με το ύψος της χρηματοδότησης που είναι διαθέσιμη για την υλοποίηση του
δικτυακού σχεδιασμού. Τις περισσότερες φορές, η χρηματοδότηση συνδέεται με ένα
όριο στο επιτρεπόμενο συνολικό κόστος, το οποίο με τη σειρά του απαρτίζεται από
επαναλαμβανόμενα (recurring) και από μη-επαναλαμβανόμενα (nonrecurring) έξοδα. Τα μη-επαναλαμβανόμενα έξοδα αφορούν την υλοποίηση
του δικτύου και περιλαμβάνουν τη σχεδίαση, το δικτυακό υλικό και λογισμικό και
τα έξοδα της αρχικής εγκατάστασης όλων των υπηρεσιών από εξωτερικούς
προμηθευτές (providers). Τα επαναλαμβανόμενα έξοδα
αφορούν την περιοδική εκτέλεση εργασιών συντήρησης και την τακτική
αντικατάσταση (ή αναβάθμιση) των τμημάτων του δικτύου. Σ’ αυτά περιλαμβάνονται
τα έξοδα για τη λειτουργία, τη διαχείριση και τη συντήρηση του δικτύου, τα
έξοδα από τις παρεχόμενες υπηρεσίες (π.χ. λογαριασμοί μισθωμένων γραμμών) και
από προμήθειες για την εκτέλεση μετατροπών στο δίκτυο (π.χ. αγορά πιο
εξελιγμένων συσκευών διασύνδεσης). Τα χρονικά πλαίσια μέσα στα οποία κινούνται
τα επαναλαμβανόμενα έξοδα ποικίλουν και εξαρτώνται κυρίως από τους κύκλους ζωής
της χρησιμοποιούμενης τεχνολογίας.
Στο τέλος του σταδίου της ανάλυσης των
απαιτήσεων, όλες οι απαιτήσεις θα πρέπει να συλλεχθούν και να εισαχθούν σε μια
επίσημη αναφορά, η οποία μπορεί να αποτελείται από τα παρακάτω τμήματα: