DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 542 评论 :: 1617万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  网络编程

上一页 1 ··· 3 4 5 6 7 8 9 下一页

摘要:1.TCP保活的必要性1)很多防火墙等对于空闲socket自动关闭2)对于非正常断开,服务器并不能检测到.为了回收资源,必须提供一种检测机制.2.导致TCP断连的因素如果网络正常,socket也通过close操作来进行优雅的关闭,那么一切完美.可是有很多情况,比如网线故障,客户端一侧突然断电或者崩溃... 阅读全文
posted @ 2014-06-23 15:30 DoubleLi 阅读(21665) 评论(3) 推荐(3) 编辑

摘要:#include #include #include #include #include #include #include #define BUFFER 800#define SERV_PORT 3333int main(){ int sockfd,n; socklen_t len; ... 阅读全文
posted @ 2014-06-23 14:29 DoubleLi 阅读(497) 评论(0) 推荐(0) 编辑

摘要:一.Select 函数详细介绍 Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、 accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时... 阅读全文
posted @ 2014-06-23 14:23 DoubleLi 阅读(610) 评论(0) 推荐(0) 编辑

摘要:// all.h// 2005/06/20,a.m. wenxy#ifndef _ALL_H#define _ALL_H#include #include #include #include #include #include #include #include #include // ------... 阅读全文
posted @ 2014-06-23 13:49 DoubleLi 阅读(3528) 评论(0) 推荐(0) 编辑

摘要:1。通过已经连接的socket文件获取:[cpp]view plaincopyintgetpeermac(intsockfd,char*buf){intret=0;structarpreqarpreq;structsockaddr_indstadd_in;socklen_tlen=sizeof(st... 阅读全文
posted @ 2014-06-23 13:48 DoubleLi 阅读(13381) 评论(1) 推荐(0) 编辑

摘要:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int getPeerMacb... 阅读全文
posted @ 2014-06-23 10:34 DoubleLi 阅读(7134) 评论(0) 推荐(0) 编辑

摘要:一:什么是st_asio_wrapper它是一个c/s网络编程框架,基于对boost.asio的包装(最低在boost-1.49.0上调试过),目的是快速的构建一个c/s系统;二:st_asio_wrapper的特点效率高、跨平台、完全异步,当然这是从boost.asio继承而来;自动重连,数据透明... 阅读全文
posted @ 2014-06-11 10:24 DoubleLi 阅读(692) 评论(0) 推荐(0) 编辑

摘要:过年了,人都走光了,结果一个人活也干不了。所以我便想找点东西玩玩。今天想试一下 libev 写点代码。原本在我那台 ubuntu 机器上一点问题都没有,可在 windows 机上用 mingw 编译出来的库一个 backend 都没有,基本不可用。然后网上就有同学推荐我试一下 libuv 。libu... 阅读全文
posted @ 2014-06-10 14:39 DoubleLi 阅读(898) 评论(0) 推荐(0) 编辑

摘要:环境限定:TCP/IP下的socket网络传输;C/C++开发语言,32/64位机。目前有两种方式对数据进行传输:1)字符流形式,即将数据用字符串表示;2)结构型方式,即将数据按类型直接传输。1)的方式保证所有的数据都是清晰的字符串明文,没有平台不一致问题,但传输的数据不定长,复合数据类型(如str... 阅读全文
posted @ 2014-06-09 23:10 DoubleLi 阅读(3945) 评论(0) 推荐(0) 编辑

摘要:引言:在进行网络通信时是否需要进行字节序转换?相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换。原因如下:网络协议规定接收到得第一个字节是高字节,存放到低地址,所以发送时会首先去低地址取数据的高字节。小端模式的多字节数据在存放时,低地址存放的是低字... 阅读全文
posted @ 2014-06-09 23:04 DoubleLi 阅读(2734) 评论(0) 推荐(0) 编辑

摘要:最近在项目开发过程中,需要在采用JAVA作为语言的服务器与采用C++作为语言的服务器间进行通信,这就涉及到这两种语言间数据类型的转换以及网络字节序与主机字节序的区别。该文主要说说网络字节序和主机字节序的区别以及Little endian与Big endian的概念。其实编程的事就比较简单了 我也懒得... 阅读全文
posted @ 2014-06-08 23:36 DoubleLi 阅读(5682) 评论(0) 推荐(0) 编辑

摘要:在网络拥塞控制领域,我们知道有一个非常有名的算法叫做Nagle算法(Nagle algorithm),这是使用它的发明人John Nagle的名字来命名的,John Nagle在1984年首次用这个算法来尝试解决福特汽车公司的网络拥塞问题(RFC 896),该问题的具体描述是:如果我们的应用程序一次... 阅读全文
posted @ 2014-06-06 18:00 DoubleLi 阅读(2807) 评论(0) 推荐(0) 编辑

摘要:在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这时就可能用到htons(), ntohl(), ntohs(),htons()这4个网络字节顺序与本地字节顺序之间的转换函数:htonl()--"Host to Network Long int" 32Bytesntohl... 阅读全文
posted @ 2014-06-06 17:17 DoubleLi 阅读(1522) 评论(0) 推荐(1) 编辑

摘要:【Node.js 自己封装的库 http_parse, libuv】Node.js介绍:一个网络框架,更多:http://www.oschina.net/p/nodejs官网:http://nodejs.org/代码库地址:https://github.com/joyenthttp_parser:介... 阅读全文
posted @ 2014-06-04 16:58 DoubleLi 阅读(2379) 评论(0) 推荐(0) 编辑

摘要:(1)ACE庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。http://www.cs.wustl.edu/~schmidt/ACE.html(2)AsioAsio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。开源、免费,支持跨平台。http:... 阅读全文
posted @ 2014-06-04 14:13 DoubleLi 阅读(5055) 评论(0) 推荐(1) 编辑

摘要:上一篇文章我详细介绍了如何开发一款高性能的TCP服务器的网络传输层.本章我将谈谈如何开发一个高性能的UDP服务器的网络层.UDP服务器的网络层开 发相对与TCP服务器来说要容易和简单的多,UDP服务器的大致流程为创建一个socket然后将其绑定到完成端口上并投递一定数量的recv操作.当有 数据到来... 阅读全文
posted @ 2014-05-26 22:23 DoubleLi 阅读(438) 评论(0) 推荐(0) 编辑

摘要:对于开发一款高性能服务器程序,广大服务器开发人员在一直为之奋斗和努力.其中一个影响服务器的重要瓶颈就是服务器的网络处理模块.如果一款服务器程序不能及时的处理用户的数据.则服务器的上层业务逻辑再高效也是徒劳.所以一个服务器程序的网络处理能力直接影响到整个服务器的性能, 本文主要介绍在windows平台... 阅读全文
posted @ 2014-05-26 22:22 DoubleLi 阅读(578) 评论(0) 推荐(0) 编辑

摘要:开门见山,直接就事论事。假如有这么一个基于IOCP模型的Server,这个Server提供的所有服务中有这么一种服务……文件下载,我们再假设Server端存有一个20G的文件,客户端这时发送一个请求到服务端来,客户端要求下载这个20G的文件,由此可能引发一系列让人头疼的问题(不谈TransmitFi... 阅读全文
posted @ 2014-05-26 00:07 DoubleLi 阅读(4518) 评论(1) 推荐(0) 编辑

摘要:1>下载CURL源代码curl-7.26.0.zip2>用VC2008/2005打开工程curl-7.26.0\lib\libcurl.vcproj,转换下工程并构建,可以直接编译成功!3>新建个控制台工程测试下刚才编译的静态库libcurl.lib,可以在libcurl\curl-7.26.0\d... 阅读全文
posted @ 2014-05-05 10:37 DoubleLi 阅读(711) 评论(0) 推荐(0) 编辑

摘要:目录索引:一、LibCurl基本编程框架二、一些基本的函数三、curl_easy_setopt函数部分选项介绍四、curl_easy_perform 函数说明(error 状态码)五、libcurl使用的HTTP消息头六、获取http应答头信息七、多线程问题八、什么时候libcurl无法正常工作九、... 阅读全文
posted @ 2014-05-05 10:36 DoubleLi 阅读(2814) 评论(1) 推荐(2) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 下一页
点击右上角即可分享
微信分享提示