计算机网络传输层协议有:tcp和udp,这两个接触最多,较为熟悉。除此之外,还有ICMP和IGMP,我们接触较少。
ICMP(Internet Control Message Protocol)和IGMP(Internet Group Management Protocol)是两个网络协议,用于在互联网中进行通信和管理
ICMP(Internet Control Message Protocol)
用于在IP网络中传递控制消息的协议。网络层协议
ICMP消息主要由网络设备(如路由器)和主机之间进行交互,以诊断网络问题、报告错误和提供有关网络通信的信息。
ICMP消息是通过IP数据报传输的,当网络设备(如路由器)或主机遇到问题时,会生成并发送适当的ICMP消息来通知其他设备。
ICMP是一个基于IP协议的辅助协议。
ICMP封装:a.ICMP消息通常被封装在IP数据包中,作为IP数据包的有效载荷
b.ICMP消息中包含了特定的类型和代码字段,用于标识不同类型的消息,如回显请求(ping)、目的不可达、超时等
c.ICMP封装通常不涉及传输层,直接在网络层封装在IP数据包中
ICMP消息类型:
a.Echo请求和响应(Ping):用于测试网络连接和测量往返时间(RTT)
b.目标不可达消息:指示数据包无法到达目标地址,可能是因为目标主机不可达、网络不可达、端口不可达
c.重定向消息:用于通知主机使用更优的路径发送数据包
d.时间超过消息:用于监测网络延迟或路由器环路问题
e.参数问题消息:用于指示IP数据包1的头部参数存在问题
f.回送请求和回送应答:用于网络设备之间的连通性测试
IGMP(Internet Group Management Protocol)
IGMP也是一个网络层协议,用于管理IP网络中的组播(Muticast)组。
组播允许一个数据包同时发送给多个目标设备。IGMP协议允许主机加入或离开一个组播组,并与路由器共同管理组播流量
IGMP消息的主要作用是在主机和第一跳路由器之间进行组播组的成员管理。当主机希望接收或停止接收某个组播组的数据时,
会通过发送相应的IGMP消息给路由器来表达其意图。路由器根据IGMP消息来决定是否转发组播数据
IGMP协议封装:
a.IGMP消息也被封装在IP数据包中,作为IP数据包的有效载荷
b.IGMP消息中包含了各种类型的组管理消息,如加入组、离开组、查询组成员等
c.IGMP封装通常在网络层,不涉及传输层
IGMP协议:IGMPv1、IGMPv2、IGMPv3