TCPIP体系结构
TCP/IP模型
tcpip协议pdfTCP/IP分层模型由四个层次构成,从⾼到低各层依次为应⽤层、传输层、⽹际层和⽹络接⼝层,如图所⽰
各层的功能如下
(1) 应⽤层。应⽤层处在分层模型的最⾼层,⽤户调⽤应⽤程序来访问TCP/IP互联⽹络,以享受⽹络上提供的各种服务。应⽤程序负责发送和接收数据。每个应⽤程序可以选择所需要的传输服务类型,并把数据按照传输层的要求组织好,再向下层传送,包括独⽴的报⽂序列和连续字节流两种类型。
(2) 传输层。传输层的基本任务是提供应⽤程序之间的通信服务。这种通信服务⼜叫端到端的通信。传输层既要系统地管理数据信息的流动,还要提供可靠的传输服务,以确保数据准确⽽有序地到达⽬的地。为了这个⽬的,传输层协议软件需要进⾏协商,让接收⽅回送确认消息及让发送⽅重发丢失的分组。在传输层与⽹际层之间传递的对象是传输层分组。
(3) ⽹际层。⽹际层⼜称互联⽹层(IP层),主要处理机器之间的通信问题。它接收传输层请求,传送某个具有⽬的地址信息的分组。
(4) ⽹络接⼝层。⽹络接⼝层⼜称为数据链路层,处于TCP/IP协议层之下,负责接收IP数据报,并把数据报通过选定的⽹络发送出去。该层包含设备驱动程序,也可能是⼀个复杂的使⽤⾃⼰的数据链路协议的⼦系统。
由于TCP/IP有⼤量的协议和应⽤⽀持,现在已成为事实上的标准。
TCP/IP协议
TCP/IP协议是个协议簇,它包含了多种协议。ISO/OSI模型、TCP/IP分层模型及协议的对⽐如图所⽰
1.⽹络接⼝层协议
TCP/IP协议不包含具体的物理层和数据链路层,只定义了⽹络接⼝层作为物理层与⽹络层的接⼝规范。这个物理层可以是⼴域⽹,如X.25公⽤数据⽹;也可以是局域⽹,如Ethernet、Token-Ring和FFDI等。任何物理⽹络只要按照这个接⼝规范开发⽹络接⼝驱动程序,都能够与TCP/IP协议集成起来。⽹络接⼝层处在TCP/IP协议的最底层,主要负责管理为物理层⽹络准备数据所需的全部服务程序和功能。
2.IP(Internet Protocol)协议
IP协议是⽹际层定义的协议,其主要功能是将上层数据(如TCP、UDP数据)或同层的其他数据(如ICMP数据)封装到IP数据报中;将IP数据报传送到最终⽬的地;为了使数据能够在链路层上进⾏传输,
对数据进⾏分段;确定数据报到达其他⽹络中的⽬的地路径。
IP协议软件的⼯作流程为:当发送数据时,源计算机上的IP协议软件必须确定⽬的地是在同⼀个⽹络上,还是在另⼀个⽹络上。IP通过执⾏这两项计算并对结果进⾏⽐较,才能确定数据到达的⽬的地。如果两项计算的结果相同,则数据的⽬的地确定为本地,否则,⽬的地应为远程的其他⽹络。如果⽬的地在本地,那么IP协议软件就启动直达通信;如果⽬的地是远程计算机,那么IP必须通过⽹关(或路由器)进⾏通信,在⼤多数情况下,这个⽹关应当是默认⽹关。当源IP完成了数据报的准备⼯作时,它就将数据报传递给⽹络访问层,⽹络访问层再将数据报传送传输介质,最终完成数据帧发往⽬的计算机的过程。
当数据抵达⽬的计算机时,⽹络访问层⾸先接收该数据。⽹络访问层要检查数据帧有⽆错误,并将数据帧送往正确的物理地址。假如数据帧到达⽬的地时正确⽆误,⽹络访问层便从数据帧的其余部分中提取有效数据,然后将它⼀直传送到帧层次类型域指定的协议。在这种情况下,可以说数据有效负载已经传递给了IP。
IP所提供的服务通常被认为是⽆连接的和不可靠的,事实上,在⽹络性能良好的情况下,IP传送的数据能够完好⽆损地到达⽬的地。所谓⽆连接的传输,是指没有确定⽬标系统在已做好接收数据准备之前就发送数据。与此相对应的就是⾯向连接的传输(如TCP),在该类传输中,源系统与⽬的系统在
应⽤层数据传送之前需要进⾏三次握⼿。⾄于不可靠的服务,是指⽬的系统不对成功接收的分组进⾏确认,IP只是尽可能地使数据传输成功。但是只要需要,上层协议必须实现⽤于保证分组成功提供的附加服务。
由于IP只提供⽆连接、不可靠的服务,所以把差错检测和流量控制之类的服务授权给了其他的各层协议,这正是TCP/IP能够⾼效率⼯作的⼀个重要保证。这样,可以根据传送数据的属性来确定所需的传送服务以及客户应该使⽤的协议。例如,传送⼤型⽂件的FTP会话就需要⾯向连接、可靠的服务(因为如果稍有损坏,就可能导致整个⽂件⽆法使⽤)。
3.ARP和RARP
地址解析协议(Address Resolution Protocol,ARP)及反地址解析协议(RARP)是驻留在⽹际层中的另⼀个重要协议。ARP的作⽤是将IP地址转换为物理地址,RARP的作⽤是将物理地址转换为IP地址。
4.ICMP
ICMP(Internet Contrlo Message Protocol,Internet控制消息协议)是另⼀个⽐较重要的⽹际层协议,⽤于在IP主机、路由器之间传递控制消息。控制消息是指⽹络通不通、主机是否可达、路由是否可⽤等
⽹络本⾝的消息。这些控制消息虽然并不传输⽤户数据,但是对于⽤于数据的传递起着重要的作⽤。由于IP协议是⼀种尽⼒传送的通信协议,即传输的数据报可能丢失、重复、延迟或乱序传递,所以IP协议需要⼀种避免差错并在发⽣差错时报告的机制。
ICMP定义了6种差错报⽂(源抑制、超时、⽬的不可达、重定向、要求分段)和4种信息报⽂(回应请求、回应应答、地址屏蔽码请求、地址屏蔽码应答)。ICMP还可以⽤于测试因特⽹,以得到⼀些有⽤的⽹络维护和排错的信息。例如,⽤于检查⽹络通不通的Ping命令就是利⽤ICMP报⽂测试⽬标是否可达,它发送⼀个ICMP回声请求信息给⽬的地并报告是否收到所希望的ICMP回声应答。
5.TCP
TCP是整个TCP/IP协议族中最重要的协议之⼀。它在IP协议提供的不可靠数据服务的基础上,为应⽤程序提供了⼀个可靠的、⾯向连接的、全双⼯的数据传输服务。
TCP采⽤了重发技术来实现数据传输的可靠性。具体来说,就是在TCP传输过程中,发送⽅启动⼀个定时器,然后将数据包发出,当接收⽅收到了这个信息就给发送⽅⼀个确认信息。若发送⽅在定时器到点之前没收到这个确认信息,就重发送这个数据包。
在源主机需要好⽬的主机通信时,⽬的主机必须同意,否则TCP连接⽆法建⽴。为了确保TCP连接的成功建⽴,TCP采⽤三次握⼿的⽅式,使源主机和⽬的主机达成同步。
6.UDP
UDP是⼀种不可靠的、⽆连接的协议,可以保证应⽤程序进程间的通信。与同样处在传输层的⾯向连接的TCP相⽐较,UDP是⼀个⽆连接的协议,它的错误检测功能要弱得多。可以这样说,TCP有助于提⾼可靠性;⽽UDP则有助于提⾼传输的⾼速率性。例如,必须⽀持交互式会话的应⽤程序(如FTP)常使⽤TCP;⽽⾃⼰进⾏错误检测或不需要错误检测的应⽤程序(如DNS、SNMP)则常使⽤UDP。
7.应⽤层协议
随着计算机⽹络的⼴泛应⽤,⼈们也已经有了许多相同的基本应⽤需求。为了让不同平台的计算机能够通过计算机⽹络获得⼀些基本相同的服务,也就应运⽽⽣了⼀系列应⽤级的标准,实现这些应⽤的标准专⽤协议被称为应⽤层协议。相对于OSI参考模型来说,它们处于较⾼的层次结构,所以也称为⾼层协议。应⽤的协议有NFS、Telnet、SMTP、DNS、SNMP和FTP等。
IP地址
接⼊因特⽹的计算机与接⼊电话⽹的电话相似,每台计算机或路由器都有⼀个由授权机构分配的号码,称为IP地址。IP地址采⽤分层结构,由⽹络号与主机号组成。⽹络号⽤来标识⼀个⽹络,主机号⽤来标识⽹络中的⼀台主机,⼀台主机⾄少有⼀个IP地址,且全⽹唯⼀。
IP地址的分类
IP地址采⽤“点分⼗进制表⽰法”将32位⼆进制码划分为4个字节,划分为5类
A类地址:第⼀个字节⽤作⽹络号,且最⾼位为0,这样只有7位可以表⽰⽹络号,因为全0和全1在地址中有特殊⽤途,所以能够表⽰的⽹络号有126个。后三个字节做主机号,能够表⽰约1600万台主机。A类IP地址常⽤于⼤型⽹络。
B类地址:前两个字节做⽹络号,后两个字节做主机号,且最⾼位为10,最⼤⽹络数为2^14-2=16382,可以容纳的主机数为2^16-
2个。B类IP地址通常⽤于中等规模的⽹络。
C类地址:前三个字节⽤作⽹络号,最后⼀个字节⽤作主机号,且最⾼位为110,最⼤⽹络数为2^21-2,可以容纳的主机数为2^8-
2个。C类IP地址通常⽤于⼩型的⽹络。
D类地址:最⾼位为1110,是多播地址,主要留给Internet体系结构委员会使⽤
E类地址:最⾼位11110,保留在今后使⽤。
⼦⽹掩码
IP地址的设计也有不够合理的地⽅。例如,IP地址中的A~C类地址,可供分配的⽹络号超过211万个,⽽这些⽹络上可供使⽤的主机号总数则超过37.2亿个。初看起来,似乎IP地址⾜够全世界使⽤,其实不然
第⼀,设计者没有预计到微型计算机会普及得如此之快,使得各种局域⽹和⽹上的主机数极剧增长。
第⼆,IP地址在使⽤上有很⼤的浪费。例如,某个单位申请到了⼀个B类地址,但该单位只有⼀万台主机。那么B类地址中的其余5万5千多个主机号就浪费了。为此设计者在IP地址中⼜增加了⼀个“⼦⽹字段”。
⽤IP地址中主机号字段的前若⼲个位作为“⼦⽹字段”,后⾯剩下的仍为主机号字段。⼦⽹的划分是输⼊单位内部的事,在本单位以外看不见这样的划分。从外部看,这个单位仍然只有⼀个⽹络号。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论