⑴ 网络层的网络层协议
TCP/IP网络层的核心是IP协议,它是TCP/IP协议族中最主要的协议之一。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。 TCP/IP网络使用32位长度的地址以标识一台计算机和同它相连的网络,它的格式为:IP地址=网
络地址+主机地址。IP地址是通过它的格式分类的,它有四种格式:A类、B类、C类、D类。如下所示
格式位数主机地址:A类0网络(7位)主机地址(24位)、
B类10网络(14位)主机地址(16位)、C类110网络(21位)主机地址(8位)、D类1110多路通信地址(28位)、未来的格式11110将来使用。这样,A类地址空间为0-127,最大网络数为126,最大主机数为16,777,124;B类地址空间为128-191,最大网络数为16384,最大主机数为65,534;C类地址空间为192-223,最大网络数为2,097,152,最大主机数为254;D类地址空间为224-254。 C类地址空间分配概况。分配区域地址空间:多区域192.0.0.0~193.255.255.255、欧洲:194.0.0.0~195.255.255.255、其他:196.0.0.0~197.255.255.255、北美:197.0.0.0~199.255.255.255、中南美:200.0.0.0~201.255.255.255、太平洋地区:202.0.0.0~203.255.255.255、其他:204.0.0.0~205.255.255.255、其他:206.0.0.0~207.255.255.255。注:其中“多区域”表示执行该计划前已经分配的地址空间;“其他”表示已指定名称的地区之外的地理区划。
特殊格式的IP地址:广播地址:当网络或主机标志符字段的每位均设置为1时,这个地址编码标识着该数据报是一个广播式的通信,该数据报可以被发送到网络中所有的子网和主机。例如,地址128.2.255.255意味着网络128.2上所有的主机。本网络地址:IP地址的主机标识符字段也可全部设置为0,表示该地址作为“本主机”地址。网络标识符字段也可全部设置为0,表示“本网络”。如,128.2.0.0表示网络地址为128.2的网络。使用网络标识符字段全部设置为0的IP地址在一台主机不知道网络的IP地址时时是很有用的。私有的IP地址:在有些情况下,一个机构并不需要连接到Internet或另一个专有的网络上,因此,无须遵守对IP地址进行申请和登记的规定。该机构可以使用任何的地址。在RFC1597中,有些IP地址是用作私用地址的:A类地址:10.0.0.0到10.255.255.255。B类地址:172.16.0.0到172.31.255.255.255。C类地址:192.168.0.0到192.168.255.255。 ARP协议是“AddressResolutionProtocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。协议属于链路层的协议在以太网中的数据帧从一个主机到达网内的另一台主机是根据48位的以太网地址(硬件地址)来确定接口的,而不是根据32位的IP地址。内核(如驱动)必须知道目的端的硬件地址才能发送数据。当然,点对点的连接是不需要ARP协议的。 ARP协议的数据结构:
以下是引用片段:
typedefstructarphdr
{
unsignedshortarp_hrd;/*硬件类型*/
unsignedshortarp_pro;/*协议类型*/
unsignedchararp_hln;/*硬件地址长度*/
unsignedchararp_pln;/*协议地址长度*/
unsignedshortarp_op;/*ARP操作类型*/
unsignedchararp_sha[6];/*发送者的硬件地址*/
unsignedlongarp_spa;/*发送者的协议地址*/
unsignedchararp_tha[6];/*目标的硬件地址*/
unsignedlongarp_tpa;/*目标的协议地址*/
}ARPHDR,*PARPHDR; 为了解释ARP协议的作用,就必须理解数据在网络上的传输过程。这里举一个简单的PING例子。
假设我们的计算机IP地址是192.168.1.1,要执行这个命令:ping192.168.1.2.该命令会通过ICMP协议发送ICMP数据包。该过程需要经过下面的步骤:1、应用程序构造数据包,该示例是产生ICMP包,被提交给内核(网络驱动程序);2、内核检查是否能够转化该IP地址为MAC地址,也就是在本地的ARP缓存中查看IP-MAC对应表;3、如果存在该IP-MAC对应关系,那么跳到步骤9;如果不存在该IP-MAC对应关系,那么接续下面的步骤;4、内核进行ARP广播,目的地的MAC地址是FF-FF-FF-FF-FF-FF,ARP命令类型为REQUEST(1),其中包含有自己的MAC地址;5、当192.168.1.2主机接收到该ARP请求后,就发送一个ARP的REPLY(2)命令,其中包含自己的MAC地址;6、本地获得192.168.1.2主机的IP-MAC地址对应关系,并保存到ARP缓存中;7、内核将把IP转化为MAC地址,然后封装在以太网头结构中,再把数据发送出去;使用arp-a命令就可以查看本地的ARP缓存内容,所以,执行一个本地的PING命令后,ARP缓存就会存在一个目的IP的记录了。当然,如果你的数据包是发送到不同网段的目的地,那么就一定存在一条网关的IP-MAC地址对应的记录。知道了ARP协议的作用,就能够很清楚地知道,数据包的向外传输很依靠ARP协议,当然,也就是依赖ARP缓存。要知道,ARP协议的所有操作都是内核自动完成的,同其他的应用程序没有任何关系。同时需要注意的是,ARP协议只使用于本网络。 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址。但是无盘机,如X终端或无盘工作站,则需要采用其他方法来获得IP地址。网络上的每个系统都具有唯一的硬件地址,它是由网络接口生产厂家配置的。无盘系统的RARP实现过程是从接口卡上读取唯一的硬件地址,然后发送一份RARP请求(一帧在网络上广播的数据),请求某个主机响应该无盘系统的IP地址(在RARP应答中)。在概念上这个过程是很简单的,但是实现起来常常比ARP要困难。RARP的正式规范是RFC903[Finlaysonetal.1984]。 RARP的分组格:RARP分组的格式与ARP分组基本一致。它们之间主要的差别是RARP请求或应答的帧类型代码为0x8035,而且RARP请求的操作代码为3,应答操作代码为4。对应于ARP,RARP请求以广播方式传送,而RARP应答一般是单播(unicast)传送的。RARP服务器的设计:虽然RARP在概念上很简单,但是一个RARP服务器的设计与系统相关而且比较复杂。相反,提供一个ARP服务器很简单,通常是TCP/IP在内核中实现的一部分。由于内核知道IP地址和硬件地址,因此当它收到一个询问IP地址的ARP请求时,只需用相应的硬件地址来提供应答就可以了。
作为用户进程的RARP服务器:RARP服务器的复杂性在于,服务器一般要为多个主机(网络上所有的无盘系统)提供硬件地址到IP地址的映射。该映射包含在一个磁盘文件中。由于内核一般不读取和分析磁盘文件,因此RARP服务器的功能就由用户进程来提供,而不是作为内核的实现的一部分。更为复杂的是,RARP请求是作为一个特殊类型的以太网数据帧来传送的。这说明RARP服务器必须能够发送和接收这种类型的以太网数据帧。在附录A中,我们描述了SBD分组过滤器、SUN的网络接口栓以及SVR4数据链路提供者接口都可用来接收这些数据帧。由于发送和接收这些数据帧与系统有关,因此RARP服务器的实现是与系统捆绑在一起的。
每个网络有多个RARP服务器:RARP服务器实现的一个复杂因素是RARP请求是在硬件层上进行广播的,这意味着它们不经过路由器进行转发。为了让无盘系统在RARP服务器关机的状态下也能引导,通常在一个网络上(例如一根电缆)要提供多个RARP服务器。当服务器的数目增加时(以提供冗余备份),网络流量也随之增加,因为每个服务器对每个RARP请求都要发送RARP应答。发送RARP请求的无盘系统一般采用最先收到的RARP应答(对于ARP,我们从来没有遇到这种情况,因为只有一台主机发送ARP应答)。另外,还有一种可能发生的情况是每个RARP服务器同时应答,这样会增加以太网发生冲突的概率。 ICMP的作用:由于IP协议的两个缺陷:没有差错控制和查询机制,因此产生了ICMP。ICMP主要是为了提高IP数据报成功交付的机会,在IP数据报传输的过程中进行差错报告和查询,比如目的主机或网络不可到达,报文被丢弃,路由阻塞,查询目的网络是否可以到达等等。
ICMP有两种报文类型:差错报告报文和询问报文。差错报告报文:终点不可到达(由于路由表,硬件故障,协议不可到达,端口不可达到等原因导致,这时路由器或目的主机向源站发送终点不可到达报文);源站抑制(发生拥塞,平衡IP协议没有流量控制的缺陷);超时(环路或生存时间为0);参数问题(IP数据报首部参数有二义性);改变路由(路由错误或不是最佳)。询问报文:回送请求或回答(用来测试连通性,如:PING命令);时间戳请求或回答(用来计算往返时间或同步两者时间);地址掩码请求或回答(得到掩码信息);路由询问或通告(得知网络上的路由器信息)。ICMP是网际(IP)层的协议,它作为IP层数据报的数据,加上数据报的首部,组成数据报发送出去。 应用层的PING(PacketInterNetGroper)命令用来测试两个主机之间的连通性,PING使用了ICMP回送请求与回送回答报文,属于ICMP询问报文,它是应用层直接使用网络层ICMP的一个特例,它没有通过运输层的TCP或UDP。IP数据报首部的协议字段:IP报文首部的协议字段指出了此数据报是使用的何种协议,以便使目的主机的网络层能够知道如何管理协议
因特网组管理协议(IGMP)被IP主机用于向所有的直接相邻的多播路由器报告它们的多播组成员关系。本文档只描述在主机和路由器之间的确定组成员关系的IGMP应用。作为多播组成员的路由器应当还能表现为一台主机,甚至能对自己的查询作出响应。IGMP还可以应用在路由器之间,但这种应用不在这里描述。就像ICMP一样,IGMP作为整合在IP里面的一部分。所有希望接收IP组播的主机都应当实现IGMP。IGMP消息被封装在IP数据报中,IP协议号为2。本文档所描述的所有IGMP消息在发送时TTL都为1,并在它们的IP首部中含有一个路由器警告选项。主机所关心的所有IGMP消息都具有以下格式:8位类型+8位最大响应时间+16位校验和+32位组地址。 组播协议包括组成员管理协议和组播路由协议。组成员管理协议用于管理组播组成员的加入和离开,组播路由协议负责在路由器之间交互信息来建立组播树。IGMP属于前者,是组播路由器用来维护组播组成员信息的协议,运行于主机和和组播路由器之间。IGMP 信息封装在IP报文中,其IP的协议号为2。
若一个主机想要接收发送到一个特定组的组播数据包,它需要监听发往那个特定组的所有数据包。为解决Internet上组播数据包的路径选择,主机需通过通知其子网上的组播路由器来加入或离开一个组,组播中采用IGMP来完成这一任务。这样,组播路由器就可以知道网络上组播组的成员,并由此决定是否向它们的网络转发组播数据包。当一个组播路由器收到一个组播分组时,它检查数据包的组播目的地址,仅当接口上有那个组的成员时才向其转发。
IGMP提供了在转发组播数据包到目的地的最后阶段所需的信息,实现如下双向的功能: 主机通过IGMP通知路由器希望接收或离开某个特定组播组的信息。 路由器通过IGMP周期性地查询局域网内的组播组成员是否处于活动状态,实现所连网段组成员关系的收集与维护。 IGMP共有三个版本,即IGMP v1、v2 和 v3。
⑵ 网络层是无连接的 无连接和有连接的都是哪些, 有什么不同~ ip
网络层是无连接的
传输层的 tcp 是有连接的 udp是无连接的
面向连接的 就是在传输之前,先事先建立起一条路径,然后传输就按照这个路径走。
无连接的就是 传输的时候 选路径是不确定的。 无连接的,很有可能发生数据报的丢失。
⑶ 面向连接和无连接服务的无连接
无面向连接(connectionless),是基于邮政系统模型的,不要求发送方和接收方之间的会话连接。发送方只是简单地开始向目的地发送数据分组(称为数据报)。这与现在风行的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就OK了。此业务不如面向连接的方法可靠,但对于周期性的突发传输很有用。系统不必为它们发送传输到其中和从其中接收传输的系统保留状态信息。无连接网络提供最小的服务,仅仅是连接。无连接服务的优点是通信比较迅速,使用灵活方便,连接开销小;但可靠性低,不能防止报文的丢失,重复或失序. 适合于传送少量零星的报文。
根据安装好的物理连接和进行通信的系统要求的服务,可以在协议栈的数据链路层和/或传输层实现这些方法。TCP(传输控制协议)是面向连接的传输协议,而UDP(用户数据报协议)是无连接网络协议。二者都通过IP操作。
物理层、数据链路层和网络层协议己被用来实现有保证的数据传递。例如,X.25数据分组交换网络执行广泛的错误检查和数据分组确认,因为最初是在质量很差的电话网上实现这些服务的。现今,网络更可靠了。人们通常认为,基础网络应该尽量做到最好,即尽可能快地传递数据位。因此,端系统(而不是网络)现在主要在传输层处理面向连接的服务。这样,就可以优化较低层的网络的速度。
LAN被作为无连接系统使用。连接到网络的计算机一旦可以接入网络,它就开始传输帧。它不需要提前与目的系统建立连接。然而,传输级的协议,如TCP,会在必要时建立面向连接的会话。
因特网是一个巨大的无连接数据分组网络,其中所有的数据分组传递都通过IP处理。然而,TCP在IF,的顶层添加面向连接的服务。TCP提供全部的高级面向连接的会话功能,以确保适当地传递数据。MPLS是用于IP网络的相对较新的面向连接的连网方案,它通过路由或两层网络建立快速标记交换路径。
使用面向连接模型的WAN业务是帧中继。该服务提供商按照客户的要求或请求,建立通过网络的PVC(永久虚电路)。ATM是另一种使用面向连接的虚电路方法的连网技术。
⑷ 计算机网络应用层和传输层及网络层协议有哪些
应用层协议:
1、远程登录协议(Telnet)
2、文件传输协议(FTP)
3、超文本传输协议(HTTP)
4、域名服务协议(DNS)
5、简单邮件传输协议(SMTP)
6、邮局协议(POP3)
其中,从网络上下载文件时使用的是FTP协议,上网游览网页时使用的是HTTP协议;在网络上访问一台主机时,通常不直接输入IP地址,而是输入域名,用的是DNS服务协议,它会将域名解析为IP地址;通过FoxMail发送电子邮件时,使用SMTP协议,接收电子邮件时就使用POP3协议。
传输层协议:
1、传输控制协议TCP
2、用户数据报协议UDP
TCP协议:面向连接的可靠传输协议。利用TCP进行通信时,首先要通过三步握手,以建立通信双方的连接。TCP提供了数据的确认和数据重传的机制,保证发送的数据一定能到达通信的对方。
UDP协议:是无连接的,不可靠的传输协议。采用UDP进行通信时不用建立连接,可以直接向一个IP地址发送数据,但是不能保证对方是否能收到。
网络层协议:
1、网际协议IP、Internet互联网控制报文协议ICMP、Internet组织管理协议IGMP、地址解析协议ARP。
⑸ 在TCP/IP协议簇中,( )协议属于网络层的无连接协议。 A、IP B、SMTP C、SNMP D、TCP
A
解释:IP为网络层协议,无连接。TCP为传输层协议,面向连接可靠。SNMP,SMTP均为应用层协议。
注明:TCP/IP:
网络层:
IP,ICMP
传输层:TCP
,UDP
应用层:Telnet,FTP,SMTP,SNMP等
⑹ 无连接网络协议的协议结构
CLNP中PDU结构如下:
CLNPPDU头结构如下:
816243235405672bit
.LengthChecksum
NLPID―网络层协议标识符。当该字段设置为二进制值10000001时,用以识别网络层协议中支持无连接模式网络服务的ISO8473协议。当该字段设置为二进制值00000000时,用以识别交互式网络层子协议。
LengthID―长度指示器表示头大小(octet)。
Version―Version/ProtocolIDExtension识别标准ISO8473版本。
Lifetime―PDULifetime表示PDU的剩余生存时间,以500毫秒为单元。
Flags―三个标记:许可分割(SegmentationPermitted)、更多分段(MoreSegments)、差错报告(ErrorReport)。
Type―Type代码字段用以标识协议数据单元类型,可能为:数据PDU或差错报告PDU。
Seg.Length―SegmentLength字段用以规定整个PDU长度(octet),包括头和数据部分。
Checksum―Checksum字段用以计算整个PDU头部分。
AddressPart―包括目标地址和源地址等信息,可变长,定义在OSI8348/AD2中。
SegmentationPart―如果PDU固定头部分的egmentationPermittedFlag字段值为1,那么头结构中必须包括SegmentationPart;如果SegmentationPermittedFlag值为0,那么说明当前没有使用分割子协议。
OptionPart―OptionsPart字段用以传送可选参数。
DataPart―PDU中的DataPart字段是一组规则的八位位组。
相关协议:IS-IS、CLNP、IDRP、CONP、ES-IS、ISO-TP
组织来源:CLNP定义在ISO文档8473和ITU文档X.213及X.233中。
⑺ 无连接网络协议的介绍
无连接网络协议 Connectionless Network Protocol ,CLNP相当于TCP/IP协议环境中的因特网协议(IP),它们的主要区别是地址的长短不同。CLNP的地址长度是20字节,而IP的是4字节(32位)。所以CLNP被考虑用于Internet网上,以解决地址不够的问题。CLNP位于OSI协议栈的网络层,顾名思义,它在OSI网络上提供无连接的数据报服务。
⑻ 什么是 CLNP
CLNP (ConnectionLess Network Protocol) 的意思是: 无连接网络协议。CLNP相当于开放系统互连(OSI)因特网协议(IP),它们的主要区别是地址的长短不同。CLNP位于OSI协议栈的网络层,顾名思义,它在OSI网络上提供无连接的数据报服务
⑼ 无连接网络协议的应用领域
CLNP Connectionless Network ProtocolCLNP
CLNP(ConnectionLessNetworkProtocol)无连接网络协议,是一种ISO网络层数据报协议,它工作在开放式系统互连参考模型(ISO7498)的网络层中。CLNP与TCP/IP环境下的IP相类似,用来向传输层提供服务。因此,CLNP又称之为ISO-IP。网络层中的另一个OSI协议是面向连接网络协议(CONP),主要提供网络层面向连接服务。 CLNP可以用于终端系统的网络实体之间或网络层中继系统(NetworkLayerrelaysystems)中。CLNP主要提供无连接网络服务。CLNP的目标是用于充当子网独立收敛协议(SNICP)的角色,其功能为在定义的一组底层服务上建立OSI网络服务,并支持一组相同或不同的互连子网上的OSI无连接模式网络服务的统一性。当子网独立收敛协议和/或子网访问协议没有提供在一个NSAP到另一个NSAP的全部或部分路径上支持无连接网络服务所需的功能时,CLNP可以用来进行调整。除SNICP之外,CLNP还可以实现其它协议的功能,也因此它也适用于其它子网互连方式下的环境。
CLNP使用NSAP地址和标题来识别网络设备,其中源地址和目标地址参数是网络服务访问点地址(NSAP地址),网络实体标题作为终端系统或中间系统(intermediatesystem)中的网络实体的标识符。网络实体标题与NSAP地址被分配在同一名称空间。至于地址到底是NSAP地址,还是网络实体标题,这取决于地址的解析环境。
CLNP具有与IP相同大小的最大数据报大小,并且当数据报需要穿过最大数据报值小于CLNP的网络时,CLNP提供了分组(fragmentation)机制(数据单元识别、分组/总长和偏移)。就象IP一样,CLNP协议头的校验和(checksum)提供了一种认证,该认证用于处理CLNP数据报是否已正确传输,以及提供了生命周期(TimetoLive)控制机制,该机制限制了数据报停留在在英特网系统中的时间。
⑽ TCP/IP网络体系结构中,各层内分别有什么协议,每一种协议的作用是什么
一、TCP/IP网络体系结构中,常见的接口层协议有:
Ethernet 802.3、Token Ring 802.5、X.25、Frame relay、HDLC、PPP ATM等。
1.网络层
网络层包括:IP(Internet Protocol)协议、ICMP(Internet Control Message Protocol) 、控制报文协议、ARP(Address Resolution Protocol)地址转换协议、RARP(Reverse ARP)反向地址转换协议。
2.传输层
传输层协议主要是:传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram protocol)。
3.应用层
应用层协议主要包括如下几个:FTP、TELNET、DNS、SMTP、RIP、NFS、HTTP。
二、TCP/IP网络体系结构中,每一种协议的作用有:
TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。
2.TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(Token Ring Network)、拨号线路(Dial-up line)、X.25网以及所有的网络传输硬件。
3.统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有惟一的地址
4.标准化的高层协议,可以提供多种可靠的用户服务。