网络通信、Socket、HTTPP
关中娃
尽可能使用图和代码---避免大量文字说明---it is my style
展开
-
对于HTTP保持网络连接的解读
一、TCP短连接与长连接的区别(1)短连接:一般只会在client/server间传递一次读写操作。此方式常用于一点对多点通讯。C/S通信。HTTP就是使用了类似的短连接。目的:减少服务器的压力;减少资源的浪费。(2)长连接:Client与server完成一次读写之后,它们之间的连接并不会主动关闭,后续的读写操作会继续使用这个连接。此种方式常用于P2P通信。例如:数据库的连接用长连接,关于原创 2013-08-29 18:05:44 · 2511 阅读 · 0 评论 -
非阻塞socket之send的使用---异步send
(1)错误现象:在发送小量数据的时候没有问题,一次发送完毕。但是当发送1008046个字节的时候,由于数据较大,系统一次约发送46336个字符,但是时而发送成功,时而中间断掉。现象是不稳定,并且返回Resource temporarily unavailable的errno,资源暂时不可用,显然这是由于没有约束没有限制的把数据抛给系统。显然是不对的。需要发送的条件成立的时候才可以接着发送。后来原创 2013-09-13 18:13:24 · 15986 阅读 · 1 评论 -
http digest认证过程分析及例子
验证过程: 步骤一、客户端向服务器申请数据 ****************************Request******************************GET /auth HTTP/1.1(\r\n)Accept: */*(\r\n)Host: 192.168.1.15(\r\n)Co原创 2013-09-14 11:34:33 · 3827 阅读 · 0 评论 -
socket bind在客户端和服务器端使用的区别
1、client bind(1)bind端口由进程选择一个端口去连服务器,(如果默认情况下,调用bind函数时,内核指定的端口是同一个,那么调用多个调用了bind()的client程序,会出现端口被占用的错误)注意这里的端口是客户端的端口。如果不分配就表示交给内核去选择一个可用端口。(2)bind IP地址相当于为发送出去的IP数据报分配了源IP地址,但交给进程分配IP地址的时候(原创 2013-10-15 18:18:49 · 2671 阅读 · 0 评论 -
大小端的问题的话语场景:代码移植和网络通信
只知道大小端是什么意思,而不知道大小端的应用场景,显然对这个东东是不可能有深刻理解的。(1)为什么出现这个东西?答:在各种计算机体系结构中,对于字节、字等的存储机制有所不同。(2)何谓大端,何谓小端?答:这个有点绕。简单的:if(0x12345678 & 0xFF == 0x12) Byte Endian,即高位的数据放在低位的地址处。小端反之(3)不同计算机体原创 2013-09-17 16:36:06 · 1651 阅读 · 0 评论