笔试复习_TCP/IP(三)

来源:互联网 发布:灰色的天空网络歌曲 编辑:程序博客网 时间:2024/05/29 09:29

1.ARP

当一台主机把以太网的数据帧发送到位于同一局域网的另一台主机是,根据48bit的以太网址来确定目的的接口。设备驱动程序从不检查IP数据报中的目的IP地址。ARP提供逻辑IP地址映射到硬件地址的动态映射。RARP是硬件地址映射到IP逻辑地址,被没有磁盘驱动器的系统使用。

ARP过程:
1.应用程序通过DNS中的解析器把主机名转换成32位的IP地址。
2.请求TCP得到IP地址建立连接,使用IP地址发送IP数据报。
3.若目的主机在本地网络上,那么IP数据报可以直接送到目的主机。如果在一个远程网络上,通过IP选路确定位于本地网络的下一站路由器地址并转发数据报。
4.发送端主机必须把32位的IP地址变成48位的以太网地址,从逻辑地址到硬件地址映射,就是ARP功能。
5.ARP发送请求用以太网数据帧给每个主机。目的主机识别并发送ARP应答,包含IP地址以及硬件地址。
6.可以发送数据报到目的主机。

这里写图片描述

前12字节:源MAC和目的MAC地址。
类型:0806ARP。
硬件类型:1以太网。
协议类型:IP(0x0800)。
op操作字段指出四中操作类型,分别为:1.ARP请求 2.ARP应答 3.RARP请求和4.RARP应答。

2.ICMP

ICMP经常被认为是IP层的一个组成部分(附属协议),传递差错报文以及其他需要注意的信息。ICMP报文通常被IP层或更高层协议(TCP或UDP)使用。一些ICMP报文把差错报文返回给用户进程。(ping)(ICMP跟在IP头部之后)

这里写图片描述

第一个字节类型位,第二个字节代码位(8,0请求回呈;类型为3不可达)。校验和字段覆盖整个ICMP报文。
ICMP是一份查询报文还是一份差错报文。当发送一份ICMP差错报文时,报文始终包含IP首部和产生ICMP差错报文的IP数据报的前8个字节,这样接收ICMP差错报文的模块就会把它与某个特定的协议(IP首部中协议字段)和用户进程(前8个字节中TCP或UDP报文首部端口号)联系起来。
下面情况不会产生ICMP:
1.ICMP差错报文。
2.目的地址是广播地址或多播地址(目的一定要是单播)。
3.链路层广播的数据报。
4.源地址不能为零地址、环回地址。防止广播风暴。

原创粉丝点击