个性化阅读
专注于IT技术分析

HTTP三次握手四次分手,URI、URL和URN的通俗解析和区别 – 深入浅出HTTP原理

一、HTTP三次握手和四次分手

不少人可能都会听说过或被问到HTTP三次握手,准确来说,说HTTP三次握手并不准确,因为并没有HTTP三次握手,而是TCP三次握手四次分手,因为HTTP服务是基于TCP/IP协议实现的,所以但凡涉及网络开发或者HTTP开发都会遇到该知识点。这里将错就错,就谈论HTTP三次握手和四次分手,但是要记得基本涉及该内容的都是指的TCP而不是HTTP。

为什么会常常被问到HTTP或TCP三次握手四次分手呢?因为基本所有的项目开发都会涉及到网络,这就要求你掌握一定的网络技术了,否则若需要实现更高级的需求,单纯地使用高层的API并不会实际帮到你,HTTP协议也并不是到处都可用的,例如热门的移动流媒体传输(例如直播),这里面主要应用到的是UDP协议而不是TCP,有点跑题了。

说回到HTTP协议,它主要应用在浏览器网站开发和一些可靠性数据传输,特点是允许延时,保证数据的可靠性,在移动开发中也常用。关于HTTP或TCP三次握手和四次分手的过程,你可能看过一些不太详尽的教程,其实单靠文字描述也很难掌握其真正内容,在这里:TCP三次握手四次分手的实质原理分析实例,你可以找到更加实际的学习信息和操作,例如找到三次握手过程中的数据包报文信息,通过查看报文信息,自然就不用背书也就对网络有更深刻的理解了。

二、 URI、URL和URN的通俗解析和区别

URI (Uniform Resource Identifier) 统一资源标识符

URL(Uniform Resource Locator)统一资源定位符

URN(Uniform Resource Name)统一资源名称/永久统一资源定位符

URI、URL和URN的区别

首先URI是一种标识符,这个标识符专门用于标记资源的,资源就是文件、视频、音频等,什么是标识符?各种名称及其组合,例如A、B都是标识符,/A/B/C也是标识符,所以标识符千千万万,也就是说URI它就是专门用来标识资源的,但是不限定是哪种表示形式,例如http://www.example.com/3141592和http://www.example.com/314.html都可以表示一个html文本,实际上你可以想到,URI包括了所有定位资源的方式,包括URL和URN,所以URI是一个资源定位的总称。

而URL则是带有固定形式的URI,主要由两部分组成:协议和特定协议部分,形式如:

{protocol}://user:password@host.com:80/path?query=string#hash

协议protocol部分包括我们常见的HTTP协议,FTP协议等。

特定协议分别是://用户名:密码@主机名:端口号/路径?参数属性名=属性值#ID。

URL是我们常用的URI,无论对于前端开发还是后端开发,了解URL的结构都非常重要。

URN也是一个标识符,它的特别之处就在于它是一个永久的标识符,旨在使用唯一的标识符标记一个资源,即使资源被移动也可以被找到,目前还在发展中。

赞(0) 打赏
未经允许不得转载:srcmini » HTTP三次握手四次分手,URI、URL和URN的通俗解析和区别 – 深入浅出HTTP原理
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏