你该知道的那些网络基础知识

Http 和 Https区别

  • 安全性:
    http是HTTP协议运行在TCP之上。所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。
    https是HTTP运行在SSL/TLS之上,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。此外客户端可以验证服务器端的身份,如果配置了客户 端验证,服务器方也可以验证客户端的身份。

  • 证书
    https协议需要到ca申请证书,一般免费证书很少,需要交费。

  • 传输协议
    http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议

  • 端口
    http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。

PS: SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。

GET和POST的区别?

最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数

  • GET 用于获取信息,是无副作用的,是幂等的,且可缓存
  • POST 用于修改服务器上的数据,有副作用,非幂等,不可缓存

GET和POST还有一个重大区别

  • GET产生一个TCP数据包;POST产生两个TCP数据包。
    对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据)
  • 而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)

有一篇非常精辟的解读 GET和POST两种基本请求方法的区别

TCP 和 UDP 的区别

  • TCP 是面向连接的,UDP 是面向无连接的
  • UDP程序结构较简单
  • TCP 是面向字节流的,UDP 是基于数据报的
  • TCP 保证数据正确性,UDP 可能丢包
  • TCP 保证数据顺序,UDP 不保证

因为TCP是面向连接所以有三次握手而UDP没有哦~

应用场景选择
对实时性要求高和高速传输的场合下使用UDP;在可靠性要求低,追求效率的情况下使用UDP
需要传输大量数据且对可靠性要求高的情况下使用TCP

这篇文章写的,um 感觉非常易懂
关于面试中的TCP和UDP怎么用自己的话给面试官说

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容