linux下socket编程小总结

借鉴总结子http://blog.csdn.net/hguisu/article/details/7445768
socket编程主要用于网络之间进行进程通信。tcp ip是一个协议族,http是一个上层应用层的协议。而socket是一个封装tcp层的一个api,它不止可以用于这个协议之上,还可以其他接口。
  • scoket套接字
  • socket描述符
          套接字描述符 0输入,1输出,2错误输出。系统为每一个进程维护一个文件描述表。表里有顺序,而0 1 2 3等为对应文件指针在表中的位置。所以 创建socket时候只要返回这么一个小整数就可以了。
  • socket连接类似于打电话。服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接。在这时如果有个客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。
总结,socket有几种函数,socket,bind,listen ,connect accept. close 特有用来对付

  •   int socket(int protofamily, int type, int protocol);//返回sockfd
  • int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
  • int listen(int sockfd, int backlog);
  • int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
  • int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); //返回连接connect_fd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值