思科网技术学院教程(第三、四学期第二版)学习笔记与要点归纳

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介:
第一章 OSI参考模型和路由
一. 层次网络模型:OSI参考模型
     网络模型使用分层来简化网络功能。将网络功能进行划分叫层。OSI参考模型通过划分层次,简化了两台计算机之间相互通信所要完成的任务。每一层集中完成一定的功能,因此允许网络的设计者为每层选择适当的网络设备和功能。在OSI参考模型中,它的7层分别表示了不同的网络功能。

这种按网络功能进行层次划分的原因包括:
1. 分层把网络操作分成不太复杂的单元。
2. 分层为即插即用的兼容性定义了标准接口。
3. 分层使设计者能专心设计和开发功能模块。
4. 分层提高了不同网络模块功能的对称性,让它们能很好地一起工作。
5. 分层使得一个区域的改变不会影响到其他区域,这样每个区域能更快地发展。
6. 分层把复杂的网络通信过程分解成了独立的、更容易学习的操作。

OSI参考模型的每一层完成特定的功能:
    应用层(第7层):这一层给用户应该程序提供网络服务。例如,一个字处理应用程序使用了这一层的文件传输服务。
表示层(第6层):这一层提供了数据表示和编码格式,还有数据传输语法的协商。它确保从网络抵达的数据能被应用进程使用,应用进程发送的信息能在网络上传送。
会话层(第5层):这一层建立、维持和管理应用进程之间的会话。
传输层(第4层):这一层把数据进行分段或重组成数据流。传输层具有潜在的能力保证一个连接并提供其可靠的传输。
网络层(第3层):这一层决定把数据从一个地方移到另一个地方的最佳路径。路由器在这一层上运行。本层使用逻辑地址方案,以便管理者能够进行管理。它使用IP协议的寻址方案,此外还有ApplTalk、DECnet、VINES和IPX等寻址方案。
数据链路层(第2层):这一层提供了通过介质物理传输过程。它处理错误通告、网络拓扑和流量控制。这一层使用介质访问控制(MAC)地址,这种地址也称为物理地址或硬件地址。
物理层(第1层):这一层提供电气的、机械的、软件的或者实用的方法来激活和维护系统间的物理链路。这一层使用双绞线、同轴电缆、光纤等物理介质。

二. 对等层通信

OSI参考模型描述了在不同计算机上应用程序信息是如何通过网络介质传送的。对于一个给定系统的各层,当要发送的信息逐层向下传送时,信息越往低层就越不同于人类的语言,而是计算机能够理解的"1"和"0"。每一层使用自己的协议与其他的对等层相互通信。每一层的协议在与对等层之间交换的信息称为协议数据单元(PDU)。
主机A                主机B
应用层<------------------------>应用层
表示层<------------------------>表示层
会话层<------------------------>会话层
传输层<---------数据段--------->传输层
网络层<---------数据包--------->网络层
数据链路层<------数据帧------>数据链路层
物理层<----------比特---------->物理层
上图是OSI类型通信的一个例子。主机A发送信息给主机B。主机A的应用程序与主机A的应用层通信,主机A的应用层再与主机A的表示层通信,主机A的表示层再与主机A的会话层通信,等等,直到到达主机A的物理层。物理层把信息放到网络物理介质上并把信息从网络物理介质上送走。信息在物理介质上传送并被主机B接收后,会以相反的方向向上通过主机B的各层(先是物理层,然后是数据链路层等等)。直到最终到达主机B的应用层。尽管主机A的每一层只与它自己的相邻层直接通信,但主机的每一层总有一个主要任务必须要执行。每一层的主要任务是与主机B的对等层进行通信。也就是说A主机的第一层任务是与B主机的第一层通信;A主机的第二层任务是与B主机的第二层通信;等等。
OSI参考模型的分层禁止了不同主机间的对等层之间的直接通信。因此主机A的每一层必须依靠主机A相邻层提供的服务来与主机B的对应层通信。假定主机A的第4层必须与主机B的第4层通信。那么,主机A的第4层就必须使用主机A的第3层提供的服务。第4层叫服务用户(service),第3层叫服务提供者(service provider)。第3接入点(SAP)给第4层提供服务。这些服务接入点使得第4层要求第3层提供服务。

三. 数据封装
主机B的第4层如何知道主机A的第4层想要什么呢?把第4层的特定要求进行存储以控制信息,这些控制信息附加在实际应用信息的数据包报头中并在对等层之间进行传输。每一层都依靠于它的OSI参考模型的下一层提供的服务功能。为了提供这些服务,低层使用封装把上层的PDU放入它的数据区域;然后,该层将会把它要的任何报头和报尾进行添加以执行它的功能。
数据报头和数据的概念是相对的。这取决于对当前信息单元进行分析的层。例如,到第3层,一个信息单元包含第3层的报头以及它所包含的数据。但第3层数据潜在地包含了从第4、5、6、7层来的头。还有,第3层的报头却只是第2层的数据。并不是所有层都需要加头。一些层只是简单地对它们接收的实际数据进行一些转换,使得数据对于邻居层可读。

四. 物理层
目前Ethernet和IEEE 802.3占据着局域网(LAN)协议的最大份额。如今,Ethernet
这个名词常用来指所有使用载波侦听多路访问带冲突检测(CSMA/CD)的LAN,它通常符合包括IEEE 802.3在内的以太网规范。

术语以太网(Ethernet)是指局域网实施系列,它包含三个主要分类:
1. 以太网和IEEE 802.3:运行于同轴电缆和双绞线上的10Mbit/s局域网规范。
2. 100Mbit/s以太网:一种特定的局域网规范,也称作快速以太网,它以100Mbit/s运行在双绞线电缆上。
3. 1000Mbit/s以太网:一种特定的局域网规范,也称为吉比特以太网,它以1000Mbit/s(1Gbit/s)运行在光纤和双绞线电缆上。

以太网/802.3物理连接
以太网和IEEE 802.3线路标准定义了以10Mbit/s运行的LAN总线拓扑结构。
三个定义的线路标准:
1. 10Base2:也称细以太网,10Base2允许网络段在同轴电缆上的最大传输范围是185m。
2. 10Base5:也称粗以太网,10Base5允许网络段在同轴电缆上的最大传输范围是500m。
3. 10BaseT:10BaseT在便宜的双绞线上传送以太网帧。

五. 数据链路层
访问网络介质发生在OSI参考模型的数据链路层。数据链路层,也就是第2层,它与物理层相邻,MAC地址就位于这一层。没有两个MAC地址是相同的。于是在一个网络上,网络接口卡(Network Interface Card, NIC)是设备接到介质的地方,并且每个网卡都有一个唯一的MAC地址。在每个网卡出厂前,硬件制造商给它分配一个MAC地址。这个地地被编程写入网卡的一个芯片中。由于MAC地址在网卡中,如果一台计算机的网卡被替换,这个工作站的物理地址就转换成新的网卡的MAC地址。MAC地址用16进制数表达。有两种格式的MAC地址:0000.0c12.3456和00-00-0c-12-34-56-。
在一个以太网上,当一个设备想向另一个设备发送数据时,它可以通过使用MAC地址打开一个通向其他设备的通信路径。当数据从源设备发送到网络时,它带着它想去的目的地的MAC地址。当这数据沿着网路介质传送时,网络上的每一个设备的网卡检查它自己的MAC地址是否与这个帧携带的物理目的地址匹配。如果不匹配,则忽略这个帧。该帧然后继续沿着网络到下一站。如果匹配,网卡把该帧进行一次考贝,这个帧放在计算机的数据链路中。即使由网卡产生的这份拷贝是放在计算机中,但原始的帧仍然会沿着网络传播,这样其他的网卡就可以看到它,并决定是否匹配。

六. 网络层
运行在OSI参考模型网络层的几个协议:
1. IP协议:提供了对被选路的数据报无连接的、尽力的传输。它不关心报文的内容,而是要寻找一条把报文移到目的地的路径。
2. 因特网控制消息协议(ICMP):提供了控制和发送消息的能力。
3. 地址解析协议(ARP):在IP地址已知时决定数据链路地址。
4. 逆向地址解析协议(RARP):在数据链路层地址已知时,决定网络层地址。

IP寻址和子网
在TCP/IP环境中,终端工作站与服务器、主机或其他终端工作站通信。使用TCP/IP协议组的每个节点都有一个唯一的32比特逻辑地址,也就是IP地址。另外,在TCP/IP协议环境里,每个网络应该看上去像一个单独的、唯一的地址。在能访问到这个网络的一台主机以前,必须先访问到这台主机的网络地址。
网络能分割成一系列更小的被称作子网的网络。于是,一个IP地址分成网络号、子网号、主机号。子网使用唯一的32bit子网地址,它是通过从地址的主机域借位产生的。子网地址对于同一网络的其他设备是可见的。但是这它们对于外部网络是不可见的。子网对于网络外部不可见是因为外部网络只能看见子网的整个网络地址。

路径的判断
路径的判断是指通信业务穿过网云所采取的传输路径。路由器评诂通信业务传输的最佳路径。路径判断发生在第3层即网络层。路由服务使用网络拓扑信息。这些信息可以由网络管理员进行配置或通过网络的运行动态收集。

路径通信
网络地址包含一个路径部分和一个主机部分。路径部分指明在网云内被路由器使用的路径部分;主机部分指明网络上的一个特定端口或设备。路由器使用网络地址来鉴别一个网络内数据包的源或目的网络。

ICMP
ICMP是通过IP数据报携带的,它用来发送错误和控制消息。ICMP使用下列定义的消息类型(还有其他一些消息没包括在下列内容中):
1. 目标不可达
2. 超时
3. 参数问题
4. 源抑制
5. 重定向
6. 回应请求
7. 回应回复
8. 时戳
9. 时戳回复
10. 消息请求
11. 消息回复
12. 地址请求
13. 地址回复

ARP
为了在以太网上进行通信,源站点必须知道目的站点的IP地址和MAC地址。当源站点确定了目的站点的IP地址后,源站点的IP协议将查看它的ARP表来定位目的站点的MAC地址。如果源站点在它的ARP表中定位到目的的IP地址所对应的目的MAC地址,它将会把这个MAC地址与IP地址进行绑定,并用它们来进行数据封装。于是数据包通过网络介质被发送,并被目的站点接收。如果源站点不知道MAC地址,它必须发送ARP请求。为了确定数据的目的地址,路由器上的ARP表将会被检查。如果地址不在这个表中,ARP协议会发送一个广播查找目的的站点。在这个网络上的每一个站点都将收到这个广播。

路由选择
1. 路由器操作
路由器通常把数据包从一个数据链路传送到另一个数据链路。为了传送数据包,路由器使用了两个基本的功能:路径判断和交换。交换功能让路由器从一个接口接收数据包并转发到第二个接口。路径判断功能使得路由器能选择最合适的接口来转发数据包。
2. 静态选路与动态选路
  静态选路手工管理:网络管理员把它输入路由器的配置中。只要网络的拓扑发生变化并需要更改路由表时,网络管理员就必须手动更新静态路由。动态路由与静态路由不一样。网络管理员输入配置命令,启动动态路由后,路由信息通过路由进程被自动更新,只要从网络上收到新消息就会发生这种更新。静态选路有一些有用的应用,它允许网络管理员指定受限制部分的广播内容。
被路由的协议与路由选择协议
被路由的协议:任何网络协议在它的网络层地址提供足够的信息,使得数据包能基于寻址方案把数据包从一台主机送到另一台主机。被动路由协议定义了数据包内这部分区域的格式和用法。数据包通常从一个端系统传送到另一个端系统。IP是被动路由协议的一个例子。
路由选择协议:一种通过提供共享路由信息的机制来支持被动路由协议的协议。路由选择协议的消息在路由器之间传递。路由选择协议允许通过路由器间的通信来更新和维护路由表。TCP/IP中路由选择协议的例子有:路由信息协议(RIP),内部网关路由协议(IGRP)、增强的内部网关路由协议(Enhanced IGRP),以及开放最短路径优先协议(OSPF)。

七. 传输层
  传输层允许根据用户的要求在主机和目的地之间进行可靠数据传输。为了获得数据的可靠传输,在两端之间的通信系统建立面向连接的关系。可靠传输能完成:
1. 将高层应用分段
2. 建立一个连接
3. 传输数据
4. 用滑动窗口提供可靠性
5. 确认技术

分段高层应用
使用分层网络模型的一个原因是这样做的话若干个应用能共享同一传输连接。传输功能一段接一段地完成。这意味着不同的应用能以先来先服务的原则发送数据包。这些段可能发送到同一目的地或许多不同的目的地。

建立一个连接
为了建立一个连接,一台机器发起的呼叫必须被另一台机器接受。两台机器操作系统中的协议软件模块通过在网络上发消息来验证传输是否被授权和双方是否准备就绪。在所有同步结束后,连接就建立了,数据传输开始。在传输过程中,两机器继续用它们的协议软件通信来验证数据是否正确接收。

数据传输
当进行数据传输时,拥塞会因为两个不同的原因发生。首先,高速计算机可能产生远远超过网络传输能力的流量。其次,如果许多计算机同时需要向一个目的地发送数据报,那么目的地会发生拥塞。当数据报来得太快以到主机或网关不能处理时,它们会暂时存放在存储器里。如果流量继续发生,主机或网关会最终耗尽存储器,并且必须丢弃继续到来的包。

用窗口实现可靠性
在多数面向连接的可靠数据传输的基本形式中,数据包必须按发送的顺序传递到接收器。如果数据包丢失、破坏、重复或接收顺序出错,则协议失败。基本的解决方案是每收到一个数据段就发送一个收到的确认。如果发送者发送每个段后必须等待确认,那么传输会变得很慢。由于发送者在完成传输数据包后和完成处理任意收到的确认数据包之前还有一段时间,可以在这段时间内传输更多的数据。发送者允许传送的未确认的数据包个数叫窗口。窗口是控制端到端传输的消息数量的一种方法。有一些协议是根据数据包数来测量消息;TCP/IP根据数据包的数理来测量消息。

确认技术

  可靠传输保证从一台机器发出的数据流会通过数据链路发送到另一台机器而不发生重复或数据丢失。带重传的主动确认是一种保证数据流可靠传输的技术。主动确认要求接收器与源通信,当它收到数据时会给源发回一个确认消息。发送者保留了它发送的每个数据包记录,在发送下一个数据包之间等待一个确认。发送器在发送一个段后会启动一个定时器,而且在确认到达之前如果定时器超时,它会重发这个段数据。



本文转自 萧湘月 51CTO博客,原文链接:http://blog.51cto.com/sniffer/18119,如需转载请自行联系原作者

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
6月前
|
程序员 项目管理 监控
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(3)
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)
39 0
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(3)
|
6月前
|
敏捷开发 中间件 数据处理
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(1)
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(1)
58 0
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(1)
|
7月前
|
存储 编解码 Windows
【大学计算机技术】第二章 测试 1
【大学计算机技术】第二章 测试
41 0
|
7月前
|
存储 编解码 算法
【大学计算机技术】第二章 测试 2
【大学计算机技术】第二章 测试
75 0
|
6月前
|
测试技术 Java 数据库
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(2)
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)
30 0
【软件设计师-从小白到大牛】上午题基础篇:第六章 软件工程基础(重点中的重点)(2)
|
7月前
|
存储 编解码 芯片
【大学计算机技术】第二章 测试 5
【大学计算机技术】第二章 测试
109 0
|
7月前
|
存储 自然语言处理 算法
【大学计算机技术】第二章 测试 3
【大学计算机技术】第二章 测试
50 0
|
6月前
|
数据挖掘 项目管理
PMP备考之路 - 汪博士第三章(项目管理过程)(下)
PMP备考之路 - 汪博士第三章(项目管理过程)(下)
30 0
|
6月前
|
监控 项目管理
PMP备考之路 - 汪博士第三章(项目管理过程)(中)
PMP备考之路 - 汪博士第三章(项目管理过程)(中)
32 0
|
6月前
|
监控 项目管理
PMP备考之路 - 汪博士第三章(项目管理过程)(上)
PMP备考之路 - 汪博士第三章(项目管理过程)
46 0