精华内容
下载资源
问答
  • 下面我们分别针对在 TCP/IP 协议族中与 ...可能 有人会把“IP”“IP 地址”搞混,“IP”其实是一种协议的名称。 IP协议的作用 IP 协议的作用**是把各种数据包传送给对方。**而要保证确实传送到对方 那里,则需要满...

    下面我们分别针对在 TCP/IP 协议族中与 HTTP 密不可分的 3 个协议 (IP、TCP 和 DNS)进行说明。

    1.负责传输的 IP 协议

    按层次分,IP(Internet Protocol)网际协议位于网络层。可能 有人会把“IP”和“IP 地址”搞混,“IP”其实是一种协议的名称。

    IP协议的作用

    IP 协议的作用**是把各种数据包传送给对方。**而要保证确实传送到对方 那里,则需要满足各类条件。其中两个重要的条件是IP 地址和 MAC 地址
    IP 地址指明了节点被分配到的地址,MAC 地址是指网卡所属的固定 地址。IP 地址可以和 MAC 地址进行配对。IP 地址可变换,但 MAC 地址基本上不会更改。
    **使用 ARP 协议凭借 MAC 地址进行通信, IP 间的通信依赖 MAC 地址。**在网络上,通信的双方在同一局域网 (LAN)内的情况是很少的,通常是经过多台计算机和网络设备中转 才能连接到对方。而在进行中转时,会利用下一站中转设备的 MAC 地址来搜索下一个中转目标。这时,会采用 ARP 协议(Address Resolution Protocol)。ARP 是一种用以解析地址的协议,根据通信方 的 IP 地址就可以反查出对应的 MAC 地址。

    没有人能够全面掌握互联网中的传输状况 在到达通信目标前的中转过程中,那些计算机和路由器等网络设备只 能获悉很粗略的传输路线。 这种机制称为路由选择(routing),有点像快递公司的送货过程。想 要寄快递的人,只要将自己的货物送到集散中心,就可以知道快递公 司是否肯收件发货,该快递公司的集散中心检查货物的送达地址,明 确下站该送往哪个区域的集散中心。接着,那个区域的集散中心自会 判断是否能送到对方的家中。

    2. 确保可靠性的 TCP 协议

    按层次分,TCP 位于传输层,提供可靠的字节流服务。 所谓的字节流服务(Byte Stream Service)是指,为了方便传输,将大 块数据分割成以报文段(segment)为单位的数据包进行管理。而可 靠的传输服务是指,能够把数据准确可靠地传给对方。
    TCP 协议为了更容易传送大数据才把数据分割,而且 TCP 协议能够 确认数据最终是否送达到对方

    TCP的三次握手(非常重要)

    为了准确无误地将数据送达目标处,TCP 协议采用了三次握手 (three-way handshaking)策略。用 TCP 协议把数据包送出去后,TCP 不会对传送后的情况置之不理,它一定会向对方确认是否成功送达。
    握手过程中使用了 TCP 的标志(flag) —— SYN(synchronize) 和 ACK(acknowledgement)。
    发送端首先发送一个带 SYN 标志的数据包给对方。接收端收到后, 回传一个带有 SYN/ACK 标志的数据包以示传达确认信息。最后,发 送端再回传一个带 ACK 标志的数据包,代表“握手”结束。 若在握手过程中某个阶段莫名中断,TCP 协议会再次以相同的顺序发 送相同的数据包。
    在这里插入图片描述

    3.负责域名解析的 DNS 服务

    DNS(Domain Name System)服务是和 HTTP 协议一样位于应用层的 协议。它提供域名到 IP 地址之间的解析服务。

    计算机既可以被赋予 IP 地址,也可以被赋予主机名和域名。比如 www.hackr.jp。 用户通常使用主机名或域名来访问对方的计算机,而不是直接通过 IP 地址访问。因为与 IP 地址的一组纯数字相比,用字母配合数字的表 示形式来指定计算机名更符合人类的记忆习惯。但要让计算机去理解名称,相对而言就变得困难了。因为计算机更擅 长处理一长串数字。

    为了解决上述的问题,DNS 服务应运而生。DNS 协议提供通过域名 查找 IP 地址,或逆向从 IP 地址反查域名的服务。
    在这里插入图片描述

    4.各种协议与 HTTP 协议的关系

    在这里插入图片描述

    5. URL和URI 的关系与区别

    与 URI(统一资源标识符)相比,我们更熟悉 URL(Uniform Resource Locator,统一资源定位符)。URL正是使用 Web 浏览器等 访问 Web 页面时需要输入的网页地址。
    URI 用字符串标识某一互联网资源,而 URL表示资源的地点(互联 网上所处的位置)。可见 URL是 URI 的子集
    URI 就是由某个协议方案表示的资源的定位标识符。协议 方案是指访问资源所使用的协议类型名称。 采用 HTTP 协议时,协议方案就是 http。除此之外,还有 ftp、mailto、telnet、file 等。标准的 URI 协议方案有 30 种左右。
    统一资源标识符(URI)通用语法”中列举了几种 URI 例 子,如下所示。
    在这里插入图片描述
    在充分理解的基础 上,也可用 URL替换 URI。

    (1)URI的格式

    表示指定的 URI,要使用涵盖全部必要信息的绝对 URI、绝对 URL以 及相对 URL。相对 URL,是指从浏览器中基本 URI 处指定的 URL, 形如 /image/logo.gif。
    绝对 URI 的格式:
    在这里插入图片描述

    (1).使用 http: 或 https: 等协议方案名获取访问资源时要指定协议类型。不 区分字母大小写,最后附一个冒号(:)。 也可使用 data: 或 javascript: 这类指定数据或脚本程序的方案名。
    (2). 登录信息(认证) 指定用户名和密码作为从服务器端获取资源时必要的登录信息(身份 认证)。此项是可选项。
    (3). 服务器地址 使用绝对 URI 必须指定待访问的服务器地址。地址可以是类似 hackr.jp 这种 DNS 可解析的名称,或是 192.168.1.1 这类 IPv4 地址 名,还可以是 [0:0:0:0:0:0:0:1] 这样用方括号括起来的 IPv6 地址名。
    (4).服务器端口号 指定服务器连接的网络端口号。此项也是可选项,若用户省略则自动 使用默认端口号。
    (5).带层次的文件路径 指定服务器上的文件路径来定位特指的资源。这与 UNIX 系统的文件 目录结构相似。
    (6).查询字符串 针对已指定的文件路径内的资源,可以使用查询字符串传入任意参 数。此项可选。
    (7). 片段标识符 使用片段标识符通常可标记出已获取资源中的子资源(文档内的某个 位置)。但在 RFC 中并没有明确规定其使用方法。该项也为可选 项。

    展开全文
  • 就以下面这个URL为例,介绍下普通URL的各部分组成 `http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name ...1.协议部分:该URL的协议部分为“htt...

    就以下面这个URL为例,介绍下普通URL的各部分组成

    `http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name

    从上面的URL可以看出,一个完整的URL包括以下几部分

    console.log(location.protocol) //http:
    1.协议部分:该URL的协议部分为“http:”,这代表网页使用的是HTTP协议。在Internet中可以使用多种协议,如HTTP,FTP等等本例中使用的是HTTP协议。在"HTTP"后面的“//”为分隔符

    console.log(location.host) //www.aspxfans.com:8080
    2.域名和端口部分:该URL的域名端口部分为“www.aspxfans.com:8080”。一个URL中,也可以使用IP地址作为域名使用

    console.log(location.hostname) //www.aspxfans.com
    3.域名部分:该URL的域名部分为“www.aspxfans.com”。一个URL中,也可以使用IP地址作为域名使用

    console.log(location.port) //8080
    4.端口部分:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。端口不是一个URL必须的部分,如果省略端口部分,将采用默认端口

    console.log(location.pathname) // (/news/index.asp)
    5.虚拟目录部分:从域名后的第一个“/”开始到最后一个“/”为止,是虚拟目录部分。虚拟目录也不是一个URL必须的部分。本例中的虚拟目录是“/news/”

    6文件名部分:从域名后的最后一个“/”开始到“?”为止,是文件名部分,如果没有“?”,则是从域名后的最后一个“/”开始到“#”为止,是文件部分,如果没有“?”和“#”,那么从域名后的最后一个“/”开始到结束,都是文件名部分。本例中的文件名是“index.asp”。文件名部分也不是一个URL必须的部分,如果省略该部分,则使用默认的文件名

    console.log(location.hash) //#name
    7.锚部分:从“#”开始到最后,都是锚部分。本例中的锚部分是“name”。锚部分也不是一个URL必须的部分

    console.log(location.search) //?boardID=5&ID=24618&page=1
    8.参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“boardID=5&ID=24618&page=1”。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。

    展开全文
  • URI URL 的关系

    2020-02-02 10:38:17
    URI 是用来标识互联网上资源(例如,网页或文件)怎样访问这些资源传输协议(例如,HTTP 或 FTP)字符串。 js编码解码URI方法有4个:encodeURI、encodeURIComponent、decodeURI、decodeURIComponent。 1...

    一、URI(统一资源标识符)

    URI 是用来标识互联网上的资源(例如,网页或文件)和怎样访问这些资源的传输协议(例如,HTTP 或 FTP)的字符串。

    js编码解码URI的方法有4个:encodeURI、encodeURIComponent、decodeURI、decodeURIComponent。

    1、一个URI的组成

    一个 URI 是由组件分隔符分割的组件序列组成。其一般形式是:
    Scheme : First / Second ; Third ? Fourth

    其中斜体的名字代表组件;“:”, “/”, “;”,“?”是当作分隔符的保留字符

    2、4个方法有何不同?

    encodeURIdecodeURI 函数操作的是完整的 URI;这俩函数假定 URI 中的任何保留字符都有特殊意义,所有不会编码它们。

    encodeURIComponentdecodeURIComponent 函数操作的是组成 URI 的个别组件;这俩函数假定任何保留字符都代表普通文本,所以必须编码它们,所以它们(保留字符)出现在一个完整 URI 的组件里面时不会被解释成保留字符了。

    以上说明摘自ECMAScript标准,为了容易读懂做了点编辑加工。

    3、图解四个函数的不同

    当 URI 里包含一个没在上面列出的字符或有时不想让给定的保留字符有特殊意义,那么必须编码这个字符。字符被转换成 UTF-8 编码,首先从 UT​​F-16 转换成相应的代码点值的替代。然后返回的字节序列转换为一个字符串,每个字节用一个“%xx”形式的转移序列表示。(具体转换规则可以参考抽象操作EncodeDecode的说明

    用 encodeURIComponent 编码过的内容,如果是添加到导航链接上,在导航栏上显示的时候会显示解码后的内容。

    二、URL(统一资源定位符)

    URL 是通过路径把某一资源标识出来。

    URL 是 URI 的子集。

    参考文章

     

     

    展开全文
  • HTTP无状态协议分析与Cookie的关系

    千次阅读 2016-03-06 23:11:28
    我们知道HTTP协议是一种无状态协议,及客户端服务器端不需要建立持久链接。客户端服务器链接是基于一种请求应答模式。及客户端服务器建立一个链接,客户端提交一个请求,服务器端收到请求后返回一个响应...


    我们知道HTTP协议是一种无状态的协议,及客户端和服务器端不需要建立持久的链接。客户端和服务器的链接是基于一种请求应答模式。及客户端和服务器建立一个链接,客户端提交一个请求,服务器端收到请求后返回一个响应,然后二者就断开链接。即HTTP协议采用请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。下图表明了这种请求/响应模型。

     HTTP请求/响应模型

    了解了HTTP的工作过程后我们需要再了解HTTP请求报文和响应报文的格式。一个HTTP请求报文一般包括请求行、首部和实体(有时包含)3部分,下图给出了请求报文的一般格式,

     请求报文

    一个HTTP响应报文一般包括状态行、首部和实体(有时包含)3部分,其报文格式如图所示。在响应报文中,状态行定义了响应报文的状态,并由响应状态码和响应状态码说明字段反应。


    响应报文

    这里我们用一个比较熟悉的例子来理解HTTP的无状态性,如一个多图片网页的浏览。步骤为:①建立连接,客户端发送一个网页请求,服务器端返回一个html页面(这里的页面只是一个纯文本的页面,也就是我们写的html代码),关闭连接;②浏览器解析html文件,遇到图片标记得到url这时,客户端和服务器再建立连接,客户端发送一个图片请求,服务器返回图片应答,关闭连接。(这里又涉及到无状态定义:对于服务器来说,这次的请求虽然是同一个客户端的请求但是服务器还是不知道这个是之前的哪个客户端的,及对于事务处理没有记忆能力)。

    但是需注意的是,服务器的响应次序必须是和客户端请求次序相同的。而无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。客户端与服务器进行动态交互的Web应用程序出现之后,HTTP无状态的特性严重阻碍了这些应用程序的实现,毕竟交互是需要承前启后的,简单的购物车程序也要知道用户到底在之前选择了什么商品。于是,两种用于保持HTTP连接状态的技术就应运而生了,一个是Cookie,而另一个则是Session。

    我会在下文介绍Cookie与Session。


    展开全文
  • HTTP协议的基础

    2018-03-21 19:11:31
    HTTP协议HTTP协议一、网络基础1、TCP/IP协议族各层作用应用层传输层网络层链路层2、TCP/IP 通信传输流3、关系密切IP、TCP、DNS协议(3次握手)4、URI和URL二、简单的HTTP协议1、通过请求响应交换达成通信2、...
  • HTTP协议

    2021-03-26 17:58:18
    HTTP协议(超文本传输协议HyperText Transfer Protocol),它是基于TCP协议的应用层传输协议,简单来说就是客户端服务端进行数据传输的一种规则。 在浏览器中输入url地址 -> 显示主页的过程 总体来说分为以下几...
  • http协议_HTTP协议详解

    2020-11-24 05:11:44
    欢迎来我的个人网站​hofe.work一、常见面试题先来看看一些常见的面试题TCP/IP五层协议?...httptcp的关系二、HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用...
  • http协议

    2021-03-30 21:05:46
    文章目录协议什么是http什么是传输URLURL格式HTTPSHTTP 优点缺点 协议 协议这个名词不仅局限于互联网范畴,也体现在日常生活中,比如情侣双方约定好在哪个地点吃饭,这个约定也是一种协议,比如你应聘成功了,...
  • http URL

    2015-12-19 21:46:43
    我们通常在浏览器地址栏中键入网址叫做URL(Uniiform Resource Locator/统一资源定位符),互联网上每个网页都有一个这样定位符(ps:ajax破坏了这种互联网上网也与统一资源定位符之间绝对对应关系)。...
  • http和https的关系

    2015-12-11 11:53:02
    URL前加https://前缀表明是用SSL加密。你电脑与服务器之间收发信息传输将更加安全。 Web服务器启用SSL需要...HTTPS协议是由SSL+HTTP协议构建可进行加密传输、身份认证网络协议 要比http协议安全 ...
  • TCP/IP 分层管理② 与 HTTP 关系密切的协议:IP、TCP DNS③ TCP 协议:将大块数据分割以报文段为单位进行数据传输④ 域名解析系统 DNS⑤ 各种协议HTTP 的关系⑥ URI URL三、HTTP 工作流程① 建立 TCP 连接...
  • b HTTP 协议

    2020-06-07 13:05:33
    http协议Web网络基础网络基础 TCP/IP 协议簇与 HTTP 关系密切的协议 : IP、TCPDNSIP协议可靠传输协议TCP负责域名解析的DNS服务各种协议与http的关系URL与URIURI 统一资源标识符URI格式 Web网络基础 Http是Web...
  • URI和URL的区别及其关系 解释1 统一资源标志符URI就是在某一规则下能把一个资源独一无二地标识出来。 拿人做例子,假设这个世界上所有人名字都不能重复,那么名字就是URI一个实例,通过名字这个字符串就可以标识...
  • 一:URI和URL URI(统一资源标识符) URI格式 表示指定uri,要使用绝对URI,绝对的URL以及相对的URL。相对的URL,是指从浏览器基本URI处指定的URL。 绝对URI格式: 查询字符串:可以针对指定路径传入...
  • HTTP 协议

    2015-11-24 10:37:36
     http协议是无状态,同一个客户端这次请求上次请求是没有对应关系,对http服务器来说,它并不知道这两个请求来自同一个客户端。 为了解决这个问题, Web程序引入了Cookie机制来维护状态.   GET提交...
  • http协议详解

    2020-05-31 18:10:33
    httptcp的关系?二、http简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。 HTTP是一个基于TCP/IP通信...
  • 而实际上,URL不存在参数上限问题,HTTP协议规范没有对URL长度进行限制。这个限制是特定浏览器及服务器对它限制。IE对URL长度限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有...
  • 而实际上,URL不存在参数上限问题,HTTP协议规范没有对URL长度进行限制。这个限制是特定浏览器及服务器对它限制。IE对URL长度限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有...
  • HTTP协议详解

    2020-05-08 17:49:58
    欢迎来我的个人网站,里面有最新的版本 ... 一、常见面试题 先来看看一些常见的面试题 ...httptcp的关系 二、Http简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:Wo.
  • 三.TCP/IP协议TCP IP协议关系四.OSI七层模型TCP/IP五层模型五.URI和URL介绍区别 注:文章部分图片来自于《图解HTTP》 一.HTTP介绍 在浏览器输入框输入一个网页:www.baidu.com,背后发生了什么? 我们...
  • http-2-uri和url

    2020-10-29 09:18:16
    1.uri的定义 uri:uri是某个协议方案表示的资源定位标识符。协议方案指的是访问资源使用的协议名称。 2.uri和url的关系 uri用字符串标识某一资源而url表示该资源的地点。
  • HTTP协议系统学习

    千次阅读 2019-12-19 17:09:20
    目录 ... 1、浏览器背后的故事 ... ... 3.1、TCP/IP协议族 ...4、各种协议与HTTP协议的关系 二、熟悉HTTP 1、HTTP协议特点 2、迷之URL和URI 3、HTTP报文结构分析 3.1、常用报文头 3.2、HTTP常用方法 3.3、状态码...
  • 浏览网页时在浏览器地址栏中输入的URL前面都是以"http://"开始HTTP定义了信息如何被格式化、如何被传输,以及在各种命令下服务器浏览器所采取响应。 HTTPS(全称:Hypertext Transfer Protocol over ...
  • HTTP协议简介

    2019-06-24 11:10:00
    HTTP(超文本传输协议)是应用层上一种客户端/服务器模型通信协议,它由请求响应构成,且是无状态。  • 协议:规定了通信双方必须遵循数据传输格式,这样通信双方按照约定格式才能准确通信。  • 无...
  • 各协议与HTTP协议的关系3. HTTP请求报文响应报文格式4. URI和URL5. HTTP方法5.1 常用的HTTP方法5.2 GETPOST的区别6. HTTP 1.0的特点5.1 持久连接5.2 管线化7. HTTP状态码8. HTTPS8.1 HTTP请求存在的问题8.2 ...

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 324
精华内容 129
关键字:

url和http协议的关系