Skip to content

Releases: coreemu/core

CORE 5.3.0

11 Jun 05:24
1d1eba8
Compare
Choose a tag to compare

Enhancements

  • python 2 / 3 support
  • added new API using gRPC
    • --grpc --grpc-port --grpc-address flags added to core-daemon
    • core.api.grpc.client.CoreGrpcClient, provides a convenience wrapper for leveraging the API

Docs

  • Updates to installation instructions for latest changes

Services

  • Added FRR service

EMANE

  • Added EMANE prefix configuration when looking for emane model manifest files
    • requires configuring emane_prefix in /etc/core/core.conf

Cleanup

  • Refactoring of the core python package structure, trying to help provide better organization and logical groupings

Issues

  • #246 - Fixed network to network link handling when reading xml files
  • #236 - Fixed storing/reading of link configuration values within xml files
  • #170 - FRR Service
  • #155 - EMANE path configuration
  • #233 - Python 3 support
  • #245 - Fixed bidirectional link configurations when reading from xml files
  • #208 - gRPC API
  • Fixed link configuration dup handling when loaded from xml files

CORE 5.2.2

07 Jun 16:21
a74f2da
Compare
Choose a tag to compare

Enhancements:

  • adds back in core-daemon udp support for coresendmsg, people may have depended on previously for certain scenarios

Bug Fixes:

  • fixes issue in GUI that would prevent moving nodes during mobility scenarios

CORE 5.2.1

25 Mar 18:04
2d9a9f2
Compare
Choose a tag to compare

Build:

  • documentation no longer builds by default, must use configure flag
  • added configure flag to allow only building vcmd
  • sphinx will no long be required when not building documentation

Services:

  • Added source NAT service
  • Fixed DHCP service for Ubuntu 18.04

ISSUES:
#188 - properly remove session on delete TLV API call
#192 - updated default gnome terminal command for nodes to be Ubuntu 18.04 compatible
#193 - updates to service validation, will retry on failure and better exception logging
#195 - TLV link message data fix
#196 - fix to avoid clearing out default services
#197 - removed wireless_link_all API from EmuSession
#216 - updated default WLAN bandwidth to 54Mbps
#223 - fix to saving RJ45 to session XML files

CORE 5.2

12 Sep 21:02
4e6ec1a
Compare
Choose a tag to compare
  • EMANE
    • support for external transports, a new tab in the GUI will provide a checkbox for enabling external transports and the following options
      • platformendpoint - 127.0.0.1:40001
      • transportendpoint - 127.0.0.1:50002
  • GUI
    • updated help menu links to point at GitHub
  • Configuration
    • refactored configuration storage within the code base to use key/value dictionaries instead of pairs of tuples representing keys/values
    • new methods for storing and accessing these configurations, impacts session.options, session.metadata, session.services, and session.emane
  • Services
    • updates services to have class variables without the "_" prefix, "_name" is now "name"
    • changes services to validate immediately after running startup commands
    • added different validation modes for services using the "validation_mode" parameter
      • BLOCKING - the startup commands alone are considered validation and their exit codes will be used as validation
      • NON-BLOCKING - the startup commands are not enough and separate validation commands are ran to determine validation
      • TIMER - you are not sure how to validate, but would consider waiting around for a period of time, good enough
    • "validation_timer" an integer can be set to provide time for validation commands or used as a timer alone in TIMER mode, time to wait in seconds
    • "executables" can be set to provide a tuple of commands you expect to exist within CORE's path for operation, if any executable is not found the service will not load
    • "dependencies" can be set to provide a tuple of other service names, which will cause these services to be started in dependent order, assuming the node has all required services set
  • XML
    • the lxml library is now being used for emane and core xml file generation
    • there is a new simpler structure for core xml files
    • section kept same as before for now, for those that depend on it

ISSUES:
#167 - configuration cleanup
#168 - services cleanup
#171 - ovs linkconfig parameter name issue
#172 - OVS mode and control network
#173 - xml cleanup
#177 - All nodes get the same service config - OvsService
#181 - Core Python package changes to be implemented in sample custom service example
#184 - allow passing in a Session class to CoreEmu.create_session() helper

CORE 5.1

31 May 04:37
9f9dfbf
Compare
Choose a tag to compare

2018-05-22 CORE 5.1

  • DAEMON:
    • removed and cleared out code that is either legacy or no longer supported (Xen, BSD, Kernel patching, RPM/DEB specific files)
    • default nodes are now set in the node map
    • moved ns3 and netns directories to the top of the repo
      *- changes to make use of fpm as the tool for building packages
    • removed usage of logzero to avoid dependency issues for built packages
    • removed daemon addons directory
    • added CoreEmu to core.emulator.coreemu to help begin serving as the basis for a more formal API for scripting and creating new external APIs out of
    • cleaned up logging, moved more logging to DEBUG from INFO, tried to mold INFO message to be more simple and informative
    • EMANE 1.0.1-1.21 supported
    • updates to leverage EMANE python bindings for dynamically parsing phy/mac manifest files
    • example custom EMANE model lives under /usr/share/core/examples/myemane/examplemodel.py
    • EMANE TDMA model now supports an option to start a TDMA schedule when running
    • fixed issues with coresendmsg script due to code refactoring
    • added make target for generating documentation "make doc"
    • Python 2.7+ is now required
    • ns3 is no longer bundled by default, but will be produced as a separate package for installation
  • GUI
    • updated broken help links in GUI Help->About
  • Packaging
    • fixed PYTHON_PATH to PYTHONPATH in sysv script
    • added make command to leverage FPM as the tool for creating deb/rpm packages going forward, there is documentation within README.md to try it out
  • TEST:
    • fixed some broken tests
    • new test cases based on CoreEmu usage
  • BUGFIXES:
    • #142 - duplication of custom services
    • #136 - sphinx-apidoc command not found
    • #137 - make command fails when using distclean

CORE 5.0

09 Nov 21:14
Compare
Choose a tag to compare

2017-09-01 CORE 5.0

  • DEVELOPMENT:
    • support for editorconfig to help standardize development across IDEs, from the defined configuration file
    • support for sonarqube analysis, from the defined configuration file
  • DAEMON:
    • code cleanup and improvements to adhere to coding standards (SonarQube)
    • leverage "logzero" module to make easy usage of the standard logging module
    • improvements to documentation across the code base
    • initial work to separate the dependence on TCP API messaging from the core library (easier core scripting)
    • beta support for running core in Open vSwitch mode, leveraging Open vSwitch bridges, instead of Linux bridges
  • SERVICES:
    • added Ryu SDN controller service
    • added Open vSwitch service
  • TEST:
    • added unit/integration tests to support validating changes going forward
  • BUGFIXES: