It is not because things are difficult that we d o not dare; it is because we do not dare that they are difficul t. - Seneca -



Σχετικά έγγραφα
Εγγυημένη ποιότητα υπηρεσίας

Συνεχής ροή πολυµέσων

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΙΚΤΥΩΝ

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΙΚΤΥΩΝ

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Δίκτυα ATM. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 21-1

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

HY-335 : Δίκτυα Υπολογιστών

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Εισαγωγή. Κ. Βασιλάκης

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΔΙΚΤΥΑ (15-17) Π. Φουληράς

1.5.1 ΓΕΦΥΡΑ (BRIDGE) Εικόνα Επίπεδα λειτουργίας επαναλήπτη, γέφυρας, δρομολογητή και πύλης ως προς το μοντέλο OSI.

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Εισαγωγή. Κ. Βασιλάκης

Πρωτόκολλα Διαδικτύου

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Συστήματα Πολυμέσων. Ενότητα 17: Διανομή Πολυμέσων - Πρωτόκολλα πραγματικού χρόνου. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής

Δίκτυα Επικοινωνιών ΙΙ: ATM

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

ΠΤΥΧΙΑΚΗ. Θέμα πτυχιακής: Voice over IP. Ονοματεπώνυμο: Κόκκαλη Αλεξάνδρα

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Μετάδοσης Δεδομένων. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

Τεχνολογία Πολυμέσων. Ενότητα # 17: Πρωτόκολλα μετάδοσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΑΛΓΟΡΙΘΜΙΚΑ ΘΕΜΑΤΑ ΔΙΚΤΥΩΝ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. 2 η Γραπτή Εργασία ΠΛΗ 23 Ακαδημαϊκό Έτος (Τόμος Α, Κεφάλαια 1-3) Ημερομηνία Παράδοσης 27/01/2013.

7.9 ροµολόγηση. Ερωτήσεις

1.8 Το μοντέλο OSI 1 / 33

Ολοκληρωµένα ικτυακά ΣυστήµαταΚορµού (Backbone Networks)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

Τεχνολογία Πολυμέσων. Ενότητα # 21: Εγγυημένη ποιότητα υπηρεσίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Υπολογιστών. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΣΥΝΧΡΟΝΗ ΜΕΤΑΔΟΣΗ ΔΕΔΟΜΕΝΩΝ

Νέες Επικοινωνιακές Τεχνολογίες

Σεραφείµ Καραµπογιάς Στοιχεία ενός Συστήµατος Ηλεκτρικής Επικοινωνίας

ΝΤUA. Τεχνολογία Πολυμέσων

Δίκτυα Υψηλών Ταχυτήτων Ενότητα 9: MPLS

Περιεχόµενα. Επικοινωνίες εδοµένων: Τρόποι Μετάδοσης και Πρωτόκολλα. Εισαγωγή

Παραδείγµατα δικτυακών τεχνολογιών. Ethernet Internet ATM

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

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

Δίκτυα Επικοινωνιών ΙΙ : Εισαγωγή στην ποιότητα υπηρεσίας

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ. 8.1 Εισαγωγή

Προχωρημένα Θέματα Προγραμματισμού Δικτύων Ενότητα 12: Διαφοροποιημένες Υπηρεσίες διαδικτύου MPLS Φώτης Βαρζιώτης

Κεφάλαιο 7.3. Πρωτόκολλο TCP

ΤΕΙ Κρήτης, Παράρτηµα Χανίων

Τεχνολογία Πολυμέσων. Ενότητα # 20: Υπηρεσίες καλύτερης προσπάθειας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems Εισαγωγή

Δίκτυα Θεωρία

Τεχνολογία Πολυμέσων. Ενότητα # 19: Τηλεδιάσκεψη Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Δίκτυα Υψηλών Ταχυτήτων Ενότητα 4: Frame Relay

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. ίκτυα Υπολογιστών Ι. To Μοντέλο OSI. Αναπλ. Καθηγ. Π. εμέστιχας

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Σκοπιµότητα των firewalls

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Ο πυρήνας του δικτύου. Κ. Βασιλάκης

Περίληψη. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΕΝΔΕΙΚΤΙΚΕΣ ΑΣΚΗΣΕΙΣ

Επαναληπτικές Ασκήσεις Μαθήματος

Προχωρημένα Θέματα Προγραμματισμού Δικτύων Ενότητα 8: ΈλεγχοςΡοήςΑνοικτούΒρόχου Φώτης Βαρζιώτης

Πρωτόκολλα Επικοινωνίας Πρωτόκολλο IP

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή σε Έννοιες των Δικτύων Υπολογιστών Κεφάλαιο 2 Αξιοπιστία Κεφάλαιο 3 Αλγόριθμοι Πολλαπλής Πρόσβασης...

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Δίκτυα Θεωρία

ΔΙΚΤΥΑ (14) Π. Φουληράς

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

1. Ως προς τον χρήστη το WAN εµφανίζεται να λειτουργεί κατά τον ίδιο ακριβώς τρόπο µε το LAN.

Εργαστήριο ίκτυα Η/Υ ΙΙΙ

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Ο πυρήνας του δικτύου. Κ. Βασιλάκης

Πρωτόκολλα Διαδικτύου

Πρόότυπο Αναφοράάς Open Systems Interconnection/OSI. 1. Τεχνολογία Δικτύων Επικοινωνιών, Βιβλίο Α τάξης 2 ου Κύκλου ΤΕΕ, ΥΠΕΠΘ

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα. λ από τον ρυθμό μετάδοσής της. Υποθέτοντας ότι ο κόμβος A

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση

Χρήση βασικών εργαλείων συλλογής πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

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

Πολυµέσα και Internet

Κεφάλαιο 3 Πολυπλεξία

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

ΤΕΙ Στερεάς Ελλάδας Τμ. Ηλ.γων Μηχ/κων ΤΕ. Δίκτυα Υπολογιστών. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

Κατανοµή Πόρων και Ποιότητα Υπηρεσιών (Resource Allocation and Quality of Service)

ΚΩ ΙΚΟΠΟΙΗΣΗ ΟΜΙΛΙΑΣ. Μικρότερος ρυθµός µετάδοσης Μεγαλύτερη χωρητικότητα. Νοε-06 Γ.Ι.Στεφάνου 1

Voip Εφαρμογές και Ποιότητα Υπηρεσιών. Κεφαλέας Νικόλαος Μανικάκης Ιωάννης

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

Transcript:

It is not because things are difficult that we d o not dare; it is because we do not dare that they are difficul t. - Seneca -

2

Πρόλογος Εδώ και χρόνια γίνεται λόγος για το Voice over IP. Όλα άρχισαν στα µέσα της δεκαετίας του 90, µε ερασιτεχνικές προσπάθειες µετάδοσης φωνής «πάνω» από το Internet. ιάφορες προσπάθειες έγιναν από εφαρµογές άµεσης επικοινωνίας (messengers) κατά καιρούς, όµως πάντα υψώνονταν ως εµπόδια στους χρήστες της νέας τεχνολογίας τα κλειστά πρότυπα, οι χαµηλές ταχύτητες πρόσβασης, οι δυσκολίες στη χρήση αλλά και η χαµηλή ποιότητα φωνής. Τον Αύγουστο του 2003 κυκλοφορεί το Skype και, χωρίς καµία διαφήµιση, µόνο µε την «από στόµα σε στόµα» ενηµέρωση, κατέβηκε στους υπολογιστές εκατοµµυρίων χρηστών ανά τον κόσµο. Ήταν το κατάλληλο πρόγραµµα στην κατάλληλη στιγµή, που συνδύαζε την ωρίµανση της τεχνολογίας VoIP, την απλή χρήση και, φυσικά, το γεγονός ότι ήταν δωρεάν, το οποίο έκανε το «κλικ» στην αγορά και έφερε το VoIP στη καθηµερινότητά µας. Σήµερα, πάνω από το 13% των διεθνών φωνητικών κλήσεων γίνεται µέσω VoIP (µε το Skype να ελέγχει το 70% αυτού του µεριδίου της αγοράς), ενώ ακόµα βρισκόµαστε µόλις στην αρχή της «έκρηξης», µε εταιρίες να προσπαθούν να καταλάβουν καλή θέση εκκίνησης στην κούρσα του VoIP που σύντοµα αρχίζει. Ο ανταγωνισµός αυτός σηµαίνει δεκάδες ασύµβατες εφαρµογές και τεχνολογίες, φορείς παροχής υπηρεσιών VoIP που δεν προσφέρουν σύνδεση µεταξύ τους, ανοµοιογενείς υπηρεσίες και προϊόντα, έλλειψη κοινών ρυθµίσεων, ασυνεννοησία, πολλαπλές χρεώσεις. Το σηµαντικό, όµως, είναι ότι η αρχή έχει γίνει και πολύ σύντοµα, όταν τα ζητήµατα αυτά επιλυθούν, θα είµαστε σε θέση να πραγµατοποιούµε χαµηλού κόστους ή και δωρεάν κλήσεις VoIP όχι από το PC αλλά από την αυτοδύναµη (stand alone) τηλεφωνική µας VoIP συσκευή. Η παρούσα διπλωµατική εργασία πραγµατεύεται την τεχνολογία του VoIP. Χωρίζεται σε τρία επιµέρους µέρη. Στο πρώτο γίνεται παρουσίαση της τεχνολογίας αυτής, των ζητηµάτων που προκύπτουν και των τεχνικών που έχουν αναπτυχθεί για την αντιµετώπισή τους. Στο δεύτερο µέρος παρουσιάζεται το Session Initiation Protocol (SIP), πρωτόκολλο που κατέχει πρωταρχικό ρόλο στην ανάπτυξη του VoIP, καθώς και άλλα σηµαντικά πρωτόκολλα του VoIP. Στο τρίτο µέρος αρχικά παρουσιάζονται οι υπάρχουσες τεχνικές Call Admission Control (CAC), τεχνικές που αναπτύχθηκαν στα 3

πλαίσια της διασφάλισης της ποιότητας των VoIP κλήσεων, στη συνέχεια παρουσιάζεται µια νέα προσέγγιση CAC και, τελικά, προσοµοιώνεται η νέα αυτή προσέγγιση ώστε να εκτιµηθούν οι επιδόσεις της. Κλείνοντας τον πρόλογο αυτό, θα ήθελα να ευχαριστήσω τους γονείς µου για τις χρήσιµες συµβουλές και γνώµες που µου παρείχαν κατά τη διάρκεια της σύνταξης του κειµένου της εργασίας. Επίσης, ευχαριστώ το συνάδελφο και συµφοιτητή Χαράλαµπο Μπεχλιούλη για την πολύτιµες εξειδικευµένες γνώσεις του στο Matlab, καθώς και τον επίσης συνάδελφο ηµήτρη Καλτσά για την ανεκτίµητη βοήθειά του στην εύρεση και προσπέλαση πολλών από τις βιβλιογραφικές πηγές. Μα, πάνω από όλα, ευχαριστώ τον καθηγητή µου και επιβλέποντα της διπλωµατικής εργασίας κο ηµήτρη Μητράκο, για την έµπνευση και την παρότρυνση, τη συνεργασία, τις συµβουλές, την υποµονή και το χρόνο του. Βράκα Ευφηµία, Μάιος 2006 4

5 Περιεχόµενα

6

Μέρος Α : Voice over Internet Protocol (VoIP) 1. VoIP γενικά, 15 1.1 Εισαγωγικά, 15 1.2 Κωδικοποίηση φωνής (voice coding), 17 1.3 Σηµατοδοσία (Signaling), Σύνδεση και Μετάδοση φωνής, 20 2. Ειδικότερα θέµατα του VoIP, 23 2.1 Καθυστέρηση στη µετάδοση φωνής, 23 2.2 QoS, 31-2.2.1 Ταξινόµηση (Classification), 35-2.2.2 Προσαρµογή κυκλοφορίας / Αστυνόµευση (Traffic Shaping/Policing), 38-2.2.3 ιαχείριση συµφορήσεων (Congestion management), 39-2.2.4 ιαχείριση ουρών / Αποφυγή συµφορήσεων (Queue management / Congestion avoidance), 43-2.2.5 Αποτελεσµατικότητα των links (Link efficiency), 44-2.2.6 Πολιτικές συνολικής διαχείρισης QoS, 46-2.2.7 Σύντοµη ανακεφαλαίωση, 48 2.3 Ασφάλεια στο VoIP, 50 3. Βιβλιογραφία, 54 7

Μέρος Β : SIP και άλλα πρωτόκολλα του VoIP 1. Στοίβα πρωτοκόλλων Internet για πολυµέσα, 61 1.1 Φυσικό στρώµα / Στρώµα ζεύξης, 61 1.2 Στρώµα ιαδικτύου, 62 1.3 Στρώµα µεταφοράς, 62-1.3.1 TCP, 63-1.3.2 UDP, 64 1.4 Στρώµα εφαρµογής, 65 2. Πρωτόκολλα του VoIP σχετιζόµενα µε το SIP, 66 2.1 Session Description Protocol (SDP), 66 2.2 Real-time Transport Protocol (RTP) και Real-time Transport Control Protocol (RTCP), 70 3. Clients και Servers του SIP, 75 3.1 SIP User Agents, 75 3.2 SIP Gateways, 76 3.3 SIP Servers, 77-3.3.1 Proxy Servers, 78-3.3.2 Redirect Servers, 80-3.3.3 Registration Servers, 80 3.4 Αξιοπιστία στο SIP, 80 3.5 Αυθεντικοποίηση και κρυπτογράφηση στο SIP, 81 3.6 Υποστήριξη πολλαπλών εκποµπών από το SIP, 82 3.7 Αλληλεπίδραση του SIP µε Firewalls και NATs, 82 4. Παρουσίαση του SIP, 85 4.1 Κλήση SIP µεταξύ δύο User Agents, 85 8

4.2 Kλήση SIP µε Proxy Server, 92 4.3 Εγγραφή στο SIP, 93 4.4 Μεταφορά των SIP µηνυµάτων, 94-4.4.1 Μεταφορά µε το UDP, 94-4.4.2 Μεταφορά µε το TCP, 95 5. Σύγκριση του SIP µε το Η.323, 96 5.1 Εισαγωγή στο Η.323, 96 5.2 Παράδειγµα χρήσης του Η.323, 98 5.3 Σύγκριση, 101 6. Βιβλιογραφία, 104 9

Μέρος Γ : Call Admission Control (CAC) 1. Εισαγωγή στο Admission Control, 109 1.1 Admission Control µε χρήση a priori traffic descriptors, 110 1.2 Admission Control βασιζόµενο σε µετρήσεις (MBAC), 111 1.3 Endpoint Admission Control (EAC), 112 2. Μια νέα προσέγγιση για Admission Control, 113 2.1 Εισαγωγικά, 113 2.2 Πολυπλεξία ήδη πολυπλεγµένων ροών, 115 2.3 ιάσπαση πολυπλεγµένης ροής, 117 3. Μαθηµατικό µοντέλο MTAC, 119 3.1 Λογική του µηχανισµού, 119 3.2 O Παράγοντας Προφύλαξης (Precautious Factor), 121 3.3 Το παράθυρο µέτρησης, 122 3.4 Το κριτήριο αποδοχής ή απόρριψης µιας νέας κλήσης, 123 4. Προσοµοίωση µηχανισµού MTAC, 124 4.1 Εισαγωγικά, 124 4.2 Ηχογράφηση αρχείων ήχου, 126 4.3 Συµπίεση και «πακετοποίηση» πηγών φωνής, 126 4.4 Υπολογισµός (µ,σ) των bitrates των πηγών, 130 4.5 ηµιουργία συστήµατος dumbbell και τοποθέτηση µηχανισµού MTAC, 132 4.6 Εύρεση βέλτιστου µήκους buffer, 136 4.7 Επίδοση και αξιολόγηση µηχανισµού MTAC, 143 5. Βιβλιογραφία, 148 10

Μέρος Α : Voice over Internet Protocol (VoIP) 11

12

Όπως το ίδιο το όνοµα υπονοεί, το Voice over IP (VoIP) χρησιµοποιεί το Internet Protocol (IP) για να στέλνει/λαµβάνει φωνή σε µορφή πακέτων δεδοµένων «πάνω» από (over) ένα δίκτυο IP. Με τη χρησιµοποίηση πρωτοκόλλων VoIP, η µετάδοση φωνής µπορεί να επιτευχθεί σε οποιοδήποτε δίκτυο IP ανεξάρτητα από το αν πρόκειται για το Internet, Intranets ή τοπικά δίκτυα (LANs) [25]. Σε ένα VoIP δίκτυο, το σήµα φωνής αρχικά ψηφιοποιείται, συµπιέζεται και µετατρέπεται σε πακέτα IP και στη συνέχεια στέλνεται µέσω του δικτύου IP. Ένα πρωτόκολλο σηµατοδοσίας VoIP (signaling protocol) χρησιµοποιείται για να εγκαθιστά και να τερµατίζει τις κλήσεις, να φέρει τις πληροφορίες που απαιτούνται για τον εντοπισµό των χρηστών και να διαπραγµατεύεται τους πόρους του δικτύου (όπως, για παράδειγµα, το εύρος ζώνης) [16]. Ένα γνωστό πλεονέκτηµα του VoIP είναι το πολύ χαµηλό κόστος κλήσης. Άλλα εξίσου σηµαντικά πλεονεκτήµατα είναι η ενοποίηση φωνής, δεδοµένων και βίντεο σε ένα δίκτυο, οι νέες υπηρεσίες που διατίθενται στο ενοποιηµένο αυτό δίκτυο (integrated services) καθώς επίσης και η απλούστευση της διαχείρισης των τερµατικών τελικών χρηστών (end user terminals) από το δίκτυο. Στο πρώτο µέρος της παρούσας εργασίας θα γίνει µια εισαγωγή στην τεχνολογία του VoIP και στη συνέχεια θα εξεταστούν ειδικότερα θέµατα του VoIP, όπως οι πηγές της καθυστέρησης και των υπόλοιπων ανεπιθύµητων καταστάσεων σε µια VoIP κλήση, οι δοκιµασµένες αλλά και οι νέες τεχνικές για τη διασφάλιση της ποιήτητας των υπηρεσιών (QoS) και, τέλος, θέµατα ασφάλειας των VoIP κλήσεων. 13

14

1. VoIP γενικά 1.1 Εισαγωγικά Η µετάδοση φωνής µέσα από δίκτυα µεταγωγής πακέτων µπορεί να µειώσει ένα σηµαντικό τµήµα των δαπανών που καταβάλλει µια εταιρία, οι οποίες αφορούν τις τηλεφωνικές συνδιαλέξεις µεταξύ των υποκαταστηµάτων/τµηµάτων της ή µεταξύ των προµηθευτών/πελατών της. Αλλά και στην προσωπική ζωή, οι κλήσεις VoIP έχουν µπει πλέον στην καθηµερινότητα ενός συνεχώς αυξανόµενου ποσοστού του πληθυσµού, καθώς κάνει τις διεθνείς κλήσεις να κοστίζουν από καθόλου έως όσο οι αστικές [13]. Η δυνατότητα αυτή βασίζεται στην αντιµετώπιση της φωνής σαν ένα είδος δεδοµένων των οποίων η µετάδοση πραγµατοποιείται µε τη µορφή πακέτων (packet voice), όπως δηλαδή τα απλά δεδοµένα. Η µετάδοση φωνής µέσα από IP δίκτυα βασίζεται στο µοντέλο του σχήµατος 1 [14]. Στα άκρα του IP δικτύου βρίσκονται οι routers/voice agents, σκοπός των οποίων είναι η µετατροπή της φωνής από την αναλογική της µορφή σε µορφή κατάλληλη για τη µετάδοσή της, εν είδει πακέτων. Το IP δίκτυο αναλαµβάνει τη δροµολόγηση των πακέτων στον router/voice agent ο οποίος εξυπηρετεί τη διεύθυνση προορισµού των πακέτων. Με βάση το παραπάνω µοντέλο, είναι φανερό ότι δύο θέµατα πρέπει να αντιµετωπιστούν ώστε να είναι δυνατή η µετάδοση φωνής µέσα από IP δίκτυα. Το πρώτο θέµα αφορά την κωδικοποίηση της φωνής και, συγκεκριµένα, το πώς η φωνή µετατρέπεται σε πακέτα και πώς τα πακέτα χρησιµοποιούνται για την αναπαραγωγή της φωνής, καθώς επίσης και τους παράγοντες που επηρεάζουν τη µετάδοση και αναπαραγωγή της φωνής. Το δεύτερο θέµα αφορά τη σηµατοδοσία (signaling) και τον τρόπο σύνδεσης των voice agents µεταξύ τους (αναγνώριση του καλούµενου voice agent, προσδιορισµός της θέσης του στο δίκτυο, τρόπος σύνδεσης και µεταφοράς των πακέτων φωνής). 15

Σχήµα 1: Ένα τυπικό VoIP σενάριο 16

1.2 Κωδικοποίηση φωνής (voice coding) H φωνή είναι ένα αναλογικό σήµα και για τη µετάδοσή της µέσα από ένα ψηφιακό σύστηµα, όπως ένα IP δίκτυο, είναι απαραίτητη η µετατροπή της σε ψηφιακή µορφή. Η µετατροπή αυτή λαµβάνει χώρα στους codecs (coder/decoder). Η πιο διαδεδοµένη τεχνική µετατροπής αναλογικού σήµατος σε ψηφιακή µορφή είναι η παλµοκωδική διαµόρφωση (Pulse Code Modulation - PCM). Η PCM µετατρέπει τη φωνή σε ψηφιακή µορφή, µε δειγµατοληψία 8000 δειγµάτων το δευτερόλεπτο (125 msec µεταξύ δύο διαδοχικών δειγµάτων) και µετατροπή κάθε δείγµατος σε δυαδικό κώδικα, η τιµή του οποίου αναπαριστά την τιµή του αναλογικού σήµατος τη στιγµή της δειγµατοληψίας. Στην περίπτωση της standard PCM, χρησιµοποιείται δυαδικός κώδικας των 8 bits και έτσι απαιτείται κανάλι χωρητικότητας 64kbps. Τα δείγµατα αυτά χρησιµοποιούνται για την αναπαραγωγή της φωνής στο δέκτη, µε ανασύνθεση κατά προσέγγιση της αρχικής αναλογικής κυµατοµορφής. Για τη µείωση του απαιτούµενου bandwidth που απαιτείται για τη µετατροπή της φωνής σε ψηφιακή µορφή από τα 64kbps που απαιτεί η standard PCM, έχουν αναπτυχθεί από την ITU µια σειρά από πρότυπα για τη συµπίεση φωνής. Τα πρότυπα αυτά µπορεί να θεωρηθεί ότι ανήκουν σε δύο οικογένειες. Η πρώτη οικογένεια αποτελείται από πρότυπα τα οποία στηρίζονται στην PCM και χρησιµοποιούν ρυθµό δειγµατοληψίας 8000 δειγµάτων ανά δευτερόλεπτο. Σκοπός των τεχνικών αυτών είναι η µείωση της περίσσειας της πληροφορίας µέσω της αποσυσχέτισης των δειγµάτων. Για τη µείωση του απαιτούµενου bandwidth, χρησιµοποιούνται για την κωδικοποίηση των δειγµάτων κώδικες των 4 ή 2 bits και η τιµή του δείγµατος στην περίπτωση αυτή αντιπροσωπεύει τη διαφορά του δείγµατος από το αµέσως προηγούµενο. Η µείωση του µήκους των χρησιµοποιούµενων κωδίκων έχει σαν αποτέλεσµα τη µείωση του bandwidth στα 32 ή στα 16 kbps (Adaptive Differential PCM - ADPCM), η οποία όµως συνοδεύεται από µία ανάλογη µείωση στην ποιότητα της φωνής. Η δεύτερη οικογένεια προτύπων επιτυγχάνει ακόµα µεγαλύτερη µείωση του απαιτούµενου bandwidth, ενώ ταυτόχρονα διατηρεί ικανοποιητική την ποιότητα της φωνής. Τα πρότυπα αυτά χρησιµοποιούν για την κωδικοποίηση της φωνής έναν ειδικό 17

αλγόριθµο, τον LPC (Linear Predictive Code), ο οποίος πραγµατοποιεί µια προσοµοίωση - µοντελοποίηση της ανθρώπινης οµιλίας µε αποτέλεσµα την αυξηµένη απόδοση και τη µείωση του απαιτούµενου bandwidth [11]. Συνοπτικά, τα χρησιµοποιούµενα πρότυπα της ITU για την κωδικοποίηση φωνής είναι: - G.711, το οποίο περιγράφει την PCM κωδικοποίηση. - G.726, το οποίο περιγράφει την ADPCM κωδικοποίηση στα 64 και 16 kbps. - G.728, το οποίο περιγράφει τη Low-Delay Code-Excited Linear Prediction (LD- CELP) συµπίεση στα 16 kbps. - G.729 και G.729a, το οποίο περιγράφει την Conjugate Structure Algebraic Code-Excited Linear Prediction (CS-ACELP) συµπίεση στα 8 kbps, µε ποιότητα ανάλογη της 32 kbps ADPCM. - G.723.1, το οποίο περιγράφει την κατά Η.324 συµπίεση φωνής στα 5.3 και 6.3 kbps. Για την αξιολόγηση των διαφόρων αλγορίθµων συµπίεσης ως προς την ποιότητα της φωνής που αναπαράγουν, χρησιµοποιείται το Mean Opinion Score (MOS) [19] µε κλίµακα από 0 έως 5. MOS µεταξύ 4 και 5 θεωρείται απόλυτη ποιότητα, µεταξύ 3 και 4 θεωρείται τηλεπικοινωνιακή ποιότητα, ενώ MOS λιγότερο του 3 θεωρείται συνθετική ποιότητα. Στον πίνακα 1 [14] παρουσιάζονται οι διάφοροι αλγόριθµοι συµπίεσης και το αντίστοιχο MOS. Μέθοδος Συµπίεσης MOS score Καθυστέρηση αλγορίθµου (msec) 64kbps PCM (G.711) 4.4 0.75 32kbps ADPCM (G.726) 4.2 1 16kbps LD-CELP (G.728) 4.2 3.6 8kbps CS-ACELP (G.729) 4.2 10 8kbps CS-ACELP (G.729a) 4.2 10 6.3kbps MPMLG (G.723.1) 3.98 30 5.3kbps ACELP (G.723.1) 3.5 30 Πίνακας 1 18

Κατά τη µετάδοση των πακέτων φωνής µέσα από ένα δίκτυο µεταγωγής πακέτων εµφανίζονται διάφοροι παράγοντες που επιδρούν στην ποιότητα της µεταδιδόµενης φωνής (καθυστέρηση, jitter, απώλειες πακέτων φωνής), οι οποίοι παρουσιάζονται συνοπτικά στον πίνακα 2 [21], [28]. Σε επόµενες ενότητες θα εξεταστούν µε λεπτοµέρεια αυτά τα ζητήµατα. Πίνακας 2 19

1.3 Σηµατοδοσία (Signaling), Σύνδεση και Μετάδοση φωνής Η σηµατοδοσία (signaling) πρέπει να παρέχει τις ακόλουθες δυνατότητες [14]: - Έλεγχο της σύνδεσης (connection control) και - Ενηµέρωση για την κατάσταση της κλήσης (call progress & status information). Ο έλεγχος της σύνδεσης χρησιµοποιείται για τον προσδιορισµό των routers/voice agents που θα εξυπηρετήσουν την επιθυµητή κλήση και τον καθορισµό του τρόπου σύνδεσης (path) µεταξύ τους, για να είναι δυνατή η εγκατάσταση της κλήσης. Μεταξύ των voice agents ανταλλάσσεται πληροφόρηση για την κατάσταση της κλήσης. Στην περίπτωση του VoIP, χρησιµοποιείται η οικογένεια των προτύπων Η.323 ή SIP (περισσότερα για τα πρωτόκολλα αυτά στο Β µέρος της εργασίας). Για την εγκατάσταση και τον τερµατισµό της κλήσης, χρησιµοποιείται το πρωτόκολλο Q.931. Για την πραγµατοποίηση µιας κλήσης, η διαδικασία για το σενάριο που περιγράφηκε στο σχήµα 1 είναι η ακόλουθη [14]: Το PBX χρησιµοποιεί µια από τις γνωστές µεθόδους σηµατοδοσίας (ενδεικτικά: Ε&Μ, EXS, EXO) για την κατάληψη µιας εξερχόµενης γραµµής στο router και στη συνέχεια προωθεί προς το router τον επιθυµητό αριθµό κλήσης. Για το PBX, το ΙΡ δίκτυο που συνδέει τους voice agents/routers µεταξύ τους, θεωρείται σαν µια τηλεφωνική ζεύξη (trunk line). Στο router διατηρείται ένας Dial Plan Mapper, ο οποίος αντιστοιχεί κάθε αριθµό κλήσης (voice interface) είτε σε µια υπάρχουσα IP διεύθυνση, µε τη µορφή extension, είτε σε µια νέα IP διέυθυνση. Ο router, µετά τη λήψη του αριθµού κλήσης, πραγµατοποιεί έναν έλεγχο στον Dial Plan Mapper για τον προσδιορισµό του router/voice agent, ο οποίος εξυπηρετεί κλήσεις προς αυτό τον αριθµό, και την αποστολή προς αυτόν µιας αίτησης εγκατάστασης (call establishment request), σύµφωνα µε το πρότυπο Q.931. Για την εύρεση της βέλτιστης διαδροµής µεταξύ των δύο routers γίνεται χρήση των routing tables, που έχουν δηµιουργηθεί από τα χρησιµοποιούµενα πρωτόκολλα δροµολόγησης (RIP, OSFP, EIGRP κ.λπ.). Με τη λήψη της Q.931 αίτησης κλήσης, ο remote router σηµατοδοτεί προς το τοπικό PBX για την κατάληψη µιας ελεύθερης γραµµής και την προώθηση προς αυτό του αριθµού κλήσης, για την εγκατάστασης της κλήσης. Παράλληλα, ο αρχικός router µε νέα 20

σηµατοδοσία ενηµερώνεται για την εγκατάσταση της κλήσης και τη δυνατότητα έναρξης της επικοινωνίας. Μετά την εγκατάσταση της επικοινωνίας, η συνοµιλία πραγµατοποιείται µε τη βοήθεια των RTP/RTCP/UDP πρωτοκόλλων [3]. Το RTP (Real-time Transport Protocol) χρησιµοποιείται για τη µεταφορά των πακέτων φωνής µεταξύ των δύο συνοµιλούντων µερών. Παρέχει την απαραίτητη πληροφορία χρονισµού (time stamp) για την αναπαραγωγή της φωνής από τα αντίστοιχα πακέτα και για τον εντοπισµό πακέτων που έχουν χαθεί ή ληφθεί εκτός σειράς, καθώς επίσης και άλλες πληροφορίες, για παράδειγµα σχετιζόµενες µε τους υποστηριζόµενους αλγορίθµους συµπίεσης. Το RTCP (Real-time Transport Control Protocol) χρησιµοποιείται για διαγνωστικούς σκοπούς, µεταφέροντας πληροφορίες (feedback information) σχετικά µε την ποιότητα της φωνής, έτσι ώστε να είναι δυνατός ο εντοπισµός και η αντιµετώπιση τυχόντων προβληµάτων στη µετάδοση. Σαν µηχανισµό µεταφοράς, τα RTP/RTCP χρησιµοποιούν το UDP (connectionless) πρωτόκολλο, λόγω της µικρότερης καθυστέρησης που παρέχει σε σχέση µε το TCP και λόγω του ότι η υποστηριζόµενη επανεκποµπή απωλεσθέντων ή καθυστερηµένων πακέτων από το TCP δεν είναι επιθυµητή για τη µετάδοση φωνής, εξαιτίας της αύξησης της καθυστέρησης. Για την αντιµετώπιση της καθυστέρησης στη µετάδοση των σχετιζοµένων µε τη φωνή πακέτων µεταξύ των routers, είναι δυνατή η ενεργοποίηση του RSVP (Resource Reservation Protocol) κατά µήκος του IP δικτύου και η υποστήριξη του Weighted Fair Queuing σε κάθε router [2]. Μέσω του RSVP είναι δυνατή η περιγραφή των απαιτήσεων (control delay, guaranteed delay) και των χαρακτηριστικών της συνδιάλεξης, έτσι ώστε να παραχωρηθεί το απαιτούµενο εύρος ζώνης και να δοθεί η απαιτούµενη προτεραιότητα µέσω του IP δικτύου σε όλα τα σχετιζόµενα µε τη συνδιάλεξη πακέτα. Με την υποστήριξη Weighted Fair Queuing σε κάθε router είναι δυνατή η κατάταξη των διαφόρων τύπων δεδοµένων (data-voice-video) σε διαφορετικούς βαθµούς προτεραιότητας και η εφαρµογή σε αυτούς διαφορετικής πολιτικής εξυπηρέτησης (QoS - Quality of Service). Έτσι εξασφαλίζεται ότι τα πακέτα φωνής θα τύχουν υψηλότερης προτεραιότητας στη µετάδοσή τους, µειώνοντας την καθυστέρηση αποθήκευσης (queuing delay). 21

Η µετάδοση φωνής µέσα από IP δίκτυα έχει ιδιαίτερο ενδιαφέρον, λόγω της ευρείας διάδοσης αυτών των δικτύων και των δυνατοτήτων που παρέχουν τα πρωτόκολλα της TCP/IP οικογένειας. Ο αρχικός προσανατολισµός, όµως, των IP δικτύων για µετάδοση απλών δεδοµένων, των οποίων οι απαιτήσεις είναι εντελώς διαφορετικές από αυτές της φωνής, δηµιουργεί την ανάγκη εφαρµογής τεχνικών και πρωτοκόλλων που να εξασφαλίζουν το επιθυµητό επίπεδο εξυπηρέτησης (QoS) για τα επίπεδα φωνής [18]. Πριν, όµως, γίνει λόγος για τις τεχνικές διασφάλισης του QoS και άλλα ειδικότερα ζητήµατα του VoIP, είναι απαραίτητο να εµβαθύνουµε στην έννοια της καθυστέρησης των πακέτων φωνής στα IP δίκτυα και τις πηγές της. Άλλωστε, αυτή τη στιγµή ο έλεγχος και προϋπολογισµός της καθυστέρησης στη µετάδοση φωνής είναι για το VoIP ένα από τα σηµαντικότερα ζητήµατα που επιζητούν λύση. 22

2. Ειδικότερα θέµατα του VoIP 2.1 Καθυστέρηση Η καθυστέρηση στα δίκτυα IP αποτελεί το κύριο πρόβληµα στις µεταδόσεις πακέτων φωνής µέσω αυτών, διότι µειώνει την ποιότητα της φωνής. Στον πίνακα 3 [14] εµφανίζονται τα επιτρεπτά επίπεδα καθυστέρησης, σύµφωνα µε τις ITU συστάσεις. Μπορούµε να διακρίνουµε δύο βασικές κατηγορίες καθυστερήσεων: την καθυστέρηση διάδοσης (propagation delay), που αποδίδεται στα χαρακτηριστικά του µέσου, και την καθυστέρηση επεξεργασίας (handling delay), που αποδίδεται στις διάφορες ενεργές συσκευές που παρεµβάλονται στη διαδροµή από τη θέση εκκίνησης µέχρι τον προορισµό. One-way Delay Περιγραφή 0-150 msec Αποδεκτή για τις περισσότερες εφαρµογές. 150-400 msec Αποδεκτή, λαµβανοµένων υπόψη των επιπτώσεων στην ποιότητα της φωνής και του χρόνου µετάδοσης λόγω της απόστασης. > 400 msec Μη αποδεκτή. Πίνακας 3 Την καθυστέρηση επεξεργασίας, την οποία µπορούµε ως ένα σηµαντικό βαθµό να ελέγξουµε, την χωρίζουµε σε τρεις επιµέρους υποκατηγορίες [15], ανάλογα µε το σηµείο του δικτύου όπου παρουσιάζεται: (α) στην καθυστέρηση επεξεργασίας στο σηµείο εκκίνησης, (β) την καθυστέρηση επεξεργασίας µέσα στο δίκτυο και (γ) την καθυστέρηση επεξεργασίας στο σηµείο προορισµού. Στη συνέχεια θα εξεταστούν πιο αναλυτικά αυτά τα είδη καθυστέρησης. Καθυστέρηση επεξεργασίας στο σηµείο εκκίνησης: Στο σηµείο αυτό παρατηρούµε δύο είδη καθυστερήσεων. Το πρώτο είδος καθυστέρησης το εισάγει ο codec (codec 23

delay). O codec εκτελεί διάφορες πράξεις, εκ των οποίων τρεις είναι οι σηµαντικότερες: η κωδικοποίηση της φωνής, η συµπίεση της και η τοποθέτηση των δεδοµένων που προέκυψαν σε πακέτα συγκεκριµένου µήκους. Συνολικά, ο codec µπορεί να προκαλέσει καθυστέρηση ως και 35 msec (ανάλογα µε το είδος του codec, βλ. πίνακα 1). Στον πίνακα 1 το µέγεθος της καθυστέρησης που αναφέρεται, αντιστοιχεί στην παραγωγή ενός δείγµατος φωνής. Τώρα, εξαρτάται από το αν αυτά τα δείγµατα φωνής «συσκευάζονται» το καθένα σε ξεχωριστό πακέτο για το IP δίκτυο ή κατά οµάδες, ώστε να αντιληφθούµε πλήρως την καθυστέρηση. Αυτή τη στιγµή, ο codec G.729 θεωρείται ο πιο ισορροπηµένος σε σχέση ποιότητας-απόδοσης. Παράγει δύο δείγµατα φωνής - των 10 bytes έκαστο - ανά 20 msec, τα οποία συνθέτονται σε ένα πακέτο δεδοµένων. Άρα για κάθε πακέτο φωνής που θα εκπεµφθεί στο δίκτυο (ωφέλιµου µεγέθους 20 bytes), η καθυστέρηση θα είναι 20 msec. Σηµειωτέον ότι στα 20 bytes αυτά αργότερα θα προστεθούν οι headers των IP/UDP/RTP για να δηµιουργηθεί το πακέτο. Συν το γεγονός ότι ο codec απαιτεί άλλα 5 msec για look-ahead, µας δηµιουργεί συνολικά µια καθυστέρηση 25 msec για κάθε πακέτο φωνής. Αυτή η καθυστέρηση είναι σταθερή και άρα εύκολο να προϋπολογιστεί. Το δεύτερο είδος καθυστέρησης που παρατηρούµε στο σηµείο εκκίνησης προέρχεται από την καθυστέρηση των πακέτων στην ουρά εξόδου (output Queuing Delay) του δροµολογητή, π.χ. στην ουρά εξόδου µιας σειριακής σύνδεσης. Αυτό το είδος καθυστέρησης είναι µεταβλητό και πολύ πιο δύσκολο στο να προσδιοριστεί. Εξαρτάται από πολλούς παράγοντες, µεταξύ των οποίων και τα ίδια τα χαρακτηριστικά του δροµολογητή. Είναι καλό, γενικά, να διατηρείται σε επίπεδα κάτω των 10 msec. Καθυστέρηση επεξεργασίας µέσα στο δίκτυο: Ως καθυστέρηση επεξεργασίας µέσα στο δίκτυο ορίζουµε το χρόνο που θα χρειαστεί το πακέτο να φτάσει από το δροµολογητή εκκίνησης (αφού έχει γίνει η κατάλληλη επεξεργασία και το πακέτο είναι έτοιµο για εκποµπή), στο δροµολογητή προορισµού (µόλις το πακέτο εισαχθεί στην ουρά εισόδου). Σε αυτό το είδος της καθυστέρησης παίζουν ρόλο τρεις παράγοντες: Ο ρυθµός µετάδοσης των δεδοµένων από το σηµείο εκκίνησης προς το δίκτυο (Serialization Up-link Delay). Ο ρυθµός µετάδοσης από το δίκτυο προς το σηµείο προορισµού (Serialization Down-link Delay). 24

Οι εσωτερικές καθυστερήσεις του ίδιου του δικτύου κορµού (General network delay). Είναι φανερό ότι τις καθυστερήσεις αυτές, οι οποίες είναι εσωτερικές στο δίκτυο κορµού, δε µπορεί να τις ελέγξει ο απλός χρήστης. Είναι ευθύνη του παροχέα υπηρεσιών, αν πρόκειται για δηµόσιο δίκτυο, ή του administrator, αν πρόκειται για κάποιο µεγάλο ιδιωτικό δίκτυο. Πρόκειται για µεταβλητό είδος καθυστέρησης και δύσκολα µετρήσιµο. Φυσικά, υπάρχουν πολλοί τρόποι να ελεγχθεί αυτή η καθυστέρηση: εξαρτάται άµεσα από το είδος του πρωτοκόλλου που χρησιµοποιείται για το δίκτυο κορµού (IP, ATM κ.λπ.), καθώς και από τις ίδιες τις δυνατότητες των συσκευών. Είναι το σηµείο όπου πρέπει να γίνει η πρόβλεψη ώστε το δίκτυο να µπορεί να εξυπηρετεί όλες τις ανάγκες κίνησης, τόσο ποιοτικά, όσο και ποσοτικά. Με άλλα λόγια, επιβάλλεται να υλοποιηθεί κάποια µελέτη. Όσον αφορά όµως τους δύο πρώτους παράγοντες (ταχύτητες των γραµµών πρόσβασης), ο χρήστης µπορεί να επηρεάσει άµεσα τις καθυστερήσεις αυτές, αφού η ταχύτητα πρόσβασης είναι επιλογή του ιδίου. Αυτό το είδος καθυστέρησης το ονοµάζουµε serialization delay και δεν είναι τίποτε άλλο από το χρόνο που χρειάζεται ένα πακέτο για να εξυπηρετηθεί από ένα δεδοµένο ρυθµό µετάδοσης. Το serialization delay µπορεί να γίνει πηγή πολύ µεγάλων καθυστερήσεων, αλλά επειδή είναι σταθερό και προβλέψιµο µπορούµε να το προϋπολογίσουµε. Η καθυστέρηση αυτή είναι συνάρτηση τόσο της ταχύτητας γραµµής όσο και του µεγέθους του πακέτου. Αν χρησιµοποιήσουµε σαν οδηγό τον πίνακα 4 [15], τότε κατανοούµε το πιθανό µέγεθος του προβλήµατος. Ταχύτητα Πρόσβασης Μέγεθος πακέτου 1 byte 64 bytes 128 bytes 256 bytes 512 bytes 1024 bytes 1500 bytes 56 kbps 143µs 9ms 18ms 36ms 72ms 144ms 214ms 64 kbps 125µs 9ms 18ms 36ms 72ms 144ms 214ms 128 kbps 62.5µs 4ms 8ms 16ms 32ms 64ms 93ms 256 kbps 31µs 2ms 4ms 8ms 16ms 32ms 46ms 512 kbps 15.5µs 1ms 2ms 4ms 8ms 16ms 23ms 25

768 kbps 10µs 640µs 1.28ms 2.56ms 5.12ms 10.24ms 15ms 1536 kbps 5µs 320µs 640µs 1.28ms 2.56ms 5.12ms 7.5ms Πίνακας 4 Παρατηρούµε, λοιπόν, πως ένα πακέτο 1500 bytes σε µια γραµµή Τ1 (1536 kbps) χρειάζεται 7.5 msec για να µεταδοθεί. Το ίδιο πακέτο, σε µια γραµµή 56 kbps, χρειάζεται 214 msec, πολύ περισσότερο από τα 150 msec που έχουµε προδιαγράψει ως την επιθυµητή συνολική καθυστέρηση για το δίκτυο. Στην πράξη, το πρόβληµα αυτό εµφανίζεται όταν ένα µεγάλο πακέτο δεδοµένων (π.χ. 1500 bytes µιας µεταφοράς FTP) προηγηθεί στην ουρά εξόδου του δροµολογητή, ενός πακέτου φωνής (το οποίο είναι συνήθως µικρό και σταθερό π.χ. 80 bytes). Αν, λοιπόν, στο σηµείο εκκίνησης ένα πακέτο δεδοµένων 1500 bytes καταλάβει την ουρά εξόδου σε µια γραµµή 56 kbps, τότε αυτό το πακέτο θα καταλάβει αυτή τη γραµµή για 214 msec. Αυτό σηµαίνει ότι ο δέκτης (το σηµείο προορισµού) δεν πρόκειται να δει κάποιο πακέτο φωνής για 214 msec. Φυσικά, ο δροµολογητής προορισµού µπορεί να υλοποιήσει κάποιο buffering, αλλά δεν έχει νόηµα να το κάνει για 214 msec, διότι ούτως ή άλλως τότε θα έχουµε υπερβεί το στόχο των 150 msec. Τότε, ο δέκτης θα αποδεχτεί το καθυστερηµένο πακέτο φωνής σαν χαµένο (packet loss) και θα επηρεάσει αρνητικά την ποιότητα. Εποµένως, σε αυτή την περίπτωση ο χρήστης θα πρέπει είτε να να χρησιµοποιήσει µεγαλύτερη γραµµή, είτε να ενεργοποιήσει κάποιους αλγορίθµους QoS (όπως Link Fragmentation and Interleaving - LFI), ώστε να µην εµφανίζεται το φαινόµενο αυτό. Αξίζει να σηµειωθεί ότι αυτή η καθυστέρηση έχει νόηµα µόνο αν το δίκτυο είναι IP ή Frame-Relay, τα οποία χρησιµοποιούν πακέτα µεταβλητού µεγέθους. Επίσης έχει νόηµα µόνο σε γραµές κάτω των 512 kbps, αφού από 512 kbps και πάνω η επίδραση του serialization delay µειώνεται αισθητά. Καθυστέρηση επεξεργασίας στο σηµείο προορισµού: Στο σηµείο προορισµού υπάρχουν κάποια κοινά είδη καθυστέρησης µε το σηµείο εκκίνησης, συν µια σηµαντική διαφοροποίηση. Συνολικά, στο σηµείο προορισµού παρατηρούµε τρία βασικά είδη καθυστέρησης: την καθυστέρηση λόγω του codec (codec delay), την καθυστέρηση στην ουρά εισόδου του δροµολογητή (input Queuing Delay) και την καθυστέρηση λόγω του 26

jitter buffer. Τα δύο πρώτα είδη έχουν πολλά κοινά µε τις καθυστερήσεις που έχουν αναφερθεί στο σηµείο εκκίνησης, µε µόνη διαφορά ότι στο σηµείο εκκίνησης είχαµε καθυστέρηση στην ουρά εξόδου ενώ εδώ στην ουρά εισόδου. Επίσης, η καθυστέρηση του codec στο σηµείο προορισµού είναι πολύ µικρότερη από ό,τι στο σηµείο εκκίνησης (λιγότερη από το µισό). Οι ίδιες βασικές αρχές ισχύουν και στις δυο περιπτώσεις. Εποµένως, αυτή η παράγραφος θα επικεντρωθεί κυρίως στην καθυστέρηση λόγω jitter buffer. Το jitter είναι από τα σηµαντικότερα προβλήµατα στα δίκτυα δεδοµένων και ορίζεται ως η διαφορά µεταξύ του αναµενόµενου (θεωρητικού) χρόνου άφιξης ενός πακέτου στο σηµείο προορισµού και του πραγµατικού χρόνου άφιξης. Αυτό εξηγείται στο σχήµα 2 [15]. Αν το σηµείο εκκίνησης παράγει πακέτα φωνής κάθε 20 msec, τότε στο σηµείο προορισµού, λόγω διαφόρων καθυστερήσεων π.χ. στο δίκτυο κορµού, θα παρατηρήσουµε άφιξη πακέτων όχι κάθε 20 msec αλλά σε τυχαία διαστήµατα. Η διαφορά αυτή µεταξύ του τυχαίου διαστήµατος και των 20 msec αποτελεί το jitter. Η απάντηση στο πρόβληµα του jitter δίνεται µε τη χρήση προσωρινής αποθήκευσης (holdback buffering) των πακέτων φωνής στον voice agent προορισµού, κατά χρονικό διάστηµα ίσο µε τη µέση χρονική καθυστέρηση που εµφανίζει το δίκτυο, έτσι ώστε ο δροµολογητής προορισµού να παράγει µε σταθερό ρυθµό τα πακέτα φωνής στον τελικό χρήστη, «κρύβοντας» τη µεταβλητή αυτή καθυστέρηση. Στην ουσία, η διαδικασία αυτή αντικαθιστά τη µεταβαλλόµενη καθυστέρηση µε µία σταθερή, διατηρώντας το φυσικό χρονισµό της οµιλίας και την καταληπτότητά της. Όταν χρησιµοποιείται holdback buffering είναι αναγκαίος ο χρονικός χαρακτηρισµός (time stamp) των πακέτων φωνής µεταξύ τους, για να εξασφαλισθεί η διατήρηση του χρονισµού στο δέκτη. Στην περίπτωση του VoIP, για το σκοπό αυτό χρησιµοποιείται το RTP πρωτόκολλο. 27

Σχήµα 2 Συνολικός προϋπολογισµός: Συνυπολογίζοντας κανείς όλες τις επιµέρους καθυστερήσεις του δικτύου, µπορεί να εκτιµήσει την καθυστέρηση που ένα πακέτο φωνής µπορεί να συναντήσει κατά τη διάρκεια του ταξιδιού του. Η συνολική καθυστέρηση του παραδείγµατος που απεικονίζεται στο σχήµα 3 προκύπτει 135 msec, πράγµα που σηµαίνει ότι υπάρχει ανοχή 15 msec ακόµα και για τις πιο ανεξέλεγκτες επιδράσεις του δικτύου κορµού. Παρατηρώντας τον πίνακα 5 αντιλαµβανόµαστε ότι συγκεκριµένα είδη καθυστέρησης είναι σταθερά και κάποια από αυτά δε µπορούµε να τα αποφύγουµε. Τα µεγέθη που δε µπορούµε να αποφύγουµε είναι η καθυστέρηση διάδοσης (propagation delay), η καθυστέρηση των codecs και τα serialization delays των γραµµών. Βεβαίως, αν οι ρυθµοί µετάδοσης είναι αρκετά µεγάλοι, η επίδραση του serialization delay µπορεί να γίνει αµελητέα, όπως αµελητέα είναι και η επίδραση της καθυστέρησης µετάδοσης για µικρές (π.χ. εθνικές) αποστάσεις, στην περίπτωση του χαλκού ή της οπτικής ίνας. 28

Σχήµα 3 Σηµείο εκκίνησης - codec G.729 Delay (5ms look-ahead) Σηµείο εκκίνησης - codec G.729 Delay (10ms per frame) Σηµείο εκκίνησης - Output Queuing Delay Serialization Delay Up-link 64 kbps, πακέτο 64 bytes Network Delay (public Frame Relay) Serialization Delay Down-link 64 kbps, πακέτο 64 bytes Σηµείο προορισµού - Input Queuing Delay Σηµείο προορισµού - codec G.729 Delay Σηµείο προορισµού - Jitter Buffer Σταθερή Καθυστέρηση 5 msec 20 msec 6 msec 3 msec 8 msec Μεταβλητή Καθυστέρηση 6 msec? (έστω 32 msec) 5 msec 4-200 msec (έστω 50 ms για το παράδειγµα) Σύνολο 135 msec Πίνακας 5 29

Ενώ όµως για την καθυστέρηση των codecs και την καθυστέρηση διάδοσης δεν υπάρχει προφανής «θεραπεία» (εκτός από την επιλογή άλλου codec ή εναλλακτικού µέσου µετάδοσης), για την αντιµετώπιση του serialization delay υπάρχουν τρόποι αντιµετώπισης, τόσο στα frame relay όσο και στα IP δίκτυα. Συγκεκριµένα, το frame relay προβλέπει τη χρήση LFI για τον τεµαχισµό των µεγάλων πακέτων σε πολλά µικρά, έτσι ώστε τα µεγάλα πακέτα να µην καθυστερούν τα µικρά. Γενικά, η καθυστέρηση είναι ένα υπαρκτό πρόβληµα στα δίκτυα δεδοµένων, αλλά όταν γίνει σωστός σχεδιασµός και εκτίµηση των διαφόρων παραµέτρων, σε συνδυασµό µε µηχανισµούς ελέγχου (QoS control, admission control, congestion control) που προσφέρουν οι συσκευές δικτύου, τότε η κατάσταση µπορεί να ελεγχθεί και να επιτευχθεί η ιδανική σχέση ποιότητας-απόδοσης στη µετάδοση φωνής και, γενικότερα, real-time δεδοµένων [1]. Στην ενότητα που ακολουθεί θα εξετασθεί διεξοδικότερα το θέµα του QoS. 30