dsock – dos tcp/ip by icop / dmp group dsock – dos tcp/ip by icop / dmp group
TRANSCRIPT
![Page 1: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/1.jpg)
DSock – DOS TCP/IPDSock – DOS TCP/IPby ICOP / DMP Groupby ICOP / DMP Group
DSock – DOS TCP/IPDSock – DOS TCP/IPby ICOP / DMP Groupby ICOP / DMP Group
![Page 2: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/2.jpg)
What is WinSock?What is WinSock?What is WinSock?What is WinSock?
• The Windows Sockets specification defines a network programming interface for Microsoft Windows which is based on the "socket" paradigm popularized in the Berkeley Software Distribution (BSD) from the University of California at Berkeley.
• Released at 1993 of Windows Sockets 1.1
• An open interface for network programming under Microsoft Windows version 1.1
• Application programming interface – API
• WinSock.dll (Windows Sockets)
• WinSock is a Windows TCP/IP library for users who want to program their network application software under Windows.
![Page 3: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/3.jpg)
Structure of WinSockStructure of WinSockStructure of WinSockStructure of WinSock
Ethernet
Application
Ethernet
Application
WindowsWindows
WinSock
TCP/IP
User
Hardware
WinSock
![Page 4: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/4.jpg)
What is DSock?What is DSock?What is DSock?What is DSock?
• Based on the platform of DoD Model
• DoD – Department of Defense
• DSock.lib (DMP DOS Sockets)
• Issued by DMP group at 1998
• DSocks is a DOS TCP/IP library for users who want to program their application software thru network interface under DOS.
• It provides C function call for programmer to create internet applications.
![Page 5: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/5.jpg)
Structure of DSock on DOS EnvironmentStructure of DSock on DOS EnvironmentStructure of DSock on DOS EnvironmentStructure of DSock on DOS Environment
Network Interface
DSocksLibrary
PacketDriver
DOS
Application (NET)User
Hardware
TCP/IP
![Page 6: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/6.jpg)
Conditions to Use DSock?Conditions to Use DSock?Conditions to Use DSock?Conditions to Use DSock?
• Hardware Requirement
• ICOP Single Board Computers with Ethernet interface only
• Realtek 8019 10 Base-T
• Realtek 8139 10/100 Base-T
• Driver Requirement
• Packet Drivers for RTL8019 and RTL8139 are necessary
• RTL8019: NE2000 compatible
• RTL8139: Support by Realtek
• Operating System
• MS-DOS / Dr-DOS
• X-DOS
![Page 7: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/7.jpg)
Structure of DSock LibraryStructure of DSock Library
![Page 8: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/8.jpg)
OSI Reference Model & TCP/IPOSI Reference Model & TCP/IPOSI Reference Model & TCP/IPOSI Reference Model & TCP/IP
Application
Presentation
Session
Transport
Network
Data Link
Physical
Telnet FTP SMTP
TCP UDP
IP ICMP, ARP, OSPF, RIP
Logical Link Control Media Access Control
7 Layer o
f Op
en S
ystem In
tercon
nectio
n M
od
el
Mo
re …
..
5 Layer o
f TC
P/IP
Pro
toco
l Mo
del
![Page 9: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/9.jpg)
OSI Reference Model & DSockOSI Reference Model & DSockOSI Reference Model & DSockOSI Reference Model & DSock
Application
Presentation
Session
Transport
Network
Data Link
Physical
TCP UDP
IP ICMP, ARP
Packet Driver
4 Layer o
f Do
D (D
epartm
ent o
f Defen
se) Mo
del
Te
lne
t
FT
P
HT
TP
SM
TP
DN
S
BO
OT
P/D
HC
P
![Page 10: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/10.jpg)
Function Call of Dsock LibraryFunction Call of Dsock LibraryFunction Call of Dsock LibraryFunction Call of Dsock Library
Function Call for C
LanguageTCP UDP
IP ICMP, ARP
Packet Driver
DSock.lib
4 Layer o
f Do
D (D
epartm
ent o
f Defen
se) Mo
del
Te
lne
t
FT
P
HT
TP
SM
TP
DN
S
BO
OT
P/
DH
CP
![Page 11: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/11.jpg)
Function Call of DSock LibraryFunction Call of DSock Library
![Page 12: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/12.jpg)
Function Call of WinSock- Function Call of WinSock- 1/31/3Function Call of WinSock- Function Call of WinSock- 1/31/3
• Socket Functions (BSD 4.3-like)
• accept() bind() closesocket()
• connect() getpeername() getsockname()
• getsockopt() htonl() htons()
• inet_addr() inet_ntoa() ioctlsocket()
• listen() ntohl() ntohs()
• recv()* recvfrom()* select()*
• send()* sendto()* setsockopt()
• shutdown() socket()
• Note: * The routine can block if acting on a blocking socket.
![Page 13: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/13.jpg)
Function Call of WinSock - Function Call of WinSock - 2/32/3Function Call of WinSock - Function Call of WinSock - 2/32/3
• Database Functions (BSD 4.3-like)
• gethostbyaddr()*
• gethostname()
• gethostbyname()*
• getprotobyname()*
• getprotobynumber()*
• getservbyname()*
• getservbyport()*
• Note: * The routine can block under some circumstances.
![Page 14: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/14.jpg)
Function Call of WinSock - Function Call of WinSock - 3/33/3Function Call of WinSock - Function Call of WinSock - 3/33/3
• Microsoft Windows-specific Extensions
• WSAAsyncGetHostByAddr() WSAAsyncGetHostByName()
• WSAAsyncGetProtoByName() WSAAsyncGetProtoByNumber()
• WSAAsyncGetServByName() WSAAsyncGetServByPort()
• WSAAsyncSelect() WSACancelAsyncRequest()
• WSACancelBlockingCall() WSACleanup()
• WSAGetLastError() WSAIsBlocking()
• WSASetBlockingHook() WSASetLastError()
• WSAStartup() WSAUnhookBlockingHook()
![Page 15: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/15.jpg)
Function Call of DSock- Function Call of DSock- 1/31/3Function Call of DSock- Function Call of DSock- 1/31/3
• Socket Functions (WinSock-like)
• accept() SocketAccept()
• bind() SocketBind()
• closesocket() SocketClose()
• connect() SocketConnect()
• htonl() htonl()
• htons() htons()
• inet_addr() inet_addr()
• inet_ntoa() inet_ntoa()
• listen() SocketListen()
• ntohl() ntohl()
• ntohs() ntohs()
Win
So
ck
DS
ock
![Page 16: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/16.jpg)
Function Call of DSock- Function Call of DSock- 2/32/3Function Call of DSock- Function Call of DSock- 2/32/3
• Socket Functions (WinSock-like)
• recv() SocketRecv()
• recvfrom() SocketRecvFrom()
• send() SocketSend()
• sendto() SocketSendTo()
• socket() SocketCreate()
• WSAStartup() DSock_Open()
• WSACleanup() DSock_Close()
Win
So
ck
DS
ock
![Page 17: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/17.jpg)
Function Call of DSock - Function Call of DSock - 3/33/3Function Call of DSock - Function Call of DSock - 3/33/3
• DSock-specific Extensions
• DSock_DoBootp() DSock_LoadConfigFile()
• DSock_AddGateway() DSock_GetGateway()
• DSock_Resolve DSock_GetMacAddr()
• DSock_GetHostIp() DSock_SetHostIp()
• DSock_GetNetMask() DSock_SetNetMask()
• SocketDestory() SocketAbort()
• SocketDataReady() SocketIsConnected()
• SocketPutChar() SocketGetChar()
• SocketPutString() SocketGetString()
• DSock_AddDomainNameServer()
• DSock_GetDomainNameServer()
![Page 18: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/18.jpg)
Procedure of TCP Server-Client ModelProcedure of TCP Server-Client ModelProcedure of TCP Server-Client ModelProcedure of TCP Server-Client Model
DSock_Open()
SocketCreate()
SocketBind()SocketListen()
SocketAccept()
SocketSend()
SocketClose()SocketDestory()
DSock_Close()
DSock_Open()
SocketCreate()
SocketConnect()
SocketRecv()
SocketClose()SocketDestory()
DSock_Close()
Server
Clien
t
connection
![Page 19: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/19.jpg)
Procedure of UDP Server-Client ModelProcedure of UDP Server-Client ModelProcedure of UDP Server-Client ModelProcedure of UDP Server-Client Model
DSock_Open()
SocketCreate()
SocketRecvFrom()
SocketClose()SocketDestory()
DSock_Close()
Server
Clien
t
SocketBind()
DSock_Open()
SocketCreate()
SocketSendTo()
SocketClose()SocketDestory()
DSock_Close()
SocketBind()
![Page 20: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/20.jpg)
Demo Program of DSockDemo Program of DSock
![Page 21: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/21.jpg)
Demo Program of DSockDemo Program of DSockDemo Program of DSockDemo Program of DSock
• BOOTP Demo program of BOOTP/DHCP.
• DNS To get IP address of domain name.
• EXE Exectue files for all samples.
• FTPD Demo program of FTP server.
• HTTPD Demo program of Web server.
• SMTP A simple program to send mail.
• TALK_TCP Example of Talk with TCP.
• TALK_UDP Example of Talk with UDP (broadcast).
• TELNETD Simple TELNET server example.
• talk_tcp_win Talk with TCP (Windows version by WinSock).
• talk_udp_win Talk with UDP (Windows version by WinSock).
Filename Description
![Page 22: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/22.jpg)
Example of DSock to DSockExample of DSock to DSockExample of DSock to DSockExample of DSock to DSock
Ethernet
DSockLibrary
PacketDriver
TALK_TCP
DO
S
Ethernet
DSockLibrary
PacketDriver
TALK_TCP
DO
S
TCP/IP
![Page 23: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/23.jpg)
Example of DSock to WinSockExample of DSock to WinSockExample of DSock to WinSockExample of DSock to WinSock
Ethernet
DSockLibrary
PacketDriver
TALK_UDP
DO
S
Ethernet
talk__udp_win
WinSock
Windows
TCP/IP
![Page 24: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/24.jpg)
Example of DSock ServersExample of DSock ServersExample of DSock ServersExample of DSock Servers
Ethernet
DSockLibrary
PacketDriver
FTPD
DO
S
TCP/IP
Ethernet
DSockLibrary
PacketDriver
HTTPD
DO
S
Ethernet
DSockLibrary
PacketDriver
TELNETD
DO
S
Client
![Page 25: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/25.jpg)
Why DSock?Why DSock?
![Page 26: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group](https://reader036.vdocuments.mx/reader036/viewer/2022081420/56649e1b5503460f94b09b5f/html5/thumbnails/26.jpg)
Advantages of DOS TCP/IPAdvantages of DOS TCP/IPAdvantages of DOS TCP/IPAdvantages of DOS TCP/IP
• Running under dedicate operating system – DOS
• 100% dedicate for single tasking
• Complete development tools for x86 and DOS
• C compiler
• Debug tools
• Easy to up-to-date
• Fast time-to-market
• Lowest cost of TCP/IP solution
• Compare with simple work under Windows system
• Small size and low cost of storage for software
• Can store in a 512k single chip flash disk