随笔分类 -  网络编程

摘要:原文链接:http://blog.csdn.net/largetalk/article/details/7939080看tornado源码多进程(process.py)那段,发现他的多进程模型和一般常见的模型有点不一样,多见的是主进程bind-> listen -> accept, 将accept返... 阅读全文
posted @ 2014-09-13 13:00 johnny_HITWH 阅读(992) 评论(0) 推荐(0)
摘要:socket实现:http://blog.csdn.net/zhangskd(含有tcp/ip专栏)http://blog.chinaunix.net/uid-20528014-id-90573.html以及其他所有文章http://blog.chinaunix.net/uid-17150-id-2... 阅读全文
posted @ 2014-08-20 19:05 johnny_HITWH 阅读(134) 评论(0) 推荐(0)
摘要:慢系统调用(slow system call):此术语适用于那些可能永远阻塞的系统调用。永远阻塞的系统调用是指调用有可能永远无法返回,多数网络支持函数都属于这一类。如:若没有客户连接到服务器上,那么服务器的accept调用就没有返回的保证。EINTR错误的产生:当阻塞于某个慢系统调用的一个进程捕获某... 阅读全文
posted @ 2014-07-26 21:01 johnny_HITWH 阅读(203) 评论(0) 推荐(0)
摘要:TCP发送的包有序号,对方收到包后要给一个反馈,如果超过一定时间还没收到反馈就自动执行超时重发,因此TCP最大的优点是可靠。一般网页(http)、邮件(SMTP)、远程连接(Telnet)、文件(FTP)传送就用TCPUDP是面向消息的协议,通信时不需要建立连接,数据的传输自然是不可靠的,一般用于多... 阅读全文
posted @ 2014-07-26 20:05 johnny_HITWH 阅读(758) 评论(0) 推荐(0)
摘要:最近在做一个项目,在这之前,做了个验证程序.发现客户端连续发来1000个1024字节的包,服务器端出现了丢包现象.纠其原因,是服务端在还未完全处理掉数据,客户端已经数据发送完毕且关闭了.我用过sleep(10),暂时解决这个问题,但是这不是根本解决办法,如果数据量大而多,网络情况不太好的话,还是有可... 阅读全文
posted @ 2014-07-17 19:14 johnny_HITWH 阅读(18988) 评论(0) 推荐(0)
摘要:ICMP:http://blog.csdn.net/tigerjibo/article/details/7356936ARP:http://blog.csdn.net/tigerjibo/article/details/7351992IP分片:http://www.vants.org/?post=1... 阅读全文
posted @ 2014-07-17 15:52 johnny_HITWH 阅读(322) 评论(0) 推荐(0)
摘要:SIP协议 阅读全文
posted @ 2014-07-16 10:09 johnny_HITWH 阅读(136) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/zhang_shuai_2011/article/details/7675797select,poll,epoll都是IO多路复用的机制。所谓I/O多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程... 阅读全文
posted @ 2014-07-03 21:50 johnny_HITWH 阅读(471) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/wolflion/archive/2011/07/13/2539137.htmlselect()函数主要是建立在fd_set类型的基础上的。fd_set(它比较重要所以先介绍一下)是一组文件描述字(fd)的集合,它用一位来表示一个fd(下面会仔细介绍),... 阅读全文
posted @ 2014-06-21 14:40 johnny_HITWH 阅读(678) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/zhang_shuai_2011/article/details/7675797select,poll,epoll都是IO多路复用的机制。所谓I/O多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程... 阅读全文
posted @ 2014-06-20 11:49 johnny_HITWH 阅读(454) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/tianmohust/article/details/8691644在Linux中使用非阻塞的socket的情形下。(一)发送时 当客户通过Socket提供的send函数发送大的数据包时,就可能返回一个EAGAIN的错误。该错误产生的原因是由于send 函... 阅读全文
posted @ 2014-06-20 00:52 johnny_HITWH 阅读(1208) 评论(0) 推荐(0)
摘要:首先简单介绍一下TCP三次握手在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也... 阅读全文
posted @ 2014-06-08 00:57 johnny_HITWH 阅读(162) 评论(0) 推荐(0)
摘要:TCP/IP协议是Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议。单从TCP/IP协议这个名称看,好多人误以为它是一个协议。其实TCP/IP并不是一个协议,而是一个协议族,这个族里面括很多协议,其中比较主要的... 阅读全文
posted @ 2014-06-08 00:47 johnny_HITWH 阅读(308) 评论(0) 推荐(0)
摘要:http://wenku.baidu.com/view/8277efc10c22590102029d7c.htmlhttp://wenku.baidu.com/view/ad9ce1d176a20029bd642d24.htmlhttp://wenku.baidu.com/link?url=ogKZ... 阅读全文
posted @ 2014-06-07 23:26 johnny_HITWH 阅读(166) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/ShadowLoki/p/3712048.html 阅读全文
posted @ 2014-05-08 00:40 johnny_HITWH 阅读(148) 评论(0) 推荐(0)
摘要:使用INADDR_ANY的时候,往往针对多网卡情况,采用tcp连接方式,需要选择使用哪一个网卡发送,自己猜想应该是使用三次握手机制,如何判断目标地址不可达,应该使用的是超时机制,即握手超时则不可到达。在这里温习以下三次握手和四次握手,同时学习以下超时机制。TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机)ACK(acknowledgement确认)PSH(push传送)FIN(finish结束)RST(reset重置)URG(urgent紧急)Sequencenumber(顺序号码).. 阅读全文
posted @ 2014-01-30 18:42 johnny_HITWH 阅读(1849) 评论(0) 推荐(0)