按照惯例,先上先上TCP/IP四层模型示意图:
TCP/IP四层模型示意图Ⅱ.网络层
TCP/IP网络层,也叫IP层,该层的功能是处理跨越多个网络的机器之间的路由问题,同时也管理网络名称和地址,以利于解决路由问题。
网络层处理从发送方到接收方的数据移动,在必要时,还能把数据重新打包到较小的数据容器中,处理识别发送方和接收方的位置问题,并定义如何在网络上从“此”到达“彼”。
具体的讲,网络层主要有三个基本功能:
①MTU分片:MTU,指的是当路由数据从一种类型的网络运送到另一种类型的网络时网络能够承载的最大数据块。这个最大数据块,即MTU,是会发生变化的,当数据从支持较大MTU的介质移动到支持较小MTU介质的时候,数据块就必须缩小,以便匹配参与传输的两个MTU中较小的一个MTU。在MTU分片任务进行的过程中,由于当较小的数据包传输到容许较大数据包的网络上时,这些数据包并不需要组合成长度较大的数据包,故该任务仅需要一次单向转换,但任务必须在传输过程中完成。
②寻址:寻址功能定义了一种机制,即TCP/IP网络中的所有网卡都必须与标识每一个网卡的专用的、唯一的比特位模式相对应,这个比特位模式也标识了网卡所属的网络,比如我们的本地网络。
③路由:路由定义了将数据包从发送方转发给接收方的机制,在从发送方到接收方的转发过程中,可能需要数个中间中继过程。路由功能不仅包含在成功传递的过程中,而且还提供了跟踪传递性能的方法,以及在发生传递失效时报告错误的方法。
Windows系统路由表内容网络层另外一部分重要的内容,就是在该层发挥作用的主要协议,如下:
①网际协议(Internet Protocol,IP):也就是常说的IP协议,该协议负责把数据包从发送方路由到接收方。
②Internet控制消息协议(Internet Control Message Protocol,ICMP):ICMP协议处理基于IP路由和网络行为的消息,特别是与“数据流状况”和出错相关的信息。
③地址解析协议(Address Resolution Protocol,ARP):ARP协议在特定电缆网段上将数字IP网络地址转换为媒体访问控制地址(MAC),一般情况下ARP协议总是应用在数据包传递的最后阶段。
MAC地址和IP地址的对应表④反向地址解析协议(Reverse Address Resolution Protocol,RARP):RARP协议将MAC层地址转换为数字IP地址。ARP和RARP协议是连接第2层和第3层之间的桥梁,都要操作MAC和IP地址,绝大多数协议栈的实现都是在数据链路层中包含了ARP和RARP功能。
⑤自举协议(Bootstrap Protocol,BOOTP):BOOTP协议是动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)的前导协议,DHCP管理网络IP地址分配和其他IP配置数据。BOOTP支持网络设备从网络上获取启动和配置数据,而不是从本地硬盘上获取这些数据。
⑥路由信息协议(Routing Information Protocol,RIP):RIP协议定义了原始距离向量和本地网内用于本地路由区域的最基本路由协议。距离向量,本质上是链路中路由器个数的整数,称为跳数(hop),是发送方和接收方之间的数据包必须通过的路由器个数,RIPv1有一个4位的跳数字段,允许的最大跳数位15。
⑦开放式最短路径优先协议(Open Shortest Path First,OSPF):OSPF协议定义了一个本地网内用于本地或内部路由区域、广泛使用的链路状态路由协议。
⑧边界网关协议(Border Gateway Protocol,BGP):BGP协议定义了一种连接到公共互联网主干网或互联网中其他路由区域的广泛应用路由协议,在这些路由区域里,多方联合负责管理数据流。
Ⅳ.运输层
运输层,也可以叫作传输层。
通常情况下,把运行在Internet上的设备标识为主机(host),有时TCP/IP运输层也被称为主机到主机层,在于运输层提供了从一台主机到另一台主机的数据移动。
传输层协议提供的基本功能包括从发送方到接收方数据的可靠传输,还提供传输前必要的出站消息分段,以及把数据交付给应用层之前重组分段以便进一步处理。
TCP/IP运输层有两个主要协议:传输控制协议(Transmission Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)。
TCP和UDP的对比TCP是面向连接的(connection-oriented)的协议,UDP是无连接的(connectionless)的协议。TCP发送数据之前在发送方和接收方之间协商并维持连接,数据成功发送得到正确确认,数据丢失或错误得到重新传输请求。UDP则以一种称为“尽最大努力交付(Best-effort Delivery)”的方式简单地发送数据,在接收方没有任何后续的检验。
TCP和UDP相比较,TCP比UDP更加可靠,但相对的速度也就更慢一些。TCP可以在协议层提供可靠的交付服务,UDP不能。
网友评论