美文网首页Web前端之路程序员
HTTP 协议 - 简单谈谈 TCP / IP (一)

HTTP 协议 - 简单谈谈 TCP / IP (一)

作者: 三毛丶 | 来源:发表于2017-07-16 20:54 被阅读52次

原文连接 blog

TCP / IP 基本概念

世界上几乎所有的 HTTP 协议都是由 TCP / IP 协议来承载的。它是互联网相关的各类协议族的总称(通常所说的规则,就是协议)。

从输入的 URL 里我们可以从中获取服务器端的 IP 地址与端口号,建立一条 TCP 连接。建立连接之后,在客户端和服务器端之间交换的报文,不会丢失,受损,或者失序。

分层

TCP / IP 协议族里最重要的特征就是分层,每一层都靠下一层的支持。TCP / IP 按层次分,分为四层:应用层、传输层、网络层、数据链路层。HTTPS 就是在应用层与传输层之间多了一层安全层。

分层之后,各层只需完成各自特定的问题,而不需要管其他,使得设计变的简单,同时,若某部分需要改变时,也只需改变对应的层,无需改变整体。

应用层

应用层决定了向用户提供应用服务时通信的活动(规定传输的数据格式)。

比如 FTP 文件传输协议,DNS 域名解析系统,HTTP 超文本传输协议也位于此层。

传输层

传输层提供处于网络连接中的两台计算机之间的数据传输,在传输层有两个不同的协议,TCP 和 UDP 协议。

网络层

网络层,用来处理网络上流动的数据包,数据包是网络传输的最小数据单位,该层规定了通过怎样的路径到达对方计算机,并把数据包传送给对方。

链路层

用来处理网络的硬件部分。如操作系统,设备驱动等。

TCP / IP 通讯传输

HTTP

以 HTTP 为例,在进行网络通信时,发送端会从应用层往下走,接收端则会往应用层往上走。

建立 TCP 连接之后,从客户端发送一条 HTTP 请求报文,会以流的形式,至传输层(TCP协议), 传输层会把从应用层出收到的请求报文进行分割,并在各个报文打上标记序号,及端口号转发给网络层。到达网络层(IP协议)后,增加作为通信目的地的 MAC 地址后转发给链路层。

作为接收端的服务器在链路层接收到数据之后,会一级一级往上传至应用层。

发送端在层与层之间传输数据时,每经过一层,会被打上属于该层的首部信息。
接收端在层与层之间传输数据时,会把每层对应的首部去掉。

HTTPS

HTTPS 方案的 URL 以 https:// 开头,而不是以 http:// 开头,使用 HTTPS时,所有的 HTTP 请求和响应数据在发送到网络之前,都要进行加密。

下图中,对比了 HTTP 与 HTTPS 的不同:

在发送已加密的 HTTP 报文之前,客户端和服务端会进行一次 SSL 握手,在这次握手过程中,他们主要完成以下工作:

  • 交换协议版本号;
  • 选择一个两端都了解的密码;
  • 对两端身份验证;
  • 生成临时的会话秘钥,以便加密通道。

实际过程可能更复杂。

相关文章

  • TCP/IP协议

    TCP/IP协议三次握手与四次握手流程解析 HTTP协议—— 简单认识TCP/IP协议 TCP/IP协议入门(一)...

  • HTTP 协议 - 简单谈谈 TCP / IP (一)

    原文连接 blog TCP / IP 基本概念 世界上几乎所有的 HTTP 协议都是由 TCP / IP 协议来承...

  • 网络与TCP/IP

    HTTP协议的底层是由TCP协议和IP协议(简称TCP/IP)构建的简单来说,IP是控制如何连接的,TCP是控制如...

  • HTTP 、TCP、 IP、socket 协议

    参考 3.谈谈你对HTTP 、TCP、 IP、socket 协议的理解。 HTTP 超文本传输协议 (HTTP,H...

  • TCP/IP协议

    一、关于TCP/IP TCP/IP协议是一个协议集合,HTTP协议,IP协议,TCP协议,DNS协议等都属于TCP...

  • 2018-12-15\网络与IP&node js服务器

    HTTP与TCP 协议 HTTP 协议的底层其实是由 TCP 协议和 IP 协议(简称 TCP/IP)构建的。关于...

  • ios http和scoket通信的区别

    HTTP协议:简单对象访问协议,对应于应用层 ,HTTP协议是基于TCP连接的 tcp协议: 对应于传输层 ip协...

  • 第五章 HTTP通信简介

    HTTP的基本概念和基础 1.1 TCP/IP 协议族-(HTTP属于TCP/IP协议族的一员) 图:TCP/IP...

  • 06-网络类&加密

    网络七层协议(http,tcp/ip处于哪一层)? http属于应用层协议,基于tcp/ip tcp/ip属于传输...

  • HTTP协议笔记

    HTTP协议笔记 标签(空格分隔): HTTP,TCP/IP [TOC] 1.网络协议基础知识 TCP/IP协议族...

网友评论

    本文标题:HTTP 协议 - 简单谈谈 TCP / IP (一)

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