TCP/IP协议
luck_horse
这个作者很懒,什么都没留下…
展开
-
inet_aton和inet_network和inet_addr三者比较-《别怕Linux编程》之五
http://roclinux.cn/?p=1160知识背景:210.25.132.181属于IP地址的ASCII表示法,也就是字符串形式。英语叫做IPv4 numbers-and-dots notation。如果把210.25.132.181转换为整数形式,是3524887733,这个就是整数形式的IP地址。英语叫做binary data。(其实binary是二进制的意思)问题所...转载 2019-07-10 20:18:20 · 1009 阅读 · 0 评论 -
linux网络编程二十:socket选项:SO_RCVTIMEO和SO_SNDTIMEO
转载 2019-07-10 20:21:18 · 1282 阅读 · 0 评论 -
sockaddr和sockaddr_in详解
转载 2019-07-10 20:24:15 · 1483 阅读 · 0 评论 -
linux中read,write和recv,send的区别(转)
1、recv和send函数提供了和read和write差不多的功能。但是他们提供了第四个参数来控制读写操作.int recv(int sockfd,void *buf,int len,int flags)int send(int sockfd,void *buf,int len,int flags)前面的三个参数和read,write相同,第四个参数能够是0或是以下的组合:...转载 2019-07-10 20:25:57 · 794 阅读 · 0 评论 -
浅谈多进程多线程的选择(转)
关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”,这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有这么简单了,选的不好,会让你深受其害。经常在网络上看到有的XDJM问“多进程好还是多线程好?”、“Linux下用多进程还是多线程?”等等期望一劳永逸的问题,我只能说:没有最好,只有更好。根据实际情况来判断,哪个更加合适就...转载 2019-07-11 16:03:13 · 168 阅读 · 0 评论 -
非阻塞connect的代码示例
int conn_nonb(int sockfd, const struct sockaddr_in *saptr, socklen_t salen, int nsec){ int flags, n, error, code; socklen_t len; fd_set wset; struct timeval tval; flags ...转载 2019-07-11 16:06:11 · 173 阅读 · 0 评论 -
TCP网络编程中connect()、listen()和accept()三者之间的关系
https://blog.csdn.net/tennysonsky/article/details/45621341基于 TCP 的网络编程开发分为服务器端和客户端两部分,常见的核心步骤和流程如下:连接详情:connect()函数对于客户端的 connect() 函数,该函数的功能为客户端主动连接服务器,建立连接是通过三次握手,而这个连接的过程是由内核完成,不是...转载 2019-07-11 16:11:58 · 202 阅读 · 0 评论 -
recv函数返回值总结
函数原型:int recv( SOCKET s, char *buf, int len, int flags)功能:不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。参数一:指定接收端套接字描述符;参数二:指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据;参数三:指明buf的长度;参数四 :一般置为0。阻塞与非阻塞recv返回值没有区分,都...转载 2019-07-11 16:25:26 · 1360 阅读 · 0 评论 -
拔掉网线时Socket的检查方法
最近在做有关于TCP采集程序时,发现在客户端与服务器通过TCP socket进行通信的时候,如果客户端应用程序正常或者异常退出时,服务器都可以在对应的socket通信连接上获得响应(如返回0,或者抛出异常)。但是,如果在客户端的网线被拔掉的情况下,那么默认情况下,服务器端需要很长的时间才会知道客户端的网线断掉。对于许多服务器应用程序来说,这么长的反应时间是不能允许的,在这种情况下通常使用“心跳机...转载 2019-07-11 16:48:55 · 1702 阅读 · 0 评论