Why WINSOCK.DLL only/

Why isn't there just one WINSOCK.DLL? Do I need a TCP/IP already
to use it?
Answer: The Windows Sockets specification defines the top level of the DLL,
the part which is called by user programs. The method a given WINSOCK.DLL
will use to access TCP/IP (or NetWare, or AppleTalk, or DECNet ...) depends
on the networking package you have installed, and therefore must vary. A
WINSOCK.DLL is therefore just an interface to whatever existing protocol
you already have installed. An illustration would help:

+---------------------------------+
| WinSock compliant application |
+---------------------------------+
+---------------------------------+ <--- WinSock API
| Windows Sockets DLL |
+---------------------------------+
+---------------------------------+ <--- Protocol Stack API
| Protocol Stack (e.g. TCP/IP) | (typically proprietary)
+---------------------------------+
+---------------------------------+ <--- Hardware Driver API
| Hardware Driver | (Packet Driver, NDIS, ODI,
+---------------------------------+ or proprietary)
+---------------------------------+ <--- Hardware Interface
| Network (hardware) Interface | (hardware specific)
+---------------------------------+
|
+----> network

0 comments:

Post a Comment