DNS:Domain Name System

The Domain Name System convert user-friendly names,like www.umich.edu, to network-friendly IP address, like 141.211.32.166 .

也就是说 DNS 主要的工作是 域名的转换。

网络号和IP地址很重要,是因为它们把网络连接的地址 编译成计算机语言(encode)。但我们人并不是那么在意这个东西,www.facebook.com 和 www.umich.edu 才是我们真正关心的。

DNS 并不是 TCP/IP 协议簇里的层(layer),它类似于夹在 Internetwork Layer,Transport Layer,和 Internet 之间。它不在 Link Layer 中,但是它利用了Link Layer。

所以 DNS 和 domain names 紧密的联系在了一起。

  • 数字的地址(像 141.211.63.45)对路由器来说是非常重要的,但是对于我们人来说是很讨厌的。
  • 每一个校园都是 一些网络的结点。(原文:Each campus ends up with a lot of networks.)
  • 有时候(非常少),IP地址会被重新分配。
  • 当服务器移动的时候,它们需要新的地址。

路由器只是简单的根据IP地址转递数据报,它们对域名一无所知。数字地址(就像IP地址),人们很讨厌去记忆这些东西。

早期的校园中,只有一个网络号,但是现在一个校园会有20-40个网络号。非常多组的地址。

所以人们创造了域名这个概念,这种 我们可以从IP地址转换映射(switch the mapping)过来的 显而易见的名字。

DNS:Internet Address Book

  • Domain Name System 是一个 大型的 快速的 分布式的 数据库(database):Internet name to Internet “phone numbers”。141.211.63.44 从左往右读起来像个电话号码。
  • The IP address reflect technical “geography”.
  • Domain name reflect organizational structure.
  • www.si.umich.edu 从右往左念就像一个邮政的地址:2455 North Quad,Ann Arbor,Ml 48109,USA,Earth。也就是说,从最普遍的 到 最特殊的

所以 DNS 就像是网络地址的书籍一样,它是一个大型的分布式的数据库,它使用缓存文件因此就算网络部分拥堵,速度还是很快。

www.si.umich.edu 各部分:
* edu:education institution
* umich.edu:particular educational institution University of Michigan.
* si.umich.edu:the school of information at the University of Michigan.
* www 是学校里的一个特殊的服务器

Domain Name Space



域名是被拥有的,它们有点像层次结构一样。Educause 组织 拥有 .edu 这个域名,他们拥有是否给予你这个域名的权利。

在.com 和 .org 首先注册的人拥有优势,也有一些规定,比如如果我拥有了 www.cocacola.com 然后我并没有特别的目的去使用它,拥有 Cocacola商标 的人就会收回它,除非我有一个合法的目的来拥有它。

密歇根大学,在原有的基础上创建了一个子域的机制。如果我们想要有一个学习的系统:ctools.umich.edu,我们需要去申请并给出合理的理由来争取到它。

也就是说,你需要向域名的拥有者申请,由域名的拥有者来决定是否给予你。

Transport Control Protocol(TCP)

  • Transport Layer 的责任 是 显示通向 应用 的可信赖的 端对端的通道(present a reliable end-to-end pipe to application)。
  • 数据按合适的要求抵达目的地,否则的话是因为连接终止了(closed)。
  • TCP 使得 发送端 和目的端的系统 保存数据(已经到达目的地的无序的数据 或者是 中途丢失需要重新发送的数据)的缓存。
  • TCP 提供 在应用之间的个体的连接(TCP provides individual connections between applications)。

TCP 在一定程度上 弥补了IP协议的不完美,TCP 在目的端和发送端的 缓存机制 使得网络迅速的发展。



对于 applications 来说,我们所要做的事情,就是从上图的左端,发送数据,然后从上图的右端,可靠的有序的接收数据。

关于 TCP/IP连接栈 内部的实现细节,是复杂的,每一层都解决了各自的问题,最终提供了可靠快速的服务。

花费了无数的金钱和精力,解决了栈内部实现的这些问题。

2016/8/5

【Coursera】Sixth Week(2)的更多相关文章

  1. 【Coursera】Sixth Week(1)

    Transport Layer 在学习完 Link Layer(Ethernet),Internetwork Layer(IP)之后,我们来到了TCP/IP协议簇的上半部分. Review:Magic ...

  2. 【Coursera】Security Introduction -Ninth Week(2)

    对于公钥系统,我们现在已经有了保证它 Confidentially 的一种方法:SSL.SSL利用了公钥的概念. 那么 who we are talking to? Integrity Certifi ...

  3. 【Coursera】Security Introduction -Ninth Week(1)

    前言 Coursera 的 Internet History,Technology,and Security 进入最后一周的学习了,在这最后一周内,需要进行的内容是 public-key 公钥系统的讲 ...

  4. 【Coursera】Security Introduction -Eighth Week(2)

    Review -Terminology(术语): Confidentiallity & Integrity 泄密 & 欺骗 Confidentiallity: Prevent unau ...

  5. 【Coursera】History: Dawn of Electronic Computing学后小结

    今天学习了Coursera上University of Michigan开的互联网的历史.技术和安全课程的FirstWeek内容. 先是吐槽下这个Coursera,认证非常麻烦,PC端需要摄像头拍照. ...

  6. 【Coursera】支持向量机

    一.最大间隔分类器 1. 函数间隔:\(γ^{i} = y^{i}(w^{T} x + b)\), 改变w和b的量级,对分类结果不会产生任何影响,但是会改变函数间隔的大小.因此,直接对函数间隔求最大值 ...

  7. 【Coursera】Internet History 读书笔记

    前言 这个Internet History 有些令人劝退.电脑无法播放视频.手机不能播放.最后百度了改了hosts文件才可以. 附上解决方法: 解决coursera可以登录但无法播放视频 第一周 第三 ...

  8. 【Alpha】——Sixth Scrum Meeting

    一.今日站立式会议照片 二.每个人的工作 成员 昨天已完成的工作 今天计划完成的工作 李永豪 对统计出现的问题进一步完善 学习将项目做成APK 郑靖涛 完善报表设计 协助设计账目一览表板块 杨海亮 测 ...

  9. 【Coursera】Security Introduction -Summary

    对这门课程的安全部分进行一个小结. 往期随笔 第八周第一节 第八周第二节 第九周第一节 第九周第二节 前言:为什么互联网要提及安全 因为security牵扯到我们每一个人,有人每时每刻都想着要偷取别人 ...

随机推荐

  1. HTML5(字符标准,表单)

    字符标准 <meta charset="utf-8"> 表单 1.HTML 表单用于搜集不同类型的用户输入. 实例——创建文本字段 <form action=&q ...

  2. 使用客户端等远程连接mysql数据库

    1:  远程数据库(D1)数据: 数据库用户:root,数据库密码:root,数据库ip 内网地址  192.168.100.91,数据库端口 3306 本地主机:ip  192.168.127.1 ...

  3. spark的ML和MLLib两个包区别和联系?

    原文链接:https://www.zhihu.com/question/35225203/answer/123986969 1. 技术角度上,面向的数据集类型不一样:ML的API是面向Dataset的 ...

  4. iOS 开发笔记-plist使用

    1.创建一个plist 2.填写为ImageList.plist 3.填入数据 4.完成 加载代码: @interface UYViewController () //图片信息的数组 @propert ...

  5. 9/24matplotlib使用入门

    ---恢复内容开始--- matplotlib的使用中有好几种输出风格,有matlab风格,和官方文档的as风格,各有所长,本文对比介绍官方文档中的使用风格. 我们画图的目的是要将函数以图像显示出来, ...

  6. Echarts使用及动态加载图表数据 折线图X轴数据动态加载

    Echarts简介 echarts,缩写来自Enterprise Charts,商业级数据图表,一个纯JavaScript的图表库,来自百度...我想应该够简洁了 使用Echarts 目前,就官网的文 ...

  7. js匿名自执行函数中闭包的高级使用(---------------------------******-----------------------------)

    先看看最常见的一个问题: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  8. Keepalived保证Nginx高可用配置

    Keepalived保证Nginx高可用配置部署环境 keepalived-1.2.18 nginx-1.6.2 VM虚拟机redhat6.5-x64:192.168.1.201.192.168.1. ...

  9. Q-learning简明实例

    本文是对 http://mnemstudio.org/path-finding-q-learning-tutorial.htm 的翻译,共分两部分,第一部分为中文翻译,第二部分为英文原文.翻译时为方便 ...

  10. linux chkconfig 管理服务开机自启动

    chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--ad ...