Table of Contents |
---|
System Architecture Diagram
OVSDriver Module
The OVSDriver module is the main component of the project and has several submodules:
- bh.c: "Bottom-halves" - queue of requests from upcall threads to the main thread.
- fwd.c: Implements the Indigo forwarding interface.
- kflow.c: Manages kernel flows (installation, invalidation, expiration).
- ovs_driver.c: Initialization/cleanup.
- translate_actions.c: Translation from OpenFlow matches and actions to openvswitch actions.
- upcall.c: Handles upcalls from the openvswitch module.
- vport.c: Implements the Indigo port manager interface.
The ovs_driver_int.h file defines the internal interfaces between these submodules.
Upcall Processing
"Upcalls" are messages from the openvswitch kernel module to userspace sent when the kernel does not have an exact-match flow for a packet. The main function of IVS is to handle these upcalls efficiently.
...