Welcome to ms-van3t’s documentation!
ms-van3t provides ns-3 modules to build and simulate ETSI-compliant VANET (V2X) applications using SUMO (v-1.6.0+) and ns-3 (ns-3-dev, version supporting the NR-V2X module by CTTC), with the possibility of easily switching stack and communication technology.
It has been tested with SUMO v1.6.0, v1.7.0, v1.8.0, v1.12.0, v1.18.0 on Ubuntu 20.04 and 22.04. Back compatibility is not ensured with new versions of TraCI.
Supported ETSI C-ITS messages
ms-van3t currently supports the following ETSI C-ITS messages:
CAM
DENM
IVIM
CPM
VAM
Supported access technologies
ms-van3t currently supports state-of-the-art models for the following access technologies:
IEEE 802.11p
3GPP LTE
3GPP Release 16 5G NR-V2X
Contents
- Installation
- Working with an IDE
- ms-van3t-CARLA extension
- Vehicular application development
- Sample Applications
- Sample V2X emulator application
- Modules
- Automotive module
- Facilities layer
- Cooperative Awareness basic service (CABasicService)
CABasicService
CABasicService::CABasicService()
CABasicService::CABasicService()
CABasicService::CABasicService()
CABasicService::setStationProperties()
CABasicService::setFixedPositionRSU()
CABasicService::setStationID()
CABasicService::setStationType()
CABasicService::setSocketTx()
CABasicService::setSocketRx()
CABasicService::setVDP()
CABasicService::setLDM()
CABasicService::setBTP()
CABasicService::receiveCam()
CABasicService::addCARxCallback()
CABasicService::startCamDissemination()
CABasicService::startCamDissemination()
CABasicService::terminateDissemination()
- Decentralized Environmental Notification basic service (DENBasicService)
DENBasicService
DENBasicService::DENBasicService()
DENBasicService::DENBasicService()
DENBasicService::addDENRxCallback()
DENBasicService::appDENM_trigger()
DENBasicService::appDENM_update()
DENBasicService::appDENM_termination()
DENBasicService::receiveDENM()
DENBasicService::setStationProperties()
DENBasicService::setFixedPositionRSU()
DENBasicService::setStationID()
DENBasicService::setStationType()
DENBasicService::setVDP()
DENBasicService::setBTP()
DENBasicService::setSocketTx()
DENBasicService::setSocketRx()
DENBasicService::setGeoArea()
DENBasicService::setRealTime()
- Infrastructure to Vehicle Information basic service (IVIBasicService)
IVIBasicService
IVIBasicService::IVIBasicService()
IVIBasicService::IVIBasicService()
IVIBasicService::addIVIRxCallback()
IVIBasicService::appIVIM_trigger()
IVIBasicService::appIVIM_repetition()
IVIBasicService::appIVIM_update()
IVIBasicService::appIVIM_termination()
IVIBasicService::receiveIVIM()
IVIBasicService::setStationProperties()
IVIBasicService::setFixedPositionRSU()
IVIBasicService::setStationID()
IVIBasicService::setStationType()
- Collective Perception basic service (CPBasicService)
CPBasicService
CPBasicService::CPBasicService()
CPBasicService::setStationID()
CPBasicService::setStationType()
CPBasicService::setStationProperties()
CPBasicService::setSocketTx()
CPBasicService::setSocketRx()
CPBasicService::setLDM()
CPBasicService::setVDP()
CPBasicService::setBTP()
CPBasicService::receiveCpm()
CPBasicService::addCPRxCallback()
CPBasicService::setRealTime()
CPBasicService::startCpmDissemination()
CPBasicService::terminateDissemination()
CPBasicService::setRedundancyMitigation()
- Vehicle Data Provider (VDP)
VDPTraCI
VDPTraCI::VDPTraCI()
VDPTraCI::getCAMMandatoryData()
VDPTraCI::getCPMMandatoryData()
VDPTraCI::getSpeedValue()
VDPTraCI::getTravelledDistance()
VDPTraCI::getHeadingValue()
VDPTraCI::getPosition()
VDPTraCI::getPositionXY()
VDPTraCI::getXY()
VDPTraCI::getCartesianDist()
VDPTraCI::getLanePosition()
VDPTraCI::getExteriorLights()
- Local Dynamic Map (LDM)
LDM
LDM::clear()
LDM::insert()
LDM::remove()
LDM::lookup()
LDM::rangeSelect()
LDM::rangeSelect()
LDM::updateCPMincluded()
LDM::getAllPOs()
LDM::getAllCVs()
LDM::getAllIDs()
LDM::deleteOlderThan()
LDM::deleteOlderThanAndExecute()
LDM::writeAllContents()
LDM::executeOnAllContents()
LDM::updatePolygons()
LDM::returnedVehicleData_t
- Cooperative Awareness basic service (CABasicService)
- Networking and Transport layers
- Basic Transport Protocol (BTP)
- GeoNetworking (GeoNet)
GeoNet
GeoNet::GeoNet()
GeoNet::setStationProperties()
GeoNet::setFixedPositionRSU()
GeoNet::setStationID()
GeoNet::setStationType()
GeoNet::setVDP()
GeoNet::setSocketTx()
GeoNet::addRxCallback()
GeoNet::sendGN()
GeoNet::receiveGN()
GeoNet::setPRRSupervisor()
GeoNet::disablePRRsupervisorForBeacons()
GeoNet::_egoPositionVector
GeoNet::_LocTableEntry
- Measurements
- Packet Reception Ratio supervisor (PRRsupervisor)
PRRSupervisor
PRRSupervisor::PRRSupervisor()
PRRSupervisor::PRRSupervisor()
PRRSupervisor::setTraCIClient()
PRRSupervisor::signalSentPacket()
PRRSupervisor::signalReceivedPacket()
PRRSupervisor::getAveragePRR_overall()
PRRSupervisor::getAverageLatency_overall()
PRRSupervisor::getAveragePRR_vehicle()
PRRSupervisor::getAverageLatency_vehicle()
PRRSupervisor::getAveragePRR_messagetype()
PRRSupervisor::getAverageLatency_messagetype()
PRRSupervisor::addExcludedID()
PRRSupervisor::modifyPRRComputationTimeout()
- Packet Reception Ratio supervisor (PRRsupervisor)
- Utilities
- Facilities layer
- GPS-tc module
- Vehicle Visualizer module
- Automotive module
- Acknowledgements
Note
This project is under active development.