计算机网络-基础概念(HTTP,TPC/IP, DNS,URL)

HTTP不同的版本

  • HTTP0.9于1990年问世,此时HTTP并没有作为正式的标准被建立。
  • HTTP正式被公布是1996年的5月,版本命名为HTTP/1.0。
  • HTTP1.1,1997年1月公布,目前仍然是主流版本的HTTP协议版本。

TCP/IP

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

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

把互联网相关联的协议集合起来总称为TCP/IP。也就是TCP/IP是在IP协议通信过程中,使用到的协议族的统称。
TCP/IP分层

数据流转过程:

IP TCP DNS

IP

IP 网际协议位于网络层。IP协议的作用是把各种数据包传给对方。其中两个重要的条件是IP地址和MAC地址。

IP间的通信依赖MAC地址,在网络上通信的双方在同一局域网内的情况是很少的。会利用下一站中转设备的MAC地址来搜索下一个中转目标。会采用ARP(Address Resolution Protocol)。ARP是一种以解析地址的协议,根据通信的IP地址可以反查出对应的MAC地址。

TCP

TCP 位于传输层,可以提供可靠的字节流服务。所谓字节流服务是指,为了方便传输,将大块数据分割成以报文段为单位进行管理。那数据被切分成报文段以后怎能可靠的传输给对方呢?

三次握手应运而生:

在三次握手的过程中使用SYN(synchronize)和ACK(acknowledgement)。

发送端先发送一个带SYN标志的数据包给对方。接受端在收到以后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。足厚发送端在回传一个带ACK标志的数据包,代表握手结束。

若在握手过程中某个阶段莫名中断,TCP协议会再次以相同的顺序发送相同的数据包。

DNS

由于IP相对来说不容易记住,因此DNS出现了,用更符合人类的记忆方式。

URI和URL
  • URI (Uniform Resource Identifier): 统一资源标识符,用于唯一标识一个资源。它可以是任何类型的资源,如文件、图像、视频等。URI 是一种更通用的概念,它包括了 URL 和 URN(统一资源名称)。
  • URL (Uniform Resource Locator): 统一资源定位符,是一种特殊的 URI,不仅标识了一个资源,还提供了访问该资源的方法(即路径或网络位置)。URL 通常包含协议类型(如 http、https)、主机名、端口号(可选)、路径、查询参数等。
  • 区别 :
    • 所有 URL 都是 URI,但不是所有 URI 都是 URL。
    • URI 可以不包含访问资源的具体方法,而 URL 必须包含。
    • 例如,http://example.com/resource 是一个 URL,也是 URI;而 urn:isbn:0451450523 是一个 URI,但不是 URL,因为它没有指定如何访问资源。

工作流程图

参考资料

图解HTTP网络书籍

相关推荐
0+1117 小时前
Linux --应用层协议HTTP
网络·网络协议·http
洋不写bug8 小时前
网络编程(二)TCP回显服务器与客户端通信详解
服务器·网络·tcp/ip·tcp·网络通信·javaee·回显服务器
洋不写bug9 小时前
网络原理(一)应用层协议、传输层UDP/TCP报文格式解析
网络·tcp/ip·udp·tcp·应用层·javaee·传输层
Fcy64810 小时前
Linux下 网络层IP协议详解
linux·运维·tcp/ip
To_OC20 小时前
从一头雾水到跑通全流程:我用一个周末啃透了JWT登录鉴权
前端·后端·http
91刘仁德1 天前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
马六六i1 天前
市面上正规的IP驱动产业新场景新工具有哪些
大数据·网络·python·tcp/ip
洋不写bug1 天前
初识网络通信,网络发展背景,TCP/IP五层模型简介
计算机网络·网络编程·协议·ip·端口号·tcp/ip模型·网络发展背景
小贺儿开发1 天前
Unity 局域网遥控幻灯片展示工具 3.0
科技·http·unity·工具·ppt·通信·网页
XiaoMaqqqq2 天前
市面上正规的IP驱动产业新场景新工具哪家强
运维·python·网络协议·tcp/ip