下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

全方面讲解IP、TCP和DNS与HTTP的密切关系

作者:课课家教育     来源: http://www.kokojia.com点击数:865发布时间: 2017-07-28 15:00:32

标签: 计算机互联网数据库

     今天跟大家分享一下“IP、TCP和DNS与HTTP的密切关系”,这篇文章都是一些比较简单的内容,要是对这方面有着很高的见解大神还请让道,当然如果可以的话,也可以交流一下。

    知识点

  •IP协议的概念与作用

  •TCP协议的概念与作用

  •TCP协议的三次握手过程

  •DNS的概念与作用

  •HTTP与TCP、IP和DNS的关系

  一、IP协议的概念与作用

  IP的概念:

  英文为Internet Protocol,翻译成网际协议,位于网络层。

  这个网际协议这个名字听起来有点夸张,但事实就是这样,因为几乎所有使用网络的系统都会用到IP协议。TCP/IP协议族中的IP指的是网际协议,它在协议名称中占据了一半的位置,从这可以知道IP协议是多么的重要。这里我们需要注意两个概念,IP和IP地址,可能有人会把它搞混。IP其实是一种协议的名称,而IP地址是一个地址。

  IP的作用:

  把各种数据包传送给对方。如果要保证确定传送到对方那里,则需要满足各类条件,其中最重要的两个条件是IP地址和MAC地址。

  (1)IP地址:指明了节点被分配到的地址

  (2)MAC地址:是指网卡所属的固定地址

  (3)区别:IP地址可变换,但MAC地址基本上不会更改。

  如果你想要保证数据包传送到对方去,那就必须满足各种条件,其中最重要的两个条件是IP地址和MAC地址。

  什么是IP地址呢?IP地址指明了节点被分配到的地址。而什么又是MAC地址呢? MAC地址的网卡所属的固定地址。形象一点来说,MAC地址就像我们的身份证号,每一个MAC地址是唯一的,并且基本不会改变。这里我为什么说基本不会改变呢?因为目前我们可以通过软件修改,也就是用软件来修改MAC地址。IP地址是可以和MAC地址进行配对的。

  我们来了解一下使用ARP协议凭借MAC地址进行通信

  什么是ARP协议呢?ARP协议它是一种用以解析地址的协议,我们只要知道通信方的IP地址,就可以反查出对应的MAC地址。也就是说IP间的通信依赖于MAC地址。

  我们来看一下这个图:

全方面讲解IP、TCP和DNS与HTTP的密切关系_计算机_互联网_数据库_课课家教育

  在网络上,通信的双方通常都是要经过多台计算机或者网络设备中转才能连接到对方。而在进行中转时,会利用下一站中转设备的MAC地址来搜索下一个中转目标,这时我们就是靠ARP协议来进行处理。

  TCP/IP其实是两个网络基础协议:IP协议、TCP协议名称的组合。下面我们分别来看看这两个无处不在的协议。

  IP协议。

  IP(InternetProtocol)协议的英文名直译就是:因特网协议。从这个名称我们就可以知道IP协议的重要性。在现实生活中,我们进行货物运输时都是把货物包装成一个个的纸箱或者是集装箱之后才进行运输,在网络世界中各种信息也是通过类似的方式进行传输的。IP协议规定了数据传输时的基本单元和格式。如果比作货物运输,IP协议规定了货物打包时的包装箱尺寸和包装的程序。除了这些以外,IP协议还定义了数据包的递交办法和路由选择。同样用货物运输做比喻,IP协议规定了货物的运输方法和运输路线。

  DNS

  DNS(DomainNameSystem,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC2181对DNS有规范说明,RFC2136对DNS的动态更新进行说明,RFC2308对DNS查询的反向缓存进行说明。

  HTTP

  超文本传输协议(HTTP,HyperTextTransferProtocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人TedNelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。TedNelson组织协调万维网协会(WorldWideWebConsortium)和互联网工程工作小组(InternetEngineeringTaskForce)共同合作研究,最终发布了一系列的RFC,其中著名的RFC2616定义了HTTP1.1。

  二、TCP协议的概念与作用

  (1)TCP的概念:TCP英文为Transmission Control Protocol ,翻译成传输控制协议,位于传输层。

  (2)TCP有什么作用呢?它是提供可靠的 字节流服务。

  (3)什么是字节流服务?所谓的字节流服务指的是,为了方便传输,将大块数据分割成 以报文段为单位的数据包 进行管理

  (4)为何强调可靠呢?因为它能够把数据准确可靠地传送给对方。总而言之,TCP协议就是为了 更容易传送大数据 才把数据分割,而且TCP协议能够确认数据 最终是否送达对方。

  (5)TCP协议如何才能保证提供可靠的服务?它采用了三次握手策略。 也就是用TCP协议 把数据包送出去后,它不会对传送后的情况置之不理,它一定会想对方确认 是否成功送达。

  三、TCP协议的三次握手过程

  我们来看一下这个图:

握手过程中使用了TCP的标志-SYN和ACK。发送端首先发送一个S带SYN标志的数据包给对方。接收端接到后,就会回传一个带有SYN/ACK标志的数据包 以表示传达确认信息。

  握手过程中使用了TCP的标志-SYN和ACK。发送端首先发送一个S带SYN标志的数据包给对方。接收端接到后,就会回传一个带有SYN/ACK标志的数据包 以表示传达确认信息。最后,发送端再回传一个带ACK标志的数据包 给接收端, 此时代表“握手”结束。除了三次握手来保证通信的可靠性,TCP协议还有其他各种手段来保证通信的可靠性,这里我就不过多讲解了,大家可以自己翻阅相关资料去了解下。

  四、DNS的概念与作用

  (1)DNS的概念:英文为Domain Name System ,翻译成域名系统,位于应用层。

  (2)DNS有什么作用呢? 它是提供域名到IP地址之间的解析服务。

  我们平时访问一个网站,通常都是使用主机名或域名来访问,而不是直接通过IP地址来访问。为什么我们不用IP地址去访问呢?因为IP地址是一组纯数字,比较难记。比如说,我们极客学院的IP地址为121.42.104.52,而域名为www.itcen.cn。 如果我们用IP地址去访问网站,那是很难记得住的。而用域名就比较容易记住了。但是呢,计算机和人不一样,你要计算机去理解名称,相对来说就比较困难了。计算机比较擅长处理一长串数字。为了解决这个问题,就有了DNS服务。DNS协议它是提供 通过域名 来查找IP地址,或者逆向 从IP地址反查域名 的服务。

  五、HTTP与TCP、IP和DNS的关系

  最后我们通过一张图来了解一下HTTP与TCP、IP和DNS的关系,看看它们在通信的过程中各种发挥了什么作用。

最后我们通过一张图来了解一下HTTP与TCP、IP和DNS的关系,看看它们在通信的过程中各种发挥了什么作用。

  我来拿我的博客来举个例子:

  首先是,我想访问网站,将域名发送给DNS去解析,DNS解析后将网站的IP地址返回给客户端,然后通过IP地址发起HTTP请求。HTTP此时的作用是 生成针对目标web服务器(我们这里指的是网站的服务器)的HTTP请求报文,然后将请求报文传送给传输层,此时为了方便通信,TCP会将HTTP请求报文 分割成报文段,这些报文段会有一个序号,这里的报文段哪一个先发送哪一个先到达,它们是按序传送的。只要建立起TCP连接,客户端与服务器之间的报文交换就不会丢失,不会被破坏,也不会在接收时出现错序。接着到了网络层,此时IP协议的职责是,搜索对方的地址,一边中转一边传送。然后找到了服务器的位置,此时服务器的传输层中 TCP的职责是 接收到对方传送过来的报文段后,对其进行重组,这里的重组是按序号进行重组的。然后到了服务器的应用层,HTTP会对客户端请求的内容进行处理。处理完后,服务器同样会利用TCP/IP通信协议向客户端进行回传响应。最后客户端收到响应后,将内容输出页面显示。即完成了一次HTTP事务。

     结束语:看完文章的小伙伴对IP、TCP和DNS与HTTP的关系了解一些了吧!如果想要了解更多这方面的内容,随时可以登陆课课家,对这方面不是很了解,没关系课课家上面有很多入门的知识,我们可以从头开始。

赞(25)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程