background image

 

       61 

Οι  κλήσεις  συστήματος  που  απαιτούνται  για  την  εγκαθίδρυση  της  σύνδεσης 

διαφέρουν για τις δύο διεργασίες, εντούτοις και οι δύο περιλαμβάνουν τη βασική δο-

μή  της  υποδοχής  (socket)

53

.  Οι  δύο  διεργασίες  εγκαθιδρύουν  έκαστη  τη  δική  τους 

υποδοχή, οι οποίες απαιτείται να είναι του ίδιου τύπου και τομέα. Ο τύπος υποδοχής 

(socket type) που επιλέγεται είναι datagram socket ο οποίος κάνει χρήση του πρωτο-

κόλλου UDP. Είναι απαραίτητο να υπάρχει ανταπόκριση σε πραγματικό χρόνο, κάτι 

που εγγυάται η χρήση του συγκεκριμένου πρωτοκόλλου. Επιπλέον, επιλέγεται τομέας 

Διαδικτύου  (Internet  domain),  ώστε  να  εξυπηρετηθούν  διεργασίες  που  εκτελούνται 

σε ανεξάρτητα συστήματα. 

Διεργασία διακομιστή:

 

Σημείο εισόδου της διεργασίας αποτελεί η συνάρτηση 

main()

, μέσα στο σώ-

μα της οποίας πραγματοποιούνται όλες οι απαραίτητες  κλήσεις συστήματος  για την   

εγκαθίδρυση της σύνδεσης. Η διεργασία δημιουργεί μία υποδοχή κατόπιν της κλήσης 

συστήματος 

socket()

, μέσω της οποίας προσδιορίζονται ο τομέας Διαδικτύου και ο 

τύπος υποδοχής. Στη συνέχεια, πραγματοποιείται δέσμευση της υποδοχής σε μία δι-

εύθυνση

54

 μέσω της κλήσης συστήματος 

bind()

. Ο διακομιστής πλέον είναι σε θέση 

να λαμβάνει συνεχώς, με τη βοήθεια ενός αέναου βρόγχου επανάληψης, τις αιτήσεις 

του πελάτη, μέσω της κλήσης συστήματος 

recvfrom()

, τις οποίες  μετέπειτα εκτυ-

πώνει μέσω της κλήσης συστήματος 

printf()

Διεργασία πελάτη

55

Στη  διεργασία,  πραγματοποιείται  προσθήκη  της  συνάρτησης 

Client()

,  η 

οποία  καλείται  κάθε  φορά  που  ανακτώνται  δεδομένα  από  το  χειριστήριο.  Αρχικά, 

απαιτείται η αρχικοποίηση της χρήσης του αρχείου Windows Sockets DLL

56

, η οποία 

                                                      

53

 Αποτελεί καταληκτικό σημείο μιας διαδιεργασικής επικοινωνίας. 

54

 Η διεύθυνση περιλαμβάνει τη διεύθυνση IP του διακομιστή καθώς και τη θύρα δικτύωσης που έχει 

επιλεχθεί. 

55

 Αποτελεί διεργασία Winsock, καθώς εκτελείται σε λειτουργικό σύστημα Windows. 

56

 Επίσης γνωστό ως winsock.dll. Αποτελεί βιβλιοθήκη δυναμικής σύνδεσης που παρέχει μια διεπαφή 

προγραμματισμού  εφαρμογών  για  προγραμματιστές  εφαρμογών  δικτύου,  που  χρησιμοποιούν  τη 
συλλογή πρωτοκόλλων TCP/IP.