- 29 Jul, 2009 1 commit
-
-
Leigh B. Stoller authored
-
- 28 Jul, 2009 6 commits
-
-
Gary Wong authored
return value is 1, which is hereby defined to mean "GetVersion() and all previous API features are supported".
-
Kevin Tew authored
-
Gary Wong authored
invalid XML. We previously used a workaround in GeniSES.pm to keep the demo alive.
-
Kevin Tew authored
-
Leigh B. Stoller authored
overwrite the type with the type of the target pnode. Leave it alone.
-
Leigh B. Stoller authored
turn elabman's admin bit, so check for elabman explicitly.
-
- 27 Jul, 2009 4 commits
-
-
Leigh B. Stoller authored
there are any trunked ports in that vlan, and remove them first, before doing the removeVlan().
-
Leigh B. Stoller authored
-
Kevin Tew authored
-
Leigh B. Stoller authored
-
- 23 Jul, 2009 16 commits
-
-
Leigh B. Stoller authored
instead of vlan teardown and setup during a swapmod. This operates by using the vlans and interface_state tables to know what is onthe switches and what actually need to be changed. Should be much more efficient. Note that this requires switch backend changes. I did it for the cisco backend, which is why tbswap only does it on MAINSITE.
-
Leigh B. Stoller authored
Used by the pool daemon to keep the shared-nodes from getting released. Add call to new ReserveSharedBandwidth() when doing a swapmod recovery. See comment in Experiment.pm cvs log. Use the new snmpit -X option (synchronize tables) instead of vlan teardown and setup during a swapmod. This is currently enabled only on the MAINSITE and only for testbed/tbres/emulab-ops until we get some experience with it.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
function in smpit. * removeSomePortsFromVlan(): Remove some ports from a vlan. The ports specified should *not* be in trunk mode. * removeSomePortsFromTrunk(): Like above, but the ports are known to be in trunk mode.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
* portiface() to mape between pcX:Y<==>pcX:iface (port<==>iface). * getExperimentCurrentTrunks() to return the current set of interfaces (for the given experiment) that are in trunk mode, according to the interface_state table. * getExperimentVlanPorts() to return all the members (ports) of a specific vlan.
-
Leigh B. Stoller authored
new -X option (synchronize tables) to snmpit. In this new version, a vlan is not considered changed (and thus needs to be deleted) if the port set has changed; snmpit -X can deal with that. Add new function RecordVLanModification() for snmpit to use when it adds and subtracts ports from a vlan.
-
Leigh B. Stoller authored
desired in the vinterfaces table, in the interface_state table. Desired bandwidth that has not been reserved is indicated as a negative value in vinterfaces; when we update interface_state we also update the negative value in vinterfaces (atomically in the same query, I am getting good at that multi table stuff). You would think this would be simple eh? Well, just you think again. Swap modify (update) has to be considered. When doing a swapmod, the old version of vinterfaces is in the backup file, and the new version is in the vinterfaces table. But we have to know the old reserved bandwidth so we know the proper amount to reserve (in other words, release the old reserved bandwidth from the previous table). We waited till now to do it, since we do not want to get into a situation where we release the BW, assign fails, and then someone else got that BW, cause then we are screwed and have to swap out the experiment. Unfriendly. So, the update changes happen all at once (tables locked). So that's it, right? Only for a babe in the woods that you are. We also have to consider rollback when swapmod fails and we want to restore the old experiment state. This can happen either before we have reserved the new bandwidth, or afterwards. Each is a different situation, and the only way to know what has happened is to update the backup table file in the first part of update so that later rollback knows. Yep, I change the backed up vinterfaces table. Twice in fact, the second time after the rollback finishes. Gack. Note that rollback can suffer from the problem I was trying to avoid in update; losing the reserved bandwidth to someone else and having to swap out. Nothing to do about that.
-
Leigh B. Stoller authored
rolling back to old state after a failed updatesliver.
-
Leigh B. Stoller authored
indicates if the bandwidth has actually been reserved in the interface_state table. Also ReleaseSharedBandwidth() since it was not used/needed.
-
Leigh B. Stoller authored
indicates if the bandwidth has actually been reserved in the interface_state table.
-
Leigh B. Stoller authored
bandwidth for all shared interfaces at once.
-
Leigh B. Stoller authored
find out how much bandwidth is currently reserved, so that we can modify the bw on the physical interfaces appropriately, for shared-nodes.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
the shared-nodes experiment from being swapped out on swap error. Better to leave it swapped in and fix it.
-
Jon Rafkind authored
-
- 22 Jul, 2009 2 commits
-
-
Gary Wong authored
compressed: decompress it, and continue on our merry way. Make the test script compress its ad rspec, since it's probably fairly safe to assume that any slice embedding service has this patch applied. A mapping on a 1.7 MB ad rspec formerly took about two minutes to complete. With this change, it can be done in just over 4 seconds. Something is making big XMLRPC parameters go really, really slowly.
-
Kevin Tew authored
-
- 21 Jul, 2009 5 commits
-
-
Gary Wong authored
DiscoverResources. If present and true, then the returned rspec will be zlib compressed.
-
Jonathon Duerig authored
Checkpoint of demo code as of GEC5. Added abstract nodes, shared nodes, SES, updated to interact with new CMs, compatibility with old CMs mostly preserved.
-
Gary Wong authored
the output to the nodes currently available.
-
Jonathon Duerig authored
-
Leigh B. Stoller authored
-
- 20 Jul, 2009 6 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
genimode. I also wrote code to use the bandwidth slot of the vinterfaces table, but moments after I wrote it I realized that the vinterfaces table has benn cleaned by the mapper (RemovePhysicalState()) by this point, so that will not work. I do not have a viable solution yet.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
is null; a trivial link. Need to revisit this later.
-