关闭

VxWorks网络系统(3) – bind分配网络地址给指定的套接字函数/listen允许连接套接字函数

1154人阅读 评论(0) 收藏 举报
 
VxWorks网络系统(3) – bind分配网络地址给指定的套接字函数/listen允许连接套接字函数
 
// Fill in the address descriptor
struct sockaddr_in addr;                    // 服务器的地址
bzero((char*)&addr, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(Port);                // 默认端口
addr.sin_addr.s_addr = inet_addr(IpAddress);
 
// Bind the socket to the address
bind(m_socket, (struct sockaddr*)&addr, sizeof(addr));
 
// Listen for a client to connect (max n simultaneously)
listen(m_socket, n);
 
在使用TCP协议时,一般服务端任务先使用socket调用得到一个描述符,然后使用bind调用将一个名字与socket描述符连接起来,对于Internet域就是将Internet地址绑定到socket.
之后,服务端使用listen调用指出最大的被拒绝连接次数。然后就可以使用accept调用等待客户端发起连接。
bind函数用于给套接字分配名字。该函数分配一个网络地址(也称为“名字”)给指定的套接字,以便其他处理可以连接它或给它发送数据。当使用socket()创建一个套接字时,它属于一个地址族但并没有分配名字。
listen函数允许连接套接字,并指定最大的被拒绝连接次数。当用listen()允许连接后,通过accept()函数接受连接。
一般服务端可能在accept返回后创建一个新的任务进行与客户的通信,或者直接创建一个新的任务来调用accept,原来的任务则继续等待另一个连接。
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:26269次
    • 积分:420
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类