Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να δημιουργήσετε το TCP /IP πακέτα κώδικα C Προγραμματισμός

Δημιουργία ένα πακέτο TCP /IP είναι σημαντική όταν θέλετε το πρόγραμμά σας C για να κάνει μια ενεργή σύνδεση με έναν απομακρυσμένο υπολογιστή για την αποστολή δεδομένων και πίσω . TCP /IP είναι ένα πρωτόκολλο δικτύωσης που παρέχει αξιόπιστη και διέταξε την παράδοση των πακέτων μεταξύ των δύο οικοδεσπότες . Το World Wide Web, e-mail και μεταφορά αρχείων εφαρμογές όλοι χρησιμοποιούν το πρωτόκολλο TCP /IP . Δημιουργήστε ένα πακέτο TCP /IP με τη συλλογή δεδομένων σχετικά με μια σειρά , κάνοντας μια υποδοχή από τα στοιχεία αυτά και στη συνέχεια να στείλει την υποδοχή στο απομακρυσμένο υπολογιστή . Οδηγίες
Η

1 Ανοίξτε το αρχείο σας C σε ένα πρόγραμμα επεξεργασίας όπως το VC + + . 2

Προσθέστε τη βιβλιοθήκη Winsock στις ρυθμίσεις του έργου compiler σας, έτσι ώστε θα συνδέσει σωστά . Σε VC + + αυτό γίνεται κάνοντας κλικ στο μενού "Έργο" , κάνοντας κλικ στην επιλογή "Ρυθμίσεις ... ", κάνοντας κλικ στην επιλογή "Σύνδεση " και πληκτρολογώντας " ws2_32.lib " στο πλαίσιο με τίτλο " modules Αντικείμενο /βιβλιοθήκη . " Άλλα πιθανά ονόματα για τη βιβλιοθήκη Winsock περιλαμβάνουν " winsock32.lib " και " wsock32.lib . "
Εικόνων 3

Συμπεριλάβετε την « Winsock2 " και " ws3tcpip " headers για να έχετε πρόσβαση στις λειτουργίες υποδοχή με την προσθήκη τον ακόλουθο κώδικα στο επάνω μέρος του αρχείου σας :

# include

# include
Η 4

κρίνει την μεταβλητές που απαιτούνται για να δημιουργήσετε ένα πακέτο TCP /IP με την προσθήκη του παρακάτω κώδικα στη λειτουργία σας :

struct addrinfo υπαινιγμούς , * res ?

int socket_descriptor ?

Η " addrinfo " structs θα αποθηκεύσει την τιμή επιστροφής της συνάρτησης " getaddrinfo " . Η « socket_descriptor » είναι η περιγραφή ακέραιος ότι η λειτουργία " υποδοχή" θα επιστρέψει
5

προετοιμαστεί τις μεταβλητές με την προσθήκη του παρακάτω κώδικα : .

Memset ( & τους υπαινιγμούς , 0 , sizeof συμβουλές ) ?

hints.ai_family = AF_UNSPEC ?

hints.ai_socktype = SOCK_STREAM ?

η " AF_UNSPEC " τιμή καθορίζει ότι η οικογένεια διευθύνσεων για τη λειτουργία " getaddrinfo " μπορεί να είναι οποιαδήποτε έγκυρη τύπου, όπως IPv4 ή IPv6 . Η " SOCK_STREAM " δείχνει μια υποδοχή ρεύματος TCP
Η 6

Καλέστε τη λειτουργία " getaddrinfo " με την προσθήκη του παρακάτω κώδικα : .

Getaddrinfo ( " www.server.com " , " 3490 " & τους υπαινιγμούς , & res ) ?

Αντικατάσταση " www.server.com "με το διακομιστή στον οποίο θέλετε να συνδεθείτε. Αντικαταστήστε το " 3490 " με το λιμάνι θα συνδεθείτε . Η λειτουργία " getaddrinfo " συλλέγει το πρωτόκολλο ανεξάρτητο πληροφορίες σχετικά με μια διεύθυνση από το όνομα του κεντρικού υπολογιστή του, το οποίο επιστρέφει στο " addrinfo " structs .
Η 7

Δημιουργήστε μία υποδοχή TCP /IP με τη λειτουργία " υποδοχή" , με την προσθήκη του παρακάτω κώδικα :

socket_descriptor = υποδοχή ( res - > ai_family , res - > ai_socktype , res - > ai_protocol ) ?

Η λειτουργία " υποδοχή" χρησιμοποιεί τις πληροφορίες επέστρεψε από τη λειτουργία " getaddrinfo " για να δημιουργήσετε ένα πλήρες υποδοχή
8

συνδεθείτε με τον απομακρυσμένο διακομιστή με τη λειτουργία "σύνδεση " με την προσθήκη του παρακάτω κώδικα : .

συνδεθείτε ( socket_descriptor , res - > ai_addr , res - > ai_addrlen ) ?

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

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα