Winsock
par _SebF

1 - L'histoire de Winsock
2 - L'architecture
3 - Les compatibilités
        3.1 - Winsock
        3.2 - Le mode Raw
        3.3 - Les options
4 - Le mode non connecté
5 - Le mode connecté
6 - Le mode brut
7 - Les liens
8 - Discussion autour de la documentation
9 - Suivi du document

1 - L'histoire de Winsock

Depuis des années, les applications se sont tournées vers une communication réseaux afin d'interagir entre elles. La Socket Windows, ou plus couramment appelé Winsock, est une API (Application Programming Interface) procurant des fonctions d'accès aux protocoles réseaux. Winsock représente donc une interface API permettant l'utilisation du protocole TCP/IP sur une interface Windows.

Winsock 1.1 à été publié le 20 janvier 1993 afin de créer un standard universel pour les applications TCP/IP. Les auteurs des Windows Socket 1.1 ont limité les possibilités à l'utilisation d'un seul protocole, TCP/IP, contrairement à la version 2.0 qui  propose en plus, la suite des protocoles ATM, IPX/SPX, DECnet et le sans fil. Le passage à Winsock 2.0 s'est fait en gardant 100% de compatibilité permettant aux applications déjà développées de continuer à fonctionner.

2 - L'architecture

L'architecture Winsock 2 est conforme à WOSA (Windows Open System Architecture).

TCPIP IPV6 VOIP VPN IP IPV4

Comme vous pouvez le voir sur le schéma ci dessus, Winsock 2.0 fournit deux interfaces de programmation. La première, application programming interface, est appelé API. Elle se situe en couche 5 du modèle OSI et utilise donc un protocole de couche 3 et 4 pour véhiculer ses informations à travers un réseau. La seconde interface, service provider interface, est appelé SPI. Elle se situe en couche 3 du modèle OSI et permet de personnaliser les protocoles tels que IP, IPX afin de gérer l'adressage, le transport et les options.

3 - Les compatibilités

3.1 - Winsock

   

Winsock 1.1

Winsock 2

       

Windows 3.x

 

Oui

Non

Windows NT 3.x

 

Oui

Non

Windows 95

 

Oui

Oui *

Windows NT 4

 

Oui

Oui **

Windows 98

 

Oui

Oui **

Windows 2000

 

Oui

Oui

Windows XP

 

Oui

Oui

Windows 2003

 

Oui

Oui

* Windows 95 est livré de base avec Winsock 1.1. Il est possible d'installer Winsock 2 à l'aide d'un add-on Microsoft disponible à cette l'Url.

3.2 - Le mode Raw

Le mode Raw est disponible à partir de la version 2.0 de Winsock.

** Malgré le support du mode Raw, Win98 et Nt4 ne sont pas compatibles avec l'option IP_HDRINCL permettant de spécifier l'entête IP.

3.3 - Les options

Vous trouverez la liste des compatibilités de toutes les options.

4 - Le mode non connecté

Le mode non connecté est basé sur UDP qui ne garanti pas la transmission de donnée. Voici le schéma d'une relation entre deux hosts IP en mode non connecté.

TCPIP IPV6 VOIP VPN IP IPV4

5 - Le mode connecté

Le mode connecté est basé sur l'ouverture d'une session TCP afin de garantir, au niveau 4, la transmission de donnée. Voici le schéma d'une relation entre deux hosts IP en mode connecté.

TCPIP IPV6 VOIP VPN IP IPV4

6 - Le mode brut

Le mode brut est plus communément appelé mode raw. Compatible uniquement avec la version 2 de Winsock, il permet de spécifier un protocole de couche 3 tel que ATM, SPX, IP et autres. Dans le cadre d'IP, il existe une option appelée IP_HDRINCL apportant la possibilité de spécifier l'entête IP entière. Pour avoir accès aux options du mode raw, il faut posséder les droits d'administrateur local. Microsoft l'impose pour des raisons de sécurité, mais propose de contourner cette restriction à l'aide de la modification du registre explicité dans la Q195445.

7 - Les liens

- Documentation en anglais
- Le site Ftp de Microsoft sur les spécifications et le SDK

8 - Discussion autour de la documentation

Vous pouvez poser toutes vos questions, vos remarques et vos expériences à propos de Winsock. Pour cela, rendez-vous sur le Forum "Developpement".

9 - Suivi du document

Le 26 août 2004, par _SebF, Ajout des ** expliquant que Win98 et Nt4 ne sont pas compatible avec IP_HDRINCL

Le 26 juillet 2004, par _SebF, ajout des compatibilité du mode Raw et des Options configuré par SetSockOpt()

Le 27 février 2004, par _SebF, ajout de la fermeture de la socket et de winsock dans les schémas mode connecté et mode non connecté

Le 27 février 2004, par _SebF, publication du document.

Le 24 février 2004, par _SebF, création du document.



mot clé : atm adresse sock osi session sebf liaison sock application mode raw connaitre sock winsock ipv4 api mode connecte datagramme sock linux SetSockOpt datatgrame sock brut ipv6 mode non connecte spx microsoft trame sock requete sock tcpip GetSockOpt socket tout sur sock tous sur sock ip protocol sock spi _sebf sock IP_HDRINCL dec negociation sock WOSA win9x decouverte sock win95 connecte Q195445 news frame sock voip vpn comprendre sock protocole sock reponse sock resolution sock

Copyright © 2011-2015 FrameIP TcpIP. Tous droits réservés. Les marques et marques commerciales mentionnées appartiennent à leurs propriétaires respectifs. L'utilisation de ce site Web TcpIP implique l'acceptation des conditions d'utilisation et du règlement sur le respect de la vie privée.
Sécurité entreprise Téléphonie entreprise Expert de votre Infrastructure Test ADSL Serinya Operateur Telecom