Prbl avec la fonction htons(port)

Signaler
Messages postés
38
Date d'inscription
mardi 16 août 2005
Statut
Membre
Dernière intervention
7 avril 2007
-
Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
-
J'ai un probleme avec cette fonction mais je ne sais pas très bien quel est son role. Je ne sais pas non plus selon quels critères on choisit le "port".
Aidez moi STP.

2 réponses

Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
3
Les IPs et les ports sont stockés de deux façons: grand indien et petit
indien. Tous les processeurs n' utilisent pas le même agencement.

Avec le grand indien, l'octet fort est à gauche.

Avec le petit indien, il est à droite.

C'est pourquoi on convertit les données de l' ordre de la machine (host) vers l' ordre du réseau (network).



htons() -littéralement Host TO Network Short-
convertit un entier court non signé (unsigned short) dans l' ordre des
octets du réseau (network byte order c'est à dire le grand indien).

La fonction prend en argment un u_short et retourne un u_short ça ne devrait pas poser de problème particulier.



ntohs() fait l' inverse: network to host short.



-----

Le port est synonyme de service, comme l'a indiqué Arnotic. Ils se répartissent en trois catégories:

- Les ports "Bien connus" ("Well Known Ports" de 0 à 1023)

- Les ports Réservés (de 1024 à 49151)

- Et les ports dynamiques/privés (de 49152 à 65535)



Les 1024 premiers ports sont réservés et dits "assignés" à des services
définis. Voir la RFC 1010 pour la liste, qui est fixée par l' IANA.
Messages postés
933
Date d'inscription
dimanche 1 avril 2001
Statut
Modérateur
Dernière intervention
9 janvier 2012
1
Pour plus d'information sur la fonction : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/htons_2.asp

Pour les services comme le ftp et le smtp, ... C'est en général 21, 25.

Ce sont des ports "réservés", après si tu développes un serveur tu peux choisir n'importe qu'elle port.

Voici un bon site : http://www.frameip.com

@+
Arnotic,
Admin CS,
http://dev.winsysdev.com
MVP Visual C++