TCP/IP协议族之应用层协议 ( DNS HTTP )

域名系统DNS: Domain Name System

    一种分布式的网络目录服务,主要用于域名与IP地址的要互转换。

    使用UDP协议35端口进行通信。

工作方式:为了将一个域名映射到一个IP地址,应用程序调用一个称为解析器的程序,将域名作为参数传送给该程序;解析器将域名封装到一个UDP包中,发送给本地域名服务器;域名服务器将域名映射到IP地址,将IP地址封装到一个UDP包中,发回给解析器,解析器再将IP地址返回给调用者。有了这个IP地址,应用程序就可以与目的方建立一个TCP连接或者发送一个UDP包。

DNS的域名解析服务有两种:正向域名解析和逆向域名解析。

域名解析的方式有两种:递归解析、反复解析。

    递归解析:要求域名服务器一次性完成全部 域名-地址 的转换。

    反复解析:每次请示一个服务器,不行再请求另一个服务器。

递归解析的工作方法:解析器去查询默认的DNS服务器;若该服务器无法解析,则由该服务器再去向另一服务器查询,直到获得解析或解析失败;结果将逐级反馈回来,最后发送给解析器为止。

反复解析的工作方式:解析器去查询默认DNS服务器,若该服务器无法解析,则送回另一个DNS服务器的地址,解析器再去向这个DNS服务器查询;依次下去,直到获得解析或无法获得新的DNS服务器地址为止。如果无法获得新DNS服务器地址,则解析失败。

逆向解析:采用指针询问。例如:

    中山大学域名:sysu.edu.cn , 对应IP网段为 202.116.64.0/24 ,则该域名的反向解析为:64.116.202.in-addr.arpa 。保留网段,忽略主机段,IP网段地址以逆向方式表达。

因特网域名结构:域名中的标号由英文字母和数字组成,每一个标识符不超过63个字符。由多个标号组成的完整域名总共不超过255个字符。

-------------------------------------------------------------------------------------

超文本传输协议HTTP:  Hypertext Transfer Protocol

    是应用层上的一种请求/响应式的协议,实现客户端与服务器的通信,是WWW发布信息的主要协议。

    默认连接端口是TCP80。

HTTP通过 URL ( Uniform Resource Locator, 统一资源定位符 ) 来定位web服务器资源。URL是Internet上用来描述信息资源的字符串,包括服务器的域名、目录和文件。 例如:

    http://www.microsoft.com/windows/default.html

    含义:  http://    代表超文本传输协议

              www.microsoft.com/   代表web服务器域名

              windows/    代表目录

              default.html    是文件目录下的一个html文件

浏览器通过DNS服务器将URL中的域名解析为IP地址,根据IP地址向web服务器发送HTTP请求,web服务器收到HTTP请求后,会回应一个HTTP应答。HTTP应答内容符合HTML ( Hypertext Markup Language, 超文本标记语言 ) 格式。

HTTP工作原理:

<1>. web客户端与web服务器建立TCP连接

<2>. web客户端通过浏览器向web服务器80端口发送HTTP连接请求

<3>. 如果web服务器允许访问,则返回连接确认,双方建立HTTP连接

<4>. web客户端发送HTTP页面请求

<5>. web服务器寻找该HTTP文件,如果找到则返回该文件的超文本。web客户端的浏览器对接收到的超文本进行解析,翻译成格式化的页面,显示给用户

<6>. web服务器发送完HTTP内容后,断开HTTP连接

<7>. 双方断开TCP连接

HTTP有请求( HTTP Request )和响应( HTTP Response)两种报文。

请求报文:

请求格式:request  request-url  HTTP版本号

HTTP/1.0 有三种请求类型:

<1>. GET请求:是以实体的方式得到由请求URL所指定资源的信息,如果请求UTL只是一个数据产生过程,那么最终要在响应实体中的是处理过程的结果所指向的资源,而不 是处理过程的描述。GET是向服务器发索取数据的一种请求。

<2>. HEAD请求:只返回指定文档的首部信息,不包括文档主体。

<3>. POST请求:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URL所指定资源的附加新子项。POST是向服务器提交数据的一种请求。

响应报文:

状态行以HTTP版本号开始,后面跟随3位数字表示的响应代码,如下:

 

复制代码
  
  
类型 响应代码 说明 信息 200 OK。请求成功。 201 OK。新的资源建立(POST)。 202 请求被接受, 但处理未完成。 204 OK。但没有内容返回。 重定向 301 所请求的资源已被指派为新的固定的URL 302 所请求的资源临时定位于新的URL 304 文档没有修改 (条件GET) 客户 400 错误的请求 差错 401 未被授权,要求用户认证 403 不明原因的禁止 404 没有找到 服务器 500 内部服务器差错 差错 501 没有实现 502 错误的网关,网关或上游服务器来的无效响应 503 服务器暂时失效
复制代码

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了小程序应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值