43、DNS域名系统(应用层)_cs.vu.nl域名-程序员宅基地

技术标签: 计算机网络(Andrew、David著\严、潘译)  计算机网络  

应用层引言

  • 应用层下面的各层提供了传输服务,但它们并不真正为用户工作。在本章中,我们将学习一些实际的网络应用。然而,即使在应用层也仍然需要协议的支持,以便各种应用程序能够工作。因此,在开始介绍这些应用之前,我们将先介绍其中的一个协议。这个协议就是DNS ,它负责处理Internet 命名问题。之后,我们将介绍3 个实际应用:电子邮件、万维网( World Wide Web)和多媒体。我们将以对内容分发应用的简单介绍来结束本章,包括对等网络的基本概念。

引言

  • 虽然在理论上,所有程序通过使用它们存储的计算机网络地址(例如IP ),就可以访问Web 主页、邮箱和其他资源,但是这些地址很难让人记住。而且浏览一个公司在128.111.24.41 上的Web 主页,意味着如果该公司将主页移到了另一台机器上,且该机器具有了不同的IP 地址时,那么必须将该机器的IP 地址通知到每个人。因此,人们引入了可读性好的高层名字,以便将机器名字与机器地址分离开。在这种方式下,无论真正实用的IP 地址是什么,人们熟知的公司Web 服务器为 www.cs.washington.edu。然而,因为网络本身只能理解数字形式的地址,所以需要某种机制将名字转换成网络地址。下面,我们学习如何在Internet 上完成这种从名字到地址的映射。
  • 早期的ARPANET,那时只有一个简单的文件,名叫hosts.bet,它列出了所有的计算机名字和它们的IP 地址。每天晚上,所有主机都从一个维护此文件的站点将该文件取回,然后在本地进行更新。对于一个拥有几百台大型分时机器的网络而言,这种方法工作得相当好。然而,当几百万台PC 连接到Internet 以后,使用网络的每个人都意识到这种方法将不能继续有效工作了。一方面,这个文件变得非常庞大。然而,更重要的是,除非集中管理机器名字,否则主机名冲突的现象将会频繁发生:而且在一个巨大的国际性网络中,由于负载和延迟,要实现这种集中式的管理简直难以想象。为了解决这些问题, 1983 年人们发明了域名系统( DNS, Domain Name System )。自发明以来,它一直是Internet 的关键组成部分。
  • DNS 的本质是发明了一种层次的、基于域的命名方案,并且用一个分布式数据库系统加以实现。DNS 的主要用途是将主机名映射成IP 地址,但它也可以用于其他用途。RFC 1034、1035 、2181 给出了DNS 的定义,后来其他文档对它又做了进一步的阐述。简要地说, DNS 的使用方法如下所述。为了将一个名字映射成IP地址,应用程序调用一个名为解析器( resolver)的库程序,并将名字作为参数传递给此程序。传输层Internet文件服务器实例中的gethostbyname 就是一个解析器例子。解析器向本地DNS 服务器发送一个包含该名字的请求报文:本地DNS 服务器查询该名字,并且返回一个包含该名字对应胆地址的响应报文给解析器,然后解析器再将IP地址返回给调用方。查询报文和响应报文都作为UDP 数据包发送。有了IP地址以后,应用程序就可以与目标主机建立一个TCP 连接,或者给它发送UDP 数据包。
1、DNS名字空间
  • 管理一个大型并且经常变化的名字集合不是个简单的问题。在邮政系统中,名字管理要求所有的信件必须(隐式地或显式地)指定国家、州或省、城市、街道地址以及收件人的名字。通过这种地址的层次结构,纽约州White Plains 市Main 大街上的路人甲与德克萨斯州奥斯汀市Main 大街上的路人甲就不会产生混淆。DNS 采用了同样的工作方式。对于Internet,命名层次结构的顶级由一个专门组织负责管理。该组织名为Internet 名字与数字地址分配机构(ICANN, Internet Corporation for Assigned Names and Numbers)创建于1998 年,它是Internet 成长为全球性并且受到经济关注的部分成熟标志。从概念上讲, Internet 被划分为超过250 个顶级域名( top-level domains ),其中每个域涵盖了许多主机。这些域又被进一步划分成子域,这些子域可被再次划分,依此类推。所有这些域可以表示为一棵树,如下图所示。树的叶子代表没有子域的域(当然要包含机器)。一个叶结点域可能包含一台主机,或者代表一个公司,该公司包含数以千计的主机。在这里插入图片描述
  • 顶级域名分为两种类型:通用的和国家或地区的。在下表中列出的通用域名包括从20 世纪80 年代开始的原始域名和向ICANN 申请引入的新域名。将来或许会增加其他的通用顶级域名。国家或地区域名包括每个国家或地区,国家或地区的域名由ISO 3166 文档定义。2010年推出了使用非拉丁字母的国际化国家或地区域名(比如说.中国)。这些域名使得说阿拉伯语、西里尔文、中文或其他语言国家的人以自己的母语来命名他们的主机。获得一个二级域名容易得多,比如 name-of-company.com。顶级域名由ICANN 委任的注册机构(regis位ar)负责运行。要获得一个域名,只要到相应的注册机构(在这种情况下是com ),检查所需的名字是否可用,并且不是别人的商标。如果没有问题,请求注册域名的一方向管理域名的注册方支付一小笔年费,即可得到心仪的域名。
  • 然而,随着Internet 变得越来越商业化和越来越国际化,它也变得更具争议性,特别是在有关域名的事务上。这样的争议包括ICANN 本身。例如,×××域名创造了好几年,法院己经审理要解决它。自愿将成人内容放在自己的域名空间中到底是好事还是坏事(有些人不希望成人内容对Internet 上的所有人都开放,而其他人则想把成人内容放在一个域名中,以便让保姆过滤器很容易地找到并阻止儿童看到)?有些域名可以自我组织,而另一些则对谁可以得到一个该域名空间中的名字有限制,正如下表中所指出的那样。但是,什么样的限制才是适当的呢?我们用pro 域名作为例子说明。这是一个分配给合格的专业人员所用的名字。但问题是谁才是专业的呢?显然医生和律师是专业人士,但自由摄影师、钢琴教师、魔术师、管道工、理发师、灭虫者、纹身艺术家和雇佣军等算专业人士吗?这些职业有资格当选吗?按照谁的标准呢?(有些限制否并非很严格,个人有钱也可以申请诸如pro所谓的限制域名,注)
预定使用<
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ao__ao/article/details/88616300

智能推荐

文心一言api接入如何在你的项目里使用文心一言_文言一心api-程序员宅基地

文章浏览阅读7.5k次,点赞6次,收藏47次。基于百度文心一言语言大模型的智能文本对话AI机器人API,支持聊天对话、行业咨询、语言学习、代码编写等功能.您的AppKey和uid是重要信息,请务必妥善保存,避免泄漏!您的AppKey和uid是重要信息,请务必妥善保存,避免泄漏!您的AppKey和uid是重要信息,请务必妥善保存,避免泄漏!AppKey申请通过后,登录。请求方式: POST。_文言一心api

别再用硬编码写业务流程了,试试这款轻量级流程编排框架-程序员宅基地

文章浏览阅读488次。前言在每个公司的系统中,总有一些拥有复杂业务逻辑的系统,这些系统承载着核心业务逻辑,几乎每个需求都和这些核心业务有关,这些核心业务业务逻辑冗长,涉及内部逻辑运算,缓存操作,持久化操作,外部..._什么业务场景要用到编排工具

P1015 回文数_1、若一个5位数字从左向右读与从右向左读都一样,我们就将其称之为回文串。小申编-程序员宅基地

文章浏览阅读297次。题目描述若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。例如:给定一个十进制数5656,将5656加6565(即把5656从右向左读),得到121121是一个回文数。又如:对于十进制数8787:STEP1:8787+7878=165165STEP2:165165+561561=726726STEP3:726726+627627=13531..._1、若一个5位数字从左向右读与从右向左读都一样,我们就将其称之为回文串。小申编

直线与球体的交点lisp_晓东CAD家园-论坛-A/VLISP-[LISP函数]:计算直线与曲线交点-:5 如何用Lisp程序计算支线Line与曲线(二次样条或PLINE拟合曲线)三交点,请诸位高手提...-程序员宅基地

文章浏览阅读389次。[font=courier new]86. xdrx_getinters功能:1.求两个AcDbCurve(曲线)实体的交点.2.求一个AcDbCurve(曲线)实体和一个选择集中所有AcDbCurve(曲线)的交点。3.求一个选择集中所有AcDbCurve(曲线)实体的交点.4.求一个选择集SS1中的所有AcDbCurve实体和另个选择集SS2所有AcDbCurve实体的交点。调用格式: 1. ..._lisp inters

HDU 1198 - Farm Irrigation-程序员宅基地

文章浏览阅读44次。Problem DescriptionBenny has a spacious farm land to irrigate. The farm land is a rectangle, and is divided into a lot of samll squares. Water pipes are placed in these squares. Different square has...

JAVA功能代码《3》----获取Java现在正调用的方法名-程序员宅基地

文章浏览阅读45次。3.获取Java现在正调用的方法名String methodName = Thread.currentThread().getStackTrace()[1] .getMethodName();_java string methodname = thread.currentthread().getstacktrace()[3].getmethod

随便推点

Axis2/c 知识点-程序员宅基地

文章浏览阅读145次。官网文档: http://axis.apache.org/axis2/c/core/docs/axis2c_manual.html从文档中可以总结出:1. Axis2/C是一个用C语言实现的Web Service引擎。Axis2/C基于Axis2架构,支持SOAP1.1和SOAP1.2协议,并且支持RESTful风格的Web Service。基于Axis2/C的Web Service可以..._axis2/c服务端调用axis2_get_instance

企业架构方法论-程序员宅基地

文章浏览阅读3k次。目前主要的两种架构方法(准确的说是方法论),具体的方法也是有的,也有可实际操作层面的东西,那要看很多的各个细分专业层面的东西。比如画流程图,业务流程图、数据流程图、系统交互流程图等等。togafzachmanzachman业务建模分析框架,相比于togaf,直观上直接提供了可操作的东西,可能大家更容易接受一些。这里推荐一个架构设计的专业工具,是免费的,即ArchMateArchi – Open Source ArchiMate Modelling (archim..._企业架构方法论

堆栈与队列的方法区分、优先队列的应用_判断是栈还是队列还是优先队列-程序员宅基地

文章浏览阅读123次。堆栈与队列具体的方法区分_判断是栈还是队列还是优先队列

上海计算机学会2021年7月月赛C++丙组T1布置会场-程序员宅基地

文章浏览阅读352次,点赞8次,收藏8次。小爱老师可以购买两份双拼花束后,将他重新组合成一束百合花+一束郁金香。已知布置会场需要用到x束百合花与y束郁金香,请问小爱老师购买花朵最少花费需多少元?输出共一行,一个正整数,表示小爱老师购买花朵最少花费需多少元。直接购买8束百合+6束郁金香,共计8*8+6*10=124元。内存限制: 256 Mb时间限制: 1000 ms。先购买12束双拼花朵,花费12*8=96元,第一行:两个正整数表示需要的花束数量x,y。第二行:三个正整数表示花束费用a,b,c。再购买2束百合花,花费2*8=16元,

python实现ping某一ip_使用Python测试Ping主机IP和某端口是否开放的实例-程序员宅基地

文章浏览阅读518次。使用Python方法比用各种命令方便,可以设置超时时间,到底通不通,端口是否开放一眼能看出来。命令和返回完整权限,可以ping通,端口开放,结果如下:无root权限(省略了ping),端口开放,结果如下:完整权限,可以ping通,远端端口关闭,结果如下:完整权限,可以ping通,本地端口关闭,结果如下:完整权限,不能ping通(端口自然也无法访问),结果如下:pnp.py代码#!/usr/bin/..._python ping ip无管理员权限

zplane函数怎么用m文件调用_matlab中cla用法-程序员宅基地

文章浏览阅读738次。零极点与系统稳定性的关系 4.状态方程含义 5.使用 zplane 函数 [实验原理] 该实验用 MATLAB 中库函数,如 tf2zp(b,a),ss2zp(A,B,C,D),zplane(z,p),......MATLAB 中相关命令 aa abs 绝对值、模、字符的 ascii 码值 a...零极点与系统稳定性的关系 4.状态方程含义 5.使用 zplane 函数 [实验原理] 该实验用 M..._matlabcla。m文件