使用C++接口实现对Linux Socket的封装,简化Socket API使用的复杂度。
分类:
系统相关 时间:
2014-09-03 11:09:16
阅读次数:
291
1. 实际问题
初步查看发现,无法对外新建TCP连接时,线上服务器存在大量处于TIME_WAIT状态的TCP连接(最多的一次为单机10w+,其中引起报警的那个模块产生的TIME_WAIT约2w),导致其无法跟下游模块建立新TCP连接。
TIME_WAIT涉及到TCP释放连接过程中的状态迁移,也涉及到具体的socket api对TCP状态的影响,下面开始逐步介绍这...
分类:
其他好文 时间:
2014-09-01 21:13:53
阅读次数:
9542
基于TCP/IP的编程格外重要。从应用上来说,现在直接利用C层次Socket API进行TCP/IP编程的人确实越来越少了,各种现成的框架(如ACE、Java、.NET FCL)和控件(如IP*Works)大大简化了TCP/IP编程的难度。高层的框架和控件总结了TCP/IP的主要使用模式,并且进行了...
分类:
其他好文 时间:
2014-08-29 12:52:17
阅读次数:
252
send函数intsend(SOCKETs,constcharFAR*buf,intlen,intflags);不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。该函数的第一个参数...
exec函数族fork/vfork/clone为什么vfork必须调用_exitclose函数只能使socket引用计数减一,计数为0的时候才会发送FIN,思考多进程共享同一socket的情况,shutdown(howto,SHUT_RD||SHUT_RDWR||SHUT_WR),close同时关闭...
本来是一次计算机网络的实验,但是还没有完全写好,DNS的响应请求报文的冗余信息太多了,不只有IP地址。所以这次的实验主要就是解析DNS报文。同时也需要正确的填充请求报文。如果代码有什么bug,欢迎指正啊。代码排版有点乱。。。本文有以下内容
DNS报文的填充和解析 利用socket API传输信息.....
分类:
系统相关 时间:
2014-06-13 15:17:45
阅读次数:
500
API
HOOK,就是截获API调用的技术,在程序对一个API调用之前先执行你的函数,然后根据你的需要可以执行缺省的API调用或者进行其他处理,假设如果想截获一个进程对网络的访问,一般是几个socket
API : recv,recvfrom, send, sendto等等,当然你可以用网络抓包工具...