题目描述:
以太网交换机是一种即插即用的设备,其内部的帧交换表(又称为MAC地址表)是通过自学习算法自动地逐渐建立起来的。
自学习算法:
交换机收到一个帧之后,查找MAC地址表中与收到帧的源地址有无相匹配的项目。
如没有,就在MAC地址表中增加一个项目(源地址、进入的接口和时间);
如有,则更新原有的项目。
现假设有一台24端口的以太网交换机,在一开始,以太网交换机里面的MAC地址表是空的。你的任务是编写程序使用自学习算法建立以太网交换机的MAC地址表(最多24条项目)。
输入描述:
输入有若干行,每行表示进入交换机的帧相关的信息。包括4个部分:目的MAC地址 源MAC地址 进入的端口号 进入的时间,相互之间以空格分隔,其中MAC地址用十六进制表示。

输出描述

当所有输入结束后,按照MAC地址从小到大的顺序输出以太网交换机的MAC地址表,具体格式详见样例输出。其中Mac Address占18位,左对齐;Ports占8位,左对齐;Time左对齐。

输入样例

0009.7c7c.c95e 0001.422b.486b 12 25
0050.0fc3.7770 0001.4252.89e7 3 48
ffff.ffff.ffff 0001.4339.b5a9 8 112

输出样例

Mac Address       Ports   Time
0001.422b.486b    12      25
0001.4252.89e7    3       48
0001.4339.b5a9    8       112
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<sstream>
using namespace std;const int maxn = 1e3 + 10;struct Node
{string addres;int port;int time;
}addr[maxn];bool cmp(const Node &a, const Node &b)
{return a.addres < b.addres;
}int main()
{string addres1, addres2;int ports, time;int k = 0;while(cin >> addres1 >> addres2 >> ports >> time){addr[k].addres = addres2;addr[k].port = ports;addr[k].time = time;k++;}sort(addr, addr+k, cmp);printf("Mac Address       Ports   Time\n");for(int i = 0; i < k; i++){printf("%-18s%-8d%d\n", addr[i].addres.c_str(), addr[i].port, addr[i].time);}return 0;
}

【计算机网络实验】以太网交换机的自学习算法相关推荐

  1. [计算机网络笔记07] 交换机的自学习算法

    1.交换机的转发原理 2.交换机的自学习算法 (1)A到B 帧由主机A出发到接口1,交换机在帧交换表中登记,之后查询目的MAC地址,找不到,于是从其他接口转发出去,最后通过3接口找到主机B.其他的主机 ...

  2. 以太网交换机的自学习算法

    题目描述 以太网交换机是一种即插即用的设备,其内部的帧交换表(又称为MAC地址表)是通过自学习算法自动地逐渐建立起来的. 自学习算法: 交换机收到一个帧之后,查找MAC地址表中与收到帧的源地址有无相匹 ...

  3. 计算机网络交换机基本配置实验,计算机网络实验四交换机基本配置

    计算机网络实验四交换机基本配置 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 实验报告实验四:交换机基本配置一. 实验目的和要求(1) ...

  4. 计算机网络实验以太网帧分析,实验二 用Ethereal捕获并分析以太网帧格式

    <计算机网络>实验报告 – 实验二 指导老师:李旭宏 ------------------------------------------------------------------- ...

  5. 以太网交换机的自学习

    我们假设一个以太网交换机有1.2.3.4,共4个接口,每个接口都分别连接了一台计算机,他们的MAC地址分别是A.B.C和D.在最开始的时候,交换机的交换表是空的,如下表. MAC地址 接口 假如A向B ...

  6. 计算机网络实验二 交换机Vlan原理 实验报告

    目录 [实验名称] [实验目的] [实验要求] [实验环境] 5.参考脚本:构建如图所示虚拟实验网络,可参考如下脚本: [实验步骤] 步骤1:创建虚拟实验网络,验证网络拓扑: 步骤2:在相同交换机连接 ...

  7. 计算机网络实验二交换机配置Cisco,思科实验1计算机和交换机的ip地址设置

    实验1计算机与交换机IP地址设置 1. 双击HostA, 输入用户名和入口令,键入"?"可以求得帮助. PCA login:root Password:linux 设置 IP : ...

  8. 计算机网络实验二交换机配置Cisco,计算机网络实验1 — Cisco交换机的配置

    Cisco交换机的配置实验的具体步骤及命令代码: 本来所有的端口默认在VLAN 1 中,四台电脑均在VLAN 1中,可相互ping通. 划分vlan:新增vlan 2,把f0/2端口划到vlan 2中 ...

  9. 计算机网络实验报告交换机的配置,交换机基本配置(实验报告1)

    一.实验目的 (1)了解交换机配置的方法. (2)掌握CLI配置环境. (3)掌握交换机的基本配置. 二.实验设备及环境 交换机一台.计算机一台.配置电缆一条,直通网线一条. 三.实验步骤 建立实验环 ...

最新文章

  1. omnipay支付--支付宝支付
  2. excel拼接数据宏
  3. 师--链表的结点插入
  4. Windows 环境安装 RabbitMQ
  5. 仅20行代码,实现文件自动化上传。
  6. 没有装Express版Sql Server 2005就不能用WebPart ?
  7. Linux的chkconfig命令详解
  8. 计算机体系结构多处理器性能评价指标——加速比
  9. 了解几种常用的哈希校验码
  10. Win10 Build 18237发布:登录屏幕启用毛玻璃特效
  11. ArcEngine添加注记
  12. 超快自旋电子学为电子信息新材料开辟了道路
  13. 5G到底什么时候来,以及,它究竟能给我们带来什么?
  14. Greenplum 6.9 资源组中文文档
  15. HTML中tabIndex属性马克 tabIndex='-1'是什么意思
  16. 撩魅登录时显示服务器错误是什么意思,暧昧期女生撩男生的套路 暧昧的时候要注意什么...
  17. 浅析Content Negotation在Nancy的实现和使用
  18. go结合php,php2go
  19. 企业远程高清会议平台视频会议系统在手机端使用的必备要求有哪些?
  20. 【Visio2003两根线重叠凸起如何让解决】

热门文章

  1. 小白进化记——Python3的第一天
  2. 戴尔电脑开机花屏怎么办
  3. php存数组到数据库,PHP将数组保存到数据库
  4. IntelliJ IDEA是什么?
  5. TCL语言入门与SynopsysTCL语言入门
  6. 已安装oracle客户端odbc驱动,Oracle ODBC驱动安装和详细配置(不需安装客户端).doc
  7. PyCharm+Miniconda3安装配置教程
  8. 给大家推荐一款强大的游戏框架——ET
  9. 设置confirm框,点击外部不关闭confirm框
  10. 计算机分组交换的优点缺点,分组交换的优缺点分析