第一部分
第一章网络基础知识
第二章TCP/IP 协议
第三章IP寻址及子网划分
Chapter1 网络基础知识
1.1 OSI 7层模型
ISO国际标准组织所定义的开放系统互连七层模型的定义和各层功能。建立七层模型的主要目的是
为解决异种网络互连时所遇到的兼容性问题。它的最大优点是将服务、
接口和协议这三个概念明确地区分开来:服务说明某一层为上一层提供
一些什么功能,接口说明上一层如何使用下层的服务,而协议涉及如何
实现本层的服务;这样各层之间具有很强的独立性,互连网络中各实体
采用什么样的协议是没有限制的,只要向上提供相同的服务并且不改变
相邻层的接口就可以了。
OSI 参考模型分为7层,高3层定义了端用户如何进行互相通信;底
部4层定义了数据是如何端到端的传输.最高3层,也称之为上层(upper
layer),它们不关心网络的具体情况,这些工作是又下4层来完成,OSI参考
模7层结构如右图所示。
可以通过A ll P eople S eems T o need D ata P rocess来记忆这7层的位置
1.1.1 物理层
物理层定义了通讯网络之间物理链路的电气或机械特性,以及激活、维护和关闭这条链路的各项操作。物理层特征参数包括:电压、数据传输率、最大传输距离、物理连接媒体等。
在网络传输过程,通常使用的物理层传输介质如下:
有线介质:电话线、双绞线、同轴电缆、光导纤维等。
无线介质:卫星、微波、IR、RF、激光等。另外,还有大气,携带微波和光。
在有线传输介质中,电话线我们已经非常熟悉,下面我们先来看同轴电缆。
在最初的局域网中,同轴电缆被认为是唯一的传输介质,目前有两种应用广泛的同轴电缆。
75欧姆,用于模拟传输,称为宽带电缆(CATV系统)
50欧姆,用于传输数字信号,称为基带电缆
粗缆:10Mbps,500m,100个站点
细缆:10Mbps,185m,30个站点
双绞线(TP:Twisted Pairwire)是综合布线工程中最常用的一种传输介质。双绞线由两根具有绝缘保护层的铜导线组成。把两根绝缘的铜导线按一定密度互相绞在一起,可降低信号干扰的程度,每一根导线在传
输中辐射的电波会被另一根线上发出的电波抵消。双绞线一般由
两根22~26号绝缘铜导线相互缠绕而成。如果把一对或多对双
绞线放在一个绝缘套管中便成了双绞线电缆。在双绞线电缆(也
称双扭线电缆)内,不同线对具有不同的扭绞长度,一般地说,扭绞
长度在38.1cm至14cm内,按逆时针方向扭绞,相临线对的扭绞长
度在12.7cm以上。与其他传输介质相比,双绞线在传输距离、信道宽度和数据传输速度等方面均受到一定限制,但价格较为低廉。目前,双绞线可分为非屏蔽双绞线(UTP:Unshilded Twisted Pair)和屏蔽双绞线(STP:Shielded Twisted Pair)。
双绞线中8根线可以按不同的方式连接,通常使用如下两种标准
双绞线在使用过程中,可以根据特定的需要分为:直连线,交叉线和反转线
平行线(Straight-Through Cable)用于连接(两端同时使用T568A或T568B,针脚一一对应):
1.主机和switch/hub
2.router和switch/hub
交叉线(Crossover Cable)用于连接(连接方式采用一端使用T568A,另一端使用T568B): 1switch 和switch
2.主机和主机
3.hub和hub
4.hub和switch
5.主机与router直连
反转线(Rolled Cable)不是用来连接以太网连接的,它是用来连接主机与router的console,它采用1到8跟针脚,2端全部相反对应(即1对应8,2对应7...),当主机与router的console口用反转线连好后,启动系统里的超级终端程序即可对router进行连接: 默认串口设置如下:
Bps:9600 Data bits:8 Parity:None Stop bits:1 Flow control:none 双绞线在部署时,需要采用3/90/7规则,即交换机离线架线缆长度不超过3m。线架到用户接口模块距离不超过90米,用户接口到用户设备距离不超过7m,同时在制作网线时需要注意,外层胶皮需要压在水晶头中,以加大网线的抗拉力和防止网线被扭断。
在通信中常用的另一种介质为光缆,光缆可以分为单模光缆和多模光缆,如下图:
单模光缆和多模光缆在物理上的主要区别是缆芯的尺寸,多模光缆有两种缆芯尺寸(50.0μm 和62.5μm) 单模光缆的额定尺寸是9.0μm,光在单模光纤介质内部无反射,沿直线传播,传播距离更远。光纤在介质内部以不同的反射角度传播。同时多模光纤可以承载多路光信号的传送。通过颜色可以区别单模光缆和多模光缆,单模光缆通常为黄色,多模光
缆通常使用橘红色(右图中间的为单模光纤,两边
的为多模光纤),光纤在进行连接时,根据不同的
标准可以使用不同的连接器,常用的连接器如右图
所示:
1.1.2 数据链路层
数据链路层:实际的物理链路是不可靠的,总会出现错误,数据链路层的作用就是通过一定的手段(将数据分成帧,以数据帧为单位进行传输)将有差错的物理链路转化成对上层来说没有错误的数据链路。它的特征参数包括:物理地址、网络拓朴结构、错误警告机制、所传数据帧的排序和流控等。其中物理地址是相对网络层地址而言的,它代表了数据链路层的节点标识技术。
数据链路层通常有两个子层
Media Access Control(MAC):
这层定义了物理地址和拓扑结构,错误检测,流控制等.共享带宽,CSMA/CD先到先服务原则(FCFS)
常见的网络拓扑结构如下:
物理地址通常为MAC地址:MAC地址是烧录在Network Interface Card(网卡,NIC)里的MAC地址,
也叫硬件地址,是由48比特长,16进制的数字组成。
0 -24位由厂家自己分配。
25-47位组织唯一标志符(organizationally unique identifier,OUI).OUI是由IEEE分配给每
个组织.组织按高到低的顺序分配1个唯一的全局地址给每个网卡以保证不
会有重复的编号.
第47位individual/Group(I/G)位,当I/G位为0的时候,我们可以设想这个地址是MAC
地址的实际地址可以出现在MAC头部信息;当I/G位为1的时候,我们可以设
想它为广播或多播.
第46位G/L位,也叫U/L位.当这个位为0的时候代表它是由IEEE分配的全局地址;当
这个位为1的时候,代表本地管理地址(例如在DECnet当中)
CSMA/CD
载波监听多路访问/冲突检测(carrier scnse multiple access collision detect)。设备准备发送数据以前先检查载波信首的介质访问机制。当一个节点想在网络中发送数据时,它首先检查线路
上是否有其他主机的信号在传送:如果有,说明其他主机在发送数据,自己则利用退避算法等
一会再试图发送;如果线路上没有
其他主机的信号,自己就将数据发
送出去,同时,不停的监听线路,
以确信其他主机没有发送数据,如
果检测到有其他信号,自己就发送
一个JAM阻塞信号,通知网段上的
其他节点停止发送数据,这时,其
他节点也必须采用退避算法等一会
再试图发送。
Logical Link Control(LLC)802.2:
负责识别Network layer 协议然后封装(encapsulate)数据.LLC 头部信息告诉Data Link layer
如何处理接受到的帧,LLC 也提供流控制和控制比特的编号
1.1.3 网络层
这一层定义网络操作系统通信用的协议,为信息确定地址,把逻辑地址和名字翻译成物理的地址。
它也确定从源机沿着网络到目标机的路由选择,并处理交通问题,例如交换、路由和对数据包阻塞的控制。路由器的功能在这一层。路由器可以将子网连接在一起,它依赖于网络层将子网之间的流量进行路由。
数据链路层协议是相邻两直接连接结点间的通信协议,它不能解决数据经过通信子网中多个转接结点的通信问题。设置网络层的主要目的就是要为报文分组以最佳路径通过通信子网到达目的主机提供服
务,而网络用户不必关心网络的拓扑构型与所使用的通信介质。
OSI参考模型规定网络层的主要功能有以下三点:
1.路径选择与中继
在点-点连接的通信子网中,信息从源结点出发,要经过若干个中继结点的存储转发后,才能到达目的结点。通信子网中的路径是指从源结点到目的结点之间的一条通路,它可以表示为
从源结点到目的结点之间的相邻结点及其链路的有序集合。一般在两个结点之间都会有多条路
径选择。路径选择是指在通信子网中,源结点和中间结点为将报文分组传送到目的结点而对其
后继结点的选择,这是网络层所要完成的主要功能之一。
2.流量控制
网络中多个层次都存在流量控制问题,网络层的流量控制则对进入分组交换网的通信量加以一定的控制,以防因通信量过大造成通信子网性能下降。
3.网络连接建立与管理
在面向连接服务中,网络连接是传输实体之间传送数据的逻辑的、贯穿通信子网的端---端通信通道。
1.1.4 传输层
传输层将数据分段并重组为数据流(data stream)。TCP UDP 都工作在传输层,当采用TCP/IP协议时程序开发者可以在这2者之间做出选择。传输层负责为实现上层应用程序的多路复用,建立会话连接和断开虚电路提供机制.通过提供透明的数据传输,他也对高层隐藏了任何与网络有关的细节信息。
UDP使用发送不需确认的方式进行数据传输,通常用于组播数据流等对部分丢弃报文影响较小的数据流的传输。而对于TCP是一种面向连接的数据传输方式,每个数据包的传送必须确认。TCP传输使用经典的3次握手协议:
Time
Send SYN
seq=x
Receive SYN+ACK
Send ACK y+1
Receive ACK
1.1.5 会话层
会话层建立、管理和终止表示层与实体之间的通信会话。通信会话包括发生在不同网络应用层之间的服务请求和服务应答,这些请求与应答通过会话层的协议实现。它还包括创建检查点,使通信发生中断的时候可以返回到以前的一个状态。
1.1.6 表示层
表示层提供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息可以被另一个系统应用层识别。表示层的编码和转化模式包括公用数据表示格式、性能转化表示格式、公用数据压
缩模式和公用数据加密模式。
公用数据表示格式就是标准的图像、声音和视频格式。通过使用这些标准格式,不同类型的计算机系统可以相互交换数据;转化模式通过使用不同的文本和数据表示,在系统间交换信息,例如ASCII(American Standard Code for Information Interchange ,美国标准信息交换码);标准数据压缩模式确保原始设备上被压缩的数据可以在目标设备上正确的解压;加密模式确保原始设备上加密的数据可以在目标设备上正确地解密。表示层协议一般不与特殊的协议栈关联,如QuickTime 是Applet 计算机的视频和音频的标准,MPEG 是ISO 的视频压缩与编码标准。常见的图形图像格式PCX 、GIF 、JPEG 是不同的静态图像压缩和编码标准。
1.1.7 应用层
应用层是最接近终端用户的OSI 层,这就意味着OSI 应用层与用户之间是通过应用软件直接相互作用的。注意,应用层并非由计算机上运行的实际应用软件组成,而是由向应用程序提供访问网络资源的API (Application Program Interface ,应用程序接口)组成,这类应用软件程序超出了OSI 模型的范畴。应用层的功能一般包括标识通信伙伴、定义资源的可用性和同步通信。因为可能丢失通信伙伴,应用层必须为传输数据的应用子程序定义通信伙伴的标识和可用性。定义资源可用性时,应用层为了请求通信而必须判定是否有足够的网络资源。在同步通信中,所有应用程序之间的通信都需要应用层的协同操作。
OSI 的应用层协议包括文件的传输、访问及管理协议(FTAM) ,以及文件虚拟终端协议(VIP)和公用管理系统信息(CMIP)等。
1.1.8 封装与解封装
数据封装过程如下图所示: 上层数据
上层数据
TCP 头TCP+ 上层数据
IP 头IP+TCP+ 上层数据LLC 头
FCS IP+TCP+ 上层数据MAC 头FCS
01001110010101101应用层
表示层
会话层传输层网络层数据链路层
物理层
在传输层将数据分段,并加入TCP 头,在网络层加入IP 地址,在数据链路层分别加入LLC 头和MAC 头,最后转换成电信号在物理层传输。
在每一层被封装成的PDU 都有自己的名字,如下图:
在传输层,数据被分割为一个更小的段(Segment),在网络层,加入IP 包头,被称为IP 包(Packet).在数据链路层被称为帧(Frame)。到最后在物理层,被称为Bit 流。
电信号传输到对端后,采用相反的方式进行解封装: 上层数据上层数据
T C P 头TCP+ 上层数据
I P 头IP+TCP+ 上层数据L L C 头
F C S
IP+TCP+ 上层数据
M A C 头F C S
01001110010101101应用层
表示层
会话层传输层网络层数据链路层物理层
1.2 冲突域与广播域
通常一个网络规模非常大,需要分区段管理,将网络分区的设备为路由器,交换机和集线器等设备。所分得的区域,根据特性可以被定义为广播域和冲突域
冲突域(物理分段):连接在同一导线上的所有工作站的集合,或者说是同一物理网段上所有节点的集合或以太网上竞争同一带宽的节点集合。这个域代表了冲突在其中发生并传播的区域,这个区域可以被
认为是共享段。在OSI模型中,冲突域被看作是第一层的概念,连接同一冲突域的设备有Hub,Reperter 或者其他进行简单复制信号的设备,也就是说,用Hub或者Repeater连接的所有节点可以被认为是在同一个冲突域内,它不会划分冲突域。而第二层设备(网桥,交换机)第三层设备(路由器)都可以划分冲突域的,当然也可以连接不同的冲突域。简单的说,可以将Repeater等看成是一根电缆,而将网桥等看成是一束电缆。
广播域:接收同样广播消息的节点的集合。如:在该集合中的任何一个节点传输一个广播帧,则所有其他能收到这个帧的节点都被认为是该广播帧的一部分。由于许多设备都极易产生广播,所以如果不维护,就会消耗大量的带宽,降低网络的效率。由于广播域被认为是OSI中的第二层概念,所以象Hub,交换机等第一,第二层设备连接的节点被认为都是在同一个广播域。而路由器,第三层交换机则可以划分广播域,即可以连接不同的广播域。
路由器由于工作在网络层,所以可以隔离广播域,而交换机,由于采用交换矩阵,可以避免在数据传输时发生冲突。而集线器由于工作在物理层,仅复制电信号,所以无法隔离广播域和冲突域。
1.3 以太网
1976年,Xerox公司在ALOHA系统中增加了载波侦听之后,一个14M电缆上连接了100多台计算机,其传输速率为2.94M bps,采用了CSMA/CD介质访问控制方法。这个系统被称为以太网(Ethernet)。1980年,Xerox, DEC, Intel共同提交了“以太网”蓝皮书,制定了10M bps的CSMA /CD 以太网标准。随后,IEEE 802小组成立。IEEE定义了采用1-坚持型CSMA/CD技术的802.3局域网标准,速率从1M到10M bps。而以太网只是其中的一个特定产品而已。
1.3.1 以太网帧结构
以太网常见的帧为IEEE 802.3和Ethernet II帧,IEEE802.3帧格式如下:
1.前导(preamble)字段:交替的1和0组成.5Mhz 的时钟频率,8字节,包含7字节的起始帧分
界符(start frame delimiter,SFD),SFD 是10101011,最后1 个字节同步(sync)
2.目标地址(destination address,DA):6 字节
3.源地址(source address,SA):6 字节
4.长度(length)字段:不能辨别上层协议,2 字节
5.数据(data):64 到1500 字节
6.帧校验序列(frame check sequence,FCS):4 字节,存储CRC值
而Ethernet II的帧结构如下;
1.前导(preamble)字段:5Mhz的时钟频率,8字节,包含7字节的起始帧分界符(start frame
delimiter,SFD),SFD 是10101011,最后1 个字节同步(sync)
2.目标地址(destination address,DA):6 字节
3.源地址(source address,SA):6 字节
4.类型(type)字段:用于辨别上层协议,2 字节
5.数据(data):64 到1500 字节
6.帧校验序列(frame check sequence,FCS):4 字节,存储CRC 值
1.3.2 以太网物理层
一些原始的和扩展的IEEE 802.3 的标准:
1.10Base2:Base是指基带传输技术,2指最大距离接近200米,实际为185米,10指10Mbps的
速度,采用的是物理和逻辑总线拓扑结构,AUI连接器2.10Base5:5指最大距离500米,10指
10Mbps的速度,采用的是物理和逻辑总线拓扑结构,AUI连接器
2.10BaseT:10指10Mbps的速度,采用的是物理星形和逻辑总线拓扑结构,3类UTP双绞
线,RJ-45连接器,每个设备必须与hub或者switch相连,所以1个网段只能有1台主机
3.100BaseT:100指100Mbps的速度,采用的是物理星形和逻辑总线拓扑结构,5,6或者7类
UTP2对双绞线,RJ-45连接器,1个网段1台主机
4.100BaseFX:100指100Mbps的速度,光纤技术,点对点拓扑结构,最大距离412米,ST或者SC
连接器
5.1000BaseT:1000指1000Mbps的速度,光纤技术,点对点拓扑结构,最大距离412米,5类UTP4
对双绞线,最大距离100米
1.3.3 半双工和全双工
half-duplex(半双工)以太网:它只采用1对线缆.如果hubs与switches相连,那么必须以半双工的模式操作,因为端工作站必须能够检测冲突.半双工以太网带宽的利用率只为上限的30%-40%full-duplex(全双工)以太网:采用2对线缆,点对点point-to-point)的连接,没有冲突,双倍带宽利用率全双工以太网可以使用在以下的3种形式里:
1.switch和host相连
2.switch和switch相连
3.用交叉线缆(crossovercable)相连的host和host
自动检测机制(auto-detectionmechanism):
当全双工以太网端口电源启动时,它先与远端相连,并且与之进行协商.看是以10Mbps的速度还是以100Mbps的速度运行;再检查是否可以采用全双工模式,如果不行,则切换到半双工模式