项目

Java分布式路由协议模拟系统
• 项目概况:利用Java实现OSPF路由协议,系统收敛时每个进程节点能够获取全局路由信息,获取自身节点到其他任意节点的最短路径;通过心跳包应对节点宕机时路由信息更新的问题。
• 技术选型:Java、多线程、锁、路由协议、UDP
• 本人负责:此项目为2人项目,本人主要负责接收和发送心跳包类的编写,解决宕机更新路径和网络风暴的问题

OSPF:https://baike.baidu.com/item/OSPF%E8%B7%AF%E7%94%B1%E5%8D%8F%E8%AE%AE

迪杰斯特拉算法:https://blog.csdn.net/junya_zhang/article/details/83617762

Java多线程的同步机制(synchronized):https://www.cnblogs.com/gavin110-lgy/p/5716421.html

一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在 java里边就是拿到某个同步对象的锁(一个对象只有一把锁); 如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池 等待队列中)。 取到锁后,他就开始执行同步代码(被synchronized修饰的代码);线程执行完同步代码后马上就把锁还给同步对象,其他在锁池中 等待的某个线程就可以拿到锁执行同步代码了。这样就保证了同步代码在统一时刻只有一个线程在执行。

你可能感兴趣的:(项目)