|
C语言实的串行通信接口程序
|
| |
摘 要 该文介绍了sockets通信原理,从程序员角度着重讨论了windows sockets为支持异步通信对sockets的功能扩充,并给出了应用windows sockets实现网络实时通信的一个程序实例。关 ibm公司于1994年4月推出的tcp/ip for dos v2.1.1所提供的开发软件包programmers tool kit不仅带有dos下网络编程接口,而且提供了windows下网络异步通信接口winsock。 一、socket网络编程原理socket是bsd unix提供的网络应用编程接口,它采用客户机/服务器的通信机制,使网络客户机方和服务器方通过socket实现网络之间的连接和数据交换。socket提供了一系列的系统调用,使用这些系统调用可以实现tcp、udp、icmp和ip等多种网络协议之间的通信。 socket有三种主要类型:stream sockets,datagram sockets和raw sockets。streamsocket接口定义了一种可靠的面向连接的服务,它实现了无差错无重复的顺序数据传输。它通过内置的流量控制解决了数据的拥塞,应用程序可以发送任意长度的数据,将数据当作字节流。datagram socket接口定义了一种无连接的服务,数据通过相互独立的包进行传输,包的传输是无序的,并且不保证是否出错、丢失和重复。包长度是有限的(隐含长度为8192字节,最大长度可设为32768字节)。raw socket接口允许对低层协议如ip和icmp的直接存取,它主要用于新的网络协议实现的测试等。
|
|
|
|
|