第一章 OSI网络模型和TCP/ IP协议栈
1.1 计算机网络的定义
计算机网络是指将若干台地理位置不同,且具有独立功能的计算机,通过通信设备和传输线路相互连接起来,按照一定的通讯规则进行通信,以实现信息传输和网络资源共享的一种计算机系统。
因而计算机网络需要两个或两个以上的单机系统共享某些事物(数据),单机系统必须通过传输线路(传输介质)相连,在通讯的时候,为了使发送方和接受方都能理解彼此接收的数据,双方(包括网络上所有的单机系统)必须遵循一套公共的通信规则(协议),否则陷入迷惑状态,就好像你在给仅会俄语的人读一本法语书。
计算机网络的目标是提供服务和降低设备费用。网络使得计算机间可以共享资源,对于用户来说,计算机网络提供的是一种透明的传输机构,用户在访问网络共享资源时,可以不考虑这些资源的物理位置,以网络服务的形式来提供网络功能和透明性访问。主要的网络服务有:
1. 文件服务;
2. 打印服务;
3. 电子邮件服务(E-maiil);
4. 信息发布服务等。
计算机网络与计算机通信网不同,人们常将二者混淆,后者指的是实现计算机通信的通信网络。利用这些现成的通信网,可以把分布在各处的计算机网络连接。常用的公用通信网有:
常用公用通信网比较
公用网
|
传输速率(Kbit/s)
|
主要特点
|
模拟电话网PSTN
|
模拟电话,中低速数据,最大56
|
经济,普及,速率低
|
综合业务数字网ISDN
|
电话、传真、数据综合业务(BRI:128,PRI:2048)
|
经济,灵活
|
分组交换网X.25
|
中低速数据2.4-64
|
经济,可靠
|
数字数据网DDN
|
中高速数据64-2048
|
速率高,可靠,费用高
|
帧中继FRN
|
中高速数据64-2048
|
速率高,可靠,价格低
|
1.2 计算机网络的分类
按网络所覆盖的地理范围,计算机网络可分为局域网、城域网、广域网。三者之间的差异主要体现在覆盖范围和传输速度。
1、 局域网:覆盖范围较小,通常限于几公里之内,如一个办公室、几栋楼、一个大院区。传输速率为10
~1000Mbit/s。局域网主要用来构建一个单位的内部网络,如学校的校园网、企业的企业网等。局域网通常属单位所有,单位拥有自主管理权,以共享网络资源为主要目的。局域网的特点是:
4 传输速度高;
4 组网灵活;
4 成本低。
2、 城域网:覆盖范围通常为一座城市,从几公里到几十公里,传输速度为64Kbit/s
~几Gbit/s。城域网主要指大型企业、ISP、电信部门、有线电视台和市政府构建的专用网络和公用网络。
3、 广域网:其覆盖范围很大,几个城市,一个国家,甚至全球。广域网主要指使用公用通信网所组成的计算机网络,如因特网(Internet)。广域网的特点是:
4 地理范围没有限制;
4 由于长距离的数据传输,容易出现错误;
4 可以连接多种局域网;
4 成本高。
1.3 计算机网络的组成
一个计算机网络的基本组成:
1. 网络工作站:计算机网络的用户终端设备,通常是PC机,主要是完成数据传输、信息浏览和桌面数据处理等功能。
2. 网络服务器:被工作站访问的计算机系统,是网络的核心设备,通常是一台高性能计算机,它包括了各种网络信息资源,并负责管理资源和协调网络用户对资源的访问。
3. 传输设备:
4 传输介质:连接发送端和接受端的传输通路,主要有:电缆、光缆、微波等。
4 网卡(NIC):用于连接计算机与线缆,种类很多,主要与传输介质、传输速度有关。
4. 网络外部设备:是网络用户共享的硬件设备之一,如高性能网络打印机、磁盘阵列、绘图仪等。
5. 局域网连接设备:将网络工作站、网络服务器、网络外部设备等连接,实现计算机间相互通讯的设备,常用的有交换机、集线器等。
6. 网络互连设备:
4局域网互连:不同类型局域网的互连,可通过网桥和路由器实现。同类局域网的互连,可用中继器实现。
4局域网与广域网互连:一种是通过数字数据通信网(如ISDN、 DDN、X.25、帧中继)互连,常用路由器实现;一种是通过模拟电话网(如PSTN)互连,常使用访问服务器(Access Server)和调制解调器池(Modem Pool)来实现。
7. 网络软件:主要包括以下两种:
4 网络操作系统:主要是对网络资源进行有效管理。常用有:UNIX、WindowsNT、NETWare。
4 网络应用软件:根据应用而开发的基于网络环境的应用系统。常用的有:办公自动化(OA)、管理信息系统(MIS)、数据库管理系统、电子邮件等。
1.4 计算机网络的传输介质
网络传输概念:
1. 数据通信:是指通过数据通信系统将数据以某种信号的方式从一处安全、可靠地传送到另一处。
2. 数据编码技术:为了便于数据的传输和处理,将数据表示成适当的信号形式。主要的数据编码技术是:
4 数字数据的模拟信号编码;
4 数字数据的数字信号编码;
4 模拟数据的数字信号编码。
3. 传输速率:指每秒能传输的位数,用B/S表示。
4. 多路复用技术:
在数据传输系统中,传输介质的带宽大于传输单一信号所需的带宽,为了有效地提高传输系统的利用率,通常采用多路复用技术以同时携带多路信号来高效地使用传输介质。
多路复用(MUX)技术
常用的多路复用技术有:
4 频分多路复用FDM:传输介质的可用带宽必须超过各路信号所需带宽的总和。将这几路信号中的每路信号都以不同的载波频率进行调制,而且各路的载波频率之间都有一定的间隔使各路信号带宽不会相互重叠,这些信号可以同时在介质上传输;
4 时分多路复用TDM:传输介质能到达的数据传输率必须超过各路信号所需数据传输率的总和。每个信号按照时间先后轮流交替地使用单一信道,多个数字信号可以在宏观上同时进行。
1.5 通信操作方式
一个通信系统至少由三部分组成:发送器、传输介质、接收器。发送器产生信号,经过传输介质传送给接收器,由接收器接收这个信号就完成信号从一端到另一端的传送。根据信号传输方向时间的关系,可以将通信操作方式分成以下三个:
4 单工通信:发送器和接收器之间只有一个传输通道,信息单方向从发送器到接收器;如火警,只是将警报发给消防队,而不需要从消防队接收什么消息。
4 半双工通信:发送器和接收器之间有两个传输通道,信息只能轮流进行双向的传送,在某一时刻只能沿单方向从发送器到接收器;如大楼内的保安通过对讲机传递消息,一位完成讲话,必须释放对讲机的传送键,以便另一位保安能够发出响应。
4 全双工通信:发送器和接收器之间有两个传输通道,信息可以同时进行双向的传输。如打电话,交谈的双方任何时候都可以说话。
1.6 传输同步方式
在计算机通信中,一个最基本的要求是发送端和接收端之间以某种方式保持同步,接收端必须知道它所接收的数据流每一位的开始时间和结束时间,以确保数据接受的正确性。因此,通信双方必须遵循同一通信规程,使用相同的同步方式进行数据传输。同步方式可以分成两个:
1、 异步传输:以字符为单位的数据传输,由于每个字符都要附加1位起始位和1位停止位,以标记字符的开始和结束,因此传输效率低。
2、 同步传输:以数据块为单位的数据传输,每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标志一个数据块的开始和结束。常用同步传输方式有两种:
4 面向字符的同步传输:
4 面向位流的同步传输:
1.7 差错控制
计算机通信系统的基本任务是高效而无差错地传送数据,但任何通信线路上都存在噪声,使发送的数据和接收的数据不一致,造成传输差错。
差错的检测和纠正也称为差错控制,对所传输的数据进行抗干扰编码,并以此来检测和校正传输中的错误。主要方法有:
4 反馈重发纠错法:接收端将传输正确与否的信息作为应答反馈给发送方,发送端根据反馈信号确定是否重发;
4 前向纠错法:接收端发现错误后,通过数学方法进行自动校正。
1.8 网络传输介质
1. 传输介质的分类
传输介质是计算机网络最基础的通信设施,其性能好坏直接影响到网络的性能。传输介质可分为两类:有线传输介质(如双绞线、同轴电缆、光缆)和无线传输介质(如无线电波、微波、红外线、激光)。
衡量传输介质性能的主要技术指标有:传输距离、传输带宽、衰减、抗干扰能力、价格、安装等。
2. 有线传输介质的特性比较
4 双绞线:双绞线TP(
Twisted
Pairware)是计算机网络中最常用的传输介质,按其抗干扰能力分为屏蔽双绞线STP(
Shielded
TP)、非屏蔽双绞线(
Unshielded TP)。
在EIA/TIA 568A标准中,UTP共分为1
~5类,计算机网络常用的是3类和5类UTP。如10BASE-T以太网、100BASE-T快速以太网、IBM的令牌网。
4 同轴电缆:广泛用于有线电视网CATV和总线型以太网。常用的有75
W和50
W的同轴电缆。75
W的电缆用于CATV,总线型以太网用的是50
W的电缆,分为细同轴电缆和粗同轴电缆。
4 光缆:目前广泛应用于计算机主干网,可分为单模光纤和多模光纤。单模光纤具有更大的通信容量和传输距离。常用的多模光纤是62.5
mm芯 /125
mm外壳和50
mm芯 /125
mm外壳。
电缆介质的特性比较
电缆类型
|
价格
|
安装
|
传输速率
|
传输距离
|
抗电磁干扰性
|
细缆Thin
|
< STP
|
便宜、容易
|
典型10Mbps
|
185米
|
> UTP
|
粗缆Thick
|
> STP
< Fiber
|
容易
|
典型10Mbps
|
500米
|
> UTP
|
屏蔽双绞线STP
|
> UTP
< Thick
|
还算简单
|
典型16Mbps
最大500 Mbps
|
100米
|
> UTP
|
非屏蔽双绞线UTP
|
最低
|
便宜、容易
|
典型10Mbps
最大100 Mbps
|
典型100米
|
最差
|
光缆Fiber
|
最高
|
昂贵、困难
|
典型100Mbps
最大1000 Mbps
|
几公里
~几十公里
|
最强,无电磁干扰
|
1.9 计算机网络的拓扑结构
网络有各种标准格式,每种都是互相兼容的硬件、协议、传输介质和拓扑结构的完整系统。拓扑结构是网络的映象,它是有关电缆如何连接、节点和节点间如何相互作用的规划。网络的拓扑可以用物理或逻辑的观点来描述,物理拓扑和逻辑拓扑可以并不相同。
4 物理拓扑:是指组成网络的各部分的几何分布,它不是网络图,只是用图形表述的网络形状和结构;
4 逻辑拓扑:描述了成对的可通信的网络端点间的可能连接,它描述了哪些端点可以同其他端点通信,以及可通信的端点间是否有直接物理连接。
最常用的物理拓扑和逻辑拓扑有三种主要的形式:总线、环型、星型。
1.
总线拓扑
在总线拓扑结构中,所有网络节点用有开放端的单线对等互连。这些端必须为电阻负载的终端(防止信号反馈产生干扰),电缆只支持单一的信道,所有连接的设备监听总线传输,并接收与自己地址匹配的分组。如粗、细缆以太网,是使用总线型作为物理拓扑的典型;10BASE-T以太网是使用总线型的逻辑拓扑结构,但其物理拓扑结构为星型。
大部分总线网在主干线上双向传递信息,所有的设备都能直接接收信号,也有些总线网是单向的,信号以一种方向传输,仅能到达下游设备。
2
.环拓扑
对于环拓扑结构,网络上每个工作站有两个连接,分别连接到左右离其最近的邻居。全部网络组成一个物理回路,即环。数据绕环单向传输,每个工作站作为中继器工作,并接收和响应与其地址相匹配的分组,将其它分组发至下个“下游”站。
环型物理拓扑比较少见,它一般是作为逻辑拓扑实现的,如令牌网,其物理拓扑结构为星型(所有的节点都连接到一个中央集线器),但以逻辑环传递数据,FDDI(光纤分布式数据接口)其物理和逻辑拓扑均为环型。
3
.星型拓扑
在星型拓扑中,网络中所有的设备都连接到一个网络中继器,如集线器、交换机中,中继器从其它的网络设备接受信号,然后确定路线发送信息到正确的目的地。每一个网络设备都能独立访问介质,共享或使用各自的带宽进行通信。如前面提到的,星型拓扑一般作为物理拓扑,常用于实现总线或环型逻辑拓扑。例如快速以太网就是使用星形物理拓扑结构。
1.10 计算机网络的通信协议
在计算机网络中,网络用户可以共享网络资源及相互通信,为此,网络中不同实体之间能进行通信。在此实体是指各种应用程序、文件传送软件、数据库管理系统、电子邮件系统等;系统包括计算机、终端和各种设备等。两个实体之间要实现通信,必须有相同的语言、遵守相同的通信规则,这些规则的集合称为协议。所谓计算机网络协议,就是指实现计算机网络中不同计算机系统之间的通讯必须遵守的通信规则的集合。例如,什么时候开始通信,双方采用什么样的数据格式,数据如何编码,如何处理差错,怎样协调发送和接收数据的速度,如何为数据选择传输路由等。
1.11 网络互连模型
互连网络随着需要而发展。在计算机应用的早些时候( 2 0世纪5 0年代和6 0年代),互连网络并不存在。计算机是独立的和私有的。然而,在2 0世纪6 0年代,美国国防部( D O D )对教育研究中使用的数据包-交换广域网设计感兴趣。“数据包”指小的数据包。“交换”指使用和基于交换的电话系统类似的路由系统。并且“广域网” ( WAN )意味着网络可以延伸其物理上互相远离站点的。
D O D希望将这种技术用于国防,以作为共享雷达数据和在核战争的情况下进行分布控制和命令。D O D内进行网络研究的机构是高级研究项目机构( A R PA ),后来,在它们的名称前面加了一个“国防”,成为D A R PA。D A R PA项目包括来自大学和马萨诸塞州的B o l t、B a r a n e k和N e w m a n公司的科学家和工程师,他们在这个项目中面临两个挑战:互通性( i n t e r c o n n e c t i v i t y )和互操作性( i n t e r o p e r a b i l i t y )。
• 互通性在计算机之间传输信息的方法,包括物理介质、数据打包机制和从起点到达终点之间的多个网络设备部分之间的路由。
• 互操作性使使用私有的或完全不同的计算机操作系统和语言的计算机可以理解数据的方法。
D A R PA项目的结果就是A R PA N E T,它最终成为I n t e r n e t,而且伯克利的U N I X版本中包括了I P协议。A R PA N E T通过包含其他政府和大学的网络而成为I n t e r n e t。并且在包含商业企业网络后,它得到了进一步发展。
网络并没有在企业组织中流行,直至2 0世纪8 0年代,那时个人计算机逐渐开始流行。公司认识到,在最早的文件服务器上共享硬盘空间,可以使职员容易地共享数据和进一步繁荣生产,它们在更大规模上实现网络。它们创建了L A N (局域网),然后将它们连接到WA N (广域网)上。在2 0世纪9 0年代早期, I n t e r n e t商业化后,公司也开始连接到其上。
不同系统各个实体的任务和相互间的通信十分复杂,一般采用结构化的设计和实现技术,即分层或层次结构的协议集合来实现。ISO(国际标准化组织)对网络通信进行研究,提出开放系统互连OSI参考模型。
OSI将整个通信分成7层,不同系统中同一层的实体之间进行通信;同一系统中,相邻层之间通过原语交换信息,下层实体向上层实体提供服务。由于每一层之间的通信由该层的协议进行管理,对于本层的修改不会影响到其它层,方便了对于通讯的修改和组合。ISO/OSI网络体系结构具有开放性,所谓“开放”是指任何遵守该参考模型和有关标准的系统之间都能互连。
1.12 ISO/OSI参考模型
数据的封装
封装( encapsulation )是在数据上加入报头或将数据包在里面的过程。为在令牌环网上发送数据,在发送数据之前,必须用令牌报头封装数据。术语“包装”和“封装”指加入到每个数据包上的报头和报尾。报头用于标志数据包的开始,通常包括地址和其他特性,这依赖于协议和层。报尾通常用于差错校验。报头受到更多的注意,因为它们包含大多数协议特性实现。
图OSI模型如何传输数据
封装在O S I参考模型的每层上都会出现。来自每层的完整的数据包将插入到下一个层的数据字段中,并且加入另外一个报头。在偶然情况下,层会将一个数据信元(包括前一层的报头)分开为多个部分,更小的数据信元,并且每个更小的数据信元用较低协议层的新报头进行封装。这个过程帮助控制数据流并写地址给网络上的数据包大小限制。随着数据逐渐达到模型的底层,它逐渐变小,而且在大小和内容上越来越统一。
当接收到数据时,接收节点上的对应层将在把数据传送到下一个层之前,重新装配数据字段。随着数据逐渐在目的地的模型上向上移动,它像一个游戏一样逐渐将分段拼装到一起。
1.12.1 OSI的物理层与数据链路层
物理层或第1层定义了实际的机械规范和电子数据比特流。这包括电压大小、电压的变动和代表“1”和“0”的电平定义。在这个层中包括了传输的数据速率、最大距离和物理接头。
物理层主要涉及在网络介质上传送和接收数据的所有问题,其中包括:
4 网络的物理结构(物理拓扑)
4 所使用介质的机械和电子规范
4 位传输的编码和定时
物理层的基本功能是保证网络一方可以正确接收另一方发送的信号。工作在物理层的设备有转换器。
该层的主要功能是传输时将称作‘帧’的报文分解成比特位,然后再将接收到的位重新组织成帧;提供跨物理网络的可靠的数据发送,只保证信息被发送,而不保证寻由任务以及是否被接收;处理流控、检错和差错控制。重要任务是创建和管理由网络发送出去的数据帧;
IEEE 802(国际电子电气工程学会)标准又将数据链路层划分成两个子层:
4 介质访问控制(
Material
Access
Control):MAC子层控制网络上多个设备共享传输信道的方法,其中包括竞争方式(参见第三章)、令牌方式等;还提供网络设备通讯的寻址信息。
4 逻辑链路控制(
Logic
Link
Control):LLC子层建立和维护通讯设备间的链路,并提供通讯设备单一链路的错误控制和流量控制。
数据链路层维护着将帧传送到特定设备的地址,即物理设备地址,它是计算机中与网络硬件相关的唯一地址,由于地址格式与所用介质的访问控制方法相关,所以又常被称作MAC地址。在多数情况下,MAC地址在网络接口卡(网卡)生产时就写入网卡的ROM中。数据链路层处理着位于同一个网络内的设备间的通讯,MAC地址用来确认数据帧,每个设备都负责监视网络,并接收地址指向该设备的帧。工作在链路层的网络设备有集线器、交换机。
物理层和数据链路层通常是以硬件/软件组合解决方案来实现的。这样的例子包括集线器、交换机和网络适配器,以及它们可以使用的软件驱动程序,及其用于连接网络节点的介质或电缆。剩下的层通常仅仅以软件形式实现。
I E E E (电子和电气工程师协会)在8 0 2系列下创建了几个标准。表1 - 1说明了当前正在使用和正在开发的8 0 2系列标准。
表IEEE 802标准系列
标准
说明
8 0 2 . 2
其他8 0 2标准可以使用的L L C协议
8 0 2 . 3
E t h e r n e t ( C S M A / C D )
8 0 2 . 3 u
快速Ethernet 100Base T
8 0 2 . 4
令牌总线(很少使用)
8 0 2 . 5
令牌环
8 0 2 . 11
使用C S M A / C A (载波监听多路访问/冲突避免) 的无线局域网
E t h e r n e t使用具有冲突检测的载波监听多路访问( C S M A / C D )方法。在C S M A / C D网络中,节点可以在它们有数据需要发送的任何时候使用网络。在节点传输数据之前,它进行“监听”以了解网络是否很繁忙。如果不是,则节点开始传送数据。如果网络正在使用,则节点等待。如果两个节点进行监听,没有听到任何东西,而开始同时使用线路,则会出现冲突。这会使两个传输都崩溃,并且两个位置都不得不再次进行尝试。在这里有一种补偿算法,它可以为再次尝试传输而创建一个随机的等待时间,这样不会出现第2次冲突。
CSMA/CD网络上的冲突
E t h e r n e t,包括8 0 2 . 3,是一个广播系统。这意味着所有的节点可以看见所有的数据帧,而无论那个数据将由哪个节点接收。
每个节点在接收到帧的时候都检查帧的报头地址,以确定它们的目的地是否是那个节点。如果不是,则帧继续在网络上向前流动。如果它们的目的地是那个节点,则它将它们传递给上层协议,以进行处理。
IEEE 802.3帧,以交互的1和0组成的前同步信号告诉接收位置这是一个新帧。下一个字节是帧的起始定界符( S O F ),它以两个连续的1位结束。帧报头的下一个部分是目的地址和源地址字段。一个地址包含3个字节,以确认供应商,以及另外的3个字节,由供应商规定。在源地址之后,在IEEE 802.3帧中,有一个2字节的字段,它包含了帧内的数据字节数目。随后是数据本身,最少为6 4字节(如果它非常短,则加入额外的字节),最后的4字节F C S字段(帧校验序列)结束这个帧。F C S字段包括一个循环冗余校验( C R C )值,用于校验在传输期间数据可能遭受的破坏。
IEEE802.3帧格式
MAC地址
数据链路层包含2个子层:逻辑链路控制( L L C )和介质访问控制( M A C )。M A C子层决定该层的硬件地址。这个地址是和网络无关的,所以无论将那个硬件插入到网络的何处,它有相同的M A C地址,无论网络地址是什么。供应商通常指定M A C地址。在E t h e r n e t策略中,将一系列的Ethernet MAC地址分配给供应商,然后它们将不同的地址分配给生产的每个接口。Ethernet MAC地址包含1 2位。前面的6位(组织标识符或O U I )是由I E E E分配给供应商的特定的编号,剩下的6位是系列号。这样的结果就是,每个网络接口插件可以在任何给定的局域网或广域网上有不同的M A C地址。
1.12.2 OSI的网络层
与数据链路层不同,网络层是处理逻辑上分离的网络设备间的通讯,即不同网络间的设备通讯。这些不同网络形成网间网。在网间网中,仅依靠MAC地址来传送网络数据是不现实的,需要一种路由和信息包过滤的方法,确定最佳路径,以降低网络拥挤和减少传输时间。工作在网络层的设备主要有路由器。网间网中的每一个网络都分配一个网络地址,网络层依次在网间网里发送信息包到特定网络。
网络层和路径确定
在网络层上提供的主要服务是节点和网段的逻辑地址分配。结果是,逻辑地址之间的数据的路由决定过程在网络层上进行。I P协议的I P被认为是一个网络层协议。数据在这个层上分解为“数据包”。
网络层是进行网络互连的地方。数据链路层协议具有这样的特性,可以使数据从一个节点传递到相同链路的另一个节点上,而网络层协议使数据可以从一个网络传递到另一个网络上。这意味着网络层协议必须包含地址分配信息,它独一无二的识别互连网络中的网络。
第3层地址
连网本身就是在两个节点之间共享数据的功能。可以简单地定位网络上的节点是连网中最基本和最重要的功能。网络层不仅仅提供独一无二的节点地址,而且提供独一无二的网络地址。这使得可以在网络之间指定数据的路由。第3层,或者网络层,是进行地址分配最重要的地方。当在I P协议上应用O S I参考模型时,I P (互连网协议)将位于第3层。I P地址分配策略决定了节点所在的网络,以及网络上的逻辑节点地址。逻辑节点地址通常和其他协议中的M A C地址一样,尽管它不是在I P中。这是由下层的数据链路层(第2层)完成的。注意,例如在Novell IPX中,M A C地址用于网络层节点地址,而不进行任何修改。
网络层地址也称为逻辑地址或软件地址。网络层地址是具有层次结构的,并且同时提供网络和节点地址。路由器可以很容易的区分将在特定接口上发送的地址,只需创刊地址的最初的网络部分-网络地址。当数据包到达目的网络时,节点地址部分用于定位到特定的位置。
可路由协议和路由选择协议
可选择路由协议由最终节点使用,以将数据和网络层地址分配信息一起封装在数据包中,目的是它可以通过互连网络进行中继。A p p l e Ta l k、I P和I P X都是已选择路由协议。当一个协议不支持网络层地址时,那么它就不是一个可路由协议。路由器使用路由选择协议,以建立和维护路由表和按照达到数据包的目的地的最佳路径转发数据数据包。路由选择协议使路由器可以了解没有直接连接的网络的状态和与其他的路由器通信,以了解它们所关心的网络。这种通信不断进行,这样当互连网络中发生变化时,路由选择表中的信息可以随时更新。
区别各种路由选择协议的特点包括:
• 它维护信息的已选择路由协议。
• 路由器互相通信的方式。
• 这种通信出现的频率。
• 用于决定最佳路径的算法和度。
• 新的改动需要多长时间才能使整个网络都知晓。
路由选择协议的例子包括RT M P、O S P F和R I P。
路由选择算法和度
路由选择算法就是路由选择协议用于决定达到目的网络的最佳路径的计算方法。路由选择算法越简单,则路由器将使用的处理能力就越小。这将减少路由器的日常费用。度是那些用于决定哪个路由是最优的值。根据所使用的路由选择协议,不同的因素可以决定一个路由的度,包括中继数量、链路速度、延迟、可靠性和负载。产生的度和路由一起存储在路由选择表中,或处于连接状态数据库中。
1.12.3 OSI的传输层
传输层负责主机间数据和服务进行符合规范的可靠传输。主要要求数据的完整性即主机间传送的数据应可靠及时;提供建立、维护和拆除传送连接的功能;在系统间提供可靠的透明数据传输、端到端的差错恢复和流量控制;
传输层提供数据传输服务,有效地为上层掩盖了数据传输问题。传输层服务集中在连接
可靠性、建立虚电路、错误检测和纠正,以及通信量控制。当O S I模型应用在I P协议上时,T C P和U D P都是传输层协议
可靠性
传输控制协议( T C P )被认为是一个可靠的、面向连接的协议。用户数据报协议( U D P )是不可靠的和无连接协议。可靠和不可靠协议之间的区别在于通知发送者已经收到数据。可靠的协议的日常费用较高,因为要发送通知的缘故。另一方面,不可靠协议并不保证数据的交付,而且在交付过程中倾向于产生更多的错误。
无连接或者不可靠协议通常用于这种情况,即可靠性问题,例如先后顺序和错误恢复已经在应用层解决的情况下。优点是因为它们具有较少的功能,所以日常费用很低。
窗口机制
当一些传输协议处理一个互连网络上的两个节点之间的可靠连接时,它们也处理一个可以在任何一次传送的数据量的移动目标。这个移动目标称为滑动窗口(sliding window)。这个过程称为窗口机制( w i n d o w i n g )。
1.12.4 OSI的上层协议
会话层通过建立、管理和终止通讯来管理计算机间的会话。正如名称所暗示的那样,会话层建立了两个网络节点之间的会话,维护它,也结束它。
表示层处理计算机在通讯时所需的语法和文法规则。它将应用层系统专用的数据转化成通用的、与机器无关的、支持低层协议的标准。例如ASCII码到EBCDIC码,文本到图形等。
表示层的名称非常适当,因为这个层处理数据格式或那种数据的表示。表示层中的服务包括数据加密。表示层协议也检查数据的句法,以适应在目标节点出现的变换。
应用层的功能是在网络中提供服务,包括文件服务、打印服务、E-mail服务和数据库服务等。它与用户的应用程序如字处理、绘图等应用程序不同,但为应用程序和网络的通讯提供一个接口。
1.13 TCP/IP协议栈
TCP/IP是一组网络协议,作为计算机通信语言的一套规则,规定了计算机间的信号含义。
1.13.1 物理层
物理层是构成网络基本连接的基础,在多数TCP/IP网络中,该层是指网络线缆连接的形式,包括同轴电缆、双绞线和光纤。它也可以由微波、无线电发信机等组件构成,但这些产品通常在非常特定的情况才使用。
在大多数情况下,需要一个网卡与网络电缆连接,为计算机、网络打印机等设备提供与网络的硬件接口。
1.13.2 数据链路层
TCP/IP可以使用多种链路层结构,在此介绍用以太网作为数据链路层的TCP/IP协议在数据链路层的实现。
以太网本身就是一个标准,它提供的基本通信方法的建立世界上大多数TCP/IP本地网络的基础。数据在以太网上以分散的信息块形式传输,这些信息块就是常说的数据包或数据帧。数据帧由以下几个部分组成:信息将要发送的地方、信息来自什么地方、数据帧中所包含信息的类型、要传输的数据以及循环冗余校验码(CRC)。
1、 CRC:CRC用于确认数据是否准确无误地到达目的地,它从传输的数据产生一个独一无二的数字,即CRC码。在接收数据时,也根据数据帧计算机一个数字,如果与CRC码相同,则传输没有错误;否则就发生了错误则需要重发;
2、 目的地址:在前一章已经介绍过,每一个以太网设备都有一个而且是唯一的可识别的地址称为硬件地址,或MAC地址,这个地址为48位二进制数字。
在以太网上传输数据,数据帧在以太网上进行传输,连接在以太网上的设备都接收这个数据争,如果数据帧上的目的地址与本设备的MAC地址相同,则从数据帧读取其余的信息,并传送到网络层进行处理。
在WIN95/98系统中,可以使用winipcfg.exe来获知网络配置的各种信息,包括MAC地址。
3、 冲突:连接在以太网上的设备同时发送数据帧,就会产生冲突,产生冲突后的处理过程在前一章节已经阐述。需要指出的是,如果连续发生冲突,每个设备在进行重新发送之前需要等待的时间就要延长很多。如果连续发送失败,则数据帧最终可能被丢弃。
1.13.3 网际层
网际层负责TCP/IP中的“IP”,即网际协议(Internet Protocol)。它允许数据帧按规定路线通过不同类型的硬件和数据链路层,允许SLIP(串行线路互联网协议)连接与PPP(点到点协议)连接进行通讯,以及PPP连接与以太网进行通信。协议并不考虑数据的可靠性、数据的顺序或网络的其他需要,只提供一种寻址方案和数据帧分段的机制,使数据帧完全在允许的大小范围内在网络上传输。网际层包括四个重要的协议,即IP、ICMP、ARP和RARP,提供端到端的分组发送,标识网络号及主机节点号的地址,进行数据分段和重新组装,另外在互相独立的局域网中建立互连网络。
每一个由网际层处理的信息帧,可以看成是一个独立和唯一的项目,IP模块从TCP模块中取出数据,将相应的寻址信息提供给该数据,然后将其传送给数据链路层。当数据帧沿着由较小的网络组成的TCP/IP网络传送时,必须决定数据帧沿着其行程所采用的路径。该数据帧通过路由器或网关设备进行传输,路由器或网关提供与其他网络之间所必须的链接。这些设备的职责就是超出数据在行程上要采取的下一个逻辑步骤。IP协议包含一个数据帧的信息,这些网关或路由器可以用这些信息来选择数据帧要遵循的路线。
IP数据包含了一个称为留存时间即TTL(Time to Live)的参数,这是为数据帧到达目的而设置的时间限制。当数据帧通过每个路由器时,留存时间会减少,当TTL达到零时,数据帧就被丢弃了。IP模块用每个数据帧发送的数据校验和,为其自身提供错误校验,如果接收设备发现它计算的校验和与包含在数据帧中的不同,则该帧就被丢弃。
IP地址
IP网络使用IP地址,以便标记整个TCP/IP网络中独一无二的计算机。在数据链路层定义的MAC地址与IP地址是不同的:IP地址是为了跨越任何数量的网络,跨越互联网,从世界上任何位置找到目的计算机,网关或路由器根据IP地址将数据帧传送到它们的目的地;直到数据帧到达本地网络,硬件地址才发挥作用。
IP地址在计算机连接的网络范围内应该是唯一的,如果计算机连接到互联网上,则在整个互联网上它的IP地址应该唯一;如果没有,在本地网(LAN)上所连接的设备中应该唯一。
现在的互联网应用IP4作为IP地址分配方案,在这个方案中,IP地址由32位二进制码组成,通常表现为用圆点隔开的4个8位数字。如202.101.55.98,这个数字就代表了一个计算机在互联网上的唯一标识。
通常,一个计算机并不是直接连接在互联网上,而是存在于一个本地网中。如果要连接本地网以外的计算机或其他网络设备,必须通过网络、路由器等网络连接设备。这个本地网也可以称为整个网络的一个“子网”。在子网范围内的计算机,可以不通过网络互连设备而直接进行数据帧的发送和接收;而不在同一个子网的计算机在通信时,必须通过网络或路由器等设备进行“转接”。
在TCP/IP协议中,使用另一组32位二进制数作为子网掩码,结合IP地址一起使用,来完全确认一个计算机的网络地址。子网掩码的形式与IP地址相似,使用4个8位二进制数表示,某位为“1”,则代表该位对应的IP地址的相应位上的数字表示的是子网标识,用以唯一确定这个子网;否则为计算机地址,用以区分子网中的其他计算机。如
IP地址:192.168.10.48
子网掩码:255.255.255.0
代表IP地址中192.168.10为子网地址,所有以192.168.10.X为IP地址的计算机属于一个子网,这些计算机之间的通讯不通过网络或路由器等设备;48为特定计算机的地址,用以与子网192.168.10中的其他计算机相区分。
单个主机可以拥有多个IP地址,用于单个网络连接,这种功能通常成为虚拟主机;同样,单个主机也可以建立与一个网络之间的多个实际的连接,这种做法称为多重初始地址。通常来说,一个主机只有一个IP地址。
数据帧的分段
IP模块负责根据需要处理数据帧的分段功能。当数据帧从一个允许传输大数据帧的网络,传送到一个只允许小数据帧的网络时,数据帧的分段必然发生。数据帧被分割成许多块,并做上分段的标识。当分段发生时,有关源地址和目的地址的信息被拷贝到每个新产生的数据帧中,同时允许接收设备重新将分段数据帧组合成他们原始顺序的信息包。
IP协议
IP(Internet Protocol)是TCP/IP协议集的核心协议之一,提供了无连接数据报传输和网际路由服务。其功能是在IP地址的基础上实现的,在网际网体系结构中,每一台主机都要预先分配一个唯一的32位的地址作为该主机的标识,这个主机进行的所有通信都要使用这个地址来完成,这个地址就是IP地址,是在网际层标识主机的逻辑地址。
IP的基本任务是通过网际网传输数据报,各个IP数据报之间是相互独立的。主机上的IP层基于数据链路层服务向传送层提供服务,IP从源传送层实体获得数据报,通过网络接口传送给目的主机的IP层。在传送过程中,如果目的主机在本地网中,则IP直接将数据报传送给本地网的目的主机;如是在远地主机,则IP将数据报传送给本地路由器,由路由器将数据报传送给下一个路由器或目的主机。
IP地址规划
IP网络使用IP地址,以便标记整个TCP/IP网络中独一无二的计算机。在数据链路层定义的MAC地址与IP地址是不同的:IP地址是为了跨越任何数量的网络,跨越互联网,从世界上任何位置找到目的计算机,网关或路由器根据IP地址将数据帧传送到它们的目的地;直到数据帧到达本地网络,硬件地址才发挥作用。
IP地址在计算机连接的网络范围内应该是唯一的,如果计算机连接到互联网上,则在整个互联网上它的IP地址应该唯一;如果没有,在本地网(LAN)上所连接的设备中应该唯一。
现在的互联网应用IP4作为IP地址分配方案,在这个方案中,IP地址由32位二进制码组成,通常表现为用圆点隔开的4个8位数字。如202.101.55.98,这个数字就代表了一个计算机在互联网上的唯一标识。
通常,一个计算机并不是直接连接在互联网上,而是存在于一个本地网中。如果要连接本地网以外的计算机或其他网络设备,必须通过网络、路由器等网络连接设备。这个本地网也可以称为整个网络的一个“子网”。在子网范围内的计算机,可以不通过网络互连设备而直接进行数据帧的发送和接收;而不在同一个子网的计算机在通信时,必须通过网络或路由器等设备进行“转接”。
在TCP/IP协议中,使用另一组32位二进制数作为子网掩码,结合IP地址一起使用,来完全确认一个计算机的网络地址。子网掩码的形式与IP地址相似,使用4个8位二进制数表示,某位为“1”,则代表该位对应的IP地址的相应位上的数字表示的是子网标识,用以唯一确定这个子网;否则为计算机地址,用以区分子网中的其他计算机。如
IP地址:192.168.10.48
子网掩码:255.255.255.0
代表IP地址中192.168.10为子网地址,所有以192.168.10.X为IP地址的计算机属于一个子网,这些计算机之间的通讯不通过网络或路由器等设备;48为特定计算机的地址,用以与子网192.168.10中的其他计算机相区分。
IP地址的来源有两个:手动装配和自动装配。手动装配是指计算机使用固定的IP地址,这个地址数值是由IP地址管理机构,如Arin、网络管理员确定、分配;自动装配又称为动态分配,在计算机连接到网络之前,计算机没有配置IP地址。用户启动计算机连接到TCP/IP网络时,由运行DHCP(动态主机配置协议)的服务器为该计算机分配一个临时的IP地址;在计算机与网络断开时,该IP地址再被回收。动态分配最常用的例子就是用户通过MODEM或ISDN拨号上网时,由ISP商分配IP地址。
单个主机可以拥有多个IP地址,用于单个网络连接,这种功能通常成为虚拟主机;同样,单个主机也可以建立与一个网络之间的多个实际的连接,这种做法称为多重初始地址。通常来说,一个主机只有一个IP地址。
网际协议( I P )的规范是在1 9 8 2年由R F C 7 9 1建立的。这些规范的部分内容规定了I P地址的结构。这个结构为每个主机和路由器接口提供了3 2位逻辑地址。一个I P地址用0 ~ 2 5 5之内的4个十进制数表示,数之间用句点分开。这些十进制数中的每一个都代表3 2位地址的其中8位,即所谓的八位位组。这称为点分表示法。这样的例子如1 5 5 . 1 2 7 . 2 3 . 1 2。
I P协议用于网络上的数据的端对端的路由,这可能意味着一个I P数据包必须在多个网络之间旅行,而且在达到目的地之前可能经过多个路由器接口。在I P层,目的I P地址总是一样的,但是既然每个接口可以具有自己的硬件地址,数据包的目的硬件地址会在达到目的地的路上经过每个接口的时候改变。不变的I P目的地址构成了通过网络将数据包发送到最终目的基础。
IP地址类
按照原来的定义,I P寻址标准并没有提供地址类,这些是后来加入的,以便于管理。地址类的实现将地址空间分解为数量有限的特大型网络( A类),数量较多的中等网络( B类)和数量非常多的小型网络( C类)。另外,还定义了特殊的地址类,包括D类(用于多点传送)和E类,这通常指试验或研究类。尽管存在和这里说明的规则冲突的情况,本章的重点是分类的I P寻址。
IP地址的结构
I P地址的3 2位结构是由网络地址和主机地址组成的。分配给这些部分的位数随着地址类的不同而不同。I P寻址中的策略大体和街道地址概念是类似的。可以将一所房子定义为1 2 1Main St., 类似地,一个I P地址包括网络地址(Main St.),以及主机地址(数字1 2 1 )。我们的房子地址使得邮件有可能送达,一个I P地址使得可能将来自源的数据通过路由而传送到目的地。
子网的概念延伸了地址的网络部分,以允许将一个网络分解为一些逻辑段(子网)。路由器将这些子网看成截然不同的网络,并且在它们中间分配路由。这帮助管理大型网络,以及隔离网络不同部分之间的通信量。因为默认情况下,网络主机只能与相同网络上的其他主机进行通信,因此通信量隔离是可能的。为和其他网络进行通信,我们需要使用路由器。一个路由器本质上是一个带有多个接口的计算机。每个接口连接在不同的网络或子网上。路由器内部的软件执行在网络或子网之间中继通信量的功能。为达到这个目的,它用源网络上的地址通过一个接口接收数据包,并且通过连接到目的网络的接口而中继这个数据包,
通过使用路由器,只有需要穿过非本地网络的通信量才穿过路由器边界。如果网络的设计使得主机通常在其自己的子网中进行通信,而且只有在例外的情况下跨越路由器,则网络可以处理的通信量要多于不分段时可处理的通信量。
特殊情况:回路、广播和网络地址
I P地址空间中的某些地址已经为特殊目的而保留,而且通常并不允许作为主机地址。这些保留地址的规则如下:
• IP地址的网络地址部分不能设置为“全部为1”或“全部为0”。
• IP地址的子网部分不能设置为“全部为1”或“全部为0”。
• IP地址的主机地址部分不能设置为“全部为1”或“全部为0”。
• 网络1 2 7 . x . x . x不能作为网络地址。
1. 网络地址
当I P地址中的主机地址中的所有位都设置为0时,它指示为一个网络,而不是哪个网络上的特定主机。这些类型的条目通常可以在路由选择表中找到,因为路由器控制网络之间的通信量,而不是单个主机之间的通信量。在一个子网网络中,将主机位设置为0将代表特定的子网。同样,为这个子网分配的所有位不能全为0,因为这将会代表上一级网络的网络地址。最后,网络位不能全部都是0,因为0是一个不合法的网络地址,而且用于代表“未知网络或地址”。
2. 回路地址
网络地址1 2 7 . x . x . x已经分配给当地回路地址。这个地址的目的是提供对本地主机的网络配置的测试。使用这个地址提供了对协议堆栈的内部回路测试,这和使用主机的实际I P地址不同,它需要网络连接。
3. 本地广播
当I P地址中的所有位都设置为1时,产生的地址2 5 5 . 2 5 5 . 2 5 5 . 2 5 5,用于向本地网络中的所有主机发送广播消息。在网络层的这个配置由相应的硬件地址进行镜像,这个硬件地址也全部为1。一般地,这个硬件地址会是F F F F F F F F F F F F。通常路由器并不传递这些类型的广播,除非特殊的配置命令它们这样。
4. 面向所有主机的广播
如果将I P地址中的所有主机位设置为1,则这将解释为面向那个网络中的所有主机的广播。这也称为直接广播,可以通过路由器进行(如果配置它这样)。这样的面向所有主机广播地址例子如1 3 2 . 1 0 0 . 2 5 5 . 2 5 5或2 0 0 . 2 0 0 . 1 5 0 . 2 5 5
5.识别地址类
I P地址的类可以通过查看地址中的前8位位组(最重要的)而确定。和最高位相关的位数式决定了地址类。位格式也定义了和每个地址类相关的8位位组的十进制的范围。
1. A类
A类地址,8位分配给网络地址,2 4位分配给主机地址。如果第1个8位位组中的最高位是0,则地址是A类地址。这对应于0 ~ 1 2 7的可能的八位位组。在这些地址中, 0和1 2 7具有保留功能,所以实际的范围是1 ~ 1 2 6。A类中仅仅有1 2 6个网络可以使用。因为仅仅为网络地址保留了8位,第1位必须是0。然而,主机数字可以有2 4位,所以每个网络可以有1 6 , 7 7 7 , 2 1 3个主机。
2. B类
B类地址中,为网络地址分配了1 6位,为主机地址分配了1 6位,一个B类地址可以用第1个8位位组的头两位为1 0来识别。这对应的值从1 2 8 ~ 1 9 1。既然头两位已经预先定义,则实际上为网络地址留下了1 4位,所以可能的组合产生了1 6 , 3 8 3个网络,而每个网络包含6 5 5 3 5个主机。
3. C类
C类为网络地址分了2 4位,为主机地址留下了8位。C类地址的前8位位组的头3位为11 0,这对应的十进制数从1 9 2 ~ 2 2 3。在C类地址中,仅仅最后的8位位组用于主机地址,这限制了每个网络最多仅仅能有2 5 4个主机。既然网络编号有2 1位可以使用( 3位已经预先设置为11 0 ),则共有2 0 9 7 1 5 1个可能的网络。
4. D类
D类地址以111 0开始。这代表的八位位组从2 2 4 ~ 2 3 9。这些地址并不用于标准的I P地址。相反,D类地址指一组主机,它们作为多点传送小组的成员而注册。多点传送小组和电子邮件分配列表类似。正如你可以使用分配列表名单来将一个消息发布给一些人一样,你可以通过多点传送地址将数据发送给一些主机。多点传送需要特殊的路由配置;在默认情况下,它不会转发。
5. E类
如果第1个8位位组的前4位都设置为1111 ,则地址是一个E类地址。这些地址的范围为2 4 0 ~ 2 5 4。这类地址并不用于传统的I P地址。这个地址类有时候指实验室或研究类。我们的大部分讨论内容的重点是A类、B类和C类,因为它们是用于常规I P寻址的类。
表IP地址范围、类和位格式
地址类
第1个8位位组的格式
地址范围
A类
0 x x x x x x x 1 ~ 1 2 6
B类
1 0 x x x x x x 1 2 8 ~ 1 9 1
C类
11 0 x x x x x 1 9 2 ~ 2 2 3
D类
111 0 x x x x 2 2 4 ~ 2 3 9
E类
1111 x x x x 2 4 0 ~ 2 5 4
子网掩码的重要性
I P地址在没有相关的子网掩码的情况下是不能存在的。子网掩码定义了构成I P地址的3 2位中的多少位用于定义网络,或者网络及其相关子网。子网掩码中的二进制位构成了一个过滤器,它仅仅通过应该解释为网络地址的I P地址的那一部分。完成这个任务的过程称为按位求与。按位求与是一个逻辑运算,它对地址中的每一位和相应的掩码位进行。A N D运算的结果是:
1 and 1=1
1 and 0=0
0 and 0=0
所以这个运算结果为1的唯一的时候就是两个输入值都是1。
我们可以看出,带有子网掩码2 5 5 . 2 5 5 . 0 . 0的I P地址1 8 9 . 2 0 0 . 1 9 1 .2 3 9,被解释为1 8 9 . 2 0 0 . 0 . 0网络上的主机地址,它在网络上的主机地址为1 9 1 . 2 3 9。为帮助你了解位和点分十进制表示法之间的关系,表以二进制和十进制格式说明了地址和掩码。完成这种转换的一种快速方法是使用科学模式的Windows 计算器。它将在二进制和十进制格式之间进行转换。
I P地址的每一类都具有默认的子网掩码,它定义了每个地址类别中, I P地址的多少位用于表示没有子网的网络地址。
二进制和十进制互相转换
二进制到十进制的转换
二进制
1 1 0 0 1 0 1 1
128 64 32 16 8 4 2 1
128*1+ 64*1+ 32*0+ 16*0+ 8*1+ 4*0+ 2*1+ 1*1=203
十进制到二进制的转换
128 64 32 16 8 4 2 1
1 1 1 1 1
203大于128,因此128的位为1,
203-128=75,64<75<128,因此64的位为1
75-64=11,8<11<16, 因此8的位为1
11-8=3, 2<3<4, 因此2的位为1
3-2=1,因此1的位为1
换成二进制就是
1 1 0 0 1 0 1 1
ARP协议
ARP(Address Resolution Protocol)是地址解析协议。为了使TCP/IP协议与具体的物理网络无关,人们在使用中通过网际层将物理地址隐藏起来,统一使用IP地址进行网际间的通信。
在主机向另一个主机发送报文时,需要知道的是目的地址(路由器)的物理地址,才能在物理介质上进行传输,这就需要将IP地址转换成为物理地址,这个过程称为地址解析。将IP地址转换为物理地址就是由ARP实现的。
RARP协议
RARP(Reverse Address Resolution Protocol)协议是逆向地址解析协议,提供从物理地址到IP地址服务的协议。主要用于在站点初始化后,只有物理地址而没有IP地址,就可以通过RARP协议发送广播式请求报文来请求自己的IP地址,使无IP地址的站点通过RARP获得自己的IP地址。
ICMP协议
ICMP(Internetwork Control Message Protocol网际控制报文协议)是提供差错报告服务的协议,满足IP协议报告差错的需求。它有多种类型,提供多种服务:测试报文目的的可达性和状态、报告不可达报文的目的地址、数据报流量控制、网关路由改变请求、检查循环路由或超长路由、报告错误数据报报头以获取网络地址等。
1.13.4 传输层
传输层的目的是在站点之间建立端到端的连接和事物处理,它可以在进程之间提供可靠、有效的传输服务。TCP/IP在该层有两个主要协议:传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram Protocol)。
UDP
UDP协议被广泛地应用在TCP/IP网络上,通常被认为是TCP/IP协议的一部分。与TCP相比,UDP不一定能提供可靠的数据传输,事实上,该协议甚至无法保证数据达到目的地。UDP只是简单地将数据发送出去而不进行流控、验证、重发等工作,用于迅速传输尽可能多的信息,而给定的信息又不太重要的时候,例如视频信息、联网游戏等。
TCP
TCP的作用是提供可靠的数据传输,并用来维护彼此进行通信的设备或服务程序之间的虚拟连接。当数据帧没有按照规定的顺序来接收,或者在传输过程中被丢失或损坏,UDP负责数据的恢复。它通过为它发送的每个数据帧提供一个序号完成这种恢复操作。为了确保数据完全正确地被接收,TCP要求在成功接收到数据后从目的地计算机接收一个确认信息,称为ACK;如果在规定的时间内没有接收到ACK,则数据帧将被重发。
TCP也允许接收方规定要发送给它的数据量,通过规定上一个接收到的序号之后的可接收序号,接受方能够通知发送方它只接收一组特定的数据,使发送方不再盲目地发送数据。
TCP提供套接字方式的连接方式,两个套接字连接起来可以提供两个设备之间的虚拟通道,形成一个会话。其跨越了传输层和会话层,提供一个全面的服务。
在Windows系列产品中,可以使用Netstat程序获取机器上当前连接状态的瞬态图。这个状态包括输出信息的连接,也包括输入信息的连接,即计算机当前处理的任何TCP/IP信息量的状态。
1.13.5 应用层
TCP/IP协议将OSI的会话层\表示层和应用层整合在一起,形成TCP/IP协议的应用层。
1、 在表示层进行通信
在现实社会中,为了进行正确的交流,必须使用正确的语言和词汇。在网络中,表示层精确地做着同样的事情,它确定了计算机出现在网络上进行通信时四用的语言。例如在接收电子邮件时,可能在配置文件中看到POP3、SMTP等词语,这些就是计算机可以进行通信以发送和接收其他机器的电子邮件的基本语言。常见的一些表示层协议有
FTP
文件传输协议,用于与远程机器进行文件交换
Telnet
提供到达远程系统的终端连接
SMTP
处理发送和存储电子邮件
Gopher
菜单驱动的WWW的前身
HTTP
World Wide Wait
POP3
远程访问电子邮件
IMAP
另一个对远程电子邮件的访问方法
这些表示层协议中的每一个都使用不同的语言进行通信,此外还有几百种其他的语言。
2、 应用层
在使用计算机时,应用层提供友好的界面用来浏览。运行在应用层的程序通常延伸到表示层,它既负责实现用户界面,又负责实现该界面必须将其数据进行交换,以便在网络上进行通信所用的语言。在某些操作系统,操作系统可以提供关键的性能,如与电子邮件服务器进行通信的能力等等。在这样的情况下,所有应用层都用于产生“增加值”,和一个能有操作系统提供的服务程序进行通信的可用的界面。
TCP/IP的应用程序包括Netscape、Outlook Express、IE等人们熟悉的软件,还包括ICQ、Hotline、Palace、Java以及MUD、Quake为代表的网络游戏软件。