网络通信

知识点:

  1. 通讯协议:通信协议(communications protocol)是指双方实体完成通信或服务所必须遵循的规则和约定。通过通信信道和设备互连起来的多个不同地理位置的数据通信系统,要使其能协同工作实现信息交换和资源共享,它们之间必须具有共同的语言。交流什么、怎样交流及何时交流,都必须遵循某种互相都能接受的规则。这个规则就是通信协议。TCP、UDP、HTTP与HTTPS都是通信协议
  2. Http和Https:
    Http是HyperText Transfer Protocol的缩写,也就是超文本传输协议,建立在TCP协议之上。
    Https是Secure Hypertext Transfer Protocol的缩写,也就是安全超文本传输协议。它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。
  3. Socket:
    Socket是为了实现通信过程而建立成来的通信管道,是一种连接模式,不是协议。客户端和服务器端通过Socket进行通信。它只是提供了一个针对TCP或者UDP编程的接口。
    TCP、UDP是两个最基本的协议,很多其它协议都是基于这两个协议如,HTTP就是基于TCP的,用Socket可以创建TCP连接,也可以创建UDP连接,这意味着,用Socket可以创建任何协议的连接,因为其它协议都是基于此的。

总结:网络通信就是借助有限或无线的介质按照通讯协议建立的多端数据传输。

长连接和短连接:

短连接:链接是保持在数据传输过程,请求发起,连接建立,数据返回,连接关闭。它适用于一些实时数据请求。Socket建立连接,发送完数据后就断开链接。Http 1.0只支持短连接
长连接:长连接便是在连接发起后,在请求关闭连接前客户端与服务端都保持连接,SOCKET连接后不管是否使用都保持连接,可以对其进行复用但安全性较差。它适用于涉及消息推送,请求频繁的场景(直播,流媒体)。连接建立后,在该连接下的所有请求都可以重用这个长连接管道,避免了频繁了连接请求,提升了效率。

区分长连接还是短连接是取决于传输层的TCP协议的
长连接并不是永久连接的。如果一段时间内(具体的时间长短,是可以在header当中进行设置的,也就是所谓的超时时间),这个连接没有HTTP请求发出的话,那么这个长连接就会被断掉。

你可能感兴趣的:(网络通信)