socket
David_xtd
这个作者很懒,什么都没留下…
展开
-
socket编程之bind()函数
名称bind()把名字和套接字相关联使用格式#include sys/types.h>#include sys/socket.h>int bind(int sockfd,const struct sockaddr *addr,socklen_t *addrlen);功能描述当用socket()函数创建套接字以后,套接字在名称空间(网络地址族)中存在,但没有任翻译 2011-12-21 11:23:54 · 53073 阅读 · 1 评论 -
非阻塞式IO
问题:解决办法:原创 2014-06-09 17:13:31 · 1750 阅读 · 0 评论 -
用nmap获取ip和mac地址
在windows下有lansee和Advanced IP scanner来查找IP和对应的MAC地址,在ubuntu中,好用的工具似乎不多,nmap命令行工具倒是提供了强大的功能。可以使用命令来获取ip和mac地址:sudo nmap -sP -PI -PT -oN 192.168.1.0/24 > ipscan.txt-sP 通过ping方式发现扫描网络存活主机;原创 2012-06-11 15:45:05 · 17002 阅读 · 3 评论 -
如何打印hostent结构体中的所有数据
问题:hostent是gethostbyname()和gethostbyaddr()都会涉及到的一个结构体。代码如下:struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; };gethostby原创 2012-09-03 11:07:22 · 4633 阅读 · 0 评论 -
以太网PHY和MAC接口MII、RMII、SMII、GMII区分
以太网媒体接口有:MII、RMII、SMII、GMII。所有的这些接口都从MII而来,MII是(Medium Independent Interface)的意思,是指不用考虑媒体是铜轴、光纤、电缆等,因为这些媒体处理的相关工作都有PHY或者叫做MAC的芯片完成。MII支持10兆和100兆的操作,一个接口由14根线组成,它的支持还是比较灵活的,但是有一个缺点是因为它一个端口用的信号线太多,如转载 2012-06-12 13:00:55 · 6114 阅读 · 0 评论 -
warning: implicit declaration of function ‘inet_ntop’解决办法
问题:在打印hostent的IP地址时,用到了inet_ntop(),在编译时显示这样的警告提示:dingq@wd-u1110:~/hwsvn/2sw/1prj_linux/pdu/src/branches/pdu-isocket/isocket$ make clean;makerm -rf *.o tcpclient tcpservergcc -g3 -Wall -o0 -std原创 2012-09-05 16:04:38 · 15921 阅读 · 2 评论 -
网关的相关知识
网关(英语:Gateway;台湾、港澳作闸道器),区别于路由器【说明:由于历史的原因,许多有关TCP/IP的文献曾经把网络层使用的路由器称为网关,在今天很多局域网采用都是路由来接入网络,因此现在通常指的网关就是路由器的IP!】(英语:Router),经常在家庭中或者小型企业网络中使用,用于连接局域网和Internet。 网关也经常指把一种协议转成另一种协议的设备,比如语音网关。网关顾名思义转载 2012-03-31 09:47:59 · 1391 阅读 · 0 评论 -
Linux网络编程之connect函数分析
在一个 CLIENT/SERVER模型的网络应用中,客户端的调用序列大致如下: socket -> connect -> recv/send -> close 其中socket没有什么可疑问的,主要是创建一个套接字用于与服务端交换数据,并且通常它会迅速返回,此时并没有数据通过网卡发送出去,而紧随其后的connect函数则会产生网络数据的发送,TCP的三次握手也正转载 2013-02-05 11:09:02 · 1164 阅读 · 0 评论 -
基本TCP socket编程一
备注:该文简洁、形象地描述了socket常用函数的功能。有助于提纲挈领地掌握这些函数。概述socket() --得到文件描述符,架设好一部电话(服务器/客户端用,在本地建立一个套接字,作为一条通讯线路的一个端点)!bind() --有事请拨本电话(电话号码:IP,分机:Port)(主要用于server端,将文件描述符和地址信息主要是端口进行绑定)connect(转载 2011-12-21 16:56:08 · 1638 阅读 · 0 评论 -
socket编程之accept()函数
名称accept()接收一个套接字中已建立的连接使用格式#include sys/types.h>#include sys/socket.h>int accept(int sockfd,struct sockaddr *addr,socklen_t *addrlen);功能参数描述accept()系统调用主要用在基于连接的套接字类型,比如SOCK_STREAM和翻译 2011-12-20 19:13:24 · 58864 阅读 · 4 评论 -
socket编程之select()函数
Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞转载 2012-03-13 14:57:07 · 1145 阅读 · 0 评论 -
HTTP协议中的长连接与短连接
长连接与短连接长连接:client方与server方先建立连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在。此种方式常用于P2P通信。短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此方式常用于一点对多点通讯。C/S通信。长连接与短连接的操作过程短连接的操作步骤是:建立连转载 2014-06-17 09:07:35 · 1527 阅读 · 0 评论