Commit ebcd65ce authored by Jonathon Duerig's avatar Jonathon Duerig

Add delay extension for supporting Leigh's bridge nodes in pgeni.

parent cfa4197a
<?xml version="1.0" encoding="UTF-8"?>
<rspec xmlns="http://www.protogeni.net/resources/rspec/2"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.protogeni.net/resources/rspec/2 http://www.protogeni.net/resources/rspec/2/request.xsd
http://www.protogeni.net/resources/rspec/ext/delay/1 http://www.protogeni.net/resources/rspec/ext/delay/1/request-delay.xsd"
type="request" >
<node client_id="left"
exclusive="true">
<sliver_type name="raw-pc" />
<interface client_id="left:if0" />
</node>
<node client_id="right"
exclusive="true">
<sliver_type name="raw-pc" />
<interface client_id="right:if0" />
</node>
<node client_id="bridge"
exclusive="true">
<sliver_type name="delay">
<delay:sliver_type_shaping xmlns="http://www.protogeni.net/resources/rspec/ext/delay/1">
<pipe source="delay:left" dest="delay:right"
capacity="1000" latency="50"/>
<pipe source="delay:right" dest=delay"left"
capacity="10000" latency="25" packet_loss="0.01" />
</delay:sliver_type_shaping>
</sliver_type>
<interface client_id="delay:left" />
<interface client_id="delay:right" />
</node>
<link client_id="bridge-left">
<interface_ref client_id="left:if0" />
<interface_ref client_id="delay:left" />
</link>
<link client_id="bridge-right">
<interface_ref client_id="right:if0" />
<interface_ref client_id="delay:right" />
</link>
</rspec>
#
# Extension for the "delay" type in RSpecV2
# Version 1
#
default namespace = "http://www.protogeni.net/resources/rspec/ext/delay/1"
# Extend SliverType with shaping information
SliverType = element sliver_type_shaping {
element pipe { PipeContents }*
}
# To specify bridging without traffic shaping, a pipe should omit the
# capacity, latency, and packet_loss attributes.
# Pipes are uni-directional.
PipeContents =
# Source interface client_id
attribute source { text } &
# Dest interface client_id
attribute dest { text } &
# Capacity of the bridge in kbps [Default: unshaped]
attribute capacity { xsd:int }? &
# One-way latency of the bridge in ms [Default: 0]
attribute latency { xsd:int }? &
# Static packet loss probability as a fraction [Default: 0.0]
# Example: 0.01 means 1% packet loss
attribute packet_loss { xsd:float }? &
# QUEUE OPTIONS
# For a full discussion of what these options mean, see:
# NS Manual Section 7.3
# http://www.isi.edu/nsnam/ns/doc/node69.html
# If RED is enabled, controls the gentle option [Default: false]
attribute gentle { xsd:boolean }? &
# Queue discipline, RED if true, DropTail if false [Default: false]
attribute red { xsd:boolean }? &
# If true, limit is size of queue in bytes. If false, limit is size of
# queue in packets. [Default: false]
attribute queue_in_bytes { xsd:boolean }? &
# Maximum size of queue in bytes or packets [Default: 50]
attribute limit { xsd:int }? &
# Max threshold when RED is enabled [Default: 15]
attribute maxthresh { xsd:int }? &
# Min threshold when RED is enabled [Default: 5]
attribute thresh { xsd:int }? &
# 1/linterm = probability of dropping a packet at maxthresh [Default: 10]
attribute linterm { xsd:int }? &
# Lambda in EWMA for determining average queue size [Default: 0.002]
attribute q_weight { xsd:float }? &
# Both of the above are start elements.
start = SliverType
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment