由于互联网终端不断增加,IPv4 地址长度(32位)已不能够满足要求,所以出现了 IPv6地址(128位),但是现有应用程序大部分还是采用 IPv4 地址形式,所以必须解决 IPv4 与 IPv6 之间的相互操作,使现有基于 IPv4 的应用程序能够与基于 IPv6 的应用程序相互通信。那么我们怎么实现 IPv4 客户端与 IPv6 服务器、IPv6 客户端与 IPv4 服务器之间的通信。...
分类:
其他好文 时间:
2014-12-15 17:20:07
阅读次数:
250
在套接字编程中,我们经常使用数字的 IP 地址和端口号进程编程,但是我们平常所熟悉的是一些便于记忆的字符名字,要使这种名字能够为套接字操作函数识别,所以这两者之间必须存在着某种转换关系。本节介绍的是 【主机名 与 地址】 和 【服务名 与 端口号】 之间的转换。在 Unix 系统中,可以使用函数 gethostbyname、gethostbyaddr 实现【主机名 与 地址】之间的转换;可以使用函数 getservbyname、getservbyport 实现 【服务名 与 端口号】 之间的转换。但是前面这...
分类:
其他好文 时间:
2014-12-15 10:33:19
阅读次数:
493
IPCwhy:1.数据传输2.资源共享目的:3.通知事件4.进程控制发展:1.UNIX进程间通信2.基于SYStem V3.POSIX方式分类:1.pipe(管道) FIFO(有名管道)2.signal3.消息队列4.共享内存5.信号量6.套接字(socket)管道通信:单向,先进先出创建pipe:...
分类:
系统相关 时间:
2014-12-14 13:12:34
阅读次数:
204
在前面的文章中介绍了五种 I/O 模型《I/O 模型》,这里介绍 I/O 模型中 I/O 多路复用在 TCP 套接字编程中的使用。在 I/O 多路复用中主要是 select 和 poll 函数的使用。
select 函数
该函数允许进程指示内核等待多个事件中的任何一个发生,并只在一个或多个事件发生或超过指定时间后才被唤醒。进程调用 select 函数是告知内核,进程对哪些描述...
分类:
其他好文 时间:
2014-12-13 17:57:48
阅读次数:
166
接上一篇文章:CentOS6服务管理之DNS-主从DNS服务器的搭建RNDC管理DNS的实现rndc:(RemoteNameDomainController)基于套接字与named服务通信,控制named服务完成特定操作。是指通过bind软件引进的远程控制通道,代替unix信号来控制named进程,可以用来对配置进行重新载入,是一..
分类:
其他好文 时间:
2014-12-13 06:24:37
阅读次数:
184
本节围绕着基于 TCP 套接字编程实现的客户端和服务器进行分析,首先给出一个简单的客户端和服务器模式的基于 TCP 套接字的编程实现,然后针对实现过程中所出现的问题逐步解决。有关基于 TCP 套接字的编程过程可参考文章《基本 TCP 套接字编程》。该编程实现的功能如下:
(1)客户端从标准输入读取文本,并发送给服务器;
(2)服务器从网络输入读取该文本,并回射给客户端;
(3)客户端从网络读取由服务器回射的文本,并通过标准输出回显到终端;...
分类:
其他好文 时间:
2014-12-12 20:53:08
阅读次数:
197
原文:winsock2之最简单的win socket编程
server.cpp #include #include #pragma comment(lib,"ws2_32.lib")
int main(int argc,char **argv)
{ //创建套接字 WORD myVersionReq...
select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型:#include#includeintselect(intmaxfd,fd_set*rdset,fd_set*wrset,fd_set*exset,structtime...
分类:
其他好文 时间:
2014-12-12 13:04:19
阅读次数:
137
原文:Linux下C语言多线程,网络通信简单聊天程序功能描述:程序应用多线程技术,可是实现1对N进行网络通信聊天。但至今没想出合适的退出机制,除了用Ctr+C。出于演示目的,这里采用UNIX域协议(文件系统套接字),程序分为客户端和服务端。应用select函数来实现异步的读写操作。 先说一下服务端:...
分类:
编程语言 时间:
2014-12-12 08:53:04
阅读次数:
301