Week 5 (续)

Layer 2: Internet Protocol

The InterNetwork (IP)

老师强调了一下不用去记住他介绍的人所说的每句话,而是记住要点,了解老师所做的PPT的内容,所以贴图介绍5-1最后的Ethernet的发明人Robert的基本介绍:

老师说只是想让我们知道smart people做cool的事,并不需要我们明白一切事= =(心情放松了一些)。接下类讲Link Layer。

想象一下,大约又20000~50000名工程师花了将近20年时间来指出如何做这项工作。他们只针对Link Layer,而忽略其他层的问题,这种思考方式值得称赞。

You focus like crazy on the stuff that you're focusing on.

接下来介绍Internet Protocol Layer

现在只需要思考,如果你有一个带有地址的卡片,我可以到达目的地吗?我将如何转发?(无需考虑Link Layer),在IP层

目标是:将数据从你的电脑传送到别人的电脑;
每个路由器都知道附近路由的信息;
IP的好处之一就是可以丢弃错误的信息。

关于IP地址的介绍:
IP地址是全球性质的number,与所连接的服务器、工作者有关,也就是说会改变。
每个直接向Internet发送包的系统都拥有一个独一无二的IP地址。也就是说你电脑连接网络上网,那么上面的管理机构就会给你的电脑分配一个唯一的ID来标识你的身份。
IP地址是基于station所连接的地方。意思是说我在福州读书,那我的地址就是福州市,如果我在北京工作,那我的地址就变成了北京市。
IP地址的设定不是被某家机构所控制的,地址是被分配的。
IP地址就像一串电话号码,发明出来之后很长一段时间才得到承认。

下面介绍IP地址的格式(format):

  • 四串带有小句点的数字,每串数字可以是1~255(32 bits) 比如说114.114.114.114。
  • IP地址像电话号码一样带有“area code”。
  • 有网络前缀。例如视频里所列举的141.211.144.188的前缀是141.211,网路中的包都会发送到141.211..这个区域中。

While in the network, all thst matters is the Network number.

  • 当数据穿越互联网时,最重要的是"网络号码"。
    (p6)
    路由表:记录包将发往那里的列表,基于目的网络地址;相邻链路上的带宽;相邻链路上的流量;相邻节点状态等。
    路由表是通过访问与其相邻的路由表来交换信息的。

DHCP:Dynamic Host Configuration Protocol,即动态主机配置协议。
DHCP功能:

  • 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。
  • DHCP应当可以给用户分配永久固定的IP地址。
  • DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。
  • DHCP服务器应当向现有的BOOTP客户端提供服务。

假若你在不同的场景使用电脑,比如我在宿舍、在福州西湖公园、在鼓浪屿等不同地方上网,为什么我们可以连接上网络可是我们的IP地址却没有出现错误呢?
我们电脑的自身在出厂时就分配好了物理地址,而IP地址的分配时动态的,当在不同的地方连接上网,就会被分配不同的IP地址以用于标明该电脑的身份。

Non-Routable Addresses:无路由地址?
NAT(Network Address Translation,网络地址转换):通俗一点解释,比如我宿舍一口4个人的电脑都连上网,锐捷给我们分配了本地地址分别是1,2,3,4,但只给我们分配了一个IP地址,现在我们电脑要和学校外的电脑沟通,此时我们宿舍的每台电脑对于外界来说都是同一台电脑(因为IP地址时身份的唯一标识)。这就是NAT的作用。

所以,你看得懂下面这幅画吗?(A humor)

包在网络中传输,经过很多的Routers,那么我们就想看看在这里面究竟发生了什么?!
早期他们(应该指的是设计者)加入了一个feature来帮助诊断网络问题,至今我们仍然在使用。若安装Traceroute(跟踪路由程序)就可以发现一些problem。
对于router来说,用于传送packets,当然每次选择传送都是最好的决定,那么这里就有一个隐含的问题:陷入循环,如下图:

那我们该如何解决这个问题?

Each IP packets has a field called "Time to Live"--TTL

每经过一个router,那么TTL就减1,当这样一直做下去还是没有到达目的地(即TTL为0),我们就认为这个packet走的路太多了,要被淘汰。

Sets to zero,throws it away.Then sends a note back Then Traceroute sends a packet of two across.

作者做了一个试验,there are 14 hops,第一个hop在老师的校园,然后老师就在一直算算算...from Michigan to Stanford 少于a tenth of a second.

每次用tracerouter跑跑所列的结果还不一样(想想这是为什么

Internet History, Technology and Security (Week 5-2)的更多相关文章

  1. Internet History, Technology and Security (Get Started)

    Abstract 课程名称:互联网的历史.技术和安全 coursera地址 制作方:密歇根大学(University of Michigan) 教师:Charles Severance, Associ ...

  2. Internet History,Technology and Security

    Internet History,Technology and Security(简单记录) First Week High Stakes Research in Computing,and Comm ...

  3. Internet History,Technology,and Security - History Through Supercomputing(Week2)

    时间飞逝,一周又过去了,这周我们来到了Internet History, Technology and Security (Week 2)的学习,从标题就可以看出,这周主要是介绍“互联网”雏形的诞生. ...

  4. Internet History, Technology and Security (Week 2)

    Week 2 History: The First Internet - NSFNet Welcome to week 2! This week, we'll be covering the hist ...

  5. Coursera: Internet History, Technology, and Security

    课程网址:https://www.coursera.org/learn/internet-history 学习笔记: Week 1: History - Dawn of Early Computing ...

  6. Internet History, Technology and Security (Week 9)

    Week 9 Security: Web Security We are now on the second to last week of the class and finishing up ou ...

  7. Internet History, Technology, and Security(week1)——History: Dawn of Electronic Computing

    前言: 第一次进行课程学习,在反复观看视频和查找字典翻译理解后选出了视频中个人认为较重要的概念,以下并不按照逐句翻译,中文概括大意余下自由发挥,对老师想要告诉我们的历史有一个初步的了解,顺便锻炼以下英 ...

  8. Internet History, Technology and Security (Week5.1)

    Week5 The Transport layer is built on the Internetwork layer and is what makes our network connectio ...

  9. Internet History, Technology and Security (Week 4)

    Week 4 History: Commercialization and Growth We are now moving into Week 4! This week, we will be co ...

  10. Internet History,Technology,and Security - Technology: Internets and Packets (Week5)

    Week5 Technology: Internets and Packets Welcome to Week 5! This week, we’ll be covering internets an ...

随机推荐

  1. Circuit Breaker模式

    Circuit Breaker模式会处理一些需要一定时间来重连远程服务和远端资源的错误.该模式可以提高一个应用的稳定性和弹性. 问题 在类似于云的分布式环境中,当一个应用需要执行一些访问远程资源或者是 ...

  2. 04 - django的路由层 1

    1.路由控制简单配置 from django.conf.urls import url from . import views urlpatterns = [ url(r'^articles/2003 ...

  3. JZOJ 10043 第k小数

    Description 有两个非负整数数列,元素个数分别为N和M.从两个数列中分别任取一个数相乘,这样一共可以得到NM个数,询问这NM个数中第K小数是多少. 时间限制为20ms . Input 输入文 ...

  4. 解决web翻转动画闪屏

    首先确保backface-visibility: hidden.这样做可以解决大部分闪屏的情况. 然后需要特别注意的是谷歌的浏览器,不管是桌面端还是移动端,在翻转的过程中在该元素上绘制其他元素也会导致 ...

  5. 【PaPaPa】集成B/S主流技术的MVC5项目 - 实干派:说做就做,我们已经起航,你还在观望吗

    我们是谁 我们是C#爱好者,互相分享技术,一起学习一起成长一起做一个项目. 我们是开源爱好者,从我们手上出来的代码都会托管在源代码管理平台(oschina),到目前为止不收费,将来也不会出现任何收费情 ...

  6. 初学者浅谈我对领域驱动设计(DDD)的理解

    一.为什么要学习领域驱动设计 如果你已经设计出了优雅而万能的软件架构,如果你只是想做一名高效的编码程序员,如果你负责的软件并不复杂,那你确实不需要学习领域驱动设计. 如果用领域驱动设计带来的收获: 能 ...

  7. 接口自动化学习--mock

    好久没有写学习的总结,都正月十二了,但还是要来个新年快乐鸭. 一直都在看imooc的一套java接口自动化实战课程,现在看到了尾部了,然后想到之前那些testng,mock,httpclient等都没 ...

  8. while循环计算规则:内循环—外循环!

    num= 1 #值 =1while num <= 10 : # num(1)小于10 print(num) # 应该打印 这个1的值 num +=1 # num+=1等价于 num再加1 所以这 ...

  9. Tetris(俄罗斯方块)

    一天有个小朋友问我OpenGL俄罗斯方块怎么写. 俄罗斯方块分成两部分游戏逻辑和画面渲染. 1. 游戏逻辑 一个简单的俄罗斯方块的逻辑部分需要考虑的情况如下: 1. 方块的表示(坐标, 旋转, 上下左 ...

  10. JDK 和 JRE 有什么区别

    JDK是Java开发工具包(Java Development Kit),JRE是Java运行环境(Java Runtime Environment),JDK包含了JRE,搭建Java环境的时候,安装J ...