网络编程
李逝水
这个作者很懒,什么都没留下…
展开
-
代理服务器
#include#include#include#include#pragma comment (lib,"ws2_32.lib")char *buffer=(char*)malloc(1024*1024*6);;int len1=0;/*接收目标服务器返回的信息*/void receive(SOCKET * args){ static char ch[10原创 2013-03-15 17:11:11 · 577 阅读 · 0 评论 -
如何创建makefile
目的: 基本掌握了 make的用法,能在Linux系统上编程。环境: Linux系统,或者有一台Linux服务器,通过终端连接。一句话:有Linux编译环境。准备: 准备三个文件:file1.c, file2.c, file2.h file1.c: #include转载 2013-12-24 17:30:38 · 1404 阅读 · 0 评论 -
pthread_detach 详解
pthread_detach 创建一个线程默认的状态是joinable, 如果一个线程结束运行但没有被join,则它的状态类似于进程中的Zombie Process,即还有一部分资源没有被回收(退出状态码),所以创建线程者应该调用pthread_join来等待线程运行结束,并可得到线程的退出代码,回收其资源(类似于wait,waitpid) 但是调用pthread_join转载 2014-01-05 15:05:28 · 861 阅读 · 1 评论 -
pthread_create后没有detach导致内存持续增长
解决了一个隐蔽的内存泄漏——pthread_create后没有detach导致内存持续增长昨天解决了一个隐蔽的内存泄漏问题,原因是pthread_create后的僵死线程没有释放导致的内存持续增长。现象是这样的:短时间内程序运行正常,但跑了12小时左右,用top查看其内存占用居然高达2G,于是马上意识到有内存泄漏。最先想到的是malloc/free、new/delete转载 2014-01-05 13:35:22 · 848 阅读 · 0 评论 -
TCP流量控制和拥塞控制 .
TCP/ip的流量控制1. 利用滑动窗口实现流量控制 如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。 利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。 设A向B发送数据。在连接建立时,B告诉了A:“我的接收窗口是 rwnd = 400 ”(这里的 rwn转载 2013-12-19 17:05:30 · 588 阅读 · 0 评论 -
TCP快速重传与快速恢复原理分析
TCP快速重传与快速恢复原理分析分类: Linux TCP/IP 2012-02-03 18:07 2913人阅读 评论(2)收藏 举报tcp算法网络lessstructurenetwork超时重传是TCP协议保证数据可靠性的一个重要机制,其原理是在发送一个数据以后就开启一个计时器,在一定时间内如果没有得到发送数据报的ACK报文,那么就重新发转载 2013-12-19 16:54:04 · 536 阅读 · 0 评论 -
fcntl函数说明
fcntl函数说明2011-07-25 23:43 4410人阅读 评论(0)收藏 举报终端struct测试filelinuxcmd (1)fcntl函数说明前面的这5个基本函数实现了文件的打开、读写等基本操作,这一节将讨论的是,在文 件已经共享的情况下如何操作,也就是当多个用户共同使用、操作一个文件的情况,这时,Linux 通常采用转载 2013-12-18 21:05:51 · 510 阅读 · 0 评论 -
套接字的属性 .(套接字默认为阻塞的)
以前我总是将是否处于阻塞模式和是否可以进行异步IO操作混淆起来。以前,我认为可以进行异步IO操作的套接字必然不是处于阻塞模式;处于阻塞模式的套接字无法进行异步IO操作。最新比较正规地学习win socket开发,终于分清这两个概念。 其实,是否处于阻塞模式、是否可以进行异步IO操作是一个套接字上两个不相关的属性。 首先,所有的winsock函数可以分成阻塞函数和非阻塞函数。转载 2013-12-18 21:10:11 · 1414 阅读 · 0 评论 -
socket connect 阻塞与非阻塞 .
在C/S模式中,有时候我们需要连接服务器去下载一些更新,所以在客户端启动时,客户端自动连接服务器下载更新,如果客户端与服务器之间网络连接不通,则客户端不用一直等待连接,而是在一定时间内(可以设为若干秒)自动判定网络连接出错,从而不再请求更新~~ socket函数生成socket结构体时,默认生成的socket是阻塞的~如果我们使用connect去连接服务器,而这时网络出现故障,则转载 2013-12-18 22:08:29 · 1256 阅读 · 0 评论 -
WEB客户与同时链接
client.cpp 文件#include "unpthread.h"#define MAXFILES 20#define SERV "80"struct file{ char *f_name ; char *f_host ; int f_fd ; int f_flags ; pthread_t f_tid ; }file[MAXFILES];#define F原创 2013-12-26 13:17:54 · 600 阅读 · 0 评论