码迷,mamicode.com
首页 >  
搜索关键字:套接字    ( 3700个结果
Socket编程实践(10) --select的限制与poll的使用
select的限制用select实现的并发服务器,能达到的并发数一般受两方面限制:1)一个进程能打开的最大文件描述符限制。这可以通过调整内核参数。可以通过ulimit -n(number)来调整或者使用setrlimit函数设置,但一个系统所能打开的最大数也是有限的,跟内存大小有关,可以通过cat /proc/sys/fs/file-max 查看/**示例: getrlimit/setrlimit...
分类:其他好文   时间:2015-03-14 21:50:34    阅读次数:212
Socket编程实践(14) --UNIX域协议
UNIX域协议   UNIX域套接字与TCP相比, 在同一台主机上, UNIX域套接字更有效率, 几乎是TCP的两倍(由于UNIX域套接字不需要经过网络协议栈,不需要打包/拆包,计算校验和,维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程, 而且UNIX域协议机制本质上就是可靠的通讯, 而网络协议是为不可靠的通讯设计的).   UNIX域套接字可以在同一台主机上各进程之间传递文件描述符...
分类:其他好文   时间:2015-03-14 21:49:06    阅读次数:162
Socket编程实践(9) --套接字IO超时设置方法
引:超时设置3种方案1. alarm超时设置方法//代码实现: 这种方式较少用 void sigHandlerForSigAlrm(int signo) { return ; } signal(SIGALRM, sigHandlerForSigAlrm); alarm(5); int ret = read(sockfd, buf, sizeof(buf)); if (ret == -1 ...
分类:其他好文   时间:2015-03-14 20:05:16    阅读次数:184
Socket编程实践(8) --Select-I/O复用
五种I/O模型介绍(1)阻塞I/O[默认]   当上层应用App调用recv系统调用时,如果对等方没有发送数据(Linux内核缓冲区中没有数据),上层应用Application1将阻塞;当对等方发送了数据,Linux内核recv端缓冲区数据到达,内核会把数据copy给用户空间。然后上层应用App解除阻塞,执行下一步操作。 (2)非阻塞I/O[少用]   上层应用App将套接字设置成非阻塞模式, 然...
分类:其他好文   时间:2015-03-14 17:05:48    阅读次数:220
Client/Sever模式的通信——Java
基于UDP模式的C/S通信 这是Client端的: import java.net.*; import java.io.*; public class UDPClient{ public static void main(String args[]){ DatagramSocket socket = null; DatagramPacket packet = null; Inet...
分类:编程语言   时间:2015-03-14 17:02:13    阅读次数:149
Boost.Asio基础(二)
套接字 SocketsBoost.Asio有三种类型的Socket类:ip::tcp,ip::udp和ip::icmp,三者都是可扩展的。你可以创建自己的Socket类,虽然做起来稍微复杂了点。假如你真的要这么做,可以参考boost/asio/ip/tcp.hpp,boost/asio/ip/udp.hpp和boost/asio/ip/icmp.hpp。它们都是很小的类,在内部使用typedef关键...
分类:其他好文   时间:2015-03-14 17:00:22    阅读次数:132
Socket编程实践(3) --Socket API
socket函数#include #include int socket(int domain, int type, int protocol);创建一个套接字用于通信参数:   domain:指定通信协议族(protocol family),常用取值AF_INET(IPv4)   type:指定socket类型, 流式套接字SOCK_STREAM,数据报套接字SOCK_DGRAM,原始套接字...
分类:Windows程序   时间:2015-03-14 13:56:46    阅读次数:238
Socket编程实践(2) --Socket编程导引
什么是Socket?    Socket可以看成是用户进程与内核网络协议栈的接口(编程接口, 如下图所示), 其不仅可以用于本机进程间通信,可以用于网络上不同主机的进程间通信, 甚至还可以用于异构系统之间的通信。 IPv4套接口地址结构    IPv4套接口地址结构通常也称为“网际套接字地址结构”,它以“sockaddr_in”命名,定义在头文件中//TCP/IP地址结构 struct socka...
分类:其他好文   时间:2015-03-14 12:28:25    阅读次数:171
对TCP重传的进一步认识
http://blog.sina.com.cn/s/blog_4d276ac901011ee7.html——TCM项目所得一、看图说话1、基于套接字的TCP服务器/客户端程序流程2、TCP三次握手建立连接3、TCP四次交互断开连接4、TCP状态转移图这张图看不懂的话解释在计算机网络第四版P274。解...
分类:其他好文   时间:2015-03-13 18:37:18    阅读次数:193
TCP/IP 网络编程(二)
用户数据包协议(User Datagram Protocal, UDP),UDP服务器端和客户端均只需要 1 个套接字。在TCP中向 10 个客户端提供服务,则除了守门的服务器套接字之外,还需要 10 个服务器端套接字。UDP不保存连接状态,因此每次传输数据都要添加目标地址信息。#include ssize_t sendto(int sock, void *buf, si...
分类:其他好文   时间:2015-03-13 16:29:28    阅读次数:170
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!