linux 网络编程 (套接字)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 网络编程 (套接字)相关的知识,希望对你有一定的参考价值。


套接字概念:


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


套接字链接:

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

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

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

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

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

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

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

客服端套接字

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

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

linux

linux

 

 服务端:

 

 

关于exit , return , abort

exit, 和 return 的区别,       

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

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

exit 和 abort 的区别

      exit是正常终止进程。

      abort 是异常终止。

以上是关于linux 网络编程 (套接字)的主要内容,如果未能解决你的问题,请参考以下文章

Linux基本命令

Linux网络编程——预备知识

怎样在 Linux 中限制网络带宽使用

Linux 套接字通信笔记

linux lsof 详解

Linux网络编程和套接字