分类: 系统运维
2006-06-28 15:09:22
Internetworking Basics
把1个大的网络分成几个小点的网络称之为网络分段(network segment),这些工作由routers,switches和bridges来完成
引起LAN拥塞的可能的原因是:
1.太多的主机存在于1个广播域(broadcast domain)
2.广播风暴
3.多播(multicast)
4.带宽过低
在网络中使用routers的优点:
1.它们默认是不会转发广播的
2.它们可以基于layer-3(Network layer)的信息来对网络进行过滤
switches的主要目的:提高LAN的性能,提供给用户更多的带宽
冲突域(collision domain):Ethernet术语之1,处于冲突域里的某个设备在某个网段发送数据包,强迫该网段的其他所有设备注意到这个包.而在某1个相同时间里,不同设备尝试同时发送包,那么将在这个网段导致冲突的发生,降低网络性能
bridges在某种意义上等同与switches,不同的地方是bridges只包括2到4个端口(port),而switches可以包括多达上百端口.但是相同的地方是它们都可以分割大的冲突域为数个小冲突域,因为1个端口即为1个冲突域,但是它们仍然处在1个大的广播域中.分割广播域的任务,可以由routers来完成
Internetworking Models
早期各个网络厂商拥有私有网络,不便于同其他厂商的网络进行通讯.于是,在20世纪70年代末期,ISO组织创建了OSI(Open System Interconnection)参考模型.
OSI参考模型,用于帮助不同厂家创建可与对方进行协同工作的网络设备和软件等等,最大的特点是分层.但是它仍然只是个参考模型而非物理模型
Advantages of Refernce Models
OSI参考模型分层化的优点:
1.允许多厂家共同发展网络标准化组件
2.允许不同类型的网络硬件和软件相互通信
3.防止其中某层的变化影响到其他层,避免牵制到整个模型
The OSI Reference Model
OSI参考模型分为7层2组;最高3层定义了端用户如何进行互相通信;底部4层定义了数据是如何端到端的传输.最高3层,也称之为上层(upper layer),它们不关心网络的具体情况,这些工作是又下4层来完成
整个参考模型由高到低分为:
1.Application
2.Presentation
3.Session
4.Transport
5.Network
6.Data link
7.Physical
在整个OSI参考模型上运行的网络设备有:
1.网络管理工作站(NMS)
2.网页和应用程序服务器
3.网关(gateways)
4.网络上的主机(hosts)
OSI参考模型每层的任务:
1.Application层:提供用户接口
2.Presentation层:表述数据;对数据的操作诸如加密,压缩等等
3.Session层:建立会话,分隔不同应用程序的数据
4.Transport层:提供可靠和不可靠的数据投递;在错误数据重新传输前对其进行更正
5.Network层:提供逻辑地址,用于routers的路径选择
6.Data Link层:把字节性质的包组成帧;根据MAC地址提供对传输介质的访问;实行错误检测,
但是不实行错误更正
7.Physical层:在设备之间传输比特(bit);定义电压,线速,针脚等物理规范
OSI参考模型每层的功能:
1.Application层:提供文件,打印,数据库,和其他应用程序等服务
2.Presentation层:数据加密,压缩和翻译等等
3.Session层:会话控制
4.Transport层:提供端到端的连接
5.Network层:路由(routing)
6.Data Link层:组成帧
7.Physical层:定义物理拓扑结构
The Session Layer
The Session layer负责建立,管理,终止会话.也设备设备和节点(nodes)之间的会话控制.3种模式:simplex half duplex和full duplex
一些Session layer协议和接口的例子:
1.Network File System(NFS)
2.Structured Query Language(SQL)
3.Remote Procedure Call(RPC)
4.X Window
5.AppleTalk Session Protocol
6.Digital Network Architecture Session Control Protocol(DNA SCP)
The Transport Layer
The Transport layer把数据分段重新组合成数据流(data stream)
Flow Control
流控制(flow control)保证了数据的完整性,防止接受方的缓冲区溢出, 缓冲区溢出将导致数据的不完整.如果数据发送方传输数据过快,接受方将数据报(datagrams)暂时存储在缓冲区(buffer)里
可靠的数据传输采用了面向连接(connection-oriented)通信方式,保证:
1.接受方接受到被传输的段(segment)以后将发回确认(acknowledge)给发送方
2.任何没有经过确认的段将被重新传输
3.段在达到接受方之前应按照适当的顺序
4.可以进行管理的流控制技术用于避免拥塞,超载(overloading)和数据的丢失
Connection-Oriented Communication
面向连接式通信:发送方先建立会话(call setup)或者叫做3度握手(three-way handshake);然后
数据开始传输;数据栓书完毕以后,终止虚电路连接(virtual circuit)
3度握手(面向连接回话)过程:
1.第一个请求连接许可的段用于要求同步,由发送方发送给接受方
2.发送方和接受方协商连接
3.接受方与发送方同步
4.发送方进行确认
5.连接建立,开始传输数据
如果发送方发送数据报过快,而接受方缓冲区已经满了,它会反馈1条not ready的信息给发送方,等待缓冲区里的数据处理完毕后会反馈条go的信息给发送方;于是发送方继续发送数据.这就是流控制的用途
如果任何数据段在传输的过程中丢失了,被复制了,或者损坏了,这将导致传输失败.这个问题的解决方法就得靠接受方反馈确认信息给发送方
Windowing
窗口(window)是指允许发送方不用等待接受方反馈确认的数据段,大小以字节(bytes)衡量,比如:如果1个TCP会话是以2字节的窗口建立的,传输时假如窗口从2字节增加为3字节,那么发送方将不用等待之前2字节的量的确认信息,直接以3字节的量传输
The Network Layer
the Network layer用于管理设备地址,跟踪网络上的设备位置,决定传输数据最好的路线.该层上有2种包(packets):
1.数据(data)
2.路由更新信息(route updates)
routers必须对每种路由协议保持1张单独的路由表,因为不同的路由协议根据不同的地址机制跟踪网络信息
路由表包含的一些信息:
1.interface:出口
2.度(metric)
routers的一些要点信息:
1.默认不转发广播和多播(multicast)包
2.根据逻辑地址决定下1跳(hop)
3.可以提供层2的桥接功能,可以同时路由同1个接口
4.提供VLANs的连接
5.可以提供Quality of Service(QoS)
The Data Link Layer
the Data Link layer负责数据的物理传输,错误检测,网络拓扑和流控制.这个意味着在数据LAN上将根据硬件地址来进行投递,还要把Network layer的包翻译成比特用于在Physical layer上传输
IEEE以太网(Ehernet)的Data Link layer有2个子层:
1.Media Access Control(MAC)802.3:这层定义了物理地址和拓扑结构,错误检测,流控制等.共享带宽,先到先服务原则(first come/first served)
2.Logical Link Control(LLC)802.2:负责识别Network layer协议然后封装(encapsulate)数据.LLC头部信息告诉Data Link layer如何处理接受到的帧,LLC也提供流控制和控制比特的编号
Switches and Bridges at the Data Link Layer
第二层的设备switches被认为是基于硬件的bridges,因为采用的是1种叫做application-specific integrated circuit(ASIC)的特殊硬件.ASICs可以在很低的延时(latency)里达到gigabit的速度;而bridges是基于软件性质的
延时:1个帧从进去的端口到达出去的端口所耗费的时间
透明桥接(transparent bridging):如果目标设备和帧是在同1个网段,那么层2设备将堵塞端口防止该帧被传送到其他网段;如果是和目标设备处于不同网段,则该帧将只会被传送到那个目标设备所在的网段
每个和switches相连的网段必须是相同类型的设备,比如你不能把令牌环(Token Ring)上的主机和以太网上的主机用switches混合相连,这种方式叫做media translation,不过你可以用routers来连接这样不同类型的网络
在LAN内使用switches比使用hubs的好处:
1.插入switches的设备可以同时传输数据,而hubs不可以
2.在switches中,每个端口处于1个单独的冲突域里,而hubs的所有端口处于1个大的冲突域里,可想而知,前者在LAN内可以有效的增加带宽.但是这2种设备的所有端口仍然处于1个大的广播域里
The Physical Layer
the Physical layer负责发送和接受比特.比特由1或者0组成.这层也用于识别数据终端装备(data terminal equipment,DTE)和数据通信装备(data communication equipment,DCE)的接口
DCE一般位于服务商(sevice provider)而DTE一般是附属设备.可用的DTE服务通常是经由modem或者channel service unit/data sevice unit(CSU/DSU)来访问
hubs:其实是多端口的repeaters,重新放大信号用,解决线路过长,信号衰减等问题.
1个物理星形(star)拓扑结构,实际在逻辑上是逻辑总线(bus)拓扑结构
Ethernet Networking
以太网采用1种争夺(contention) 介质访问方法,这个机制使得在1个网络上所有主机共享带宽.采用了Physical layer和Data Link layer的规范.它采用1种带冲突检测的载波监听多路访问的(Carrier Sense Multiple Access with Collision Detection,CSMA/CD)机制
CSMA/CD:帮助共享带宽的设备避免同时发送数据,产生冲突的协议.补偿算法(Backoff algorithms)用于决定产生冲突的2台设备何时重新传输数据
CSMA/CD网络带来的问题:
1.延迟(delay)
2.低吞吐量(throughput)
3.拥塞
Half- and Full-Duplex Ethernet
half-duplex(半双工)以太网:它只采用1对线缆.如果hubs与switches相连,那么必须以半双工的模式操作,因为端工作站必须能够检测冲突.半双工以太网带宽的利用率只为上限的30%-40%
full-duplex(全双工)以太网:采用2对线缆,点对点(point-to-point)的连接,没有冲突,双倍带宽利用率
全双工以太网可以使用在以下的3种形势里:
1.switch和host相连
2.switch和switch相连
3.用交叉线缆(crossover cable)相连的host和host
自动检测机制(auto-detection mechanism):当全双工以太网端口电源启动时,它先与远端相连,并且与之进行协商.看是以10Mbps的速度还是以100Mbps的速度运行;再检查是否可以采用全双工模式,如果不行,则切换到半双工模式
Ethernet at the Data Link Layer
4种类型的以太网帧:
1.Ethernet II
2.IEEE 802.2
3.IEEE 802.3
4.SNAP
Ethernet Addressing
MAC地址是烧录在Network Interface Card(网卡,NIC)里的.MAC地址,也叫硬件地址,是由48比特长(6字节),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当中)
Ethernet Frames
第二层用于把第一层的比特连接成字节,再组成帧(frames)
3种介质访问方法的类型:
1.争夺(contention),用于在以太网中
2.令牌传递(token passing),用于在FDDI和Token Ring里
3.投票(polling),用于在IBM Mainframes和100VG-AnyLAN中
循环冗余校验(cyclic redundancy check,CRC):用于错误检测,而非错误更正
隧道(tunneling):把不同类型的帧封装在1个帧里
Ethernet II帧:
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.类型(type)字段:用于辨别上层协议,2字节
5.数据(data):64到1500字节
6.帧校验序列(frame check sequence,FCS):4字节,存储CRC值
802.3 Ethernet帧:
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值
802.2 and SNAP
因为802.3 Ethernet帧没有鉴别上层协议的能力(使用的是length字段),所以,它需要IEEE定
义的802.2 LLC标准来帮它实现这个功能
802.2帧(SAP):
1.目标服务访问点(dest SAP)字段: 1个字节
2.源服务访问点(source SAP)字段: 1个字节
3.控制字段:1或2个字节
4.数据:大小可变
1个802.2帧是由802.3Ethernet帧加上LLC信息组成,这样它就可以辨别上层协议
802.2帧(SNAP):它有自己的协议来辨别上层协议
1.目标服务访问点(dest SAP)字段: 1个字节,总为AA
2.源服务访问点(source SAP)字段: 1个字节,总为AA
3.控制字段:1或2个字节,值总为3
4.OUI ID:3字节
5.类型(type)字段:2字节,辨别上层协议
6.数据:大小可变
Ethernet at the Physical Layer
一些原始的和扩展的IEEE 802.3的标准:
1.10Base2:Base是指基带传输技术,2指最大距离接近
2.10Base5:5指最大距离
3.10BaseT:10指10Mbps的速度,采用的是物理星形和逻辑总线拓扑结构, 3类UTP双绞线,RJ-45连接器,每个设备必须与hub或者switch相连,所以1个网段只能有1台主机
4.100BaseT:100指100Mbps的速度,采用的是物理星形和逻辑总线拓扑结构, 5,6或者7类UTP2对双绞线,RJ-45连接器, 1个网段1台主机
5.100BaseFX:100指100Mbps的速度,光纤技术,点对点拓扑结构,最大距离
6.1000BaseT:1000指1000Mbps的速度,光纤技术,点对点拓扑结构,最大距离
Ethernet Cabling
以太网线缆接法:
1.直通线(straight-through)
2.交叉线(crossover)
3.反转线(rolled)
Straight-Through Cable
直通线用于连接:
1.主机和switch/hub
2.router和switch/hub
直通线只使用1,2,3,6针脚,2端的连法是一一对应
Crossover Cable
交叉线用于连接:
1switch和switch
2.主机和主机
3.hub和hub
4.hub和switch
5.主机与router直连
交叉线只使用1,2,3,6针脚,2端的连法是1连3,2连6,3连1,6连2
Rolled Cable
反转线不是用来连接以太网连接的,它是用来连接主机与router的com口(console serial port)的,它采用1到8跟针脚,2端全部相反对应
当主机与router的console口用反转线连好后,启动Window系统里的HyperTerminal程序即可对router进行连接,其配置如下:
1.Bps:9600
2.Data bits:8
3.Parity:None
4.Stop bits:1
5.Flow control:none
Data Encapsulation
封装(encapsulation):把OSI参考模型每层自己的协议信息加进数据信息的过程,反之叫做解封装
协议数据单元(protocol data units,PDU):数据包括封装进去的信息在OSI参考模型每层的叫法:
1.Transport layer:segment
2.Network layer:packet或者datagram
3.Data Link layer:frame
4.Physical layer:bits