摘要: 在linux环境下,结构体struct sockaddr在/usr/include/linux/socket.h中定义,具体如下:typedef unsigned short sa_family_t;struct sockaddr { sa_family_t sa_family; /* address family, AF_xxx */ char sa_data[14]; /* 14 bytes of protocol address */在linux环境下,结构体struct sockaddr_in在/usr/include/netinet/in.h中定义,具体如下:/* Structure 阅读全文
posted @ 2012-01-05 19:07 balaamwe 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。什么是Socket Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网 阅读全文
posted @ 2012-01-05 18:58 balaamwe 阅读(1252) 评论(0) 推荐(0) 编辑
摘要: netinet/in.h - Internet address family netinet / in.h - 互联网地址族http://pubs.opengroup.org/onlinepubs/000095399/basedefs/netinet/in.h.html 阅读全文
posted @ 2012-01-05 16:16 balaamwe 阅读(2176) 评论(0) 推荐(0) 编辑
摘要: Connection reset by peer的常见原因:1)服务器的并发连接数超过了其承载量,服务器会将其中一些连接关闭;如果知道实际连接服务器的并发客户数没有超过服务器的承载量,则有可能是中了病毒或者木马,引起网络流量异常。可以使用netstat -an查看网络连接情况。2)客户关掉了浏览器,而服务器还在给客户端发送数据;3)浏览器端按了Stop;这两种情况一般不会影响服务器。但是如果对异常信息没有特别处理,有可能在服务器的日志文件中,重复出现该异常,造成服务器日志文件过大,影响服务器的运行。可以对引起异常的部分,使用try...catch捕获该异常,然后不输出或者只输出一句提示信息,避 阅读全文
posted @ 2012-01-05 12:14 balaamwe 阅读(4746) 评论(0) 推荐(0) 编辑