Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14523524
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:03:35

下载本文示例代码
  除了Client/Server结构的MIS以外,还有另外一类比较常见的Client/Server结构是网络通信程序,这里,我们以Winsock网络编程为例,解释一下Client/Server的网络编程。  Winsock实际上是Windows Socket,Socket是对应TCP/IP协议的最典型的应用程序开发接口。作为网络应用编程界面,Socket隐藏了网络底层的复杂的协议和数据结构。使得编程人员可以简单的对网络进行操作。Socket通信有两种主要方式,  第一种叫流方式(Stream Socket),也称面向连接的方式,这种方式对应的是TCP协议。起传输特点是通信可靠性高,按发送的顺序接收数据。数据被看作是字节流,无长度限制。第二种叫数据报方式(Datagram Socket),又称无连接方式,对应的是UDP协议。这种方式不提供数据无错保证。数据可能丢失或重复,并且接收顺序混乱,报文长度是有限制的,另外,在有的Socket版本中,也可能直接使用IP协议,称为Raw Socket,用于写底层的通信软件或协议。   服务器通信程序的开发  因为服务器从事大量的复杂的计算,所以服务器端的应用程序是在Windows环境下用VC来实现的,VC作为面向对象的编程语言具有运算速度快的显著特点。而VC还提供的Socket组件,可以方便的利用VC来开发Winsock通信程序。  服务器处理请求框图  这里,我们的服务器程序主要接收客户发送的数据,然后依据数据类型进行相应的计算,将计算处理过程中的数据定时的发给客户端去显示。程序框图如上,逻辑处理框图如下:   ServerProc()  {   Switch()    Case WM_USER;     WSAStartup();     s = Socket;     bind();     listen();     WSAAsyncSelect();    Case WM_TIMER;     TimerProc();    Case WM_Command;     MenuProc();    Case WM_SOCK;     Switch();    Case FD_ACCEPT;    Case FD_READ;    Case FD_WRITE;    Case FD_CLOSE;    Case WM_DESTROY;     KillTimer();     SACleanup():     PostQuiteMessage();  }共2页。 1 2 8 :   除了Client/Server结构的MIS以外,还有另外一类比较常见的Client/Server结构是网络通信程序,这里,我们以Winsock网络编程为例,解释一下Client/Server的网络编程。  Winsock实际上是Windows Socket,Socket是对应TCP/IP协议的最典型的应用程序开发接口。作为网络应用编程界面,Socket隐藏了网络底层的复杂的协议和数据结构。使得编程人员可以简单的对网络进行操作。Socket通信有两种主要方式,  第一种叫流方式(Stream Socket),也称面向连接的方式,这种方式对应的是TCP协议。起传输特点是通信可靠性高,按发送的顺序接收数据。数据被看作是字节流,无长度限制。第二种叫数据报方式(Datagram Socket),又称无连接方式,对应的是UDP协议。这种方式不提供数据无错保证。数据可能丢失或重复,并且接收顺序混乱,报文长度是有限制的,另外,在有的Socket版本中,也可能直接使用IP协议,称为Raw Socket,用于写底层的通信软件或协议。   服务器通信程序的开发  因为服务器从事大量的复杂的计算,所以服务器端的应用程序是在Windows环境下用VC来实现的,VC作为面向对象的编程语言具有运算速度快的显著特点。而VC还提供的Socket组件,可以方便的利用VC来开发Winsock通信程序。  服务器处理请求框图  这里,我们的服务器程序主要接收客户发送的数据,然后依据数据类型进行相应的计算,将计算处理过程中的数据定时的发给客户端去显示。程序框图如上,逻辑处理框图如下:   ServerProc()  {   Switch()    Case WM_USER;     WSAStartup();     s = Socket;     bind();     listen();     WSAAsyncSelect();    Case WM_TIMER;     TimerProc();    Case WM_Command;     MenuProc();    Case WM_SOCK;     Switch();    Case FD_ACCEPT;    Case FD_READ;    Case FD_WRITE;    Case FD_CLOSE;    Case WM_DESTROY;     KillTimer();     SACleanup():     PostQuiteMessage();  }共2页。 1 2 8 : 下载本文示例代码


基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序基于CS模式的Winsock网络通讯程序
阅读(108) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~