Top Banner
DSock – DOS TCP/IP DSock – DOS TCP/IP by ICOP / DMP Group by ICOP / DMP Group
26

DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group.

Dec 26, 2015

Download

Documents

Baldwin Francis
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

Why DSock?Why DSock?

Page 26: DSock – DOS TCP/IP by ICOP / DMP Group DSock – DOS TCP/IP by ICOP / DMP Group.

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