第 28 集:计算机网络
02:05 局域网 Local Area Networks - LAN
02:36 媒体访问控制地址 Media Access Control address - MAC
02:55 载波侦听多路访问 Carrier Sense Multiple Access - CSMA
05:18 指数退避 Exponential Backoff
05:36 冲突域 Collision Domain
07:08 电路交换 Circuit Switching
07:36 报文交换 Message Switching
10:20 分组交换 Packet Switching
局域网:计算机近距离构成的小型网络,简称LAN(Local Area Networks)
以太网:最著名的LAN技术。用以太网电线连接计算机,以电信号形式传输数据。
MAC地址:为了解决数据传输中不同计算机的身份问题,便有了MAC地址。这个唯一的地址会作为数据的前缀放在头部发送到网络中
CSMA:多台电脑共享一个传输媒介,这种方法叫做“载波侦听多路访问”。英文叫Carrier Sense Multiple Access,其中载体(Carrier)指运输数据的共享媒介,如以太网的“载体”是铜线,WIFI的“载体”是传播无线电波的空气
带宽:载体传输数据的速度叫做 带宽
指数退避:多个计算机同时想传输数据会造成“冲突” ,引发网络拥堵。而指数退避是指让排队的计算机的等待时间逐个呈指数增长。以太网、WIFI和其他传输协议也用这种方法
冲突域:载体和其中的设备总称“冲突域”
交换机:为了解决多个计算机传输造成的“冲突”,可以将其拆分成更小的多个“冲突域”,然后用交换机进行不同冲突域之间的数据传输。这样不仅减小了单个冲突域内的冲突,而且各个冲突域也可以同时传输数据。
如果需要跨域传输,就要通过交换机,而此时2个冲突域的网络都会被短暂占用。
大的网络也是这样构建的,包括互联网
报文交换:传输数据的另外一种方法,类似“邮政系统”。消息会经过“系统”中的多个不同站点进行传送
路由:在大型网络中,从一个地点到另一个地点通常有多条线路。路由就像快递系统中的各个城市的站点,消息沿着路由跳转的次数叫做“跳数”。跳数会被记录并不断更新到传输的数据中,用于检测路由问题。
报文交换的缺点:大的报文会堵塞网络,因为要把整个报文传到下一站后,才能继续传递其他报文。传输一个大文件时,整条路都堵塞了。
数据包:解决大报文堵塞的方法是 将大报文拆分成多个小的“数据包”。每个数据包中都有目标地址。
报文的具体格式由“互联网协议”定义,简称IP(Internet Protocol)
IP地址:每台联网的计算机都需要一个固定格式的IP地址。以点分隔的4组数字
阻塞控制:路由器会平衡与其他路由器之间的负载,以确保传输能快速可靠
TCP/IP:多个数据包到达目标地址的顺序不一样,这对一些软件是个问题。而TCP/IP协议可以解决这个问题
分组交换:就是将数据拆分成多个小数据包,然后通过灵活的路由传递,非常高效而且可容错。互联网就是这么运行的。
它的优点是去中心化的,没有中心权威机构,没有单点失败问题。
集线器 VS 交换机 VS 路由器
1.集线器和交换机都只能在局域网内传输,不能读取IP地址,所以都不能连接到外部网络
2.交换机比集线器更智能,因为它可以记录和识别mac地址,所以能传送数据给指定的计算机。而集线器就像喇叭,直接传给网内的所有计算机,不安全而且浪费网络资源
3.路由器本质上是一个网络的网关。集线器和交换机构建网络,而路由器连接网络
第 29 集:互联网
02:23 IP - 互联网协议 - Internet Protocol
03:00 UDP - 用户数据报协议 - User Datagram Protocol
03:41 校验和 - Checksum
05:26 TCP - 传输控制协议 - Transmission Control Protocol
08:21 DNS - 域名系统 - Domain Name System
10:47 OSI - 开放式系统互联通信参考模型 - Open System Interconnection
广域网:Wide Area Network,也叫WAN
局域网——广域网——主干——来回多次——目标服务器
IP协议:头部是目标地址。
UDP:用户数据报协议(User Datagram Protocol),数据包光有目标地址还不够,因为你不知道数据是给目标计算机的哪个程序,所以需要更高级的网络协议。
UDP的头部信息位于数据前面,端口号是信息之一
校验和:记录数据的求和,用于在接收时校验数据的正确性。以16位二进制格式存储
IP 和 UDP
IP负责把数据包送到正确的计算机,UDP负责把数据包送到正确的程序。
所以在数据包中的信息顺序应该是 目标的IP地址 + 端口号、校验和等信息 + 数据
UDP的缺点:
1.不提供数据修复或数据重发的机制
2.无法得知数据包是否到达
TCP:传输控制协议(Transmission Control Protocol)
特点:1.TCP头部也有“端口号”、“校验和”
2.TCP数据包有序号
3.TCP要求接收方收到数据包并且校验和检查无误后,给发送方发一个确认码,代表收到了。
确认码简称“ACK,发送方收到ACK后,会继续发送下一个数据包
4.TCP可以同时发送多个数据包
5.TCP可以根据确认码的成功率和来回时间,推测网络状况,并调整同时发包数量,减少网络拥堵问题
6.缺点是确认码数据包增加了传输的数据量
总结关键字:不丢包 不乱序 调整传输率
TCP/IP 组合协议
DNS:域名系统(Domain Name System),负责把域名和IP地址一一对应,就像是互联网的电话簿。DNS服务器一般是由互联网供应商提供
DNS数据呈树状结构,顶级域名(Top Level Domains)在最顶部,位于网址中最后一个小数点后面,如.com .gov .edu
下面是二级域名和子域名
物理层:如线路里的电信号,无线网里的无线信号
数据链路层:负责操控物理层。数据链路层有:媒体访问控制地址(MAC),碰撞检测,指数退避,以及其他一些底层协议
网络层:负责各种报文交换和路由
传输层:负责在计算机之间进行点对点的传输,而且还会检测和修复错误,如UDP,TCP等
会话层:会话层会使用TCP和UDP来创建连接,传递信息,然后关闭连接。这一整套叫做“会话”。查询DNS或者看网页时,就会发生这一套流程
第 30 集:万维网
01:01 超链接 Hyperlinks
02:20 URL - 统一资源定位器 - Uniform Resource Locator
03:01 HTTP - 超文本传输协议 - HyperText Transfer Protocol
04:13 HTML - 超文本标记语言 - HyperText Markup Language
04:24 写一个简单网页,用到了 <h1> <a> <h2> <ol> <li> 标签
06:04 第一个浏览器和服务器是 Tim Berners-Lee 花了 2 个月在 CERN 写的
06:32 1991年正式发布,万维网就此诞生
07:19 开始讲搜索引擎的故事
07:40 Jerry 和 David 的万维网指南 后来改名成 Yahoo
07:52 搜索引擎 JumpStation
09:07 搜索引擎 Google
09:20 网络中立性
万维网的最基本单位是单个页面
超链接:页面有内容,也有去往其他页面的链接,叫超链接。这些超链接形成巨大的互联网络,这就是“万维网”名称的由来
超文本:文本内容 + 超链接
URL:为了使网页能互相连接,每个网页需要一个唯一的地址,这个地址叫做“统一资源定位器”,简称URL(Uniform Resource Locator)
HTTP:超文本传输协议(Hypertext Transfer Protocol)
网络流程:浏览器输入网址—DNS做域名解析—DNS输出对应的IP地址(含端口号)给浏览器—浏览器打开一个TCP连接到这个IP地址所在的服务器—向服务器请求对应的页面,这里会用“超文本传输协议”HTTP—服务器返回对应的网页—浏览器会渲染到屏幕上
指令:HTTP的第一个标准HTTP0.9,创建于1991年,只有一个指令“GET”。指令和对应页面名称会以“ASCII编码”形式发送到服务器
状态码:HTTP之后添加了状态码,状态码放在请求前面。
如状态码“200”代表网页找到,正常。
状态码400~499代表客户端出错,如404代表网页不存在
HTML:超文本标记语言(Hypertext Markup Language)。因为超文本的存储和发送都是以普通文本的形式,所以为了区分普通文本和含有超链接的超文本,开发了HTML这种标记方法
搜索引擎:随着网络不断发展,人工编辑的网页目录变得不够便利。
早期搜索引擎的有3个部分:
1.爬虫:爬取新的链接加入自己的列表中。
2.不断扩张的索引。记录访问过的网页。出现过哪些词语
3.查询索引的搜索算法
早期搜索引擎的关键字搜索算法是根据页面内容中出现关键字的次数进行排序。而当时google是根据其他网页对该网页的连接次数进行推荐。