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. SpringIDE的安装

    要安装SpringIDE,需要先知道当前eclipse的版本,打开Eclipse,Help -> About Eclipse 然后去 http://spring.io/tools/sts/all ...

  2. [Oracle]ORA-01499的处理

    如果出现 ORA-01499,说明 table 和 index之间的相互参照出了错: http://iderror.com/errors/oracle/oracle-db/ora-00900-to-o ...

  3. guacamole实现RDP的下载

    1. 配置说明 1.1 主要特别配置以下三项 enable-drive 默认情况下禁用文件传输,但启用文件传输后,RDP用户可以将文件传输到持久存在于Guacamole服务器上的虚拟驱动器.通过将此参 ...

  4. [BZOJ2742][HEOI2012]Akai的数学作业[推导]

    题意 给定各项系数,求一元 \(n\) 次方程的有理数解. \(n\leq 100\). 分析 设答案为 \(\frac{p}{q}\) ,那么多项式可以写成 \(a_0\frac{p}{q}+a_1 ...

  5. 发现一个很N且免费的html5拓扑图 关系图 生成组件

    传送门:http://visjs.org/ demo代码 <!doctype html> <html> <head> <title>vis.js new ...

  6. 自动化运维工具saltstack04 -- 之jinja模板

    jinjia模板 需求:想让saltstack的file模块分发到minion端的配置文件监听minion端的IP和端口,如何用变量实现?看下面!! 1.jinja模板加grains使apache监听 ...

  7. java多线程相关代码

    1.创建线程的三种方式 使用Thread package com.wpbxx.test; //1.自定义一个类,继承java.lang包下的Thread类 class MyThread extends ...

  8. C#如何在各类控件中输入\输出数据

    文本框:TextBox Text - 按钮文字 TextBox.text=""; s=TextBox.text; 单选按钮+复选按钮 RadioButton,CheckBox Te ...

  9. Go入门指南

    第一部分:学习 Go 语言 第1章:Go 语言的起源,发展与普及 1.1 起源与发展 1.2 语言的主要特性与发展的环境和影响因素 第2章:安装与运行环境 2.1 平台与架构 2.2 Go 环境变量 ...

  10. Python图形界面开发—wxPython库的布局管理及页面切换

    前言 wxPython是基于Python的跨平台GUI扩展库,对wxWidgets( C++ 编写)封装实现.GUI程序的开发中界面布局是很重要的一个部分,合理的页面布局能够给予用户良好使用体验.虽然 ...