socket常识

作者: 半日浮生_iOSer | 来源:发表于2016-10-31 16:03 被阅读23次

socket也叫 套接字

socket是一套API 是对TCP/IP协议的封装,为了便于使用TCP/IP协议的,这样形成了我们知道的一些基本接口,create、listen、connect、accept、send、read和write等等,socket并不是协议。

socket层上的协议指的是数据传输的格式

无状态链接,就是指每次发起请求都是新的链接,不是同一个链接,不会记录链接状态,每次请求结束后,链接就会关闭,相关内存会释放,这样不记录状态叫无状态链接。

Http是无状态 短连接链接,  TCP为有状态 长链接

而Http又是建立在TCP的基础上的 两者不一样的原因是因为Http在每次请求完成后都会关闭TCP链接,所以称为短连接

而通过socket编程使用TCP编程的时候,是可以用代码控制链接何时开始何时关闭的,也就是说用代码打开一个tcp链接之后, 不去关闭它, 那么这个链接就一直存在,相关数据状态也会中一直保存。

Http的实现逻辑, HTTP客户端首先发起建立与服务器TCP连接,链接一旦建立,那么HTTP客户端和服务器进程就可以通过各自的socket来访问TCP了,客户端用自己的socket发送请求消息也用自己的socket接收响应消息,服务器也一样。消息一旦发给socket后,那么这个消息就完全由TCP接管,中间传输过程也由TCP来做。

(客户端不允许多设备同时登陆,也是用TCP长连接来做处理的,服务器来控制链接个数。)

相关文章

  • socket常识

    socket也叫 套接字 socket是一套API 是对TCP/IP协议的封装,为了便于使用TCP/IP协议的,这...

  • unix套接字

    unix套接字常识点 性能 很多时候,我们用本机进程间通信时,会使用本地套接字unix socket来通信。本地套...

  • php swoole扩展

    对并发和socket的支持是php的短板,swoole扩展很好的强健了这些方面,高级php必备的常识储备,这两天了...

  • socket模块网络编程

    socket()类# socket语法socket(socket_family, socket_type, pro...

  • 2019-12-06--客户端

    import socket#引入socket模块 client=socket.socket()#生成socket连...

  • Python Socket 编程

    Socket创建函数 socket.socket(socket_family, socket_type, prot...

  • python socket 编程

    Socket创建函数 socket.socket(socket_family, socket_type, prot...

  • 网络编程 socket 的简单使用

    SOCKET 的简单使用 server端: import socket so = socket.socket(...

  • python编写简单聊天程序

    socket模块相关的方法和类 socket.socket():返回一个 socket对象。 socket.cre...

  • Python socket编程

    创建server步骤: 创建socket对象socket = socket.socket(family, type...

网友评论

    本文标题:socket常识

    本文链接:https://www.haomeiwen.com/subject/rilputtx.html