Week 6

Technology: Transport Control Protocol (TCP)

Welcome to Week 6 of IHTS. We are in our second week of the more technical bits of the course. I try to keep the technical bits interesting and not go into too much detail.
This week, we’ll be covering transport control protocol (TCP). The Transport layer is built on the Internetwork layer and is what makes our network connections reliable.

Transport/Reliability

Transport Layer

今天所要讲的是Transport Layer,即传输层。

首先,回顾一下之前所讲的内容。

The magic of this is there is no interim long term storage inside the network.

data传输如此之快,而是因为在网络层并不保证无差错传输,而是尽最大努力传输。

So one of the things that makes IP so fast is that it is not demanded to be perfect, it is not demanded to, to deliver data in order, and it's not demanded to, it, it's, there's no requirement that it doesn't lose data.

其实保证是否数据有没有错误看传输层。

And those are the kind of problems we solve with a TCP layer. How fast is the underlying network, how reliable is it and if something goes wrong what do we do to deal with that. So the key idea in TCP/IP is that when we send some data, we break it into packets and then we send each one. And then we keep them until they get an acknowledgement from the other side and then and only then do we throw them away.

若没有收到,就一直尝试,直到对方收到。

老师这里做了一个演示,如下图所示:

在路由中并不要求很多存储,设计上希望其轻巧、动态。

The storage requirements in the middle, the routers, this is the IP basically the network of networks, they, we didn't design these to require a lot of storage. We wanted them to be fast, we wanted them to be agile, we wanted to be dynamic, we wanted to be clever, but we also gave the right to fail. So we didn't demand storage. We didn't say, hey, hold on to packets, you know, all over the place. Just, store up piles of packets, piles of packets and pile up in these, we don't ask that. No router has to keep the packets. As a matter of fact, routers are supposed to throw packets away to communicate back and forth between the system that maybe things aren't working so well and, don't use me to get to California.

On the other hand, with hundreds, maybe, you know, hundreds of thousands or millions of routers but billions of computers on the outside. So we need a way to make this reliable. So we need to have memory to store the packets while they're in flight so we can retransmit but we store the packets in the computers that are outside. And there are billions of these computers, there are billions of them. Every computer that you can carry around, every laptop. come here. Every time we add another computer to the network, we add storage for packets that are being sent. So when your computer or, or phone is sending across the network, it is responsible for retaining its own copies. It does not expect the inner part of the network to do so. And that is absolutely brilliant, so it's what really makes this work. And so that's kind of a great oversimplification of what's going on.

下面将介绍Van Jacobson,他拯救了网络?!but he is a shy guy.

Van Jacobson - Slow Start Algorithm

如果对他感兴趣那就给我留言吧,我将会在以后介绍。

The Domain Name System

(Baidu)DNS:The Domain Name System,域名系统。万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

简单一句话,DNS就是帮助用户记住网站,比如说我们都知道百度的网址:www.baidu.com,而不用去记住百度的IP地址:163.177.151.110。再举一个例子,DNS就像一本电话簿,你不用可以去记住朋友的电话号码,你只需要知道朋友的名字,电话簿会帮你记着电话号码。

DNS是分层次的:

其中大学可以分配到EDU后缀的,com和org需要竞争得到。

TCP Wrap Up

传输层协议需要弥补IP层的不完善性,即上面所讲的保证数据的正确性、完整性由传输层来负责。

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

  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. (文章转载)MCI编程

    使用MCI API,源文件中需要包含头文件 Mmsystem.h,在Project->Settings->Link->Object/libray module中加入库 Winmm.l ...

  2. 20155236范晨歌_MSF基础应用

    20155236范晨歌_MSF基础应用 20155236范晨歌_MSF基础应用 目录 概述 MS08-067漏洞攻击 MS11-050漏洞攻击 MS10-087漏洞攻击 辅助模块 概述 MSF的六种模 ...

  3. python之GIL(Global Interpreter Lock)

    一 介绍 ''' 定义: In CPython, the global interpreter lock, or GIL, is a mutex that prevents multiple nati ...

  4. python实战——教你用微信每天给女朋友说晚安

    但凡一件事,稍微有些重复.我就考虑怎么样用程序来实现它. 这里给各位程序员朋友分享如何每天给朋友定时微信发送”晚安“,故事,新闻,等等··· ··· 最好运行在服务器上,这样后台挂起来更方便. 准备 ...

  5. 矩阵分解-----LDL分解

    若一个矩阵A是正定的,那么该矩阵也可以唯一分解为\[{\bf{A = LD}}{{\bf{L}}^{\bf{T}}}\] 其中L是对角元素都为1的下三角矩阵,D是对角元素都为正数的对角矩阵.还是以三维 ...

  6. Allegro16.6结构文件dxf文件的输出与导入——凡亿PCB

    在pcb设计中,结构文件的导入是不可或缺的一个步骤,使用allegro16.6软件操作如下. 一.结构文件的输出 1.在allegro16.6将pcb颜色显示设置成只剩需要导出的结构. 2.看到all ...

  7. 树莓派修改VNC分辨率

    1.打开终端输入 sudo raspi-config 2. 选择 Advanced Options  再选择 Resolution 3.选择想要的分辨率,确定 4.重启

  8. 基于Vue的简单通用分页组件

    分页组件是每一个系统里必不可少的一个组件,分页组件分为两部分.第一部分是模版部分,用于显示当前分页组件的状态,例如正在获取数据.没有数据.没有下一页等等:第二部分是分页数据对象,用于封装一个分页组件的 ...

  9. 用Python做一个翻译软件

    前两天吃了平哥的一波狗粮,他给女朋友写了一个翻译软件,自己真真切切的感受到了程序员的浪漫.在学习requests请求的时候做过类似的Demo,给百度翻译发送一个post请求可以实现任意词组的翻译,利用 ...

  10. (xampp)lampp 下配置https(ssl)自签双向认证以后 apache无法启动解决方案

    自签CA一般是没有应用场景的,因为需要客户端浏览器导入证书才能访问 但是在某些需要内部使用的场景下,确实是一个解决方案 但是在lampp配置了双向认证以后发现 原来自带的管理命令 lampp star ...