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跑跑所列的结果还不一样(想想这是为什么