美文网首页
简述HTTP,TCP/IP

简述HTTP,TCP/IP

作者: Twfnn | 来源:发表于2017-09-03 18:25 被阅读0次

通常使用的网络是在TCP/IP协议族的基础上运作的,而HTTP属于它内部的一个子集。为了解HTTP,先了解一下TCP/IP协议族。

1. TCP/IP协议族

计算机与网络设备要相互通信,双方就必须基于相同的方法。 比如,如何探测到通信目标、由哪一边先发起通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之间的通信, 所有的这一切都需要一种规则。而我们就把这种规则称为协议(protocol)。

协议中存在各式各样的内容。从电缆的规格到 IP 地址的选定方法、寻找异地用户的方法、双方建立通信的顺序,以及 Web 页面显示需要处理的步骤等等。

像这样把与互联网相关联的协议集合起来总称为 TCP/IP。

2 TCP/IP 的分层

TCP/IP 协议族按层次分别分为以下 4 层:应用层、传输层、网络层和数据链路层。

  • 应用层
    应用层决定了向用户提供应用服务时通信的活动。TCP/IP 协议族内预存了各类通用的应用服务。比如,FTP和 DNS 服务就是其中两类。HTTP 协议也处于该层 。
  • 传输层
    传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。在传输层有两个性质不同的协议TCP(Transmission Control Protocol,传输控制协议) 和 UDP(User Data Protocol,用户数据报协议) 。
  • 网络层
    网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输路线) 到达对方计算机,并把数据包传送给对方。与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。IP协议在这一层。
  • 链路层
    用来处理连接网络的硬件部分。 包括控制操作系统、 硬件的设备驱动、NIC(Network Interface Card,网络适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介) 。硬件上的范畴均在链路层的作用范围之内。

下图用 HTTP 举例

http示例

3.IP协议

IP 协议的作用是把各种数据包传送给对方。 而要保证确实传送到对方那里,则需要满足各类条件。其中两个重要的条件是 IP 地址和 MAC地址(Media Access Control Address) 。IP 地址指明了节点被分配到的地址,MAC 地址是指网卡所属的固定地址。IP 地址可以和 MAC 地址进行配对。IP 地址可变换,但 MAC地址基本上不会更改。这篇文章讲得很清楚:IP地址,子网掩码,默认网关,DNS服务器详解

3.TCP协议

TCP协议则是建立在IP协议之上的。TCP协议负责在两台计算机之间建立可靠连接,保证数据包按顺序到达。TCP协议会通过握手建立连接,然后,对每个IP包编号,确保对方按顺序收到,如果包丢掉了,就自动重发。
为了准确无误地将数据送达目标处,TCP 协议采用了三次握手,握手过程中使用了 TCP 的标志(flag)——SYN(synchronize) 和ACK(acknowledgement)。

tcp三次握手

4.HTTP协议

HTTP 协议和 TCP/IP 协议族内的其他众多的协议相同, 用于客户端和服务器之间的通信。请求访问文本或图像等资源的一端称为客户端, 而提供资源响应的一端称为服务器端。可以看这里HTTP协议简介

补充一下:

  • HTTP keep-alive
    这个在浏览器networkRequest Headers中可以看到,为connection :keep-alive
    HTTP 协议的初始版本中,每进行一次 HTTP 通信就要断开一次TCP连接。每次的请求都会造成无谓的 TCP 连接建立和断开,增加通信量的开销。
    在 HTTP/1.1 中,所有的连接默认都是持久连接。只要任意一端
    没有明确提出断开连接,则保持 TCP 连接状态。
    持久连接的好处在于减少了 TCP 连接的重复建立和断开所造成的额外开销, 减轻了服务器端的负载。另外,减少开销的那部分时间,使HTTP 请求和响应能够更早地结束,这样 Web 页面的显示速度也就相应提高了。
  • cookie与session
    看这里Cookie和Session的作用和工作原理

相关文章

  • 简述HTTP,TCP/IP

    通常使用的网络是在TCP/IP协议族的基础上运作的,而HTTP属于它内部的一个子集。为了解HTTP,先了解一下TC...

  • 简述UDP、TCP/IP、HTTP

    下面是协议层从底层至顶层的一个模型图: 一、UDP UDP 是User Datagram Protocol的简称,...

  • Http、TCP/IP、socket

    1.TCP/IP、Http、Socket的区别 TCP/IP、Http的区别 HTTP与TCP的区别和联系 SOC...

  • 计算机网络

    一、tcp/http 1、TCP首部。 IP数据报(IP首部+TCP报文段(TCP首部+TCP数据)) TCP首部...

  • 第五章 HTTP通信简介

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

  • 06-网络类&加密

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

  • Java网络编程基础(BIO)

    [TOC] TCP/IP协议分层模型 TCP/IP分层模型 下层提供接口供上层使用,为上层服务。 Socket简述...

  • 网络通信 Http、Https、TCP、UDP、IP

    目录 1.TCP/IP、TCP、UDP2.IP3.Http、Https 1.TCP/IP、TCP、UDP 1.什么...

  • TCP三次握手四次挥手(面试题)

    2020-12-25 简述下TCP三次握手的过程 简述下TCP四次挥手的过程 TCP/IP七层图解

  • 书单与第三方库

    书单: 网络:《 图解HTTP》,《图解TCP/IP》,《HTTP 权威指南》,《TCP/IP详解(卷1,卷2,卷...

网友评论

      本文标题:简述HTTP,TCP/IP

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