0
点赞
收藏
分享

微信扫一扫

linux 网络编程 (套接字)


套接字概念:


套接字是一种通信过程,它使客服端/服务器系统的开发既可以再单机上进行,也可以跨网络进行。(FTP等都是通过套接字进行通信)


套接字链接:

1,套接字如何处理一个链接的 

      a,服务器软件先创建出一个套接字,(通过系统调用 socket 创建出来)。

      b ,  服务器进程会给创建的套接字起个名字。 也称为“绑定”(端口号),等待客服端链接到这个命名的套接字上来。(绑定)

      c ,  系统调用listen 的作用是创建一个队列。来自客服端的链接将在这个队列上排队等待服务器的处理(监听)

      d , 服务器将通过系统调用accept 来接受来自客服端的链接。服务器调用accept的时候,会新创建一个套接字,这个套接字与上面的命名套接字

          不是同一 回事,新套接字的唯一用途是与这个特定的客服进行通信,而命名套接字则被释放出来,准备处理来自其他客服端的链接。如果软

          件编写得当,就可以享受多个链接带来的好处。对于一个简单的服务器来说,后来的客服端需要在队列里等待服务器的重新就绪。

客服端套接字

         a,创建一个未命名的套接字

         b,然后把他连接到一个名为server_socket的服务器套接字。

linux 网络编程 (套接字)_系统调用

linux 网络编程 (套接字)_服务器_02

 

 服务端:

 

 

关于exit , return , abort

exit, 和 return 的区别,       

      exit是一个函数,有参数,它执行完后把控制权交给系统。

      return 是函数执行完后的返回。 return执行完后把控制权交给调用函数。

exit 和 abort 的区别

      exit是正常终止进程。

      abort 是异常终止。

举报

相关推荐

0 条评论