一、网际协议IP (Internet Protocol)
IP协议的任务是对数据包进行相应的寻址和路由,并从一个网络转发到另一个网络。IP协议在每个发送的数据包前加入一个控制信息,其中包含了源主机的IP地址、目的主机的IP地址和其他一些信息。
IP协议的另一项工作是分割和重编在传输层被分割的数据包。由于数据包要从一个网络到另一个网络,当两个网络所支持传输的数据包的大小不相同时,IP协议就要在发送端将数据包分割,然后在分割的每一段前再加入控制信息进行传输。当接收端接收到数据包后,IP协议将所有的片段重新组合形成原始的数据。
IP是一个无连接的协议。无连接是指主机之间不建立用于可靠通信的端到端的连接,源主机只是简单地将IP数据包发送出去,而数据包可能会丢失、重复、延迟时间大或者IP包的次序会混乱。因此,要实现数据包的可靠传输,就必须依靠高层的协议或应用程序,如传输层的TCP协议。
二、网际控制报文协议ICMP (Internet Control Message Protocol)
网际控制报文协议ICMP为IP协议提供差错报告。由于IP是无连接的,且不进行差错检验,当网络上发生错误时它不能检测错误。向发送IP数据包的主机汇报错误就是ICMP的责任。
例如,如果某台设备不能将一个IP数据包转发到另一个网络,它就向发送数据包的源主机发送一个消息,并通过ICMP解释这个错误。ICMP能够报告的一些普通错误类型有:目标无法到达、阻塞、回波请求和回波应答等。
三、网际主机组管理协议IGMP (Internet Group Management Protocol)
IP协议只是负责网络中点到点的数据包传输,而点到多点的数据包传输则要依靠网际主机组管理协议IGMP完成。它主要负责报告主机组之间的关系,以便相关的设备(路由器)支持多播发送。
地址解析协议ARP (Address Resolution Protocol)和反向四、地址解析协议RARP
计算机网络中各主机之间要进行通信时,必须要知道彼此的物理地址(OSI模型中数据链路层的地址)。因此,在TCP/IP的网际层有ARP协议和RARP协议,它们的作用是将源主机和目的主机的IP地址与它们的物理地址相匹配。
五、传输控制协议TCP (Transmission Control Protocol)
TCP协议是传输层一种面向连接的通信协议,提供可靠的数据传送。对于大量数据的传输,通常都要求有可靠的传送。
TCP协议将源主机应用层的数据分成多个分段,然后将每个分段传送到网际层,网际层将数据封装为IP数据包,并发送到目的主机。目的主机的网际层将IP数据包中的分段传送给传输层,再由传输层对这些分段进行重组,还原成原始数据,传送给应用层。
TCP协议还要完成流量控制和差错检验的任务,以保证可靠的数据传输。
六、用户数据报协议UDP (User Datagram Protocol)
UDP协议是一种面向无连接的协议,因此,它不能提供可靠的数据传输,而且UDP不进行差错检验,必须由应用层的应用程序实现可靠性机制和差错控制,以保证端到端数据传输的正确性。
虽然UDP与TCP相比,显得非常不可靠,但在一些特定的环境下还是非常有优势的。
例如,要发送的信息较短,不值得在主机之间建立一次连接。另外,面向连接的通信通常只能在两个主机之间进行,若要实现多个主机之间的一对多或多对多的数据传输,即广播或多播,就需要使用UDP协议。