luogu#P10346. [THUSC 2019] 数据链路层协议数据处理
[THUSC 2019] 数据链路层协议数据处理
题目背景
路由器软件需要处理的最底层是数据链路层,这上面运行着一系列复杂的协议,比如各种神秘的滑动窗口协议。虽然芃芃对它们始终摸不着头脑,但他知道这一层最重要的协议就属 ARP 了。它起到了跨上下两层的桥梁作用,只有通过 ARP 查询,路由器才能知道究竟应该把 IP 分组发给哪一个邻居。你的路由器软件需要热情地回应每一个询问,才能正确地收到接下来的流量。
题目描述
你需要根据《学习手册》中的相关知识,处理数据链路层的协议数据:在给定的流量片段中,有一些是对你的 ARP 询问(也就是说,询问的 IP(TPA 字段)是你拥有的,请在 pcap 题面中找到你拥有的 IP 地址和与其对应的 MAC 地址),请你正确地回复它们。数据保证 FCS 校验正确的 ARP 请求中发送端的 MAC 地址(SHA 字段)与以太网帧中的发送端 MAC 地址一致。注意,ARP 请求中以太网帧的目标地址可能与你拥有的 MAC 地址不同(如 FF:FF:FF:FF:FF:FF
广播地址),这种情况下依然需要回应 ARP 请求。你需要构造正确的 ARP 协议数据,以及外层的以太网帧格式(包括头部和校验和,并注意以太网帧的长度要求),并将这些以太网帧帧按照应答顺序按照《学习手册》的要求依次写入 PCAP 格式的输出文件中。
在**下列所有题目(包括本题)**中,如果某个流量片段发生校验错误,则应当直接丢弃,片段的数据可能会出现不符合《学习手册》中的叙述的情况,所以不能有任何假设,不进行任何处理。
输入格式
输入保证格式合法,其中包含不超过 个流量片段,总大小不超过 字节。你需要回复 个流量片段。
输出格式
其将与答案文件进行逐字节对比。
提示
【子任务】
测试点 | |||
---|---|---|---|
1 | 是 | ||
2 | 否 | ||
3 | |||
4 | |||
5 |
【样例解释 1】
由于提供样例会大幅降低本题难度,故不提供样例。